@charset "UTF-8";
/* =====================
	お問い合わせ
 ======================= */
/** -------------------- お問い合わせページ -------------------- **/
section.contact {
  /*確認画面と完了画面を非表示*/
  /*デフォルトのサンクスメッセージを非表示*/
}

section.contact #confirm-area, section.contact #thanks-area {
  display: none;
}

section.contact .wpcf7-response-output {
  display: none;
}

section.contact .contact-lead {
  font-size: 110%;
  line-height: 1.95;
}

section.contact .contact-form {
  width: 80%;
  margin: 10% auto 0;
}

section.contact .contact-form input[type=text], section.contact .contact-form input[type=email], section.contact .contact-form input[type=tel] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  font-family: var(--font_ja);
  font-size: 90%;
  border: 1px solid #969696;
  border-radius: 0.35em;
  padding: 0.5em 1em;
}

section.contact .contact-form input[type=text]::-webkit-input-placeholder, section.contact .contact-form input[type=email]::-webkit-input-placeholder, section.contact .contact-form input[type=tel]::-webkit-input-placeholder {
  color: #D2D2D2;
}

section.contact .contact-form input[type=checkbox] {
  margin: 0;
  width: 1.5em;
  height: 1.5em;
}

section.contact .contact-form textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  font-family: var(--font_ja);
  font-size: 90%;
  border: 1px solid #969696;
  border-radius: 0.35em;
  padding: 0.5em 1em;
}

section.contact .contact-form textarea::-webkit-input-placeholder {
  color: #D2D2D2;
}

section.contact .contact-form label {
  cursor: pointer;
  font-size: 90%;
}

section.contact .contact-form select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  font-family: var(--font_ja);
  font-size: 90%;
  border: 1px solid #969696;
  border-radius: 0.35em;
  padding: 0.5em 1em;
  background: url(../img/contact/icon_down.png) no-repeat right/1em, var(--c_wht);
}

section.contact .contact-form .wpcf7-list-item:first-child {
  margin-left: 0;
}

section.contact .contact-form .wpcf7-form-control.wpcf7-checkbox {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1em 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 1em;
}

section.contact .contact-form .wpcf7-form-control.wpcf7-checkbox .wpcf7-list-item {
  margin: 0;
}

section.contact .contact-dl {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(auto, 35.6%) 0.5em 1fr;
  grid-template-columns: minmax(auto, 35.6%) 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.5em 0.5em;
}

section.contact .contact-dl dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 110%;
}

section.contact .contact-dl dt .req {
  font-size: 81.8181818182%;
  font-weight: 700;
  background: #FF0000;
  color: var(--c_wht);
  padding: 0 1em;
  border-radius: 4px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

section.contact .contact-dl dt.is-top {
  -ms-flex-item-align: start;
      align-self: flex-start;
}

section.contact .contact-dl-privacy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 1em;
     -moz-column-gap: 1em;
          column-gap: 1em;
}

section.contact .contact-dl-privacy .wpcf7-form-control-wrap {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

section.contact .contact-dl-privacy a {
  color: #0068B6;
  text-decoration: underline;
}

section.contact .contact-form-btn {
  margin-top: 10%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 5%;
     -moz-column-gap: 5%;
          column-gap: 5%;
}

section.contact .contact-form-btn input[type=submit], section.contact .contact-form-btn input[type=button] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 43%;
  padding-top: 11.24%;
  border: 0;
  font-size: 0;
  cursor: pointer;
  -webkit-transition: var(--anim);
  transition: var(--anim);
}

section.contact .contact-form-btn input[type=submit]:hover, section.contact .contact-form-btn input[type=button]:hover {
  opacity: 0.7;
}

section.contact .contact-form-btn input[type=submit].confirm_button, section.contact .contact-form-btn input[type=button].confirm_button {
  background: url(../img/contact/btn_confirm.png) no-repeat center/contain;
}

section.contact .contact-form-btn input[type=submit].back_button, section.contact .contact-form-btn input[type=button].back_button {
  background: url(../img/contact/btn_back.png) no-repeat center/contain;
}

section.contact .contact-form-btn input[type=submit].submit_button, section.contact .contact-form-btn input[type=button].submit_button {
  background: url(../img/contact/btn_submit.png) no-repeat center/contain;
}

section.contact .contact-form-btn input[type=submit]:disabled, section.contact .contact-form-btn input[type=button]:disabled {
  opacity: 0.3;
}

section.contact .contact-form-btn input[type=submit]:disabled:hover, section.contact .contact-form-btn input[type=button]:disabled:hover {
  opacity: 0.3;
}

section.contact .contact-form-btn .wpcf7-spinner {
  display: none;
}

/** -------------------- 完了ページ -------------------- **/
section.thanks .thanks-txt {
  text-align: center;
  font-size: 110%;
  line-height: 2.3;
}

section.thanks .thanks-link {
  margin-top: 8%;
}

section.thanks .thanks-link .cmn-btn {
  margin: 0 auto;
}

/* タブレット
  ------------------------ */
@media (max-width: 1100px) {
  section.contact .contact-form {
    width: 100%;
  }
}

/* スマホ
  ------------------------ */
@media (max-width: 699px) {
  /** -------------------- お問い合わせページ -------------------- **/
  section.contact .contact-lead {
    font-size: 14px;
    line-height: 1.7;
  }
  section.contact .contact-form input[type=text], section.contact .contact-form input[type=email], section.contact .contact-form input[type=tel] {
    font-size: 16px;
  }
  section.contact .contact-form textarea {
    font-size: 16px;
  }
  section.contact .contact-form label {
    font-size: 16px;
  }
  section.contact .contact-form .wpcf7-form-control.wpcf7-checkbox {
    -ms-grid-columns: auto;
    grid-template-columns: auto;
    gap: 8px;
  }
  section.contact .contact-dl {
    -ms-grid-columns: 100%;
    grid-template-columns: 100%;
    gap: 0;
  }
  section.contact .contact-dl dt {
    font-size: 16px;
    margin-bottom: 8px;
  }
  section.contact .contact-dl dd + dt {
    margin-top: 20px;
  }
  section.contact .contact-dl-privacy {
    display: block;
  }
  section.contact .contact-form-btn {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    row-gap: 12px;
  }
  section.contact .contact-form-btn input[type=submit], section.contact .contact-form-btn input[type=button] {
    width: 228px;
    height: 60px;
    padding-top: 0;
  }
  section.contact .contact-form-btn input[type=submit].submit_button, section.contact .contact-form-btn input[type=button].submit_button {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
  /** -------------------- 完了ページ -------------------- **/
  section.thanks .thanks-txt {
    font-size: 14px;
    line-height: 1.75;
  }
}
