* {
	font-weight: normal;
	margin: 0;
	padding: 0;
	outline: none;
}
html {
	font-size: 16px;
	line-height: 18px;
	height: 100%;
}
body {
	color: #222;
	font-family: -apple-system-body, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans Japanese", "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", meiryo, sans-serif;
	background-color: #ddd;
	height: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	word-wrap: break-word;
}
@media all and (-ms-high-contrast:none) {
	body {
		font-family: "メイリオ", Meiryo, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans Japanese", "游ゴシック Medium", "Yu Gothic Medium", sans-serif;
	}
}
img {
	display: block;
}
a {
	color: #0070c9;
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
label {
	color: #555;
	font-size: .8em;
	font-weight: bold;
	display: block;
}
input:not([type='radio']):not([type='checkbox']),
textarea,
select {
	color: #222;
	font-size: 16px;
	line-height: 18px;
	padding: 10px;
	background-color: #fff;
	border: 1px solid #333;
	border-radius: 5px;
	box-sizing: border-box;
	width: 100%;
	height: 40px;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
}
select {
	padding-right: 30px;
	background: #fff url(/img/bg_select.svg) right center / 32px 7px no-repeat;
	width: auto;
	cursor: pointer;
}
select::-ms-expand {
	display: none;
}
input[type="radio"] {
	display: none;
}
input[type="radio"] + label {
	color: #fff;
	font-size: 16px;
	line-height: 18px;
	font-weight: normal;
	margin-right: 1px;
	padding: 11px;
	display: inline-block;
	background-color: #999;
	cursor: pointer;
}
input[type="radio"]:checked + label {
	background-color: rgb(0, 128, 192);
}
p > input[type="radio"]:first-of-type + label {
	border-radius: 5px 0 0 5px;
}
p > input[type="radio"]:last-of-type + label {
	margin-right: 0;
	border-radius: 0 5px 5px 0;
}
input[type="radio"]:not(:checked) + label:hover {
	background-color: #777;
}
:placeholder-shown {
	color: #999;
}
::-webkit-input-placeholder {
	color: #999;
}
:-moz-placeholder {
	color: #999; opacity: 1;
}
::-moz-placeholder {
	color: #999; opacity: 1;
}
:-ms-input-placeholder {
	color: #999;
}

header {
	background-color: #224;
	width: 100%;
	min-width: 1000px;
	height: 30px;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 100;
}
header h1 {
	color: #fff;
	font-size: .8em;
	line-height: 30px;
	position: absolute;
	left: 10px;
	top: 0;
}
header p {
	color: #fff;
	font-size: .8em;
	line-height: 30px;
	text-align: right;
}
span#logout {
	color: #fff;
	padding: 0 10px;
	vertical-align: middle;
	border-left: 1px solid #999;
	display: inline-block;
	cursor: pointer;
}
span#logout:hover {
	background-color: rgba(255, 255, 255, .2);
}

body > section {
	box-sizing: border-box;
	width: 100%;
	min-width: 1000px;
	height: calc(100% - 30px);
	position: fixed;
	left: 0;
	top: 30px;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}
div.title {
	background-color: #336;
	border-top: 1px solid #999;
	box-sizing: border-box;
	width: 100%;
	height: 50px;
	overflow: hidden;
}
.title h1 {
	color: #fff;
	font-size: 1em;
	line-height: 50px;
	text-align: center;
}
.title ul {
	list-style: none;
	display: table;
	height: 50px;
	position: absolute;
	left: 0;
	top: 0;
}
.title ul:last-child {
	left: auto;
	right: 0;
}
.title li {
	color: #fff;
	font-size: .8em;
	vertical-align: middle;
	padding: 0 5px;
	display: table-cell;
	cursor: pointer;
}
.title li:hover {
	background-color: rgba(255, 255, 255, .2);
}
#finish {
	display: none;
}
body.delete #finish,
body.sort #finish {
	display: table-cell;
}
body.delete .title li:not(#finish),
body.sort .title li:not(#finish) {
	display: none;
}

div.main {
	box-sizing: border-box;
	height: calc(100% - 50px);
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}
div.layout {
	margin: 0;
	padding: 0;
	width: 100%;
	overflow: hidden;
}
.layout > div:first-child {
	width: calc(50% - 10px);
	float: left;
}
.layout > div:first-child + div {
	width: calc(50% - 10px);
	float: right;
}
.main p {
	padding-top: 10px;
}

#page {
	font-size: .8em;
	line-height: 50px;
	text-align: center;
	margin: 0;
}
#page span {
	text-align: center;
	display: inline-block;
	width: 5.5em;
}
#page i {
	width: 20px;
	cursor: pointer;
}
#page i:hover {
	color: rgb(0, 128, 192);
}
#list .main table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}
#list .main thead th {
	color: #555;
	font-size: .8em;
	font-weight: bold;
	text-align: left;
	padding: 20px 0 0 5px;
	border-bottom: 1px solid #aaa;
}
#list .main tbody tr {
	border-bottom: 1px solid #aaa;
	background-color: #fff;
	cursor: pointer;
}
#list .main tr td {
	line-height: 18px;
	padding-left: 5px;
	height: 40px;
}
#list .main thead th:last-child,
#list .main tr:not(.empty) td:last-child {
	padding: 0;
	text-align: center;
	width: 30px;
}
#list .main td i.fa-chevron-right {
	color: #555;
}
#list .main td i.fa-trash-alt {
	color: #f00;
	display: none;
	cursor: pointer;
}
#list .main td i.fa-trash-alt:hover {
	color: #f33;
}
#list .main td i.fa-sort {
	display: none;
	cursor: pointer;
}
#list .main td i.fa-print:hover,
#list .main td i.fa-sort:hover {
	color: #555;
}
body.delete #list td i.fa-trash-alt,
body.sort #list td i.fa-sort {
	display: inline-block;
}
body.delete #list td i.fa-chevron-right,
body.sort #list td i.fa-chevron-right {
	display: none;
}
body > section.card {
	background-color: #ddd;
	left: 100%;
	z-index: 10;
	transition: all .3s ease-in;
	visibility: hidden;
}
body.card #card {
	left: 0;
	visibility: visible;
}
section.card div.main {
	padding: 10px 20px 20px 20px;
}