body{
    margin: 0;
    padding: 0;
    background: #F4F4F4;
}

input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}


.form-wrapper{
    margin: 0;
    padding: 0;
    background: #F4F4F4;
    font-size: 13px;
    font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
}

.form-wrapper .form-wrapper-inner {
    width: 100%;
    box-sizing: border-box;
    max-width: 900px;
    margin: 0 auto;
    padding: 50px 69px;
    border: 1px solid #999999;
    background: #FFFFFF;
}

.form-wrapper h2 {
    margin: 0;
    padding: 5px;
    background: #414444;
    color: #FFFFFF;
    font-size: 150%;
    font-weight:bold;
    text-align:center;
}

.form-wrapper .header_message {
 text-align:center;
 margin: 1.5em 0;
}

.form-wrapper .header_message > span{
    font-size: 150%;
    display: block;
    margin-bottom: 0.8em;
   }

   .form-wrapper .header_message > span.red{
    color: #FF0000;
   }   

   .form-wrapper .header_message ul{
       padding-left: 1.5em;
}


   .form-wrapper .header_message ul li{
   text-align: left;
   margin-bottom: 1em;
}

.form-wrapper .header_message ul li span{
    display: block;
    text-indent: -1em;
    padding-left: 1em;
}

.form-wrapper .header_error {
    margin: 0;
    margin-bottom: 20px;
    padding: 20px;
    border: 2px solid #FF0000;
    color: #FF0000;
    font-size: 100%;
    font-weight:normal;
    text-align:left;
    box-sizing: border-box;

}

.form-wrapper dl {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    padding-top: 20px;
    max-width: 760px;
    width: 100%;
    border-bottom: 1px solid #DDDDDD;
    border-top: 1px solid #DDDDDD;
    line-height: 1.2;
}

.form-wrapper.confirm dl {
padding-top: 0;
}    

.form-wrapper dt {
 width: 220px;
 margin: 0;
 padding: 18px 15px 18px 0;
 padding-left: 5px;
 box-sizing: border-box;
 color: #333333;
 background-color: #FFFFFF;
 font-size: 108%;
 font-weight:bold;
 text-align:left;
 vertical-align: top;
}

.form-wrapper dt,
.form-wrapper dd{
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.form-wrapper.confirm dt,
.form-wrapper.confirm dd{
    border-bottom: 1px solid #DDDDDD;
}

.form-wrapper.confirm dt:last-of-type,
.form-wrapper.confirm dd:last-of-type{
    border-bottom: none;
}

.form-wrapper dd {
 width: 520px;
 margin: 0;
 padding: 18px 0;
 color: #5F5F5F;
 font-size: 108%;
 font-weight: bold;
 text-align: left;
}

.form-wrapper dd span:not([class]){
    font-size: 80%;
    line-height: 2:
   } 

.form-wrapper .input {
 width: 100%;
 margin-bottom: 5px;
 padding: 10px;
 color: #333333;
 border: 1px solid #999999;
 border-radius: 3px 3px 3px 3px;
 box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.2) inset;
 font-size: 108%;
 text-align: left;
}

.form-wrapper dt span:not([class]) {
    line-height: 2em;
    display: block;
   }

.form-wrapper .need {
 color: #CC0000;
 font-size: 100%;
 font-weight:bold;
 text-align:left;
}

.form-wrapper .error-msg {
 display: block;
 color: #DD0000;
 font-size: 100%;
 font-weight:bold;
 margin-bottom: 5px;
 text-align:left;
}

.form-wrapper .error-agreement {
  text-align: center;
  margin-top: 15px;
}

.form-wrapper .error {
 background: #FFE4E4;
}

@media screen and (min-width:501px) and (max-width:900px) {
 .form-wrapper .form-wrapper-inner {
  padding: 4%;
 }
 .form-wrapper .header_text {
  margin: 0;
  padding: 15px 70px 15px 70px;
  background: #F1F1F1;
  color: #111111;
  font-size: 93%;
  font-weight:normal;
  text-align:left;
 }
 .form-wrapper .header_error {
  padding: 15px;
}
    
 .form-wrapper dt {
  width: 34%;
  margin: 0;
  padding: 25px 10px 25px 0;
 }


 .form-wrapper dd {
  display: inline-block;
  width: 66%;
  padding: 25px 0;
  color: #5F5F5F;
  font-size: 100%;
 }

 .form-wrapper .input {
  margin-bottom: 8px;
 }


 .form-wrapper .need {
  color: #CC0000;
  font-size: 100%;
  font-weight:bold;
  text-align:left;
 }

 .form-wrapper .error-msg {
  display: block;
  color: #DD0000;
  font-size: 100%;
  font-weight:bold;
  margin-bottom: 5px;
  text-align:left;
 }

 .form-wrapper .error-agreement {
  text-align: center;
  margin-top: 15px;
 }

 .form-wrapper .error {
  background: #FFE4E4;
 }

}


