@charset "utf-8";
#contact article {
  padding: clamp(50px, 10.42vw, 92px) 0 min(29.69vw, 273px);
}
/* ======================
contact__head
========================= */
.contact__head {
  max-width: 1218px;
  margin: 0 auto 78px;
}
.contact__head .contact__head-txt {
  font-size: clamp(15px, 2.34vw, 18px);
  line-height: 2.111;
  font-feature-settings: "palt";
  margin-bottom: 1.4em;
}
.contact__head .contact__head-notes {
  line-height: 2;
  font-feature-settings: "palt";
}
.contact__head .contact__head-notes li::before {
  content: "※";
}
/* ======================
contact-form
========================= */
.form {
  max-width: 1314px;
  margin: 0 auto;
}
.form-bdr {
  padding: max(35px, 8%) 0;
  margin-bottom: clamp(30px, 6.25vw, 115px);
  border: clamp(5px, 2.04vw, 20px) solid #f0f0f0;
  border-radius: clamp(6px, 2.55vw, 25px);
}
.form .inner-960 {
  width: 90%;
  max-width: 960px;
  margin: 0 auto;
}
.form dl dt {
  font-size: clamp(16px, 2.86vw, 22px);
  font-weight: 600;
  font-feature-settings: "palt";
  display: flex;
  gap: 13px;
  margin-bottom: max(10px, 2.3%);
}
.form dl dt.must::after {
  content: "必須";
  color: #fff;
  font-size: clamp(14px, 2.08vw, 16px);
  font-feature-settings: "palt";
  background: #5bb2bb;
  border-radius: 5px;
  padding: 3px 0.8em;
}
.form dl dd:not(:last-child) {
  margin-bottom: max(30px, 7%);
}
.form-bdr input,
.form-bdr textarea {
  font-size: clamp(15px, 2.47vw, 19px);
  font-weight: 500;
  line-height: 1.4;
  width: 100%;
  padding: 1.07em 3.3%;
  background: #f0f0f0;
  box-sizing: border-box;
  border: none;
}
.form .pp {
  font-size: clamp(15px, 2.6vw, 20px);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: min(13.02vw, 100px);
}
.form .pp .mwform-checkbox-field input {
  width: 2.86vw;
  max-width: 22px;
  min-width: 16px;
  height: 2.86vw;
  max-height: 22px;
  min-height: 16px;
}
.form .pp .mwform-checkbox-field-text {
  display: none;
}

.form .pp .pnote a {
  display: inline-block;
  padding: 0.8em 0;
  border-bottom: 1px solid #5bb2bb;
}
.form .pp .pnote span {
  display: inline-block;
}

.form .btnblk {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px 2%;
}

.form .btnblk .btn {
  font-size: clamp(19px, 4.04vw, 31px);
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.1em;
  color: #fff;
  width: 58.72vw;
  max-width: 451px;
  min-width: 280px;
  padding: 1em 0.5em;
  background: #5bb2bb;
  border: 2px solid #5bb2bb;
  border-radius: 20px;
  transition: 0.2s;
}
.form .btnblk .btn:hover {
  color: #5bb2bb;
  background: #fff;
}
/* ------------
確認画面
--------------- */
.mw_wp_form_confirm .form .pp .pnote {
  display: none;
}
/* ------------
完了画面
--------------- */
.thanks_ttl {
  font-size: clamp(19px, 4.04vw, 31px);
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 1.57em;
}
.thanks_txt {
  font-size: clamp(15px, 2.47vw, 19px);
  line-height: 2;
}
@media screen and (max-width: 640px) {
  .form .btnblk {
    flex-direction: column;
  }
}
@media screen and (max-width: 480px) {
  .form .btnblk .btn {
    width: 100%;
    max-width: 280px;
    min-width: initial;
  }
}
