@charset "UTF-8";
/* お問い合わせ上部の文言 */
.contact-message {
  font-size: 1rem;
  letter-spacing: 0.03em;
  line-height: 1.75;
  margin-bottom: 3rem;
}

.snow-monkey-form[data-screen=input] .contact-message--confirm,
.snow-monkey-form[data-screen=back] .contact-message--confirm {
  display: none; /* 入力画面・確認画面から戻ってきた画面では非表示 */
}

.snow-monkey-form[data-screen=confirm] .contact-message--input {
  display: none; /* 確認画面では非表示 */
}

@media screen and (min-width: 992px) {
  .contact-message {
    font-size: 1.125rem;
  }
}
/* //お問い合わせ上部の文言 */
/* 電話番号 */
.contact-tel {
  text-align: center;
  margin-bottom: 2rem;
}

.contact-tel__num {
  font-size: 2rem;
  font-weight: 700;
}

.contact-tel__num, .contact-tel__num:hover {
  color: #00b5c0;
}

.contact-tel__num-inner {
  display: inline-block;
  position: relative;
  padding-left: 1.75rem;
}

.contact-tel__num-inner::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 1.4rem;
  height: 1.4rem;
  mask: url("../images/common/icon-tel.svg") no-repeat center center/contain;
  background-color: #00b5c0;
}

.contact-tel__time {
  display: block;
}

@media screen and (min-width: 992px) {
  .contact-tel {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .contact-tel__num {
    pointer-events: none;
  }
  .contact-tel__time {
    display: inline-block;
    padding-left: 1.25rem;
  }
}
/* //電話番号 */
/* プログレストラッカー */
.contact-stat {
  display: flex;
  justify-content: center;
  align-items: baseline;
  text-align: center;
  background-color: #E7E7E7;
  font-size: 0.9rem;
  padding: 0.5rem 1rem;
}

.contact-stat__item {
  font-weight: 700;
  color: #656565;
  position: relative;
}

.contact-stat__item:not(:last-child) {
  padding-right: 2rem;
}

.contact-stat__item:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 14px;
  width: 10px;
  height: 10px;
  border-top: 1px solid #656565;
  border-right: 1px solid #656565;
}

.snow-monkey-form[data-screen=input] .contact-stat__item:first-child,
.snow-monkey-form[data-screen=back] .contact-stat__item:first-child,
.snow-monkey-form[data-screen=confirm] .contact-stat__item:nth-child(2),
.form-area--finish .contact-stat__item:nth-child(3) {
  color: #333; /* カレント表示 */
  font-size: 1.176em;
}

.contact-stat__num {
  font-size: 1.25em;
}

@media screen and (min-width: 576px) {
  .contact-stat__item {
    letter-spacing: 0.1em;
  }
}
@media screen and (min-width: 992px) {
  .contact-stat {
    font-size: 1.06rem;
  }
  .contact-stat__item:not(:last-child) {
    padding-right: 4rem;
  }
  .contact-stat__item:not(:last-child)::after {
    right: 31px;
    width: 13px;
    height: 13px;
  }
}
/* //プログレストラッカー */
/* フォーム部分 */
.smf-item__label {
  position: relative;
  padding-left: 45px;
}

.translated-ltr .smf-item__label {
  padding-left: 80px;
}

.sme-badge { /* 「必須」「任意」を絶対配置にする */
  position: absolute;
  top: 2px;
  left: 0;
  padding: 3px 6px 2px;
  font-size: 11px;
  letter-spacing: 0.05em;
  border-radius: 2px;
}

.smf-item__label__text {
  letter-spacing: 0.03em;
  font-size: 1rem;
}

.smf-form .smf-item .smf-checkbox-control,
.smf-form .smf-item .smf-radio-button-control { /* チェックボックスとラジオボタン微調整 */
  align-items: center;
  row-gap: 12px;
}

.smf-form .smf-item .smf-checkbox-control__control,
.smf-form .smf-item .smf-radio-button-control__control { /* チェックボックスとラジオボタン微調整 */
  margin-top: 0;
}

.smf-form .smf-item .smf-select-control__control { /* セレクトボックスがテキストと高さが揃っていないので揃える */
  padding: 13px 30px 13px 9px;
}

.snow-monkey-form[data-screen=confirm] .postal-search-btn { /* 確認画面では住所検索ボタン非表示 */
  display: none;
}

.form-input-item ::placeholder, .form-input-item select:has(option:checked[value=""]) {
  color: #bbb;
}

.form-item__select:has(option:checked[value=""]) {
  color: rgba(51, 51, 51, 0.3);
}

.smf-form .smf-text-control__control, .smf-form .smf-textarea-control__control {
  background-color: transparent;
  padding: 8px 20px;
  border: 1px solid #B0B0B0;
  letter-spacing: 0.05em;
  border-radius: 4px;
}

.smf-form .smf-textarea-control__control {
  padding: 1rem 20px;
}

.smf-label {
  text-align: center;
}

.smf-checkbox-control__label {
  font-size: 1.125rem;
  letter-spacing: 0.05em;
}

.privacy-text {
  line-height: 2.2;
  letter-spacing: 0.05em;
}

