@charset "UTF-8";
/*-----------------------------------------------
** レイアウト（common）
-----------------------------------------------*/
::-webkit-input-placeholder {
  color: #c7c7c7;
  font-size: 1.5rem;
}
::-moz-placeholder {
  color: #c7c7c7;
  font-size: 1.5rem;
}
:-ms-input-placeholder {
  color: #c7c7c7;
  font-size: 1.5rem;
}
::-ms-input-placeholder {
  color: #c7c7c7;
  font-size: 1.5rem;
}
::placeholder {
  color: #c7c7c7;
  font-size: 1.5rem;
}

/* 旧Edge対応 */
::-ms-input-placeholder {
  color: #c7c7c7;
  font-size: 1.5rem;
}

/* IE対応 */
:-ms-input-placeholder {
  color: #c7c7c7;
  font-size: 1.5rem;
}

html,
body {
  height: 100%;
}
html > .s-footer,
body > .s-footer {
  position: sticky;
  top: 100vh;
}

.s-header {
  --color-header-bg: var(--color-white);
  --color-header-text: var(--color-main);
}

@media screen and (min-width: 768px) {
  .s-lower-content {
    padding-top: 4.5rem;
  }
}
@media screen and (max-width: 767px) {
  .s-lower-content {
    padding-top: 3.5rem;
  }
}
@media screen and (min-width: 768px) {
  .c-breadcrumb {
    padding-bottom: 9rem;
  }
}
@media screen and (max-width: 767px) {
  .c-breadcrumb {
    margin-top: 8.8rem;
    padding-bottom: 6rem;
  }
}
/*-----------------------------------------------
** ボタン（common）
-----------------------------------------------*/
.c-button-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.c-button {
  min-width: 21rem;
  font-size: 1.4rem;
  padding: 1.4rem 2rem;
}

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

@media screen and (min-width: 768px) {
  /*-----------------------------------------------
  ** ボタン（pc）
  -----------------------------------------------*/
  .c-button-wrap {
    margin-top: 4rem;
  }
  .c-button-wrap .c-button {
    cursor: pointer;
  }
}
@media screen and (max-width: 767px) {
  /*-----------------------------------------------
  ** ボタン（sp）
  -----------------------------------------------*/
  .c-button-wrap {
    margin-top: 5rem;
  }
}
/*-----------------------------------------------
** タイトル（common）
-----------------------------------------------*/
.p-contact-title {
  font-family: var(--font-degular);
  font-weight: var(--fw-black);
}

@media screen and (min-width: 768px) {
  /*-----------------------------
  ** タイトル（pc）
  -----------------------------*/
  .p-contact-title {
    width: 100%;
    font-size: 12rem;
  }
}
@media screen and (max-width: 767px) {
  /*-----------------------------
  ** タイトル（sp）
  -----------------------------*/
  .p-contact-title {
    font-size: 5.6rem;
  }
}
/*-----------------------------------------------
** フォーム（common）
-----------------------------------------------*/
.p-form-wrapper__lead {
  line-height: 2;
}
.p-form-wrapper:not(:has(.p-form-box)) .p-form-area {
  border: none;
}
.p-form-wrapper:not(:has(.p-form-box)) .p-form-wrapper__lead {
  text-align: center;
  padding-bottom: 0;
}
.p-form-wrapper:not(:has(.p-form-box)) .p-form-button-box,
.p-form-wrapper:not(:has(.p-form-box)) .p-button-wrap {
  margin-top: 0;
}
.p-form-wrapper .p-form-button-box {
  font-size: 14px;
}

[lang=en] .p-form-wrapper__lead--ja {
  display: none;
}

