@charset "utf-8";


/*==================================================
  Common
==================================================*/
html{
	font-size: 62.5%;
	width: 100%;
	height: 100%;
	min-height: 100vh;
}


body{
	font-family: YakuHanJPs, 'ROBOTO', 'Noto Sans JP', 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-weight: 400;
	font-size: 1.4rem;
	line-height: 1.2;
	color: #000000;
	width: 100%;
	height: 100%;
	min-height: 100vh;
	margin: 0;
	padding: 0;
}


img{
	border: none;
	vertical-align: middle;
}


li{
	list-style: none;
}


a{
	text-decoration: none;
}




.btn{
	position: relative;
	z-index: 2;
	overflow: hidden;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
}
.btn::after{
	width: 100%;
	height: 100%;
	display: block;
	content: "";
	position: absolute;
	top: 0;
	left: -100%;
	z-index: -1;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
}
.btn:hover::after{
	left: 0;
}




/*==================================================
  Wrapper
==================================================*/
#wrapper{
	background-color: #efefef;
	width: 100%;
	height: 100%;
	min-height: 100vh;
	margin: 0;
	padding: 0 0 36px 0;
	box-sizing: border-box;
	position: relative;
}


#loader{
	background-color: #ffffff;
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9998;
}


#loader div{
	width: 80px;
	height: 80px;
	margin-top: -40px;
	margin-left: -40px;
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 9999;
}


main{
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
}




/*==================================================
  Member
==================================================*/
#login{
	background-color: #efefef;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	position: relative;
}


#login_inner{
	width: 100%;
	margin: 0;
	padding: 20px 20px 30px 20px;
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}


.attention{
	font-size: 1.4rem;
	line-height: 1.5;
	color: #ff0000;
	margin: 0;
	padding: 0 0 10px 0;
	text-align: center;
}


#login_box{
	background-color: #ffffff;
	max-width: 520px;
	margin: 0 auto;
	padding: 0;
	border-radius: 8px;
	box-shadow: 0 5px 5px 5px rgba(0,0,0,0.1);
	position: relative;
}


#login_box h2{
	background-color: #00458e;
	font-weight: 400;
	font-size: 2.0rem;
	line-height: 1.2;
	letter-spacing: 0.03em;
	color: #ffffff;
	margin: 0;
	padding: 10px 15px 8px 15px;
	border-bottom: solid 4px #ffff00;
	border-top-left-radius: 8px;
	border-top-right-radius: 8px;
}
#login_box h2 img{
	height: 40px;
}
#login_box h2 span{
	display: inline-block;
	line-height: 40px;
	margin: 0;
	padding: 0 0 0 5px;
}


.login_box_info{
	font-weight: 400;
	font-size: 1.4rem;
	line-height: 1.2;
	color: #666666;
	margin: 0;
	padding: 20px 30px 0 30px;
}


#login_box div{
	width: 100%;
	margin: 0 ;
	padding: 5px 30px 0 30px;
	box-sizing: border-box;
}
#login_box div span{
	display: block;
	margin: 0;
	padding: 15px 0 0 0;
}


#login_box div input{
	width: 100%;
	height: 42px;
	font-size: 1.6rem;
	line-height: 40px;
	margin: 0;
	padding: 0 10px;
	border: solid 1px #cccccc;
	border-radius: 3px;
	box-sizing: border-box;
}


.btn_area{
	width: 100%;
	margin: 0;
	padding: 25px 30px 40px 30px;
	box-sizing: border-box;
}


.btn{
	background-color: #ff0000;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 50px;
	color: #ffffff;
	width: 100%;
	height: 52px;
	margin: 0;
	padding: 0 10px;
	border: solid 1px #cccccc;
	border-radius: 4px;
	box-sizing: border-box;
	cursor: pointer;
}
.btn:hover{
	background-color: #eeeeee;
	color: #ff0000;
}


.btn:hover::after{
	background-color: #5d8fc2;
}


::-webkit-input-placeholder{
	font-size: 1.4rem !important;
	color: #cccccc !important;
	opacity: 1;
}
::-moz-placeholder{
	font-size: 1.4rem !important;
	color: #cccccc !important;
	opacity: 1;
}
:-ms-input-placeholder{
	font-size: 1.4rem !important;
	color: #cccccc !important;
	opacity: 1;
}
::placeholder{
	font-size: 1.4rem !important;
	color: #cccccc !important;
	opacity: 1;
}


#login_copyright{
	font-size: 1.2rem;
	line-height: 1.5;
	color: #333333;
	margin: 0;
	padding: 20px 0 0 0;
	text-align: center;
}




@media screen and (max-width: 360px){


	#login_box{
	}


	#login_box h2{
	}


	#login_box div input{
	}


	.btn_area{
	}


	.btn{
	}


}




/*==================================================
  Footer
==================================================*/
footer{
	width: 100%;
	margin: 0;
	padding: 0;
	position: absolute;
	bottom: 0;
	left: 0;
}


#copyright{
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 36px;
	color: #999999;
	margin: 0;
	padding: 0;
	text-align: center;
}
