@charset "utf-8";
/* CSS Document */

/*　フォームスタイル　*/

/* パソコンで見たときは"pc"のclassがついた方が表示される */
.cont_pc { display: inline-block!important; vertical-align: top; margin: 11px 20px 0px 0px; }
.cont_sp { display: none !important; }
/* スマートフォンで見たときは"sp"のclassがついた方が表示される */
@media screen and (max-width: 768px) {
.cont_pc { display: none !important; }
.cont_sp { display: inline-block!important; margin: 0px 0px 0px 13px; }
}
.mr30 { margin-right: 30px !important; }

/*   input select textarea   */
.contact_waku input,
.contact_waku select,
.contact_waku textarea {
padding: 12px 10px 12px 12px !important;
font-size: 1.6rem;
color: #282e35;
border: solid 2px #cccccc;
margin: 0 0 0px 0px;
border-radius: 3px;
}
@media screen and (max-width: 768px) {
  .contact_waku input,
  .contact_waku select,
  .contact_waku textarea {
  padding: 7px 9px 7px 11px;
  }
}

/* ラジオボタン */
.radio_wrp {
display: flex;
flex-wrap: wrap;
padding: 0px;
}
.label {
padding: 12px 25px 0px 0px;
display: flex;
align-items: center;
cursor: pointer;
color: #282e35;
font-size: 100%;
}
.label-Input {
opacity: 0;
width: 0;
margin: 0;
}
.label-DummyInput {
position: relative;
top: 0px;
left: 0;
display: block;
width: 16px;
height: 16px;
border-radius: 50%;
transition: all .15s linear;
border: 1px solid #666;
}
.label-LabelText {
margin-left: 5px;
display: block;
}
.label-Input:checked + .label-DummyInput {
background: rgba(52, 166, 139, 1);
border: none;
}
.label-Input:checked + .label-DummyInput::before {
content: "";
display: block;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 10px;
height: 10px;
border: none;
border-radius: 50%;
background: #FFFFFF;
}
.red_sure {
padding: 0px 0px 0px 0px;
color: #fc4545;
font-size: 1.3rem;
font-weight: normal;
}
.cont_cont {
width: 100%;
margin: 15px auto 15px;
}
@media (min-width: 991px) {
  .cont_cont {
  width: 80%;
  max-width: 720px;
  margin: 60px auto 0px;
  }
}
.cont_cont  ul li {
list-style: none;
}
.cont_cont label {
font-weight: normal;
}
.read {
font-size: 1.5rem;
margin: 0px;
padding: 0px 0px 0px 20px;
color: #e82449;
}
table.contact_waku {
margin: 15px auto 0px;
width: 100%;
clear: both;
border: none;
display: table;
}
.contact_waku textarea {
height: 100px !important;
}
/* th */
.contact_waku th.title {
width: 100%;
vertical-align:middle;
padding: 13px 20px 26px 20px;
font-size: 1.7rem;
font-weight: 500;
text-align: left;
}
.contact_waku tr:last-child th,
.contact_waku tr:last-child td {  /* tableタグを角丸にする */
border-bottom: none;
overflow: hidden;
}
@media (max-width: 768px) {
  table.contact_waku {
  margin: 0px auto;
  }
  .contact_waku th.title {
  display: block;
  padding: 10px 20px 0px 15px;
  font-size: 1.6rem;
  }
}
@media (min-width: 769px) {
  .contact_waku th.title {
  width: 32%;
  padding: 13px 20px 13px 20px;
  display: clear;
  }
  .contact_waku textarea {
  height: 180px !important;
  }
}

/* td */
.contact_waku td.type {
vertical-align: middle;
padding: 15px 0px 20px 20px;
text-align: left;
width: 100%;
}
.name_blk {
display: inline-block;
width: 45%;
}
.contact_waku .frmttl {
display: inline-block;
width: 20%;
font-size: 1.7rem;
padding: 0px;
color: #221815;
}

/* ラジオボタン */
.radio_wrp {
display: flex;
flex-wrap: wrap;
}
.radio_wrp li {
padding-right: 10px;
}
@media (max-width: 768px) {
  .contact_waku td.type {
  display: block;
  padding: 5px 0px 20px 15px;
  }
  .contact_waku .frmttl {
  width: auto;
  margin: 0px 8px 0px 0px;
  font-size: 1.45rem;
  white-space: nowrap;
  color: #282e35;
  }
}
.contact_waku .sure {
padding: 0px 0px 0px 3px;
color: #fc4545;
font-size: 1.8rem;
font-weight: normal;
}
.contact_waku .font_slct {
font-size: 1.5rem;
}

/* ul */
.contact_waku ul.list_radio {
margin: 0px;
padding: 0px;
}
.contact_waku ul.add_ress {
margin: 0px;
padding: 0px;
}
.contact_waku ul.add_ress li {
padding: 0px 0px 20px 0px;
}
.contact_waku ul.add_ress li:last-child {
padding: 0px 0px 0px 0px;
}

