/* Web fonts */
@import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css");


/*-----------------------
        thanks 
-----------------------*/
.thanks {
	background:url(../common/img/mv_img.jpg) no-repeat scroll center bottom;
	background-size:cover;
	text-align: center;
    padding: 150px 0 250px;
}
.thanks .main_title {
	    color: #fff;
    font-size: 2.5em;
    margin: 20px 0 10px;
}
.thanks .title {
	font-size:2em;
	color:#fff;
	line-height: 1.4;
}
.thanks a {
	background:#fff;
	border-radius:100px;
	padding:10px 20px;
}
.thanks p {
	color:#fff;
	margin:0 0 50px 0;
}


/*-----------------------
        next 
-----------------------*/
.form_next {
	background:#f6f6f6;
}
.form_next .main {
	background: #fff;
    padding: 40px 5%;
    margin: 80px 10% 20px;
    display: inline-block;
    width: 70%;
    border-radius: 5px;
}


/* 【SP】ウィンドウ幅が480px以下の場合に適用するCSS */
@media screen and (max-width: 480px) {
.thanks {
	padding: 30px 30px 150px !important;
}

}


/*-----------------------
         3 STEP 
-----------------------*/

.Remaining{
	height: 50px;
    position: relative;
}
.Remaining .one{
	position:absolute;
	width:29.76190476%; /* 250px [250/840*100] */
	top:0;
	left:0;
	z-index:12;
}
.Remaining .two{
	position:absolute;
	width:34.52380952%; /* 290px [290/840*100] */
	top:0;
	left:28.57142857%; /* 240px [240/840*100] */
	z-index:11;
}
.Remaining .three{
	position:absolute;
	width:34.52380952%; /* 290px [290/840*100] */
	top:0;
	left:61.90476190%; /* 520px [520/840*100] */
	z-index:10;
}

.Remaining .allow div{
	height:50px;
	position:relative;
}
.Remaining .allow p{
	height:50px;
	line-height:50px;
	color:#FFFFFF;
	position: absolute;
	top:0;
	font-size:16px;
	z-index:15;
}
.Remaining .allow.one p{ left:15px; }
.Remaining .allow.two p{ left:55px; }
.Remaining .allow.three p{ left:55px; }


.Remaining .allow span.bg{
	background:#382f20;
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
	border-top-left-radius:3px;
	border-bottom-left-radius:3px;
}
.Remaining .allow span.try{
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 25px 0 25px 15px;
	border-color: transparent transparent transparent #382f20;
	position:absolute;
	right:-15px;
	top:0;
}
.Remaining .allow.beafter span.bg{
	background:#4F4433;
}
.Remaining .allow.beafter span.try{
	border-color: transparent transparent transparent #4F4433;
}
.Remaining .allow.beafter-end span.bg{
	background:#635845;
}
.Remaining .allow.beafter-end span.try{
	border-color: transparent transparent transparent #635845;
}









/*-----------------------
       Description 
-----------------------*/

.description{
	margin: 45px 0;
    padding: 15px 25px;
	border:1px solid #ccc;
    border-radius: 5px;
}








/*-----------------------
       annotation 
-----------------------*/

.annotation{
	display:block;
	width:90%;
	max-width:840px;
	font-size:13px;
	color:#EE0000;
	margin:4px auto;
}
.required{
	background-color:#FFE8E2;	
}








/*-----------------------
     required object
-----------------------*/

.any_tx,.required_tx{
    font-size: 11px !important;
    color: #FFFFFF !important;
    border-radius: 2px;
    display: inline-block;
    padding: 5px 7px;
    line-height: 1;
	margin: 0 0 0 5px;
}
.any_tx{
	background:#66c6ff;
	vertical-align: 5px;
}
.required_tx{
	background:#f74163;
	vertical-align: 5px;
}
.any_tx.min,.required_tx.min{
	font-size: 10px !important;
    padding: 3px 4px;
    line-height: 12px;
    margin: -2px 4px 0 0;
    vertical-align: middle;
}









