@charset "UTF-8";
/* ===============================
  お問い合わせ
=============================== */
/*------------------------------
contact
------------------------------*/
.contact__container {
  padding: 80px 0;
}
@media (max-width: 767px) {
  .contact__container {
    padding: 15px 0 40px;
  }
}

.contact-steps {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  width: 23.665480427%;
}
@media (max-width: 767px) {
  .contact-steps {
    justify-content: space-between;
    width: 74.3016759777%;
  }
}

.contact-step {
  width: 15.254887218%;
  position: relative;
}
.contact-step:nth-child(n+2) {
  margin-left: 27.0676691729%;
  position: relative;
}
.contact-step:nth-child(n+2)::before {
  content: "";
  position: absolute;
  left: -40%;
  top: 50%;
  transform: translate(-100%, -50%);
  background: #78747B;
  width: 95.2380952381%;
  height: 1px;
}
@media (max-width: 767px) {
  .contact-step {
    width: 15.254887218%;
  }
  .contact-step:nth-child(n+2) {
    margin-left: 20.1117318436%;
  }
  .contact-step:nth-child(n+2)::before {
    left: -40%;
  }
}

.contact-step__number {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2em;
  aspect-ratio: 1/1;
  font-size: min(1.25rem, 1.6014234875vw);
  font-weight: 400;
  line-height: 1.2;
  background: #78747B;
  color: #fff;
  border: 1px solid #78747B;
  border-radius: 50%;
}
@media (max-width: 767px) {
  .contact-step__number {
    font-size: 5.1282051282vw;
  }
}

[data-form-mode=in] .contact-step:nth-child(1) .contact-step__number,
[data-form-mode=con] .contact-step:nth-child(2) .contact-step__number,
.contact-step.is-current .contact-step__number {
  color: #78747B;
  background: #fff;
}

.contact-step__label {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%, 0.6em);
  line-height: 1;
  width: 5em;
  letter-spacing: 0.7em;
  text-indent: 0.7em;
  display: block;
  font-size: min(0.9375rem, 1.2010676157vw);
  font-weight: 400;
  text-align: center;
}
@media (max-width: 767px) {
  .contact-step__label {
    font-size: 3.8461538462vw;
  }
}

.contact__form {
  width: 71.1743772242%;
  margin: 9.7% auto 0;
}
@media (max-width: 767px) {
  .contact__form {
    width: 100%;
    margin-top: 18%;
  }
}

.contact__item {
  display: flex;
  font-size: min(0.9375rem, 1.2010676157vw);
  font-weight: 500;
  align-items: flex-start;
}
.contact__item:nth-child(n+2) {
  margin-top: 3%;
}
.contact__item.mt1 {
  margin-top: 7.4%;
}
.contact__item.mt2 {
  margin-top: 5%;
}
@media (max-width: 999px) {
  .contact__item {
    font-size: 0.625rem;
  }
}
@media (max-width: 767px) {
  .contact__item {
    font-size: 3.8461538462vw;
    display: block;
  }
  .contact__item.mt1 {
    margin-top: 11%;
  }
  .contact__item.mt2 {
    margin-top: 11%;
  }
  .contact__item.mt3 {
    margin-top: 17%;
  }
  .contact__item.mt4 {
    margin-top: 6%;
  }
}

.contact__label {
  display: flex;
  flex-direction: column;
  position: relative;
  padding-left: 6.875%;
  width: 34.4%;
  font-weight: 600;
}
.contact__label:nth-of-type(n + 2) {
  margin-top: 32px;
}
@media (max-width: 767px) {
  .contact__label {
    padding-left: 3.8em;
    width: 100%;
  }
  .contact__label:not(:has(.contact__required)) {
    padding-left: 0;
  }
}

.contact__label--top {
  justify-content: flex-start;
}

.contact__note {
  font-size: min(0.75rem, 0.9608540925vw);
  font-weight: 500;
  position: absolute;
  top: 100%;
  left: 0%;
}
.contact__note.type2 {
  transform: translate(0%, 1em);
}
@media (max-width: 767px) {
  .contact__note {
    font-size: 3.0769230769vw;
  }
  .contact__note.type3 {
    left: unset;
    right: 0%;
    top: 50%;
    transform: translate(105%, -50%);
  }
}

.contact__input {
  position: relative;
  width: 65.6%;
  font-weight: 500;
}
.contact__input input[type=text],
.contact__input input[type=tel],
.contact__input input[type=email],
.contact__input select,
.contact__input textarea {
  font-family: inherit;
  font: inherit;
  color: inherit;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  width: 100%;
  border: none;
  background: #F6ECE9;
  padding: 0.8em;
}
.contact__input textarea {
  resize: vertical;
  height: 149px;
}
@media (max-width: 767px) {
  .contact__input {
    width: 100%;
    margin-top: 2.75%;
  }
  .contact__input.mt2 {
    margin-top: 10%;
  }
  .contact__input.mt3 {
    margin-top: 5%;
  }
}

.contact__input:has(select) {
  position: relative;
}
.contact__input:has(select)::after {
  content: "";
  position: absolute;
  border: 1px solid;
  border-top: none;
  border-right: none;
  aspect-ratio: 1/1;
  width: 10px;
  right: 10px;
  top: 50%;
  transform: translate(0, -50%) rotate(-45deg);
  transform-origin: left 50%;
  pointer-events: none;
}

.contact__post-code {
  display: flex;
  align-items: center;
}
.contact__post-code > span {
  width: 40%;
  margin-left: 8px;
}
@media (max-width: 767px) {
  .contact__post-code > span {
    width: 100%;
  }
}

