@charset "utf-8";
/* CSS Document */

header{border-top: 10px solid #e84709;position: relative;height: auto;}
header .logobox{position: absolute;top: 2em;left: 2em;}
/*コンテンツ部分*/

#mainSec{position: relative;background: url("../images/img_bg_pc01.png")no-repeat ;padding: 60px 0;}
#mainSec::before{content:"";background: url("../images/img_bg_pc03.png")no-repeat;background-size: contain;width: 355px;height: 169px;position: absolute;left: 0;bottom: 0;z-index: 0;}
#mainSec::after{content:"";background: url("../images/img_bg_pc02.png")no-repeat;background-size: contain;width: 618px;height: 242px;position: absolute;right: 0;top: 0;z-index: 0;}
#mainSec .Ttl_Box{position: relative;z-index: 1;}
#mainSec .season{margin-top: 2em;}

/*フォーム部分*/
#formSec{background: #ceeae8;}
#formSec .wrap{max-width: 850px;}
#formSec .Ttlarea .form_ttl{line-height: 1.2em;font-size:35px;font-weight: bold;}
#formSec .Ttlarea .form_ttl span{font-size:30px ;color:#00aeac;display: inline-block;padding: 0 10px;border-bottom: 2px solid #00aeac;line-height: 0.6;}

#formSec .formarea{margin-top: 2em;}
select, 
textarea, 
input{
    display: inline-block;
    padding: 10px 15px;
    width: 100%;
    max-width: 100%;
    border: none;
    box-shadow: none;
    color: #000;
	font-weight: normal;
    font-size: 18px;
    background: #F2F2F2;
}
label{font-size: 20px;display: inline-block;margin: 0em 0.5em;font-weight: bold;}


#formTb span.required {color: #e84709;padding:3px 5px;font-size: 65%;margin-left: 5px;border: 1px solid #e84709;border-radius: 5px;}
#formTb dd .atenTxt{line-height: 1.5;margin-top: 0.5em;color: #e84709;font-weight: bold;}
#formTb dd .atenTxt.black{color: #000;font-weight: 500;}
#formTb .tbl-form {width: 100%; }
#formTb .tbl-form dl{display: flex;justify-content: flex-start;align-items: stretch;border-bottom: 1px solid #ffffff;}
#formTb .tbl-form dl dt {text-align: left;padding:1.5em 1em;font-weight:bold;position:relative; width: 30%;font-size: 20px;}
#formTb .tbl-form dl dd{width: 70%;padding: 1.5em 1em;}
#formTb .tbl-form dl dd.flex{display: flex;justify-content: flex-start;align-items: center;flex-wrap: wrap;}
#formTb .tbl-form dl dd.flex span:first-child{margin-right: 10px;}
#formTb .tbl-form dl dd.flex span{display: block;width: 49%;}

#formTb .tbl-form dl.birth select{width: calc(80% / 3);}
#formTb .tbl-form dl.birth p{padding:0 10px 0 5px;font-size: 18px;}
#formTb .tbl-form dl.gender input{width: 15px;vertical-align: baseline;}
#formTb .tbl-form dl.gender label{margin: 0 1em 0 0;}
#formTb .tbl-form dl.gender input[type="radio"] {
  position: relative;
  width: 18px;
  height: 18px;
  border: 1px solid #000;
  border-radius: 50%;
  vertical-align: -2px;
  padding: 0;
    -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

#formTb .tbl-form dl.gender input[type="radio"]:checked:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #e84709;
  content: '';
}

#formTb .tbl-form dl.address label{width: 100%;margin: 10px 0;display: flex;align-items: center;}
#formTb .tbl-form dl.address span{width: 20%;}
#formTb .tbl-form dl.address input{width: 80%;}


#formTb .privacy_check{margin-top: 2em;}
#formTb .privacy_check a:link{color: #e84709;}
#formTb .privacy_check label{font-size: 22px;}
#formTb .privacy_check .checkItem{display: none;}
#formTb .privacy_check .checkParts{ padding-left: 1em; position: relative; margin: 0;}
#formTb .privacy_check .checkParts::before {
    content: "";
    display: block;
    width: 1em;
    height: 1em;
    border: 1px solid #999999;
    background-color: #FFF;
    position: absolute;
    top: 0em;
    left: 0;
    border-radius: 5px;}

#formTb .privacy_check .checkItem:checked + .checkParts::after {
    content: "";
    display: block;
    width: 0.4em;
    height: 0.8em;
    border-bottom: 3px solid #E9470B;
    border-right: 3px solid #E9470B;
    position: absolute;
    top: 0em;
    left: 0.3em;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);}

#formTb .btnBox {margin:3em 0 0em;text-align: center;}
#formTb .btnBox .submit {display: inline-block;color: #fff;padding: 10px 100px;margin-right: 3px;cursor: pointer;width: inherit;background: #E9470B;font-size: 30px;font-weight: bold;border:none;border-radius: 50vw;position: relative;}
#formTb .btnBox .submit::after{
    }