.smf-placeholder[data-name=agreement] {
  text-align: center;
}

.custom-error-message {
  margin-top: var(--_margin-2);
}

.form-input-item input:not(:placeholder-shown), .form-input-item textarea:not(:placeholder-shown) {
  border-color: #285328;
  background: transparent;
}

@media screen and (min-width: 576px) {
  .zip-box .smf-item__controls {
    display: flex;
    gap: 1.5rem;
  }
  .zip-box .wp-block-button__link {
    margin: 0;
  }
}
@media screen and (min-width: 992px) {
  .form-input-item { /* クラス「form-input-item」を付けた要素は２カラムに（フォーム上部の要素が２カラムにならないようにするために専用のクラスを用意） */
    display: flex;
    align-items: baseline;
  }
  .smf-item__label__text {
    font-size: 1.125rem;
  }
  .form-input-item .smf-item__col--label {
    width: 280px;
  }
  .form-input-item .smf-item__col--controls {
    width: calc(100% - 280px);
  }
  .smf-form .smf-text-control__control, .smf-form .smf-textarea-control__control {
    padding: 5px 20px;
  }
}
@media screen and (min-width: 1200px), print {
  .sme-badge {
    top: 4px;
  }
  .smf-form .smf-textarea-control__control {
    height: 15rem;
  }
}
.privacy-link {
  position: relative;
  display: inline-block;
  line-height: 1.5;
}

.privacy-link::before {
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 100%;
  height: 1px;
  content: "";
  background-color: #285328;
  transform: scale(1);
  transform-origin: left top;
  transition: transform 1.1s cubic-bezier(0.19, 1, 0.22, 1);
}

.privacy-link:hover::before {
  transform: scaleX(0);
  transform-origin: right top;
}

/* //フォーム部分 */
/* ボタンデザイン */
.smf-action {
  display: flex;
  align-items: center;
  justify-content: center;
}

.snow-monkey-form[data-screen=confirm] .smf-button-control:nth-of-type(1) {
  max-width: 30%;
}

.snow-monkey-form[data-screen=confirm] .smf-button-control:nth-of-type(2) {
  max-width: 60%;
}

.smf-button-control__control[data-action=confirm],
.smf-button-control__control[data-action=complete],
.smf-button-control__control[data-action=back] {
  color: #fff;
  background-image: none;
  font-weight: 700;
  border: none;
  transition: 0.3s;
  height: 50px;
  border-radius: 0;
}

.smf-button-control__control[data-action=confirm],
.smf-button-control__control[data-action=complete] { /* 確認・送信ボタン */
  width: 280px;
  max-width: 100%;
  border: 1px solid #285328;
  position: relative;
  background-color: transparent;
  color: #285328;
  transition: 0.3s;
  font-size: 1.1428571429rem;
  font-weight: 600;
  font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "MS PMincho", "Noto Serif JP", serif;
  letter-spacing: 0.05em;
  padding: 0.875rem 3rem 0.875rem 1.25rem;
  height: auto;
}

.smf-button-control__control[data-action=confirm]:hover,
.smf-button-control__control[data-action=complete]:hover { /* 確認・送信ボタン */
  background-color: #285328;
  color: #fff;
}

.smf-button-control__control[data-action=confirm]::before,
.smf-button-control__control[data-action=complete]::before { /* 確認・送信ボタン */
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  -webkit-transform: translateY(-50%) rotate(45deg);
  right: 80px;
  width: 0.625rem;
  height: 0.625rem;
  border-top: 1px solid #285328;
  border-right: 1px solid #285328;
  pointer-events: none;
  transition: 0.3s;
}

.smf-button-control__control[data-action=confirm]:hover::before,
.smf-button-control__control[data-action=complete]:hover::before {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}

.smf-button-control__control[data-action=back] { /* 戻るボタン */
  background-color: #adadad;
  width: 100px;
  max-width: 100%;
}

.smf-form--letter + .smf-action {
  margin-top: 2.1875rem;
}

@media (hover: hover) {
  .smf-button-control__control[data-action=confirm]:hover,
  .smf-button-control__control[data-action=complete]:hover {
    background-color: #285328;
  }
  .smf-button-control__control[data-action=back]:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 400px) {
  .smf-button-control__control[data-action=confirm],
  .smf-button-control__control[data-action=complete] { /* 確認・送信ボタン */
    width: 295px;
  }
  .smf-button-control__control[data-action=confirm]::before,
  .smf-button-control__control[data-action=complete]::before { /* 確認・送信ボタン */
    top: 48%;
  }
}
@media screen and (min-width: 992px) {
  .smf-button-control__control[data-action=confirm],
  .smf-button-control__control[data-action=complete] { /* 確認・送信ボタン */
    width: 360px;
    max-width: 100%;
    padding: 1.25rem 2rem 1.25rem 1.25rem;
    font-size: 1.25rem;
  }
  .smf-button-control__control[data-action=confirm]::before,
  .smf-button-control__control[data-action=complete]::before { /* 確認・送信ボタン */
    right: 6.375rem;
  }
}
/* //ボタンデザイン *//*# sourceMappingURL=style-contact.css.map */