/* input size */
@media (min-width: 768px) {
  .width_01 {
  width: 100% !important;
  }
  .width_02 {
  width: 70%;
  }
  .style01 {
  width: 85% !important;
  height: 150px !important;
  }
}
@media (max-width: 767px) {
  .width_01 {
   width: 100% !important;
  }
  .width_02 {
   width: 67%;
  }
  .style01 {
   width: 100% !important;
   height: 100px !important;
  }
}

/*　バナースタイル　*/

.bn_comfirm {
margin: 50px 0px 20px;
padding: 0px 0px 0px 0px !important;
font-size: 3.0rem;
color: #fff;
text-shadow: none !important;
border: none !important;
width: 100%;
max-width: 455px;
height: 85px;
transition: all 0.3s;
opacity: 1.0;
background: #4d7092;
border-radius: 5px;
letter-spacing: 0.1em;
}
@media (max-width: 768px) {
  .bn_comfirm {
  margin: 10px 0px 20px 0px;
  width: 90%;
  max-width: 330px;
  height: 70px;
  font-size: 2.5rem;
  }
}
.bn_comfirm:hover {
background: #124c83;
}
.bn_send {
margin: 30px 0px 0px 0px !important;
width: 197px;
height: 58px;
text-indent: -999999px;
border: none;
cursor: pointer;
background: url(../images/confirm_btn_soushin.png) left top no-repeat;
}
.bn_send:hover {
text-indent:-999999px;
background:url(../images/confirm_btn_soushin_on.png) left top no-repeat;
}
.bn_cancel {
margin: 20px 0px !important;
width: 197px;
height: 58px;
text-indent: -999999px;
border: none;
cursor: pointer;
background: url(../images/confirm_btn_cancel.png) left top no-repeat;
}
.bn_cancel:hover {
background: url(../images/confirm_btn_cancel_on.png) left top no-repeat;
}
.bn_back {
margin: 30px 0px 80px 0px !important;
width: 197px;
height: 58px;
text-indent: -999999px;
border: none;
cursor: pointer;
background: url(../images/confirm_btn_back.png) left top no-repeat;
}
.bn_back:hover {
background: url(../images/confirm_btn_back_on.png) left top no-repeat;
}
@media (max-width: 767px) {
  .bn_send,
  .bn_cancel {
  display: block;
  }
}
@media (min-width: 768px) {
  .bn_send {
  margin: 30px 10px 30px 0px !important;
  }
  .bn_cancel {
  margin: 30px 0px 30px 10px !important;
  }
}

/*　確認画面-スタイル上書き　*/

#formWrap h3 {
display: none;
}
.comfirm_txt {
text-align: center;
padding: 20px 30px 0px;
font-size: 1.7rem;
}
table.formTable {
border: solid 2px #ccc;
width: 90% !important;
max-width: 900px !important;
margin: 0px auto;
font-size:1.6rem !important;
border-radius: 5px;
border-spacing: 0; /* tableタグを角丸にする */
border-collapse: separate; /* tableタグを角丸にする */
overflow: hidden; /* tableタグを角丸にする */
}
table.formTable tr.mfp_colored {
background-color: #FFF !important;
}
table.formTable tr.mfp_achroma {
background-color: #FFF;
}
table.formTable tr th {
text-align: left;
border-right: solid 2px #ccc;
border-bottom: solid 2px #ccc;
padding: 20px 20px !important;
background: #edf4ff !important;
}
table.formTable tr td {
text-align: left;
border-bottom: solid 2px #ccc;
padding: 20px 20px !important;
}
table.formTable tr:last-of-type th,
table.formTable tr:last-of-type td { /* tableタグを角丸にする */
border-bottom: none !important;
overflow: hidden;
}
div#mfp_phase_confirm {
clear: both;
}
div#mfp_phase_confirm h4 {
font-size: 2.0rem !important;
padding: 30px 0px 30px 0px !important;
text-align: center;
}
@media (max-width: 768px) {
  table.formTable tr th,
  table.formTable tr td {
  display: block !important;
  width: 100%;
  padding: 12px 15px !important;
  }
  table.formTable tr th {
  border-right: none;
  border-bottom: none;
  }
}
@media (min-width: 769px) {
  .comfirm_txt {
  padding: 40px 0px 20px;
  font-size: 1.8rem;
  }
  table.formTable tr th {
  width: 28%;
  }
}
.mfp_thanks {
margin: 0px 0px 0px !important;
text-align: center !important;
padding: 90px 0px;
}
.mfp_thanks p {
padding: 0px 20px;
font-size: 2.0rem !important;
line-height: 250% !important;
}
@media screen and (max-width: 425px) {
  .mfp_thanks {
  padding: 30px 0px;
  }
  .mfp_thanks p {
  margin-bottom: 0px;
  font-size: 1.5rem !important;
  line-height: 200% !important;
  }
}


