@charset "utf-8";
/* CSS Document */

html{
	font-size: 80%;
	height: 100%;
}

body{
	color: #333;
	font-size: 1.2rem;
	font-family: "メイリオ","Hiragino Kaku Gothic Pro",Meiryo,"ヒラギノ角ゴ Pro W3","MS PGothic","MS UI Gothic",Helvetica,Arial,sans-serif;
	height: 100%;
	position: relative;
	left: 0;
	overflow-x: hidden;
}

*,*::before,*::after{
	box-sizing: border-box;
}


/*a:link, a:visited, a:hover, a:active{
	text-decoration: none;
}*/

.clearfix::after{
	content:'';
	display: block;
	clear: both;
}
label {
	margin:0 10px;
}
h1 {
	font-size:1.8em !important;
	width:100%;
	text-align:center;
	border-bottom:1px solid #666;
	margin:15px 0 !important;
	padding-bottom:5px !important;
}
h3 {
	border-bottom:1px solid #aaa;
	margin-bottom:15px !important;
	padding-bottom:5px;
	text-indent:.5em;
}

.center {
	text-align:center;
}

header {
	width:100%;
	/*position:fixed;*/
	height:65px;
	border-bottom:1px solid #333;
}
.h-logo {
	width:211px;
	float:left;
	margin-left:52px;
}
.logo {
	width:100%;
	margin:2px 5px;
}
header > h2 {
	position:absolute;
	left:272px;
	top:30px;
	font-size:1.8em;
	color:#AA5F55;
	font-weight:bold;
}
.tantou {
	position:absolute;
	left:470px;
	top:5px;
	font-size:1.6em;
	color:#2E62F2;
}
.previous {
	position:absolute;
	left:470px;
	top:35px;
	font-size:1.2em;
	color:#aaa;
	font-style:italic;
}
button#logout {
	float:right;
	margin:20px 10px 0 0;
}
.container {
	margin-top:15px;
	margin-bottom:15px; 
}

/* セレクトバー */
.selbar {
	border:1px solid #ccc;
	border-radius:4px;
	padding:10px;
	box-shadow:1px 1px 1px #ccc;
}
.selbar input,
.selbar select {
	width:100%;
	font-size:1.2em !important;
	height:calc(1.5em + .75rem + 2px) !important;
	text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

#login_box {
	width:400px;
	margin:20px auto;
	border:1px solid #ccc;
	padding:20px 10px;
	border-radius:8px;
	font-size:1.2em;
	box-shadow:1px 1px 1px #ccc;
}
#login_box button {
	font-size:1.2em;
	text-align:center;
}
.submit {
	text-align:center;
	margin:0 auto;
}

#info_box {
	width:600px;
	margin:20px auto;
	border:1px solid #ccc;
	padding:20px 10px;
	border-radius:8px;
	font-size:1.2em;
	box-shadow:1px 1px 1px #ccc;
}

ul.scan_btn li {
	float:left;
	margin-right:30px;
}

/* 表関係 */
table th {
	text-align:center;
	font-weight:bold;
}
table td {
	font-size:1.2em;
}
.fetch {
	margin-left:auto;
	margin-bottom:10px;
}
.fetch > button {
	font-size:1.4em;
}
.fetch > span {
	font-weight:bold;
	font-size:1.4em;
	color:#FF7F00;
}

/* スライドメニュー */
#slide_menu {
	position: fixed;
	top: 0;
	left: -240px;
	width: 240px;
	height: 100%;
	background: #fff;
	font-size:1.4em;
	overflow-y: scroll;
}
#slide_menu > ul li {
	padding:5px;
	border-bottom:1px solid #eee;
	line-height:36px;
}
#slide_menu > ul li > a {
	color:#000;
	display:block;
	width:240px;
	height:36px;
}
#navi_btn {
  display: inline-block;
  width: 40px;
  height: 40px;
  vertical-align: middle;
  position:absolute;
  top:15px;
  left:10px;
  margin:0 !important;
  
}
#navi_btn span, #navi_btn span:before, #navi_btn span:after {
  position: absolute;
  height: 6px;
  width: 40px;
  border-radius: 3px;
  background: #ccc;
  display: block;
  content: '';
  cursor: pointer;
}
#navi_btn span:before {
  bottom: -14px;
}
#navi_btn span:after {
  bottom: -28px;
}
.scroll table {
  display: block;
  overflow-x: scroll;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  width:1140px;
}
.scroll table th:first-child {
  position: -webkit-sticky;
  position: sticky;
  left: 0;
}

@media screen and (max-width: 1024px) {
	.scroll table {
		width:960px;
	}
}

@media screen and (max-width: 480px) {
	header {
		height:62px;
	}
	.h-logo {
		width:120px;
	}
	.logo {
		width:100%;
		margin:5px 5px;
	}
	header > h2 {
		left:5px;
		top:38px;
		font-size:1.2em;
	}
	.tantou {
		left:140px;
		font-size:1.2em;
	}
	.previous {
		left:140px;
		top:30px;
		font-size:.9em;
	}
	button#logout {
		margin:15px 5px 0 0;
	}
	
	#login_box {
		width:300px;
	}
}
