@charset "UTF-8";
/* **************************************************
	フォームパーツ
************************************************** */
.mw_wp_form {
  /* チェックボックス、ラジオボタン共通 */
  /* チェックボックス */
  /* ラジオボタン */
  /* テキストボックス、テキストエリア共通 */
  /* テキストボックス */
  /* テキストエリア */
}
.mw_wp_form .horizontal-item + .horizontal-item {
  margin-left: 0 !important;
}
.mw_wp_form .flex_list_wrap {
  display: flex;
  flex-direction: column;
  gap: 25px;
}
.mw_wp_form .flex_list_wrap span {
  color: #333;
  font-size: 1.8rem;
  line-height: 2.4rem;
}
.mw_wp_form span.mwform-checkbox-field input[type="checkbox"] {
  margin-right: 0;
  display: none;
  /* ラベル */
  /* チェック後 */
}
.mw_wp_form span.mwform-checkbox-field input[type="checkbox"] + span.mwform-checkbox-field-text {
  position: relative;
  display: inline-block;
  padding-left: 34px;
  cursor: pointer;
  /* チェック前 */
}
.mw_wp_form span.mwform-checkbox-field input[type="checkbox"] + span.mwform-checkbox-field-text::before {
  position: absolute;
  content: "";
  top: 0px;
  left: 0;
  width: 24px;
  height: 24px;
  margin-top: 0;
  background: #F7F9F9;
  border: solid 1px #CCC;
  border-radius: 4px;
}
.mw_wp_form span.mwform-checkbox-field input[type="checkbox"] + span.mwform-checkbox-field-text::after {
  position: absolute;
  content: "";
  top: 5px;
  left: 6px;
  width: 12px;
  height: 9px;
  border-left: 2px solid #D3D3D3;
  border-bottom: 2px solid #D3D3D3;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.mw_wp_form span.mwform-checkbox-field input[type="checkbox"]:checked + span.mwform-checkbox-field-text::before {
  background: #1D3881;
  border: none;
}
.mw_wp_form span.mwform-checkbox-field input[type="checkbox"]:checked + span.mwform-checkbox-field-text::after {
  border-left: 2px solid #FFF;
  border-bottom: 2px solid #FFF;
}
.mw_wp_form span.mwform-radio-field {
  line-height: 24px;
}
.mw_wp_form span.mwform-radio-field input[type="radio"] {
  margin-right: 0;
  display: none;
  /* チェック後 */
}
.mw_wp_form span.mwform-radio-field input[type="radio"] + span.mwform-radio-field-text {
  position: relative;
  display: inline-block;
  padding-left: 34px;
  cursor: pointer;
  /* チェック前 */
}
.mw_wp_form span.mwform-radio-field input[type="radio"] + span.mwform-radio-field-text::before {
  position: absolute;
  content: "";
  top: 10px;
  left: 0;
  width: 24px;
  height: 24px;
  margin-top: -10px;
  background: #F7F9F9;
  border: solid 1px #CCC;
  border-radius: 12px;
}
.mw_wp_form span.mwform-radio-field input[type="radio"] + span.mwform-radio-field-text::after {
  position: absolute;
  content: "";
  width: 14px;
  height: 14px;
  top: 50%;
  left: 5px;
  transform: translateY(-50%);
  background: #CCC;
  border-radius: 50%;
}
.mw_wp_form span.mwform-radio-field input[type="radio"]:checked + span.mwform-radio-field-text::after {
  background: #1C4388;
}
.mw_wp_form input[type="text"], .mw_wp_form textarea {
  width: 100%;
  border: 1px solid #CCC;
  color: #333;
  background-color: #F7F9F9;
}
.mw_wp_form input[type="text"]::placeholder, .mw_wp_form textarea::placeholder {
  color: #969696;
}
.mw_wp_form input[type="text"] {
  height: 50px;
  padding: 11px 19px 9px;
}
.mw_wp_form textarea {
  height: 200px;
  padding: 12px 15px 12px;
}
@media (min-width: 768px) {
  .mw_wp_form input[type="text"] {
    height: 50px;
  }
  .mw_wp_form .flex_list_wrap {
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
    gap: 10px 39px;
  }
  .mw_wp_form textarea {
    height: 200px;
  }
}
/* **************************************************
	form 内
************************************************** */
.mw_wp_form {
  /* 必須メッセージ */
  /* フォーム */
  /* 個人情報ポリシー */
  /* 同意関連 */
  /* ボタン */
}
.mw_wp_form .msg_input, .mw_wp_form .msg_conf, .mw_wp_form .msg_complete {
  display: none;
  color: #333;
  font-size: 1.6rem;
  line-height: 3rem;
  padding-bottom: 30px;
}
.mw_wp_form span.required {
  padding: 0 0 0 10px;
  font-weight: normal;
  color: #F00;
  font-size: 1.4rem;
  line-height: 1.9rem;
}
.mw_wp_form .form_container dl.form {
  /* エラーメッセージ */
}
.mw_wp_form .form_container dl.form span.error {
  color: #F00;
  padding-top: 7px;
  font-weight: bold;
}
.mw_wp_form .form_container dl.form dt {
  padding-bottom: 7px;
  font-weight: bold;
}
.mw_wp_form .form_container dl.form dd {
  margin-bottom: 23px;
}
.mw_wp_form .p_policy {
  margin-bottom: 34px;
}
.mw_wp_form .p_policy .title {
  font-weight: bold;
  padding-bottom: 7px;
}
.mw_wp_form .p_policy .content {
  border: 1px solid #CCC;
  padding: 13px 19px;
  height: 200px;
  overflow-y: scroll;
  line-height: 2.7rem;
}
.mw_wp_form .consent_wrap {
  /* 同意メッセージ */
  border-bottom: 1px solid #CCC;
  padding-bottom: 32px;
  margin-bottom: 30px;
  /* 同意チェック */
}
.mw_wp_form .consent_wrap .consent_msg {
  padding-bottom: 36px;
  line-height: 2.7rem;
}
.mw_wp_form .consent_wrap .consent_check {
  display: flex;
  align-items: center;
  gap: 7px;
}
.mw_wp_form .consent_wrap .consent_check .mwform-checkbox-field .mwform-checkbox-field-text {
  font-weight: bold;
}
.mw_wp_form .consent_wrap .consent_check .mwform-checkbox-field .mwform-checkbox-field-text:before {
  top: -1px;
}
.mw_wp_form .consent_wrap .consent_check .mwform-checkbox-field .mwform-checkbox-field-text:after {
  top: 4px;
}
.mw_wp_form .consent_wrap .consent_check .required {
  padding: 0;
  min-width: 35px;
}
.mw_wp_form .btn_wrap {
  flex-direction: row;
  justify-content: center;
}
@media (min-width: 768px) {
  .mw_wp_form .msg_input, .mw_wp_form .msg_conf, .mw_wp_form .msg_complete {
    line-height: 2.7rem;
    padding-bottom: 58px;
  }
  .mw_wp_form .p_policy {
    margin-bottom: 25px;
  }
  .mw_wp_form .p_policy .content {
    padding: 14px 19px;
  }
  .mw_wp_form .consent_wrap .consent_msg {
    text-align: center;
    padding-bottom: 25px;
  }
  .mw_wp_form .consent_wrap .consent_check {
    justify-content: center;
  }
}
/* **************************************************
	項目別のスタイル
************************************************** */
/* **************************************************
	入力画面のみ
************************************************** */
.mw_wp_form_input .msg_input {
  display: block;
}
.mw_wp_form_input dl.form dt.dt_type {
  padding-bottom: 12px;
}
.mw_wp_form_input dl.form dd.dd_type {
  margin-bottom: 28px;
}
/* **************************************************
	確認画面のみ
************************************************** */
.mw_wp_form_confirm {
  /* 非表示項目 */
  /* 表示項目 */
  /* フォーム */
}
.mw_wp_form_confirm span.required, .mw_wp_form_confirm .zip_search, .mw_wp_form_confirm .p_policy, .mw_wp_form_confirm .consent_wrap, .mw_wp_form_confirm dl.form .dd_post .btn_wrap {
  display: none;
}
.mw_wp_form_confirm .msg_conf {
  display: block;
}
.mw_wp_form_confirm .form_container dl.form {
  border-bottom: none;
}
.mw_wp_form_confirm .form_container dl.form dd {
  width: 100%;
  min-height: 40px;
  margin-bottom: 18px;
  padding: 6px 10px;
  background-color: #EEE;
  display: flex;
  align-items: center;
}
.mw_wp_form_confirm .form_container dl.form dd.dd_other {
  margin-bottom: 50px;
}
.mw_wp_form_confirm .btn_wrap {
  padding: 0;
}
@media (min-width: 768px) {
  .mw_wp_form_confirm {
    width: 1000px;
    margin: 0 auto;
  }
  .mw_wp_form_confirm .form_container dl.form dd {
    min-height: 45px;
    padding: 8px 10px;
  }
}
/* **************************************************
	完了画面のみ
************************************************** */
.mw_wp_form_complete .msg_complete {
  display: block;
}
.mw_wp_form_complete > h2 {
  font-size: 2.2rem;
  line-height: 2.8rem;
  padding-bottom: 20px;
  text-align: center;
}
.mw_wp_form_complete .thanks_msg_wrap .thanks_msg {
  padding-bottom: 20px;
  line-height: 2.4rem;
}
.mw_wp_form_complete .thanks_msg_wrap .thanks_msg:last-of-type {
  padding-bottom: 40px;
}
@media (min-width: 768px) {
  .mw_wp_form_complete {
    text-align: center;
  }
  .mw_wp_form_complete .thanks_msg_wrap .thanks_msg {
    line-height: 2.8rem;
  }
}
