@charset "UTF-8";
/************************************************
    ページタイトル
*************************************************/
.page__title--contact {
  background-image: -webkit-image-set(url('../img/bg_page__title--contact.jpg') 1x, url('../img/bg_page__title--contact@2x.jpg') 2x, url('../img/bg_page__title--contact@3x.jpg') 3x);
  background-image: image-set(url('../img/bg_page__title--contact.jpg') 1x, url('../img/bg_page__title--contact@2x.jpg') 2x, url('../img/bg_page__title--contact@3x.jpg') 3x);
}

@supports not ((background-image: -webkit-image-set(url('../img/bg_page__title--contact.jpg') 1x, url('../img/bg_page__title--contact@2x.jpg') 2x, url('../img/bg_page__title--contact@3x.jpg') 3x)) or (background-image: image-set(url('../img/bg_page__title--contact.jpg') 1x, url('../img/bg_page__title--contact@2x.jpg') 2x, url('../img/bg_page__title--contact@3x.jpg') 3x))) {
  .page__title--contact {
    background-image: url('../img/bg_page__title--contact.jpg');
  }
}

_:-ms-lang(x)::-ms-backdrop, .page__title--contact {
  background-image: url('../img/bg_page__title--contact.jpg');
}

.page__title--contact::after {
  content: 'CONTACT';
}

/************************************************
    メールフォーム
*************************************************/
.sec-mailForm {
  font-size: 0.75em;
  padding: calc(3.125rem + 5.625rem) 1.25rem 3.125rem;
  margin-top: -5.625rem;
}

.sec-mailForm__intro {
  font-size: 1em;
  line-height: 1.75;
  text-align: center;
}

.sec__title + .sec-mailForm__intro {
  margin-top: 1.625em;
}

.sec-mailForm__intro .caution {
  color: red;
}

.sec-mailForm__intro a {
  padding-bottom: 0.25em;
  border-bottom: 1px solid currentColor;
}

.sec-mailForm__intro a:hover {
  border-bottom-color: transparent;
}

.sec-mailForm-form {
  background-color: #bfeafa;
  padding: 2.1875rem 1.25rem 3.125rem;
  margin-top: 3.125rem;
  margin-bottom: -3.125rem;
  margin-right: -1.25rem;
  margin-left: -1.25rem;
}

.sec-mailForm-form .list {
  max-width: 50rem;
  margin: 0 auto;
}

.sec-mailForm-form .term {
  font-size: 1.125em;
  font-weight: 500;
  line-height: 1.75;
  margin-top: 1.22222em;
}

.sec-mailForm-form .term--privacyPolicy {
  margin-top: 2.44444em;
}

.sec-mailForm-form .term.hidden {
  display: none;
}

.sec-mailForm-form .term .halfSize {
  font-size: 0.72222em;
}

.sec-mailForm-form .term .confirm {
  font-size: 0.72222em;
}

.sec-mailForm-form .description {
  font-size: 1.125em;
  line-height: 1.75;
  word-break: break-word;
}

_:-ms-lang(x)::-ms-backdrop, .sec-mailForm-form .description {
  word-break: break-all;
}

.sec-mailForm-form .description--contents {
  margin-bottom: 2.44444em;
}

.sec-mailForm-form .description.hidden {
  display: none;
}

.sec-mailForm-form .description .privacyPolicy {
  font-size: 0.66667em;
  line-height: 1.75;
  background-color: white;
  padding: 2em 3em;
}

.sec-mailForm-form .description .agree {
  text-align: center;
  margin-top: 2.22222em;
}

.sec-mailForm-form .description .agree .required {
  margin-left: 1em;
}

.sec-mailForm-form .required {
  color: red;
  font-size: 0.625rem;
  font-weight: 500;
}

.sec-mailForm .buttons {
  text-align: center;
  margin-top: 6.25em;
}

.input--text {
  font-family: inherit;
  font-size: inherit;
  vertical-align: bottom;
  background-color: white;
  box-sizing: border-box;
  width: 100%;
  padding: 0.38889em;
  border: none;
}

.input--size-S {
  max-width: 14.0625rem;
}

.input--size-M {
  max-width: 23.125rem;
}

.input--size-L {
  max-width: 34.375rem;
}

.label {
  cursor: pointer;
}