/*-----------------------
       Subheading
-----------------------*/

.Inputarea .Captx{
	clear:both;
	font-size:14px;
	display:block;
	line-height: normal !important;
	padding:12px 0 5px 0;
}
.Inputarea .Captx.Captx_first{
	padding-top:10px;
}










/*-----------------------
        Mail area 
-----------------------*/

#Mail_area{
}

/* Input Wrap */
.Inputarea{
	width:auto;
	overflow:hidden;
	height:auto;
	display:flex;
	display:-webkit-flex;
    margin: 0 0 15px 0;
	border-radius: 5px;
	text-align: left;
	border-bottom:1px solid #eee;
}
.Inputleft{
	width: 35%;
	padding: 20px 0 0 0;
}
.Inputright{
    width: 70%;
}

/* Input inner */
.Inputleft div{
}
.Inputleft div p{
	margin:0 !important;
	text-align:left;
	font-size:15px;
	line-height:27px;
}
.Inputright > div{
    min-height: 70px;
	padding: 20px;
}
.Inputright div .conf{
	line-height: 1.4;
	    font-size: 1.3em;
}


/*-----------------------
    Input Type Style
-----------------------*/

/* text */
input:focus,textarea:focus{
	background:#F7EBCA;
}
.Inputright div input[type="text"],.Inputright div input[type="tel"],.Inputright div input[type="email"]{
	width:90%;
	font-size: 16px;
    padding: 10px 15px;
    border-radius: 5px;
    border: 1px solid #ccc;
}
.w75{ width:75% !important; }
.w50{ width:50% !important; }
.w25{ width:25% !important; }



/* radio */
.Inputright div input[type="radio"]{
  display: none;
}
.radio_area label span{
	transition:.4s;
	padding-left: 32px;
	position:relative;
	margin-right: 20px;
	cursor:pointer;
}
.Inputright div input[type="radio"]:checked + span{
	color: #e47829;
  }
.radio_area label span::before{
  content: "";
  display: block;
  position: absolute;
  top: 1px;
  left: 1px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border:solid 1px #D3D3D3;
  background:#FFFFFF;
}
.radio_area label span::after{
  content: "";
  display: block;
  position: absolute;
  top: 4px;
  left: 4px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background:#e47829;
  transition:.4s;
  opacity:0;
}

.Inputright div input[type="radio"]:checked + span::after{
  border-radius: 50%;
  background: #e47829;
  opacity:1;
}



/* check box */

.Checklist{
	width:100%;
	overflow:hidden;
}

/* 元のボタン非表示 */
.Inputright div input[type="checkbox"]{
  display: none;
}

/* 通常チェックリスト */
.Checklist li{
	width:30%;
	float:left;
	list-style-type:none;
	height:30px;
}

.check_area label span{
transition:.4s;
	padding-left: 32px;
  position:relative;
  margin-right: 20px;
  cursor:pointer;
}
.check_area input[type="checkbox"]:checked + span{
  color: #e47829;
}
.check_area label span::before{
  content: "";
  display: block;
  position: absolute;
  top: 1px;
  left: 1px;
  width: 22px;
  height: 22px;
  border-radius: 4px;
  border:solid 1px #D3D3D3;
  background:#FFFFFF;
}
.check_area label span::after{
  content: "";
  display: block;
  position: absolute;
  top: 2px;
  left: 8px;
  width: 7px;
  height: 14px;
  transform: rotate(40deg);
  border-bottom: 3px solid #e47829;
  border-right: 3px solid #e47829;
  transition:.4s;
  opacity:0;
}
.check_area input[type="checkbox"]:checked + span::after{
  opacity:1;
}
.check_area textarea{
	width:60%;
	height:50px;
}