#formTb .btnBox .submit::after{    
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 1.5vw;
    width: 1vw;
    height: 1vw;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);}
#formTb .btnBox .submit:hover {opacity: 0.8;}
#formTb .btnBox #prevBtn{ background: none;display: block;color: #000;text-align: center;margin: auto; border-bottom: 1px solid; border-radius: 0; padding: 0; margin-top: 1em; font-size: 20px;font-weight: normal;}
#formTb .btnBox #prevBtn::after{display: none;}

@media screen and (max-width: 767px) {
    header .logobox{top: 15px;left: 10px;}
    header .logobox img{width: 43%;}
    #mainSec {position: relative;background: url(../images/img_bg_sp.jpg) no-repeat;padding:25vw 5vw 16vw;background-size: 100% auto;}
    #mainSec::before,
    #mainSec::after{display: none;}
    #mainSec .season{margin-top: 1em;}

    section{padding: 40px 0;}
    select, 
    textarea, 
    input{font-size: 16px;padding: 15px;}
    label{font-size: 16px;}
    #formTb span.required{margin-left: 5px;}
    #formTb dd .atenTxt{font-size:90% ;}

    #formSec .Ttlarea .form_ttl{font-size:7vw;}
    #formSec .Ttlarea .form_ttl span{font-size:7vw;}

    #formTb .tbl-form dl{display: block;}
    #formTb .tbl-form dl dt{width: 100%;padding: 1em 1em 0;font-size: 4.5vw;}
    #formTb .tbl-form dl dd{width: 100%;padding: 0.5em 1em 1em;}
    #formTb .tbl-form dl dd.flex span{width:48%;}
    #formTb .tbl-form dl.birth select{width: calc(73% / 3);padding: 15px 10px;}
    #formTb .tbl-form dl.birth p{padding: 0 5px 0 5px;font-size: 100%;}
    #formTb .tbl-form dl.gender input[type="radio"]{vertical-align: -6px;}
    #formTb .tbl-form dl.gender label{margin: 0 0.2em 0 0;font-size: 110%;}
    #formTb .tbl-form dl.address label{display: block;}
    #formTb .tbl-form dl.address input{width: 100%;}
    

    #formTb .privacy_check label{font-size: 110%;}
    #formTb .privacy_check .checkParts{padding-left: 1em;}
    #formTb .privacy_check .checkParts::before{top:0;}

    #formTb .btnBox{margin: 3em 0 2em;}
    #formTb .btnBox .submit{padding: 10px 80px;font-size: 6vw;}
    #formTb .btnBox .submit::after{width: 4vw;height: 4vw;right: 5.5vw;}
}

@media (min-width: 768px) and (max-width: 1050px) {
    header .logobox img{width: 15vw;}
    #mainSec{padding: 9vw 0px 3vw;}
    #mainSec::before{width: 35%;height: 45%;}
    #mainSec::after{width: 45%;height: 100%;}
    #mainSec .Ttl_Box{width: 65vw;margin: auto;}
    
    #formTb .tbl-form dl dt{padding: 1em 0.5em;font-size: 18px;}
    #formTb .tbl-form dl dd{padding: 1em 0.5em 1em 0;}

}


/* 確認画面 */
#formSec.confirm{background: #fff;}
#formSec.confirm h2{font-size: 35px;}
#formTb #confirmBox{width: 700px;margin: auto;}
#formTb #confirmBox .tbl-form{margin-top: 3em;}
#formTb #confirmBox .tbl-form dl{border-bottom: 1px solid #00aeac;}
#formTb #confirmBox .tbl-form dl dt{padding:1em;width: 35%;}
#formTb #confirmBox .tbl-form dl dd{padding: 1em;font-size: 140%;width: 65%;} 

@media screen and (max-width: 767px) {
    #formTb #confirmBox{width: 100%;}
    #formTb #confirmBox .tbl-form dl{padding: 1em 0;}
    #formTb #confirmBox .tbl-form dl dt{padding: 0 0.5em;width: 100%;font-size: 120%;}
    #formTb #confirmBox .tbl-form dl dd{padding: 0 0.5em;width: 100%;font-size: 120%;}
    #formTb .btnBox #prevBtn{font-size: 140%;}
}


/* 完了画面 */
#formSec.thanks{background: #fff;}
#formSec.thanks h2{font-size: 35px;}
#formTb #thanksbox{margin-top: 2em;}
#formTb #thanksbox p{margin-bottom: 1em;font-size: 15px;}


@media screen and (max-width: 767px) {
    #formTb #thanksbox{margin: 2em 1em 0;}
    #formTb #thanksbox p{text-align: left;}
    #formTb #thanksbox p.sp_tac{text-align: center;}
}

