@charset "UTF-8";

.form-body{
margin-top: 70px;
background: #eee;
padding: 40px 70px 70px;
}

.form-body .title{
text-align: center;
font-size: 32px;
font-weight: bold;
margin-bottom: 40px;
}

.comics{
text-align: center;
line-height: 2em;
font-size: 16px;
margin-bottom: 50px;
}
.comics img{
margin-bottom: 10px;
}

.progress{
width: 250px;
margin: 0 auto 50px;
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-pack: space-between;
-webkit-box-pack: space-between;
-webkit-justify-content: space-between;
justify-content: space-between;
border-top:2px solid #ccc;
}

.progress li{
position: relative;
padding-top: 25px;
color: #ccc;
}

.progress li.active{
color: #17bd94;
}

.progress li:before{
content: "\f111";
font-family: FontAwesome;
font-weight: normal;
font-style: normal;
font-size:20px;
position: absolute;
top: -11px;
left: 52%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
}

.progress li:first-child{
margin-left: -15px;
}

.progress li:last-child{
margin-right: -15px;
}

.form-content{
background: #fff;
padding: 50px;
}

.form-content dl{
text-align: left;
}

.form-content dl dt{
font-weight: bold;
margin-bottom: 15px;
}

.form-content dl dt.must:before{
content: "必須";
background: #cc0000;
color: #fff;
display: inline-block;
font-size: 12px;
padding: 3px 15px;
margin-right: 10px;
}

.form-content dl dt a{
font-weight: normal;
text-decoration: underline;
margin-left: 20px;
}

.form-content dl dd{
margin-bottom: 40px;
line-height: 1.8em;
}

.form-content dl dd.flex2col{
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-pack: space-between;
-webkit-box-pack: space-between;
-webkit-justify-content: space-between;
justify-content: space-between;
}

.form-content dl dd.flex2col .item{
flex-basis: 48%;
}

.form-content dl dd.flex3col{
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-pack: space-between;
-webkit-box-pack: space-between;
-webkit-justify-content: space-between;
justify-content: space-between;
}

.form-content dl dd.flex3col .item{
flex-basis: 31%;
text-align: left;
}



.form-content dl dd label{
margin-right: 50px;
}

.form-content dl dd input.form-control{
width: 100%;
background: #eee;
line-height: 2.4em;
border: 0;
text-indent: 1em;
}

.form-content dl dd.flex3col .item span.title{
font-size: 18px;
display: block;
text-align: left;
margin-bottom: 10px;
}

.form-content dl dd.flex3col .item input.form-control{
width: 80%;
margin-right: 5px;
}

.form-content dl dd textarea{
width: 100%;
background: #eee;
border: 0;
}

.form-content dl dd .caption{
display:block;
padding-top: 10px;
}

.form-control-address{
width: 300px;
margin-bottom: 20px;
background: #eee;
line-height: 2.4em;
border: 0;
text-indent: 1em;
}

.btn_submit{
width: 100%;
background: #17bd94;
color: #fff;
border: 0;
padding: 15px 0;
position: relative;
}

.btn_submit:hover{
opacity: 0.7;
}

.btn_back{
width: 100%;
background: #666;
color: #fff;
border: 0;
padding: 15px 0;
position: relative;
}

.btn_back:hover{
opacity: 0.7;
}

.submitbtns{
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-pack: space-between;
-webkit-box-pack: space-between;
-webkit-justify-content: space-between;
justify-content: space-between;
flex-direction: row-reverse;
}

.submitbtns .item:nth-of-type(2){
flex-basis: 25%;
}
.submitbtns .item:nth-of-type(1){
flex-basis: 70%;
}

.thx{
text-align: left;
line-height: 1.8em;
}

.thx strong{
font-weight: bold;
margin-bottom: 10px;
display: block;
}

.thx .back{
display: inline-block;
background: #eee;
padding: 5px 20px;
}

/*==== mobile スマフォ横〜用css ===*/
@media screen and (max-width: 896px){

.form-body{
margin-top: 30px;
background: #eee;
padding: 40px 20px 70px;
}

.form-body .title{
text-align: center;
font-size: 24px;
font-weight: bold;
margin-bottom: 40px;
}

.comics{
text-align: left;
line-height: 2em;
font-size: 13px;
}


.progress{
width: 200px;
}

.form-content{
background: #fff;
padding: 20px;
}

.form-content dl dt a{
display: block;
font-weight: normal;
text-decoration: underline;
margin-left: 0;
margin-top: 15px;
}

.form-content dl dd.flex2col{
display:block;
}

.form-content dl dd.flex2col .item{
display:block;
margin-bottom: 15px;
}


.form-content dl dd.flex3col{
display:block;
}

.form-content dl dd.flex3col .item{
display:block;
text-align: left;
}

.form-content dl dd.flex3col .item span.title{
padding-top: 20px;
font-size: 16px;
}
.form-content dl dd label{
display: block;
margin-right: 0px;
margin-bottom: 10px;
}

.form-control-address{
width: 100%;
max-width: 300px;
}

}



/*==== mobile スマフォ縦用css ===*/
@media screen and (max-width: 480px){


}