@media screen and (max-width:500px) {
 .form-wrapper .form-wrapper-inner {
  padding:5% 4%;
  border-left: none;
  border-right: none;
 }

 .form-wrapper .header_text {
  margin: 0;
  padding: 15px 15px 15px 15px;
  background: #F1F1F1;
  color: #111111;
  font-size: 85%;
  font-weight:normal;
  text-align:left;
 }

 .form-wrapper .header_message {
  margin: 0;
  padding: 1rem 0 1rem 0;
  color: #111111;
  font-size: 100%;
  font-weight:normal;
  text-align:left;
 }

 .form-wrapper .header_message > span br{
     display: none;
   }

   .form-wrapper .header_message ul + span{
       font-size: 130%;
       margin-bottom: 0
  }   

 .form-wrapper .header_error {
    width: 100%;
    margin: 0 auto 1rem;
    padding: 0.8rem;
 }

 .form-wrapper dl {
  margin: 0 0 10px 0;
  padding: 20px 0 0 0; 
 }

 .form-wrapper dt {
    display: block;
    width: 100%;
    padding: 0rem 0 0.4rem 0;
    vertical-align: middle;
 }

 .form-wrapper.confirm dl {
     padding-top: 0;
   }

    .form-wrapper.confirm dt{
        border-bottom: none;
        padding-top: 1.5rem;
    }

    .form-wrapper.confirm dd {
        padding-bottom: 1.5rem;
    }


 .form-wrapper dd {
  position: relative;
  display: block;
  width: 100%;
  padding: 0rem 0 1.8rem 0;
 }

 .form-wrapper dt span:not([class]){
     display: inline;
     line-height: 1;
 }
 
 .form-wrapper .input {
  margin-bottom: 8px;
  line-height: 1.8em;
 }



 .form-wrapper .need {
  color: #CC0000;
  font-size: 100%;
  font-weight:bold;
  text-align:left;
 }

 .form-wrapper .error-msg {
  display: block;
  color: #DD0000;
  font-size: 100%;
  font-weight:bold;
  margin-bottom: 5px;
  text-align:left;
 }

 .form-wrapper .error-agreement {
  text-align: center;
  margin-top: 15px;
 }

 .form-wrapper .error {
  background: #FFE4E4;
 }


}

/*pc*/
.privacy {
max-width: 600px;
width: 100%;
margin: 0 auto;
text-align: left;
}
.privacy .privacy_inner {
height: 150px;
overflow: auto;
padding: 2em;
background: #ddd;
margin-bottom: 2em;
}

.privacy .privacy_inner p:first-of-type{
    margin-top: 0;
    }

.privacy h3{
font-size: 110%;
padding: 0;
margin: 0;
list-style: 3;
margin-top: 20px;
}
.privacy .privacy_agreement{
text-align: center;
}
.form-wrapper label.checkAgree{
padding: 8px 20px;
border: solid 2px #c3fa71;
font-size: 1.2em;
cursor: pointer;
}

.form-wrapper label.checkAgree input{
    margin-right: 10px;
    }




/*申込内容確認ボタン*/
.form-wrapper input.submit {
    width: 270px;
    height: 50px;
    margin: 40px auto 0;
    border: hidden;
    display: block;
    border-radius: 3px 3px 3px 3px;
    color: #FFFFFF;
    background: rgb(21, 112, 12);
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.4);
    font-size: 170%;
    font-weight: normal;
    text-align: center;
    cursor: pointer;
}

.form-wrapper input.submit[disabled="disabled"] {
    background: rgb(132 196 126);
    cursor: none;

}

.form-wrapper input.submit:hover {
filter: alpha(opacity=90);
-ms-filter: alpha(opacity=90);
opacity: 0.9;
}

.form-wrapper input.submit[disabled="disabled"]:hover {
    filter: alpha(opacity=100);
    -ms-filter: alpha(opacity=100);
    opacity: 1.0;
}

@media screen and (min-width:501px) and (max-width:900px) {
    .form-wrapper input.submit {
        width: 40%;
    }
}

@media screen and (max-width:500px) {
    .form-wrapper input.submit {
        width: 90%;
    }

    .form-wrapper .submit_or_back input{
        margin-top: 2%;
    }

    }

.form-wrapper input[name=back] {
    border: hidden;
    background: #303030;
    background: linear-gradient(
    to bottom,
    #606060 0%,
    #303030 100%
    );
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.4);
}

.form-wrapper .submit_or_back{
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
}

.form-wrapper .submit_or_back input{
    margin-left: 1%;
    margin-right: 1%;
    width: 100%;
}



@media screen and (min-width:901px) {

    .form-wrapper .submit_or_back input{
        width: 270px;
    }
}

@media screen and (max-width:900px) {
    .form-wrapper .to_top input.submit{
        margin-top: 0;
    }        
}

/*ロゴ*/
.logoArea{
    width: 100%;
    box-sizing: border-box;
    max-width: 900px;
    margin: 0 auto;
}

.logoArea h1{
    margin: 0;
    padding: 1em 0;
    
}

@media screen and (max-width:500px) {
    /*ロゴ*/
    .logoArea img{
        width: 100%;
        max-width: 434px;
    }

    .logoArea{
        width: 94%;
        text-align: center;
    }
}

/*copyright*/
.copyright{
    margin: 0;
    text-align: center;
    padding: 1em 3%;
}

