@charset "UTF-8";
/*common*/
.form#contact .bc,
.form#entry_mid .bc,
.form#entry_new .bc{
display:none !important;
}
#form1{
margin: 0 auto 30px;
max-width: 860px;
}
@media screen and (max-width: 896px) {
  #form1{
  max-width: 100%;
  }
}
#form1 dl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 30px;
}
#form1 dl > *{
border-bottom: solid 1px rgba(0,0,0,0.3);
padding: 15px;
box-sizing: border-box;
}
#form1 dt{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: baseline;
flex-basis: 32%;
font-size: 2.05rem;
font-weight: 400;
line-height: 1.6;
letter-spacing:0.15em;
background:rgba(249,249,249,1);
padding-top: 10px;
}
#form1 dt .sub{
flex-basis: 100%;
order: 3;
display: block;
font-size: 1.5rem;
color: rgba(0,0,0,0.55);
}
#form1 dd{
flex-basis: 65%;
}
@media screen and (min-width: 896px) {
  #form1 dl > *{
  margin-top: 20px;
  }
  #form1 dl > *:nth-child(1),
  #form1 dl > *:nth-child(2){
  margin-top: 0;
  }
	#form1 dt .sub{
	margin-top:-25px;	
	}
}
@media screen and (max-width: 896px) {
  #form1 dl{
	margin-bottom:0;
	}
	#form1 dl > *{
  flex-basis: 100%;
  border-bottom: none;
	}  
  #form1 dt{
	justify-content: flex-start;
	font-size: 1.45rem;
	font-weight: 500;
	border-top: solid 1px rgba(0,0,0,0.3);
  margin: 20px 0 10px;
  }
	#form1 dt .sub{
	font-size: 1.3rem;	
	}
  #form1 dt:first-child{
  margin-top: 0;
  }
	#form1 dd{
	padding-top: 0;
	}
}
/*req any*/
#form1 .req:after,
#form1 .any:after{
font-size:1.05rem;
font-weight:500;
line-height: 1;
letter-spacing:0.25em;
border:solid 1px rgba(8,75,165,1);
padding:5px 4px 7px 5px;
height: max-content;
position: relative;
top: -2px;
}
@media screen and (max-width: 896px) {
	#form1 .req:after,
  #form1 .any:after{
  order: -1;
	padding:4px 2px 5px 4px;
  margin-right: 8px;
	}
}
#form1 .req:after{
content:"必須";
color:rgba(255,255,255,0.95);
background:rgba(8,75,165,1);
}
#form1 .any:after{
content:"任意";
color: rgba(8,75,165,1);
background:rgba(255,255,255,0.95);
}
/*input textarea select*/
#form1 input,
#form1 textarea,
#form1 select{
appearance: none;
-webkit-appearance: none;
border-radius: 0;
color:rgba(0,0,0,0.85);
background:rgba(8,75,165,0.15);
border:none;
}
#form1 input,
#form1 textarea{
padding: 6px 15px;
font-size: 1.45rem;
line-height: 1.6;
}
#form1 input{
height: 26px;
}
#form1 input[type=text],
#form1 input[type=emai],
#form1 input[type=tel],
#form1 input[type=url],
#form1 textarea#detail{
width:94.5%;
}
#form1 input#zip{
width:35%;
}
#form1 input#kana,
#form1 input#address{
margin-top: 8px;
}
#form1 select{
font-size: 1.45rem;
width:100%;
height: 40px;
padding: 6px 10px;
}
#form1 select:-ms-expand {
display: none;
}
#form1 .select{
width: 98%;
position: relative;
display: inline-block;
}
#form1 .select:before {
display: block;
content: "";
position: absolute;
top: 0;
right: 0;
width: 25px;
height: 100%;
background: rgba(8,75,165,0.6);
pointer-events: none;
}
#form1 .select:after {
display: block;
content: "";
position: absolute;
top: 14px;
right: 9px;
width: 6px;
height: 6px;
border-bottom: solid 2px rgba(255,255,255,0.95);
border-right: solid 2px rgba(255,255,255,0.95);
transform: rotate(45deg);
-webkit-transform: rotate(45deg);
pointer-events: none;
}
#form1 .select.s_pref{
display: block;
margin-top: 8px;
width:40.6%;
}
.form#entry_mid #form1 .select.s_pref,
.form#entry_new #form1 .select.s_pref{
width:36.6%;
}
#form1 .period .select{
width:5.2em;
margin-right:5px;
}
#form1 .period .select:first-child{
width:6.4em;
}
@media screen and (max-width: 896px) {
  #form1 input#zip{
  width:56%;
  }
  #form1 .select.s_pref{
  width: 65.8%;
  }
	.form#entry_mid #form1 .select.s_pref,
	.form#entry_new #form1 .select.s_pref{
	width: 63.6%;
	}
}
/*checkbox radio*/
#form1 .checkbox,
#form1 .radio{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#form1 .checkbox li,
#form1 .radio li{
flex-basis: 50%;
font-weight: 500;
letter-spacing: 0.1em;
}
@media screen and (max-width: 896px) {
	#form1 .checkbox li,
  #form1 .radio li{
  flex-basis: 100%;
  }
}
#form1 .checkbox label,
#form1 .radio label{
display: inline-block;
position: relative;
top: -6px;
font-size: 1.45rem;
line-height: 1.3;
height: 22px;
margin-bottom: 8px;
padding:5px 0 5px 30px;
cursor: pointer;
}
#form1 .checkbox label > input[type="checkbox"],
#form1 .radio label > input[type="radio"]{
opacity: 0;
position: absolute;
top: 5px;
left: 0;
height: max-content;
}
#form1 .checkbox label:before,
#form1 .radio label:before{
content: "";
display: block;
position: absolute;
left: 0;
border: 2px solid rgba(0,0,0,0.3);
width: 18px;
height: 18px;
top: 5px;
border-radius: 2px;
}
#form1 .radio label:before{
border-radius: 50%;
}
#form1 .checkbox label > input[type="checkbox"]:checked + span:after,
#form1 .radio label > input[type="radio"]:checked + span:after{
content: "";
display: block;
position: absolute;
}
#form1 .checkbox label > input[type="checkbox"]:checked + span:after{
top: 8px;
left: 7px;
width: 5px;
height: 9px;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
border-bottom: 3px solid rgba(8,75,165,1);
border-right: 3px solid rgba(8,75,165,1);
}
#form1 .radio label > input[type="radio"]:checked + span:after{
top: 10px;
left: 5px;
width: 12px;
height: 12px;
background: rgba(8,75,165,1);
border-radius: 50%;
}
/*focus*/
#form1 input:focus,
#form1 textarea:focus,
#form1 select:focus{