.input--checkbox {
  display: none;
}

.checkbox-text {
  -js-display: inline-flex;
  display: inline-flex;
  align-items: center;
}

.checkbox-text::before {
  content: '\f00c';
  color: transparent;
  font-family: 'Font Awesome 5 Free';
  font-weight: bold;
  font-size: 1.33333em;
  letter-spacing: 0;
  line-height: 1;
  display: inline-block;
  background-color: white;
  padding: 0.08334em;
  margin-right: 0.66667em;
}

.input--checkbox:checked + .checkbox-text::before {
  color: currentColor;
}

.btn--go, .btn--back {
  font-size: 1.125rem;
  margin: 0.5em;
}

.btn--back {
  background-color: #8c8c8c;
}

.btn--back:hover {
  background-color: rgba(140, 140, 140, 0.75);
}

/************************************************
    お電話でのお問い合わせ
*************************************************/
.sec-tel__title {
  font-size: 1em;
}

.sec-tel__title .text {
  font-size: 2.5em;
  letter-spacing: 0.08em;
  display: block;
  padding-left: 0.08em;
  margin-bottom: 0.375em;
}

.sec-tel__title::after {
  content: '';
  display: block;
  background-color: currentColor;
  width: 25em;
  height: 2px;
  margin: 0 auto;
}

.sec-tel__title + .contact-links {
  margin-top: 0.80952em;
}

.sec-contact.sec-tel {
  padding-top: 3.125rem;
  padding-bottom: 3.125rem;
}

.sec-contact.sec-tel .contact-links {
  font-size: 1.3125rem;
}

.sec-contact.sec-tel .contact-link {
  width: 100%;
}

@media screen and (-webkit-min-device-pixel-ratio: 2), screen and (min-resolution: 2dppx) {
  @supports not ((background-image: -webkit-image-set(url('../img/bg_page__title--contact.jpg') 1x, url('../img/bg_page__title--contact@2x.jpg') 2x, url('../img/bg_page__title--contact@3x.jpg') 3x)) or (background-image: image-set(url('../img/bg_page__title--contact.jpg') 1x, url('../img/bg_page__title--contact@2x.jpg') 2x, url('../img/bg_page__title--contact@3x.jpg') 3x))){
    .page__title--contact {
      background-image: url('../img/bg_page__title--contact@2x.jpg');
    }
  }
  _:-ms-lang(x)::-ms-backdrop, .page__title--contact {
    background-image: url('../img/bg_page__title--contact@2x.jpg');
  }
  }

@media screen and (-webkit-min-device-pixel-ratio: 3), screen and (min-resolution: 3dppx) {
  @supports not ((background-image: -webkit-image-set(url('../img/bg_page__title--contact.jpg') 1x, url('../img/bg_page__title--contact@2x.jpg') 2x, url('../img/bg_page__title--contact@3x.jpg') 3x)) or (background-image: image-set(url('../img/bg_page__title--contact.jpg') 1x, url('../img/bg_page__title--contact@2x.jpg') 2x, url('../img/bg_page__title--contact@3x.jpg') 3x))){
    .page__title--contact {
      background-image: url('../img/bg_page__title--contact@3x.jpg');
    }
  }
  _:-ms-lang(x)::-ms-backdrop, .page__title--contact {
    background-image: url('../img/bg_page__title--contact@3x.jpg');
  }
  }

@media screen and (min-width: 768px) {
  .sec-mailForm {
    font-size: 1em;
    padding-top: 6.25rem;
    padding-bottom: 6.25rem;
    margin-top: 0;
  }
  .sec-mailForm-form {
    padding-top: 4.6875rem;
    padding-bottom: 6.25rem;
    margin-top: 6.25rem;
    margin-bottom: -6.25rem;
  }
  .sec-mailForm-form .required {
    font-size: 0.8125rem;
  }
  .btn--go, .btn--back {
    font-size: 2rem;
    padding-right: 2em;
    padding-left: 2.14em;
  }
  .sec-tel__title + .contact-links {
    margin-top: 0.14286em;
  }
  .sec-contact.sec-tel {
    padding-top: 6.25rem;
    padding-bottom: 6.25rem;
  }
  .sec-contact.sec-tel .contact-links {
    font-size: 1.75rem;
  }
}
