@charset "UTF-8";

/* login ---------------------------------------*/

.loginPage {
	width:100%;
	height:100%;
}

.loginPage:before{
	background: url(../img/login/bg_login.png) no-repeat center center;
	background-size: cover;
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    -webkit-transform: translate3d(0, 0, -1px);
    transform: translate3d(0, 0, -1px);
	width:100%;
	height:100%;
}

.loginInner {
	width:960px;
	position:absolute;
	left:50%;
	top:50%;
	transform:translate(-50%,-50%);
	z-index:5;
}

.loginMessage {
	float: left;
	width:420px;
	padding:60px 0 0;
	color:#fff;
}

.loginMessage h1{
	line-height: 1.0;
	margin-bottom: 25px;
	position: relative;
}

.loginMessage h1:before{
	display:block;
	content:'';
	background:#fff;
	width:66px;
	height:2px;
	position:absolute;
	left:0px;
	top:-25px;
}

.loginMessage p{
	font-size:16px;
	line-height: 2.0;
}

.loginForm {
	float: right;
	width:510px;
}

.loginFormInner {
	background: #fff;
	padding:40px 0 0 0;
}

.loginLogo {
	background: url(../img/login/logo_login.png);
	width: 296px;
	height: 42px;
	overflow: hidden;
	text-indent:-99em;
	margin:0 auto 25px;
}

.loginFormLine {
	width:360px;
	margin:0 auto 15px;
	position: relative;
}

.loginFormLine:nth-child(2) {display:none;}

.loginFormTitle {
	width:80px;
	height:36px;
	line-height: 36px;
	background: #032860;
	border-radius:5px 0 0 5px;
	font-size:18px;
	padding:0 10px;
	color:#fff;
	position: absolute;
	left:0;
	top:0;
	box-sizing:border-box;
}

@media all and (-ms-high-contrast:none) {
	.loginFormTitle {
		font-family:"メイリオ","Meiryo","ＭＳ Ｐゴシック",sans-serif;
	}
}

.loginFormLine input{
	margin-left: 80px;
	width:280px;
	display: block;
	height:36px;
	line-height: 36px;
	border:2px solid #E2E2E2;
	border-left:0;
	border-radius:0 5px 5px 0;
	box-sizing:border-box;
	box-shadow:1px 1px 4px rgba(0,0,0,0.1) inset;
	padding-left: 10px;
}

.loginForm button{
	background: #9db0b7; /* Old browsers */
	background: -moz-linear-gradient(top, #9db0b7 0%, #778d94 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, #9db0b7 0%,#778d94 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #9db0b7 0%,#778d94 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	color:#fff;
	width:230px;
	border-radius:5px;
	line-height: 1.0;
	padding:18px 0;
	text-align: center;
	border:none;
	font-size:15px;
	font-weight: normal;
	cursor:pointer;
	position: relative;
	margin:30px auto 35px;
	display: block;
	box-shadow:0px 5px 10px rgba(0,0,0,0.1);
}

.loginForm button:after{
	display:block;
	content:'';
	background:url(../img/common/icon_btn.png) no-repeat left top;
	width:19px;
	height:19px;
	position:absolute;
	right:10px;
	top:50%;
	margin-top:-10px;
}

.loginNotice {
	background: #F4F4F4;
	padding:20px 60px;
	font-size:14px;
	line-height: 1.7;
	color:484848;
}

.loginNotice a{
	color:#778D94;
	text-decoration: underline;
}

.loginBottomNotice {
	display: block;
	line-height: 1.5;
	padding-top: 10px;
	font-size:11px;
	color:#fff;
}

.loginForm .error{
	font-size:14px;
	position: relative;
	display: none;
}

.loginForm .error span{
	display: block;
	position: absolute;
	right:0px;
	top: 2px;
	color:#ff0000;
	line-height: 1.5;
	padding:0px 0 0px;
}


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

	/* login ---------------------------------------*/

	.loginInner {
		width:auto;
		position:static;
		transform:translate(0,0);
		padding:0 17px;
	}

	.loginMessage {
		float: none;
		width:auto;
		padding:75px 0 25px;
	}

	.loginMessage h1{
		margin-bottom: 20px;
	}

	.loginMessage h1 img{
		width:220px;
		max-width:100%;
	}

	.loginMessage h1:before{
		width:40px;
		top:-20px;
	}

	.loginMessage p{
		font-size:13px;
		line-height: 1.9;
	}

	.loginForm {
		float: none;
		width:auto;
	}

	.loginFormInner {
		padding:25px 0 0 0;
		border-radius:8px;
	}

	.loginLogo {
		background: url(../img/login/logo_login_sp.png);
		background-size: 100%;
		width: 220px;
		height: 31px;
		margin:0 auto 18px;
	}

	.loginFormLine {
		width:auto;
		margin:0 40px 12px 20px;
	}

	.loginFormTitle {
		width:55px;
		background: none;
		font-size:18px;
		padding:0;
		text-align: right;
		color:#484848;
	}

	.loginFormLine input{
		margin-left: 70px;
		width:calc(100% - 70px);
		border:2px solid #E2E2E2;
		border-radius:5px;
	}

	.loginForm button{
		width:160px;
		padding:15px 0;
		font-size:14px;
		margin:15px auto 15px;
	}

	.loginForm button:after{
		background:url(../img/common/icon_btn.png) no-repeat left top;
		background-size: 100%;
		width:14px;
		height:14px;
		right:8px;
		margin-top:-7px;
	}

	.loginNotice {
		background: none;
		padding:0px 20px 20px;
		font-size:12px;
		line-height: 2.0;
	}

	.loginBottomNotice {
		line-height: 1.4;
		padding-top: 15px;
		font-size:13px;
	}

	.loginForm .error{
		position: relative;
		display: none;
	}

	.loginForm .error span{
		display: block;
		position: absolute;
		right:0px;
		top:0px;
		color:#ff0000;
		line-height: 1.5;
		padding:0px 0 0px;
		font-size:11px;
	}

}




/* iphone5 iphoneSE用 */
@media screen and (max-width: 370px){

}