html {
	background-color: #f5f5f5;
	font-family: -apple-system, sans-serif;
	-webkit-font-smoothing: antialiased;
}
body {
	padding-bottom: 5%;
}
	@media all and (max-width: 640px) {
		body {
			font-size: 2em;
		}
	}
		@media all and (min-width: 641px) {
			body {
				font-size: 1.5em;
			}
		}

input,
button,
select {
	font-size: inherit;
	font-family: inherit;
}
button {
	cursor: pointer;
}

/*==================== ログイン ====================*/
#login {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 30vw;
	height: 30vw;
	transform: translate(-50%, -50%);
	background-color: #000;
	color: white;
	border-radius: 50%;
	font-size: 5vw;
	transition: all 0.1s ease;
}
#login:hover {
	box-shadow: 0 0 0 0.5em rgba(0,0,0,0.2);
}
#login a {
	display: block;
	width: 100%;
	height: 100%;
	color: inherit;
	text-decoration: none;
}
#login a span {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	white-space: nowrap;
}

#logout button,
#input button {
	background: black;
	color: white;
	border: none;
	border-radius: 0.5em;
	padding: 0.5em 1em;
}
#logout button {
	background: #999;
}

/*==================== ログアウト ====================*/
#logout {
	text-align: right;
}

/*==================== 条件指定 ====================*/
#input {
	margin: 1em 0 0;
}

#input form {
	display: inline-block;
	border: 1px solid #ccc;
	border-radius: 0.5rem;
	padding-bottom: 1rem;
	background: white;
}
#input fieldset {
	margin-top: 1em;
	border: none;
}
#input legend {
	color: #999;
	font-size: 80%;
}

#table-container {
	overflow: scroll;
	margin-top: 2em;
}
table {
	border-collapse: collapse;
	border: 1px solid #ccc;
	background-color: white;
}
th, td {
	border: 1px solid #ccc;
	padding: 0.4em 0.8em;
}
thead th {
	font-weight: normal;
	background-color: #eee;
}
thead th span {
	font-size: 80%;
}
tbody th {
	text-align: left;
	white-space: nowrap;
}
td {
	text-align: right;
}
tr.sum {
	cursor: pointer;
}
th.sum, td.sum {
	border-left-style: double;
}
tr.item {
	font-size: 80%;
	background-color: #eee;
}
tr.item th {
	font-weight: normal;
	text-indent: 1em;
}