/* select */
.select_label{
	display:inline-block;
	position:relative;
}
select{
	width:180px;
	font-size:16px;
	padding: 7px 8px;
	border-radius:4px;
	border:solid 1px #CCCCCC;
	box-shadow:1px 1px 3px rgba(0,0,0,0.2) inset;
	-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.2) inset;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position:relative;
	background:#FFFFFF url(../_img/select_allow.png) no-repeat center right;
	background-size:15px;
	margin: 0 0 10px 0;
}



/* select custom [birth] */
.sw20{ display:inline !important; }
.sw10{ margin-left:0 !important; }


/* text custom [yoyaku] */
.Inputarea input[name="yoyaku"]{
	width:160px !important;
	margin-left:0;
	margin-right:10px !important;
}



/* select custom [ytime] */
.Inputarea select[name="ytime"]{
	width:160px;
	margin-left:0;
	display:inline;
}



/* textarea */
textarea{
	width:90%;
	height:140px;
	font-size:16px;
	padding:7px 8px;
	border-radius:4px;
	border:solid 1px #CCCCCC;
	box-shadow:1px 1px 3px rgba(0,0,0,0.2) inset;
	-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.2) inset;
}

/* check box custom [agreement] */
.agreement_tx{
	background: #fff;
	border: 1px solid #ccc;
    padding: 10px;
    font-size: 0.8em;
    margin: 20px 0 0 0;
    height: 80px;
    overflow: auto;
}
.agreement_check{
	display:block;
	width:90%;
	
}

.SubmitBtn{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

/* submit [input] */
#Submit{
    max-width: 280px;
    width: 80%;
	height: 80px;
	margin: 30px auto 0;
	position:relative;
	border: none;
}
#Submit .SubmitBtn{
	background:#ff54aa;
	border-radius: 10px;
	display: block;
	padding: 25px 10px;
	box-sizing: border-box;
	text-align: center;
	color:#fff;
	font-weight: 700;
	font-size: 16px;
	box-shadow:0px 10px 0px 0px #ccc;
	position:absolute;
	width: 100%;
	height: 100%;
	top:0;
	left:0;
	bottom:0;
	right: 0;
	z-index:10;
	cursor:pointer;
	border: none;
}
#Submit .SubmitBtn:hover{
background:#ffa9d4;
box-shadow:0px 10px 0px 0px #eee;
}
#Submit div.SubmitBtn,#Submit div.SubmitBtn:hover{
	border-color:#CCCCCC;
	background:#EAEAEA;
	color:#AEAEAE;
	z-index:9;
	cursor:default;
}



/* submit [confirm] */
#SubmitConfirm{
	margin:30px auto;
}
#SubmitConfirm .SubmitBtn{
	background:#ff54aa;
	border-radius: 10px;
	display: block;
	padding: 0 10px;
	box-sizing: border-box;
	text-align: center;
	color:#fff;
	font-weight: 700;
	font-size: 16px;
	box-shadow:0px 10px 0px 0px #ccc;
    max-width: 280px;
    width: 80%;
	height: 80px;
	line-height: 80px;
	margin: 0 auto 20px auto;
	cursor:pointer;
	border: none;
}
#SubmitConfirm .SubmitBtn:hover{
background:#ffa9d4;
box-shadow:0px 10px 0px 0px #eee;
}
#SubmitConfirm .SubmitBtn_min{
	text-align:center;
	border:none;
	border-radius:5px;
	font-size:13px;
	color:#333;
	background:#DFDFDF;
	margin:30px auto;
	display:block;
	width:140px;
	height:36px;
	line-height:36px;
	transition:background 0.5s,color 0.5s;
	cursor:pointer;
}
#SubmitConfirm .SubmitBtn_min:hover{
	background:#CCCCCC;
}










/*-----------------------
          error
-----------------------*/

.form_err{
	background-color:#EBC1C2 !important;
}
.form_err_radio label{
	background-color:#EBC1C2 !important;
	border-radius:3px !important;
}
.send_err{
	background-color:#EDD7D7 !important;
	width:80%;
	max-width:810px;
	margin:15px auto;
	padding:15px;
	border:solid 1px #DD2124;
	color:#DD2124;
}

