@charset "UTF-8";
/* =====================
	お問い合わせ
 ======================= */
/** -------------------- Contact form 7 -------------------- **/
.l-confirm,
.l-thanks {
  display: none;
}

/* デフォルトのサンクスメッセージ */
.wpcf7-response-output {
  display: none;
}

/** -------------------- page project -------------------- **/
.p-contact {
  background: var(--c_bg);
}

.p-contact__lead {
  text-align: center;
}

.p-contact__lead .c-heading-h2 {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-contact__box {
  background: var(--c_wht);
  margin-top: 5rem;
  padding: 10rem 2rem;
}

.p-contact__box:first-child {
  margin-top: 0;
}

.p-contact__box__inner {
  max-width: 800px;
  margin: 0 auto;
}

.p-contact__req {
  background: #808080;
  color: var(--c_wht);
  display: inline-block;
  font-size: 1.4rem;
  padding: 0 1rem;
}

.p-contact__dl {
  display: -ms-grid;
  display: grid;
  gap: 5rem 1rem;
  -ms-grid-columns: minmax(-webkit-max-content, 25%) 1rem 1fr;
  -ms-grid-columns: minmax(max-content, 25%) 1rem 1fr;
  grid-template-columns: minmax(-webkit-max-content, 25%) 1fr;
  grid-template-columns: minmax(max-content, 25%) 1fr;
}

.p-contact__dl__label {
  font-size: 1.6rem;
}

.p-contact__dl__input a {
  text-decoration: underline;
}

.p-contact__dl__input .wpcf7-list-item {
  margin-left: 0;
}

.p-contact__dl__input .wpcf7-list-item label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 0.4rem;
     -moz-column-gap: 0.4rem;
          column-gap: 0.4rem;
}

.p-contact__dl__input .wpcf7-list-item label input[type=checkbox] {
  margin: 0;
}

.p-contact__dl input[type=text], .p-contact__dl input[type=tel], .p-contact__dl input[type=email] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  font-family: var(--font_ja);
  font-size: 1.6rem;
  border: 1px solid #b3b3b3;
  background: var(--c_wht);
  border-radius: 3px;
  width: 100%;
  padding: 1.6rem;
}

.p-contact__dl textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  font-family: var(--font_ja);
  font-size: 1.6rem;
  border: 1px solid #b3b3b3;
  background: var(--c_wht);
  border-radius: 3px;
  width: 100%;
  height: 22rem;
  padding: 1.6rem;
}

.p-contact__dl select {
  font-family: var(--font_ja);
  font-size: 1.6rem;
  border: 1px solid #b3b3b3;
  background: var(--c_wht);
  border-radius: 3px;
  width: 100%;
  padding: 1.6rem;
}

.p-contact__submit {
  margin-top: 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem 4rem;
}

.p-contact__submit .wpcf7-spinner {
  -webkit-box-ordinal-group: 11;
      -ms-flex-order: 10;
          order: 10;
}

.p-contact__btn {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  max-width: 350px;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 35rem;
          flex: 0 1 35rem;
  display: block;
  cursor: pointer;
  background: var(--c_text);
  color: var(--c_wht);
  font-family: var(--font_ja);
  font-size: 1.8rem;
  font-weight: 500;
  border: 1px solid var(--c_text);
  border-radius: 3px;
  padding: 2.5rem;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.p-contact__btn[disabled] {
  pointer-events: none;
  opacity: 0.5;
}

.p-contact__btn:hover {
  background: var(--c_wht);
  color: var(--c_text);
}

.p-contact__btn--back {
  background: #808080;
  border-color: #808080;
}

.p-contact__btn--back:hover {
  background: var(--c_bg);
  color: #808080;
}

.p-thanks__txt {
  text-align: center;
  line-height: 2.0;
  margin-bottom: 4rem;
}

.p-thanks__txt:last-child {
  margin-bottom: 0;
}

/* スマホ
  ------------------------ */
@media (max-width: 1023px) {
  .p-contact__lead {
    text-align: left;
  }
  .p-contact__box {
    margin-top: 3rem;
    padding: 3rem 2rem;
  }
  .p-contact__req {
    margin-left: 0.8rem;
  }
  .p-contact__dl {
    gap: 0;
    -ms-grid-columns: 100%;
    grid-template-columns: 100%;
  }
  .p-contact__dl__label {
    margin-bottom: 0.8rem;
  }
  .p-contact__dl__input {
    margin-bottom: 2rem;
  }
  .p-contact__dl input[type=text], .p-contact__dl input[type=tel], .p-contact__dl input[type=email] {
    padding: 0.8rem 1.2rem;
  }
  .p-contact__dl textarea {
    padding: 0.8rem 1.2rem;
    height: 16rem;
  }
  .p-contact__submit {
    gap: 2rem 0;
  }
  .p-contact__btn {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
    padding: 1.5rem;
  }
  .p-contact__btn--back {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}

@media (max-width: 442px) {
  .p-contact__lead .c-heading-h2__eng {
    border: 0;
    padding-left: 2rem;
  }
}
/*# sourceMappingURL=contact.css.map */