@charset "utf-8";
/* CSS Document */

/*********************************************
コンタクトフォーム
*********************************************/
.sec_contact-form {
  background: #fff;
  margin: 0 -60px;
}

.contact-form-inner {
  width: min(980px, calc(100% - 60px));
  margin: 0 auto;
  padding-top: 100px;
  padding-bottom: 250px;
}

.contact-form-annotation {
  text-align: center;
  margin-bottom: 66px;
}

.required {
  color: #F00238;
}

.contact-form .item-wrap {
  display: grid;
  align-items: center;
  grid-template-columns: 13em 1fr;
  gap: 0 60px;
  margin-bottom: 30px;
}

.contact-form .item-wrap label.item {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
}

.contact-form .item-wrap label .item-name {
  font-weight: 500;
}

.contact-form .item-wrap input.textfield,
.contact-form .item-wrap textarea,
.contact-form .item-wrap .dropdown {
  width: 100%;
  height: 60px;
  background: #F3F3F3;
  border: 1px solid #E5E4E5;
  font-family: "Futura PT", "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  padding-left: 1rem;
  border-radius: 3px;
  box-sizing: border-box;
}

.contact-form .item-wrap textarea {
  height: 350px;
  padding: 1rem;
}

.contact-form .item-wrap label.inquiry {
  margin-bottom: 2.6vw;
}

.contact-form .item-wrap input::placeholder,
.contact-form .item-wrap textarea::placeholder {
  color: #B2B2B2;
}

.contact-form-privacy-policy {
  font-size: 18px;
  text-align: center;
  margin: 0 auto;
  margin-top: 60px;
  padding-bottom: 60px;
}

.item-wrap.ask {
  align-items: start;
}

.item-wrap.ask .item {
  margin-top: 1rem;
}

.contact-form-privacy-policy a {
  display: inline-flex;
  text-decoration: underline;
}

.contact-form .item-wrap .error {
  color: #F00238;
  font-size: 14px;
  margin-top: 8px;
  display: block;
}

.contact-form .item-wrap .ask_alert.error {
  margin-top: 0;
}

/* ボタン */
.form-btn {
  margin: 0 auto;
}

.form-btn input {
  background: transparent;
  height: fit-content;
  overflow: hidden;
}

.form-btn .btn-txt {
  font-size: 22px;
  color: #fff;
  font-family: "Futura PT", "Zen Kaku Gothic New", sans-serif;
}

.form-btn:hover .btn-txt {
  color: #000 !important;
}

.subpage-contact-form .sec_shop {
  margin-top: 0;
}
@media (max-width: 1200px) { 
  .sec_contact-form {
    margin: 0 -4vw;
  }
  .contact-form-inner {
    width: calc(100% - 10vw);
  }
}
@media (max-width: 1000px) {
  .contact-form .item-wrap {
    grid-template-columns: 1fr;
    gap: 6px;
  }
}
@media (max-width: 768px) {
  .contact-form-inner {
    padding-top: 16vw;
  }
  .contact-form-privacy-policy {
    font-size: 3.35vw;
  }
}
/*********************************************
確認ページ
*********************************************/
.contact-conf .item {
    border-bottom: 1px solid #000;
    display: grid;
    align-items: center;
    grid-template-columns: 9em 1fr;
    gap: 0 80px;
    margin-bottom: 30px;
    padding-bottom: 20px;
}
.contact-conf .item:last-child {
    border-bottom: none;
    display: grid;
    align-items: start;
}
.contact-conf .item-name {
  font-weight: 500 !important;
}
.contact-conf-btn-wrap {
  margin-top: 130px !important;
}

/* 送信ボタン */
#send-btn {
  margin: 0 auto;
}

#send-btn input {
  background: transparent;
  height: fit-content;
  overflow: hidden;
}

#send-btn .btn-txt {
  font-size: 22px;
  color: #fff;
  font-family: "Futura PT", "Zen Kaku Gothic New", sans-serif;
}

#send-btn:hover .btn-txt {
  color: #000;
}

/* 戻るボタン */
#back-btn input {
  background: transparent;
  height: fit-content;
  overflow: hidden;
}

#back-btn .btn-txt {
  font-size: 22px;
  color: #000;
  font-family: "Futura PT", "Zen Kaku Gothic New", sans-serif;
}

#back-btn {
  margin: 0 auto;
  margin-top: 8px;
  box-sizing: border-box;
  background-color: #fff;
  color: #000;
  border: 1.5px solid #000;
}

@media (max-width: 1000px) {
  .contact-conf .item {
    grid-template-columns: 1fr;
    padding-bottom: 0.5em;
    min-height: 4em;
    gap: 0.5em;
  }
.contact-conf .item:last-child {
    border-bottom: 1px solid #000;
  }
}
/*********************************************
完了ページ
*********************************************/
.subpage-contact-submit {
  background: #fff;
  padding-top: 210px;
  padding-bottom: 250px;
}
.subpage-contact-submit h1 {
  text-align: center;
  font-size: 48px;
  font-weight: 700;
  margin-bottom: 110px;
}
.contact-submit-note {
  text-align: center;
  margin-bottom: 130px;
}

.contact-submit-top-link {
  text-align: center;
}
.subpage-contact-submit .form-hidden {
  display: none;
}
@media (max-width: 768px) {
.subpage-contact-submit h1 {
    font-size: min(9vw,52px);
    margin-bottom: min(90px,2.5em);
    line-height: 1.3;
  }
  .mail-error .subpage-contact-submit h1 {
    margin-bottom: min(90px,2.5em);
  }
}