.contact__required {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  display: inline-block;
  font-size: min(15px, 0.78125vw);
  font-weight: 500;
  padding: 0.3em 0.5em;
  color: #C2734E;
  background: #F6ECE9;
}
@media (max-width: 999px) {
  .contact__required {
    font-size: 0.625rem;
  }
}
@media (max-width: 767px) {
  .contact__required {
    font-size: 3.8461538462vw;
  }
}

.contact__field {
  position: relative;
  line-height: 1.6;
}
@media (max-width: 767px) {
  .contact__field {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}

.contact__privacy {
  margin-top: 3%;
  font-size: min(0.9375rem, 1.2010676157vw);
  font-weight: 400;
}
@media (max-width: 767px) {
  .contact__privacy {
    font-size: 3.8461538462vw;
  }
}

.contact__privacy-message {
  line-height: 2;
  border: 1px solid #78747B;
  padding: 1em;
  height: 120px;
  overflow: scroll;
  overflow-x: hidden;
}
@media (max-width: 999px) {
  .contact__privacy-message {
    font-size: 0.625rem;
  }
}
@media (max-width: 767px) {
  .contact__privacy-message {
    font-size: 3.8461538462vw;
  }
}

.contact__privacy-consent {
  margin-top: 3%;
  justify-content: center;
}
@media (max-width: 767px) {
  .contact__privacy-consent {
    margin-top: 9%;
  }
}

.contact__submit {
  text-align: center;
  margin-top: 42px;
}
@media (max-width: 767px) {
  .contact__submit {
    margin-top: 32px;
  }
}

.contact__button {
  display: block;
  width: 25%;
  margin: 0 auto;
  cursor: pointer;
  position: relative;
  background: #C2734E;
  color: #fff;
  font-size: min(0.9375rem, 1.2010676157vw);
  padding: 1em 0;
  font-weight: 500;
  text-align: center;
}
.contact__button input {
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
}
@media (max-width: 767px) {
  .contact__button {
    font-size: 3.8461538462vw;
    width: 56%;
  }
}

.contact__choices {
  display: flex;
  flex-wrap: wrap;
  width: 103%;
  gap: 9px 0;
}
.contact__choices label, .contact__choices > span {
  width: 33.3%;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .contact__choices {
    width: 100%;
    gap: 17px 0;
  }
  .contact__choices label, .contact__choices > span {
    width: 50%;
  }
  .contact__choices > span.type2 {
    width: 100%;
  }
}

.contact__choices.type2 {
  width: 100%;
}
.contact__choices.type2 label, .contact__choices.type2 > span {
  width: 25%;
}
@media (max-width: 767px) {
  .contact__choices.type2 label, .contact__choices.type2 > span {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .contact__choices.type3 label, .contact__choices.type3 > span {
    width: 100%;
  }
}

/*------------------------------
thanks
------------------------------*/
.thanks__container {
  padding: 80px 0;
}
@media (max-width: 767px) {
  .thanks__container {
    padding: 15px 0 40px;
  }
}

.thanks__content {
  background: #F6ECE9;
  text-align: center;
  color: #78747B;
  padding: 1.2%;
  width: 71%;
  max-width: 100%;
  margin: 9% auto 0;
}
@media (max-width: 767px) {
  .thanks__content {
    margin-top: 19%;
    padding: 4.469273743%;
    width: 100%;
  }
}

.thanks__heading {
  font-size: min(1.25rem, 1.6014234875vw);
  font-weight: 400;
  line-height: 2.4;
  padding-bottom: 0.4em;
  position: relative;
}
.thanks__heading::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #78747B;
  width: 12.8em;
  height: 1px;
}
@media (max-width: 767px) {
  .thanks__heading {
    font-size: 4.1025641026vw;
    line-height: 1.5;
    padding-bottom: 1em;
  }
  .thanks__heading::after {
    width: 15.8em;
  }
}

.thanks__message {
  font-size: min(0.9375rem, 1.2010676157vw);
  font-weight: 400;
  line-height: 1.6;
  padding-top: 1em;
}
@media (max-width: 767px) {
  .thanks__message {
    font-size: 3.5897435897vw;
  }
}

.thanks__button {
  margin-top: 3.5587188612%;
  text-align: center;
}
.thanks__button a {
  background: #C2734E;
  color: #fff;
  border: 1px solid #C2734E;
}
@media (max-width: 767px) {
  .thanks__button {
    margin-top: 11.1731843575%;
  }
}

.wpcf7-response-output { /* エラー&送信完了テキスト */
  font-size: 16px;
  text-align: center;
}

.wpcf7-list-item {
  margin: 0;
}

.wpcf7-spinner {
  display: none !important;
}

.invalid-caution { /* バリデーションエラーメッセージ */
  width: 100%;
  color: #C1262D;
  font-size: 1rem;
}

.bt_acc {
  pointer-events: none;
  opacity: 0.5;
}
.bt_acc.act {
  pointer-events: auto;
  opacity: 1;
}

[data-form-mode=con] .is-in {
  display: none !important;
}
[data-form-mode=con] .is-con-po {
  pointer-events: none !important;
}
[data-form-mode=con] input:not([type=submit]), [data-form-mode=con] textarea, [data-form-mode=con] select, [data-form-mode=con] label {
  pointer-events: none !important;
}
[data-form-mode=con] .clone {
  position: absolute;
  top: 0%;
  left: 0%;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  background: #F6ECE9;
  padding: 0.8em;
}

[data-form-mode=in] .is-con {
  display: none !important;
}

.wpcf7-form-control-wrap {
  position: static !important;
}

.c-formBt-back {
  background: #707070;
}

.c-formBt-submit {
  margin-top: 8px;
}
/*# sourceMappingURL=contact.css.map */