button,input,textarea,select{border: 1px solid #ccc;}
h1 a{color: #2c4179;}

.form_box{font-size: 1.6rem;}
.form_box [type=text],.form_box textarea{padding: 5px;border: 1px solid #aaa;margin: 15px auto;border-radius: 3px;}
#formWrap h2{margin-top: 80px;}
#formWrap h3{color: #2c4179;font-size: 3rem;margin-top: 80px;text-align: center;}

.form_area{border: 1px solid #ccc;text-align: center;border-radius: 10px;}
.form_area fieldset{border: none;display: flex;flex-direction: column;padding: 30px 0;border-bottom: 1px dashed #ccc;}
.form_area fieldset:last-child{border-bottom: none;}

.txt_box{width: 520px;height: 40px;}
.msg_box{width: 800px;height: 200px;}

.form_btn{text-align: center;margin-top: 50px;border: none;}
.form_btn input[type=submit],.form_btn input[type=reset],.form_btn input[type=button]{width: 130px;height: 40px;margin: 0 7px;transition: all .3s ease-in-out;}

.form_box [type=text]:focus,.form_box textarea:focus,.form_btn input[type=submit]:hover,.form_btn input[type=reset]:hover,.form_btn input[type=button]:hover{background: #eef8fe;}

@media (width < 770px) {
  body{height: 90% !important;}

  .form_box [type=text],.form_box textarea{margin: 15px 0;}
  #formWrap h2{margin-top: 100px;}

  .form_area fieldset{padding: 30px 20px;}

  .txt_box,.msg_box{width: 100%;}

  .form_btn{margin-top: 50px;}
  .form_btn input[type=submit],.form_btn input[type=reset],.form_btn input[type=button]{width: 100%;height: 60px;margin: 0;}
  .form_btn input[type=reset],.form_btn input[type=button]{margin-top: 30px;}
}

/* 送信内容確認ページ */
table.formTable{width:100%;margin:0 auto;border-radius: 10px;border: 1px solid #ccc;}
table.formTable td{width: 100%;padding: 40px 20px 30px;text-align: center;}
table.formTable tr:not(:last-child) td{border-bottom: 1px dashed #ccc;}
table.formTable td span{margin-bottom: 10px;}

#formWrap_check{text-align: center;}
#formWrap_check h3{color: #2c4179;font-size: 3rem;margin-top: 100px;}
#formWrap_check h4{color: #ce3130;font-size: 2.5rem;margin: 100px 0 50px;}
#formWrap_check h4 span{font-size: 1.5rem;}
#formWrap_check p{margin-top: 15px;}

#formWrap_check .formTable{font-size: 1.6rem;}
#formWrap_check .formTable tr:nth-child(6) th,#formWrap_check .formTable tr:nth-child(6) td{border-bottom: none;}
#formWrap_check .formTable th{width: 50%;border-bottom: 1px dashed #ccc;color: #2c4179;}
#formWrap_check .formTable td{text-align: left;padding: 40px 20px;}

#formWrap_check p.form_btn{margin-top: 50px;}

#formWrap_check .form_btn input[type=submit],#formWrap_check .form_btn input[type=button]{padding-top: 5px;}
@media (width < 770px) {
  #formWrap_check .formTable tr,#formWrap_check .formTable th,#formWrap_check .formTable td{display: block;margin: 0 auto;}
  #formWrap_check .formTable th{border-bottom: none;padding: 20px 20px;}
  #formWrap_check .formTable td{padding: 0 20px 30px;text-align: center;}
}

/* 送信完了ページ */
.form_box_comp{margin-top: 50px;text-align: center;}
.form_box_comp p{text-align: left;margin-bottom: 100px;}
a.comp_return{font-size: 2rem;color: #2c4179;padding: 10px 20px;background: #c9ddf4;border-radius: 5px;transition: all .3s ease-in-out;}
a.comp_return:hover{background: #5b82bd;color: #fff;}
@media (width < 770px) {
  #formWrap h3{margin-top: 100px;}
}

footer{position: sticky;top: 100vh;}