/* login css */
@charset "UTF-8";

/* main
----------------------------------------------------------------------*/
#main{ flex:1; }

/* index
----------------------------------------------- */
.loginArea{
	width: 780px;
	margin: 0 auto;
	padding: 45px 45px 35px 45px;
	box-sizing: border-box;
	background-color: #f0f0f0;
}

.loginArea .loginTtl{
	font-size: 15px;
	margin-bottom: 10px;
	font-weight: bold;
}

.loginArea p.loginInpt{
	margin-bottom: 25px;
}

.loginArea p.loginCheck{
}

.loginArea p.btn{
	margin: 15px 0 20px 0;
}

.loginArea p.loginForget{
}

.signupArea{
	width: 780px;
	margin: 0 auto;
	padding: 45px 45px 35px 45px;
	box-sizing: border-box;
	background-color: #f0f0f0;
	margin-top: 45px;
}

.signupArea p.sTtl{
	font-size: 15px;
	margin-bottom: 10px;
	font-weight: bold;
}

.signupArea p.sTtl2{
	font-size: 15px;
	margin-bottom: 25px;
}

.signupArea p.sTxt{
	margin-bottom: 25px;
}

.signupArea p.btn{
}

/* modalOverlay */
.modalOverlay{
	display:none;
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:rgba(34,34,34,.5);
	z-index: 51;
}
.open .modalOverlay{
	display:block;
}
/*-- modalWin --*/
.modalWin{
	position:absolute;
	left:calc(50% - 375px);
	top:calc(50% - 250px);
	width:750px;
	max-height:500px;
	padding:15px 30px 30px;
	background:#fff;
	-webkit-border-radius:15px;
	border-radius:15px;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	opacity:0;
	pointer-events: none;
	-webkit-transition: 0s;
	transition: 0s;
	z-index: 52;
}
.modalWin.open{
	opacity:1;
	pointer-events: initial;
	-webkit-transition: .5s;
	transition: .5s;
}
.modalWin .heading{
	padding:30px 0 20px;
}
.modalWin .head{
	color:#666;
	font-size:20px;
	font-weight:bold;
	text-align:center;
}
.modalWin .closeIcon{
	position: absolute;
	right: 35px;
	top: 35px;
	width: 25px;
	height: 25px;
	line-height: 0;
	font-size: 0;
	overflow: hidden;
	cursor:pointer;
}
.modalWin .closeIcon:before,
.modalWin .closeIcon:after{
	content:'';
	position:absolute;
	left:-4px;
	top:11px;
	display:block;
	width:33px;
	height:1px;
	background:#666;
	-webkit-transition:.5s .3s;
	transition:.5s .3s;
}
.modalWin.open .closeIcon:before{ -webkit-transform:rotate(45deg); transform:rotate(45deg); }
.modalWin.open .closeIcon:after{ -webkit-transform:rotate(-45deg); transform:rotate(-45deg); }

.modalWin .modalBody{
	max-height:375px;
	padding:25px 50px 0;
	font-size:15px;
	overflow-y:auto;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}
.modalWin .btnBox{
	text-align:center;
	margin-top: 20px;
}

.modalBody p.mdTxt{
	margin-bottom:  15px;
	line-height: 1.5;
	font-size: 13px;
}

.modalBody p.mdTxt2{
	margin-bottom: 0px;
	line-height: 1.5;
	font-size: 13px;
	margin-top: 35px;
}

.modalBody p.mdInput label{
	margin-right:15px;
}

.modalBody p.mdInput{
	margin-bottom: 20px;
}

.modalBody div.birth{
	display:none;
}

.modalBody div.birth .birAria .selectBox{
	position:  relative;
	float: left;
	width: 22%;
	padding-left: 10%;
}

.modalBody div.birth .birAria .selectBox span{
	position: absolute;
	top: 50%;
	right: -30px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.modalBody div.birth .birAria .selectBox:nth-child(1){
	width: 30%;
	padding-left: 0;
}

.modalBody div.tel{
	display:none;
}


.modalBody div.tel .telArea input{
	width:130px;
}

.modalBody div.tel .telArea span{
	display:inline-block;
	margin:0 10px;
}

@media all and (max-width: 640px) { 
	/* modalWin
	----------------------------------------------- */
	.open .modalOverlay{
		opacity:0;
	}
	.modalWin{
		position:fixed;
		left:0;
		top:0;
		width:100%;
		height:100%;
		max-height:unset;
		padding:0;
		z-index: 1003;
		background:#fff;
		overflow-y:scroll;
		-webkit-transform: translateY(150%);
		transform: translateY(150%);
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-transition: .3s;
		transition: .3s;
		-webkit-border-radius:0;
		border-radius:0;
	}
	.modalWin.open{
		margin-top:0 !important;
		-webkit-transform: translateY(0%);
		transform: translateY(0%);
	}
	.modalWin .heading{
		width:100%;
		padding:25px;
		font-size:15px;
		color:#666;
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
		background:#fff;
		z-index: 1;
	}
	.modalWin .head{
		font-size:15px;
	}
	.modalWin .closeIcon{
		position:absolute;
		right:25px;
		top:25px;
		width:25px;
		height:25px;
		line-height:0;
		font-size:0;
		overflow:hidden;
	}
	.modalWin .modalBody{
		max-height:unset;
		padding:25px;
		font-size:12px;
	}
	.modalWin .btnBox{
		display:-webkit-flex;
		display:flex;
		-webkit-justify-content:space-between;
		justify-content:space-between;
		padding:0 18px;
		text-align: center;
	}
	.modalWin .btnBox .btn{
		display:inline-block;
		width: 100%;
		margin: 0 auto;
	}
	.modalWin .btnBox .btn a{
		height:50px;
		line-height:50px;
	}

	.loginArea{
		width: inherit;
		padding: 25px;
	}
	
	.loginArea .loginTtl{
		font-size: 14px;
		margin-bottom: 5px;
	}
	
	.loginArea p.loginInpt{
		margin-bottom: 15px;
	}
	
	.loginArea p.loginCheck{
	}
	
	.loginArea p.btn{
	}
	
	.loginArea p.loginForget{
	}
	
	.signupArea{
		width: inherit;
		padding: 25px;
	}
	
	.signupArea p.sTtl{
		font-size: 14px;
		margin-bottom: 5px;
	}
	
	.signupArea p.sTxt{
	}
	
	.signupArea p.btn{
	}
	.modalBody div.birth .inputBody{
		padding: 14px 0;
		width: 100%;
		display: block;
	}
	.modalBody div.birth .inputBody .selectBox{
	
	}
	.modalBody div.birth .inputBody .selectBox span{
		right: -18%;
	}
	.modalBody div.tel input{
		width: 75px !important;
	}

	.modalBody div.tel span{
		display: inline-block !important;
		margin: 0 5px !important;
	}
}

/*MS 対応*/
.renewArea{
	width: 780px;
	margin: 0 auto;
	padding: 30px 30px 30px 30px;
	font-size: 13px;
	box-sizing: border-box;
	border: #ddd solid 1px;
	margin-bottom: 30px;
}
.renewArea strong{
	display:block;
	margin-bottom:10px;
}

@media all and (max-width: 640px) { 
	.renewArea{width: inherit;padding: 25px;}
}
/* recapture */
#footer .pageTop.bottom, #footer .pageTop.bottom + .searchModalBtn{
    z-index:2;
}

 

.primaryBtn > div{
    position:relative;
    z-index: 51;
}

 

.grecaptcha-badge{
    bottom: 100px !important;
}