outline:0 none;
}
/*placeholder*/
::-webkit-input-placeholder{
color:rgba(0,0,0,0.25);
}
::-moz-placeholder{
color:rgba(0,0,0,0.25);
opacity:1;
}
:-ms-input-placeholder{
color:rgba(0,0,0,0.25);
}
input:focus::-webkit-input-placeholder {
color: transparent;
}
input:focus::-moz-placeholder {
color: transparent;
}
input:focus::-ms-input-placeholder {
color: transparent;
}
input:focus::placeholder {
color: transparent;
}
/*button*/
#form1 .bt_address{
cursor: pointer;
-webkit-appearance: button;
font-size:1.35rem;
letter-spacing:0.08em;
line-height:1.3;
text-align: center;
color: rgba(255,255,255,0.95);
background: rgba(8,75,165,0.6);
border:solid 1px rgba(8,75,165,0.45);
height:30px;
padding:0 8px;
margin: 0 5px;
}
#form1 .bt_address:hover{
opacity:0.9;
}
#form1 .cta1{
margin-bottom:90px;	
}
#form1 .cta1 > *{
width:60%;
padding:0;
}
#form1 .bt_send{
cursor:pointer;
-webkit-appearance: button;
font-size: 3.2rem;
font-weight: 400;
line-height:1.6;
letter-spacing:0.15em;
text-align: center;
color: rgba(255,255,255,0.95);
background: transparent;
border:none;
width:100%;
height:max-content;
padding:10px 0 15px;
}
@media screen and (max-width: 896px) {
  #form1 .cta1{
	margin-bottom:60px;	
	}
	#form1 .cta1 > *{
	width:100%;
	}
	#form1 .bt_send{
  font-size: 2.2rem;
  }
}
/*formError*/
.formError .formErrorContent{
background:rgba(8,75,165,0.95);
border:none;
border-radius:2px;
box-shadow:none;
color:#fff;
font-size:1.35rem;
font-weight:normal;
line-height:150%;
min-width:120px;
padding:5px 10px 4px;
position:relative;
width:100%;
}
.formError .formErrorArrow div {
background: rgba(8,75,165,0.95);
border-left:none;
border-right:none;
box-shadow:none;
}
.formError .formErrorArrow .line9,
.formError .formErrorArrow .line10{
border:none;
}
.formError .formErrorArrow .line1,
.formError .formErrorArrow .line2{
background:none;
border:none;
}
.formError .formErrorArrow .line2{
border-top:none;
}
@media screen and (max-width: 896px) {
  .formError{
  .radio .formError{
  margin-top:-7px !important;
  }
}