.input_err{
	font-size:13px;
	color:#EE0000;
	margin:4px;
	display:none;
}






/* 必須項目数メッセージ */
.message {
    background-color: rgba(255,255,255,0.7);
    padding: 10px 13px;
    text-align: center;
    position: fixed;
    left: 20px;
    font-size: 16px;
    line-height: 1.8em;
    font-weight: bold;
    border-radius: 6px;
    z-index: 10000;
    border: solid 1px #CCCCCC;
}
.message span{
	font-size: 36px !important;
    color: #CC0000;
    vertical-align: -1px;
    line-height: 1;
    margin: 0 5px 0 0;
}



/*-------------------- 
  width 0 - 640px
--------------------*/
@media screen and (max-width:640px) {
.Remaining .allow p{
	font-size:12px;
}
.Remaining .allow.one p{
	left:10px;
}
.Remaining .allow.two p{
	left:45px;
}
.Remaining .allow.three p{
	left:45px;
}




}




































/*-------------------- 
  width 0 - 480px
--------------------*/
@media screen and (max-width:480px) {












.Remaining .allow div{
	height:40px;
}
.Remaining .allow p{
	height:40px;
	line-height:40px;
	font-size:11px;
}
.Remaining .allow.one p{
	left:5px;
}
.Remaining .allow.two p{
	left:35px;
}
.Remaining .allow.three p{
	left:35px;
}
.Remaining .allow span.try{
    border-width: 20px 0 20px 10px;
    right: -10px;
}

















	/*-----------------------
		   Description 
	-----------------------*/
	
	.description{
		width:84%;
		padding:15px 3%;
	}
	
	
	
	
	
	
	
	
	/*-----------------------
			Mail area 
	-----------------------*/
	
	/* Input Wrap */
	.Inputarea{
		display: block;
	}

.Inputleft,
.Inputright{
    width: 100%;
}
	
	
	/* Input inner */
	.Inputleft div{
		line-height:normal;
		padding:0 8px 10px 8px;
	}
	.Inputleft div p{
		padding-top:10px;
	}
	.Inputright div{
		padding:0px 8px;
	}
	.Inputright div .conf{
		margin-top:0;
	}
	
	
	
	
	
	
	
	/*-----------------------
		Input Type Style
	-----------------------*/
	
	#name,#kana,#tel{ width:92%; }
	#zip{ width:50%; }
	#add1,#add2,#add3,#mail,#mail_con{ width:92%; }
	
	#pref,#ytime{ width:180px; }
	
	/* text custom [yoyaku] */
	.Inputarea input[name="yoyaku"]{
		width:60% !important;
		margin:0 0 10px 0 !important;
		display:block;
	}
	
	/* select custom [ytime] */
	.Inputarea select[name="ytime"]{
		width:40%;
		display:block;
	}
	
	/* check box */
	.Checklist li{
		width:45%;
		float:left;
		margin:0 2.5%;
	}
	
	/* textarea */
	textarea{
		width:92%;
	}
	




	/* submit [confirm] */
	#SubmitConfirm{
		width:202px;
		margin:30px auto;
	}
	#SubmitConfirm .SubmitBtn,#SubmitConfirm .SubmitBtn:hover{
		margin:30px auto;
		width:200px;
		height:50px;
		line-height:50px;
	}








	/* 必須項目数メッセージ */
	.message {
		background-color: rgba(255,255,255,0.7);
		width: 100%;
		height: auto;
		padding: 10px 0;
		text-align: center;
		position: fixed;
		left:0;
		font-size: 15px;
		line-height: 1.8em;
		font-weight: bold;
		border-radius:0;
		z-index:10000;
		color:#444444;
		border:none;
		border-top:solid 1px #CCCCCC;
	}
	.message span{
		font-size:22px !important;
		color:#CC0000;
		margin:0 4px;
	}
	.message br{
		display:none;
	}




	
	

}