@media screen and (min-width: 768px) {
  /*-----------------------------
  ** フォーム（pc）
  -----------------------------*/
  .p-form-wrapper {
    width: 96rem;
    margin-inline: auto;
  }
  .p-form-wrapper__lead {
    font-size: 1.5rem;
    line-height: 2;
    padding-top: 1rem;
  }
  .p-form-wrapper:not(:has(.p-form-box)) {
    padding-top: 9rem;
    padding-bottom: 8.9rem;
  }
  .p-form-wrapper:not(:has(.p-form-box)) .p-form-wrapper__lead {
    line-height: 2;
  }
}
@media screen and (max-width: 767px) {
  /*-----------------------------
  ** フォーム（sp）
  -----------------------------*/
  .p-form-wrapper__lead {
    font-size: 1.4rem;
    line-height: 2.2;
  }
  .p-form-wrapper:not(:has(.p-form-box)) .p-form-area {
    padding-top: 5rem;
  }
}
@media screen and (min-width: 768px) {
  .p-contact-complete .p-form-wrapper {
    padding-top: 5.4rem;
  }
  .p-contact-complete .p-form-wrapper__lead {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  .p-contact-complete .p-form-wrapper {
    padding-top: 3.5rem;
  }
  .p-contact-complete .p-form-wrapper__lead {
    font-size: 1.6rem;
    line-height: 2;
  }
}
/*-----------------------------------------------
** フォームエリア（common）
-----------------------------------------------*/
@media screen and (min-width: 768px) {
  /*-----------------------------
  ** フォームエリア（pc）
  -----------------------------*/
  .p-form-area {
    padding-top: 8.3rem;
  }
}
@media screen and (max-width: 767px) {
  /*-----------------------------
  ** フォームエリア（sp）
  -----------------------------*/
  .p-form-area {
    padding-top: 4.2rem;
  }
}
/*-----------------------------------------------
** フォームボックス（common）
-----------------------------------------------*/
.p-form-box + .p-form-box {
  margin-top: 4rem;
}
.p-form-box__text {
  font-size: 1.5rem;
  font-weight: var(--fw-semibold);
}
.p-form-box__text--icon {
  position: relative;
  display: inline-block;
  color: #e56161;
  font-size: 1.5rem;
  margin-left: 0.5rem;
}
.p-form-box__text--note {
  display: block;
  color: #e56161;
}
.p-form-box__form {
  position: relative;
  border-radius: 0.5rem;
}
.p-form-box__form select,
.p-form-box__form input,
.p-form-box__form textarea {
  max-width: 100%;
  width: 100%;
  font-size: 1.5rem;
  border: none;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: var(--color-sub03);
  border-radius: 0.5rem;
  letter-spacing: 0.07em;
}
.p-form-box__form select,
.p-form-box__form input {
  height: 5.3rem;
}
.p-form-box__form textarea {
  resize: vertical;
  vertical-align: top;
}
.p-form-box__form textarea + .p-form-box__error-text,
.p-form-box__form textarea + .wpcf7-not-valid-tip {
  margin-top: 0.4rem;
}
.p-form-box__form:has(select) {
  position: relative;
}
.p-form-box__form:has(select):after {
  content: "";
  position: absolute;
  top: 2.1rem;
  right: 2.6rem;
  display: inline-block;
  width: 0.7rem;
  height: 0.7rem;
  border-right: 0.1rem solid var(--color-text-default);
  border-bottom: 0.1rem solid var(--color-text-default);
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.p-form-box__form select:has(+ .wpcf7-not-valid-tip), .p-form-box__form select:has(+ .p-form-box__error-text),
.p-form-box__form input:has(+ .wpcf7-not-valid-tip),
.p-form-box__form input:has(+ .p-form-box__error-text),
.p-form-box__form textarea:has(+ .wpcf7-not-valid-tip),
.p-form-box__form textarea:has(+ .p-form-box__error-text) {
  background-color: #fff2f2;
}
.p-form-box__error-text,
.p-form-box .wpcf7-not-valid-tip {
  display: block;
  font-size: 1.1rem;
  color: #e56161;
  margin-top: 0.9rem;
}
.p-form-box__scroll-wrap {
  width: 100%;
  height: 35rem;
  border: 0.1rem solid #c4c4c4;
  border-radius: 0.5rem;
  overflow: hidden;
}
.p-form-box__scroll-inner {
  height: 100%;
  font-size: 1.3rem;
  overflow-y: auto;
}
.p-form-box__scroll-inner::-webkit-scrollbar {
  /* Chrome, Safari 対応 */
  display: none;
}
.p-form-box .simplebar-content {
  font-size: 1.3rem;
}
.p-form-box .simplebar-scrollbar::before {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--color-main);
  border-radius: 0;
  height: 5rem !important;
}
.p-form-box .simplebar-scrollbar.simplebar-visible {
  height: 5rem !important;
}
.p-form-box .simplebar-scrollbar.simplebar-visible::before {
  opacity: 1;
}
.p-form-box .simplebar-track {
  width: 0.3rem;
  background: #e6e6e6;
  height: 20rem !important;
}
.p-form-box .simplebar-track.simplebar-vertical {
  top: 55%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.wpcf7-response-output {
  display: none;
}

#your-inquiry:invalid {
  color: rgb(199, 199, 199);
}

option:first-child {
  color: rgb(199, 199, 199);
}

option {
  color: rgb(17, 17, 17);
}

@media screen and (min-width: 768px) {
  /*-----------------------------
  ** フォームボックス（pc）
  -----------------------------*/
  .p-form-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .p-form-box__text {
    width: 26rem;
    padding-top: 1.6rem;
  }
  .p-form-box__text--note {
    font-size: 1.2rem;
    line-height: 1.75;
    margin-top: 1.5rem;
  }
  .p-form-box__form {
    width: 66rem;
    font-size: 15px;
  }
  .p-form-box__form select,
  .p-form-box__form input,
  .p-form-box__form textarea {
    padding: 1.4rem 2.5rem 0.9rem;
  }
  .p-form-box__form select {
    padding-right: 35px;
  }
  .p-form-box__form textarea {
    max-width: 100%;
    min-height: 20.3rem;
    padding: 2.2rem 2.5rem;
  }
  .p-form-box__form-icon {
    width: 1.2rem;
  }
  .p-form-box__scroll-wrap {
    padding: 2.5rem;
  }
  .p-form-box__scroll-inner {
    padding-right: 2.5rem;
    line-height: 1.75;
  }
  .p-form-box--privacy .p-form-box__text {
    padding-top: 0;
  }
}
@media screen and (max-width: 767px) {
  /*-----------------------------
  ** フォームボックス（sp）
  -----------------------------*/
  .p-form-box + .p-form-box {
    margin-top: 2.55rem;
  }
  .p-form-box__text--note {
    font-size: 1.1rem;
    line-height: 2;
    margin-top: 1rem;
  }
  .p-form-box__form {
    margin-top: 1.3rem;
  }
  .p-form-box__form select,
  .p-form-box__form input,
  .p-form-box__form textarea {
    padding: 1.4rem 1.8rem 1.2rem;
  }
  .p-form-box__form select {
    padding-right: 3.2rem;
  }
  .p-form-box__form textarea {
    min-height: 14.3rem;
    padding: 2.2rem 1.8rem;
  }
  .p-form-box__form:has(select):after {
    top: 2.1rem;
    width: 0.7rem;
    height: 0.7rem;
    right: 1.9rem;
  }
  .p-form-box__form-icon {
    width: 1rem;
  }
  .p-form-box__scroll-wrap {
    padding: 2.2rem 1.6rem;
  }
  .p-form-box__scroll-inner {
    padding-right: 2.2rem;
    line-height: 2;
  }
  .p-form-box--privacy .p-form-box__form {
    margin-top: 0.7rem;
  }
  .p-form-box .simplebar-track.simplebar-vertical {
    top: 50%;
  }
}