@charset "UTF-8";
.p-contact__tel {
  background-color: #f2eee8;
  padding: 3.2rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-contact__tel {
    padding: 2.4rem;
  }
}
.p-contact__tel .c-ttl {
  font-size: 1.8rem;
  line-height: 1.6666666667;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-contact__tel .c-ttl {
    font-size: 1.6rem;
  }
}
.p-contact__tel .c-tel {
  margin-top: 1.2rem;
  letter-spacing: 0.1em;
  font-weight: 400;
}
.p-contact__tel .c-tel a {
  display: inline-block;
  margin-left: 1rem;
  font-size: 3.2rem;
  line-height: 1;
  letter-spacing: 0.01em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .p-contact__tel .c-tel a {
    font-size: 2.8rem;
  }
}
.p-contact__tel .c-hour {
  font-size: 1.4rem;
  line-height: 2;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-top: 1rem;
}
@media screen and (max-width: 767px) {
  .p-contact__tel .c-hour {
    margin-top: 0.5rem;
  }
}

.p-form__container {
  margin-top: 9.6rem;
}
@media screen and (max-width: 767px) {
  .p-form__container {
    margin-top: 8rem;
  }
}
.p-form__container .c-section__ttl,
.p-form__container .c-heading__txt {
  text-align: center;
}
.p-form__container .c-section__ttl {
  font-size: 2.4rem;
  line-height: 2;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .p-form__container .c-section__ttl {
    font-size: 1.8rem;
    line-height: 2;
  }
}
.p-form__container .c-heading__txt {
  margin-top: 1.2rem;
  font-size: 1.4rem;
  line-height: 2.1428571429;
  letter-spacing: 0.012em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-form__container .c-heading__txt {
    font-size: 1.3rem;
    line-height: 2.1538461538;
  }
}

.u-color--red {
  color: rgb(219, 54, 54);
}

.p-form {
  max-width: 90rem;
  margin: 6.4rem auto 0;
}
@media screen and (max-width: 767px) {
  .p-form {
    margin-top: 4.8rem;
  }
}
.p-form input[type=text],
.p-form input[type=email],
.p-form input[type=tel],
.p-form textarea {
  border: 1px solid rgba(118, 133, 124, 0.5);
  padding: 1.2rem 1.8rem;
  width: 100%;
}
.p-form textarea {
  min-height: 18rem;
}
.p-form ::-moz-placeholder {
  color: rgba(118, 133, 124, 0.6);
}
.p-form ::placeholder {
  color: rgba(118, 133, 124, 0.6);
}
.p-form fieldset {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
  padding: 0;
}
.p-form .c-submit-btn {
  background-color: #334038;
  display: grid;
  place-content: center;
  min-height: 5.6rem;
  width: 100%;
  cursor: pointer;
  transition: 0.3s opacity;
  font-size: 2rem;
  line-height: 1.4;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .p-form .c-submit-btn {
    font-size: 1.5rem;
  }
}
.p-form .p-btn-wrapper {
  max-width: 30rem;
}
@media screen and (max-width: 767px) {
  .p-form .p-btn-wrapper {
    max-width: inherit;
  }
}

.p-select-wrapper {
  width: 100%;
  border: 1px solid rgba(118, 133, 124, 0.5);
  position: relative;
}
.p-select-wrapper::after {
  content: "";
  position: absolute;
  width: 0.6rem;
  height: 1rem;
  background: url(../img/common/arrow_b.svg) no-repeat center/contain;
  top: 55%;
  right: 2rem;
  transform: translateY(-50%) rotate(90deg);
  pointer-events: none;
}
.p-select-wrapper select,
.p-select-wrapper option {
  width: 100%;
}
.p-select-wrapper select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 1.2rem 3rem 1.2rem 1.8rem;
  color: #333;
  cursor: pointer;
  min-height: 4.8rem;
}

.p-field {
  display: flex;
}
@media screen and (max-width: 767px) {
  .p-field {
    display: block;
  }
}
.p-field + .p-field {
  margin-top: 2.4rem;
}
@media screen and (max-width: 767px) {
  .p-field + .p-field {
    margin-top: 3.2rem;
  }
}
.p-field + .p-field.-submit {
  margin-top: 6.4rem;
}
@media screen and (max-width: 767px) {
  .p-field + .p-field.-submit {
    margin-top: 4.2rem;
  }
}

.p-label {
  cursor: text;
}

.p-label-container {
  padding-top: 0.8rem;
  width: 27rem;
  flex-shrink: 0;
  display: flex;
  font-size: 1.8rem;
  line-height: 1.6666666667;
  font-weight: 700;
  -moz-column-gap: 1.2rem;
       column-gap: 1.2rem;
}
@media screen and (max-width: 767px) {
  .p-label-container {
    padding-top: 0;
    width: auto;
    font-size: 1.6rem;
  }
}

.p-required {
  color: rgb(219, 54, 54);
}

.p-content-container {
  flex-grow: 1;
}
.p-content-container:has(.p-select-wrapper) .wpcf7-not-valid-tip {
  position: absolute;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  left: 0;
}
.p-content-container:has(.p-select-wrapper):has(.wpcf7-not-valid-tip) {
  padding-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .p-content-container {
    margin-top: 1.6rem;
  }
}

.-agree {
  /* inputの位置と枠　*/
  /*　チェックマーク　*/
}
@media screen and (max-width: 767px) {
  .-agree .p-content-container {
    margin-top: 0;
  }
}
.-agree .wpcf7-list-item {
  margin-left: 0;
}
.-agree input[type=checkbox],
.-agree input[type=radio] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  border: 0;
  clip: rect(0 0 0 0); /* 古いブラウザ対応 */
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%); /* モダンブラウザ用 */
  overflow: hidden;
  white-space: nowrap;
}
.-agree input + .wpcf7-list-item-label {
  display: inline-block;
  position: relative;
  padding-left: 3.6rem !important;
  cursor: pointer;
  font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
  .-agree input + .wpcf7-list-item-label {
    font-size: 1.5rem;
  }
}
.-agree input + .wpcf7-list-item-label:before {
  display: block;
  position: absolute;
  border: 1px solid rgba(118, 133, 124, 0.5) !important;
  content: "";
  top: 0.3rem !important;
}
.-agree input[type=checkbox] + .wpcf7-list-item-label:before {
  left: 0;
  width: 2.4rem;
  height: 2.4rem;
}
.-agree input[type=checkbox]:checked + .wpcf7-list-item-label:after {
  display: block;
  position: absolute;
  top: 0.4rem;
  left: 0.3rem;
  width: 0.8rem;
  height: 1.5rem;
  transform: rotate(45deg);
  border-right: 2px solid #333;
  border-bottom: 2px solid #333;
  content: "";
}

@media screen and (max-width: 767px) {
  .-submit .p-content-container {
    margin-top: 0;
  }
}

.p-btn-arrow {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
  width: 100%;
  height: 100%;
}
.p-btn-arrow::after {
  content: "";
  position: absolute;
  width: 2.2rem;
  height: 2.2rem;
  background: url(../img/common/icn_link_w.svg) no-repeat center/contain;
  top: 50%;
  right: 2rem;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .p-btn-arrow::after {
    right: 1.6rem;
  }
}

.wpcf7-spinner {
  margin: 2rem auto 0;
  display: none;
}

form.submitting .wpcf7-spinner {
  display: block;
}

.p-thanks__container {
  margin-top: 9.6rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-thanks__container {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .p-thanks__container .c-section__ttl {
    font-size: 1.8rem;
  }
}
.p-thanks__container .c-icn {
  display: block;
  width: 2.8rem;
  margin-inline: auto;
  margin-bottom: 3.2rem;
}
.p-thanks__container .c-txt {
  margin-top: 1.2rem;
  font-size: 1.4rem;
  line-height: 2.1428571429;
  letter-spacing: 0.012em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-thanks__container .c-txt {
    font-size: 1.3rem;
    line-height: 2.1538461538;
    letter-spacing: -0.01em;
  }
}
.p-thanks__container .p-btn-wrapper {
  margin: 6.4rem auto 0;
  max-width: 30rem;
}
@media screen and (max-width: 767px) {
  .p-thanks__container .p-btn-wrapper {
    margin-top: 4.8rem;
    max-width: inherit;
  }
}
.p-thanks__container .c-btn-back {
  font-size: 2rem;
  line-height: 1.4;
  font-weight: 700;
  background-color: #76857c;
  color: #fff;
  min-height: 5.6rem;
  display: grid;
  place-content: center;
  width: 100%;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-thanks__container .c-btn-back {
    font-size: 1.5rem;
  }
}
.p-thanks__container .c-btn-back::after {
  content: "";
  width: 2.2rem;
  height: 2.2rem;
  background: url(../img/common/icn_link_w.svg) no-repeat center/contain;
  position: absolute;
  right: 1.6rem;
  top: 50%;
  transform: translateY(-50%);
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  border-color: #334038;
}

.wpcf7-spinner {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
/*# sourceMappingURL=contact.css.map */