.custom-form input[type=checkbox] ~ span, .custom-form__label, .custom-form__input, .custom-form__btn-badge, .privacy-policy-section__content *:not(h1, h2, h3, h4, h5, h6) {
  font-size: var(--tdfs-body);
  font-family: Noto Sans JP;
  font-weight: 300;
  line-height: 2;
}
.custom-form .wpcf7-acceptance input[type=checkbox] ~ span {
  font-size: var(--tdfs-body-l-thin);
  font-family: Noto Sans JP;
  font-weight: 300;
  line-height: 1.4;
}
.custom-breadcrumb__item {
  font-size: var(--tdfs-body-s);
  font-family: Noto Sans JP;
  font-weight: 300;
  line-height: 1.7;
}
.page-header {
  position: relative;
  overflow: hidden;
}
.page-header__image-container {
  position: relative;
  width: 100%;
  display: block;
}
.page-header__image-container:before {
  content: "";
  display: block;
  padding-top: 31.25%;
}
.page-header__image-container .ratio-item {
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 767px) {
  .page-header__image-container:before {
    padding-top: 73.3333333333%;
  }
}
.page-header__image-container {
  opacity: 0;
}
.page-header__image-container img {
  transform: scale(1.05);
}
.page-header__image-container::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(103, 148, 255, 0.2);
}
.page-header__title-wrapper {
  position: absolute;
  z-index: 3;
  bottom: -5px;
  left: 0;
  background-color: #FFFFFF;
  border-top-right-radius: 2.0833333333vw;
  padding: 2.0833333333vw;
}
@media screen and (max-width: 1440px) {
  .page-header__title-wrapper {
    border-top-right-radius: 2.7777777778vw;
  }
}
@media screen and (max-width: 767px) {
  .page-header__title-wrapper {
    border-top-right-radius: 3.1290743155vw;
  }
}
@media screen and (max-width: 480px) {
  .page-header__title-wrapper {
    border-top-right-radius: 5vw;
  }
}
@media screen and (max-width: 375px) {
  .page-header__title-wrapper {
    border-top-right-radius: 6.4vw;
  }
}
@media screen and (max-width: 1440px) {
  .page-header__title-wrapper {
    padding: 2.7777777778vw;
  }
}
@media screen and (max-width: 767px) {
  .page-header__title-wrapper {
    padding: 2.0860495437vw 3.1290743155vw;
  }
}
@media screen and (max-width: 480px) {
  .page-header__title-wrapper {
    padding: 3.3333333333vw 5vw;
  }
}
@media screen and (max-width: 375px) {
  .page-header__title-wrapper {
    padding: 4.2666666667vw 6.4vw;
  }
}
.page-header__title {
  margin-bottom: 1.4583333333vw;
}
@media screen and (max-width: 1440px) {
  .page-header__title {
    margin-bottom: 1.9444444444vw;
  }
}
@media screen and (max-width: 767px) {
  .page-header__title {
    margin-bottom: 2.6075619296vw;
  }
}
@media screen and (max-width: 480px) {
  .page-header__title {
    margin-bottom: 4.1666666667vw;
  }
}
@media screen and (max-width: 375px) {
  .page-header__title {
    margin-bottom: 5.3333333333vw;
  }
}
.page-header__subtitle {
  color: #153175;
}

.custom-breadcrumb {
  --bs-breadcrumb-divider: url("data:image/svg+xml,%3Csvg width='6' height='10' viewBox='0 0 6 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.5 10V0L5.5 5L0.5 10Z' fill='%23153175'/%3E%3C/svg%3E");
  --bs-breadcrumb-item-padding-x: 0.8854166667vw;
  display: block;
  text-align: center;
  margin: 1.25vw 0.625vw;
  white-space: nowrap;
  overflow: auto;
}
@media screen and (max-width: 1440px) {
  .custom-breadcrumb {
    --bs-breadcrumb-item-padding-x: 1.1805555556vw;
  }
}
@media screen and (max-width: 767px) {
  .custom-breadcrumb {
    --bs-breadcrumb-item-padding-x: 2.2164276402vw;
  }
}
@media screen and (max-width: 480px) {
  .custom-breadcrumb {
    --bs-breadcrumb-item-padding-x: 3.5416666667vw;
  }
}
@media screen and (max-width: 375px) {
  .custom-breadcrumb {
    --bs-breadcrumb-item-padding-x: 4.5333333333vw;
  }
}
@media screen and (max-width: 1440px) {
  .custom-breadcrumb {
    margin: 1.6666666667vw 0.8333333333vw;
  }
}
@media screen and (max-width: 767px) {
  .custom-breadcrumb {
    margin: 3.1290743155vw 1.5645371578vw;
  }
}
@media screen and (max-width: 480px) {
  .custom-breadcrumb {
    margin: 5vw 2.5vw;
  }
}
@media screen and (max-width: 375px) {
  .custom-breadcrumb {
    margin: 6.4vw 3.2vw;
  }
}
.custom-breadcrumb__item {
  display: inline-block;
  color: #153175;
  font-weight: 400;
  line-height: 1.7;
}
.custom-breadcrumb__item a {
  color: currentColor;
  text-decoration: none;
}
.custom-breadcrumb__item > * {
  color: currentColor;
  border-bottom: 1px solid #D4D4D4;
}
.custom-breadcrumb__item.active {
  color: #153175;
}

.section-title {
  text-align: center;
}
.section-title__icon-container {
  position: relative;
  width: 100%;
  display: inline-block;
  max-width: 1.9791666667vw;
}
@media screen and (max-width: 1440px) {
  .section-title__icon-container {
    max-width: 2.6388888889vw;
  }
}
@media screen and (max-width: 767px) {
  .section-title__icon-container {
    max-width: 4.9543676662vw;
  }
}
@media screen and (max-width: 480px) {
  .section-title__icon-container {
    max-width: 7.9166666667vw;
  }
}
@media screen and (max-width: 375px) {
  .section-title__icon-container {
    max-width: 10.1333333333vw;
  }
}
.section-title__icon-container:before {
  content: "";
  display: block;
  padding-top: 94.7368421053%;
}
.section-title__icon-container .ratio-item {
  -o-object-fit: contain;
     object-fit: contain;
}
.section-title__icon-container {
  margin-bottom: 0.5208333333vw;
}
@media screen and (max-width: 1440px) {
  .section-title__icon-container {
    margin-bottom: 0.6944444444vw;
  }
}
@media screen and (max-width: 767px) {
  .section-title__icon-container {
    margin-bottom: 0.7822685789vw;
  }
}
@media screen and (max-width: 480px) {
  .section-title__icon-container {
    margin-bottom: 1.25vw;
  }
}
@media screen and (max-width: 375px) {
  .section-title__icon-container {
    margin-bottom: 1.6vw;
  }
}
.section-title__title {
  font-family: Noto Sans JP;
  font-size: 1.6666666667vw;
  font-weight: 300;
  line-height: 1.3;
  text-align: center;
  color: #153175;
  margin-bottom: 0;
}
@media screen and (max-width: 1440px) {
  .section-title__title {
    font-size: 2.2222222222vw;
  }
}
@media screen and (max-width: 767px) {
  .section-title__title {
    font-size: 3.3898305085vw;
  }
}
@media screen and (max-width: 480px) {
  .section-title__title {
    font-size: 5.4166666667vw;
  }
}
@media screen and (max-width: 375px) {
  .section-title__title {
    font-size: 6.9333333333vw;
  }
}

.intro {
  padding: 6.25vw 0vw;
}
@media screen and (max-width: 1440px) {
  .intro {
    padding: 8.3333333333vw 0vw;
  }
}
@media screen and (max-width: 767px) {
  .intro {
    padding: 4.1720990874vw 0vw;
  }
}
@media screen and (max-width: 480px) {
  .intro {
    padding: 6.6666666667vw 0vw;
  }
}
@media screen and (max-width: 375px) {
  .intro {
    padding: 8.5333333333vw 0vw;
  }
}
.intro .section-title__title {
  line-height: 1.7;
}
@media (max-width: 767px) {
  .intro .section-title__title {
    text-align: left;
  }
  .intro .section-title__title br {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .intro .section-title__title {
    font-size: 2.0860495437vw;
  }
}
@media screen and (max-width: 480px) {
  .intro .section-title__title {
    font-size: 3.3333333333vw;
  }
}
@media screen and (max-width: 375px) {
  .intro .section-title__title {
    font-size: 4.2666666667vw;
  }
}
.intro__title-wrapper {
  margin-bottom: 6.25vw;
}
@media screen and (max-width: 1440px) {
  .intro__title-wrapper {
    margin-bottom: 8.3333333333vw;
  }
}
@media screen and (max-width: 767px) {
  .intro__title-wrapper {
    margin-bottom: 4.1720990874vw;
  }
}
@media screen and (max-width: 480px) {
  .intro__title-wrapper {
    margin-bottom: 6.6666666667vw;
  }
}
@media screen and (max-width: 375px) {
  .intro__title-wrapper {
    margin-bottom: 8.5333333333vw;
  }
}
.intro__telephone-wrapper {
  text-align: center;
}
@media (max-width: 767px) {
  .intro__telephone-wrapper {
    width: 100%;
  }
}
.intro__telephone {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 0.8333333333vw;
  background: linear-gradient(180deg, #143175 0%, #5770AA 100%);
  padding: 2.0833333333vw 4.4270833333vw;
  color: #FFFFFF;
  border-radius: 0.4166666667vw;
  text-decoration: none;
  font-family: Adamina;
  font-weight: 400;
  font-size: 2.8125vw;
  line-height: 0.8;
}
@media screen and (max-width: 1440px) {
  .intro__telephone {
    gap: 1.1111111111vw;
  }
}
@media screen and (max-width: 767px) {
  .intro__telephone {
    gap: 2.0860495437vw;
  }
}
@media screen and (max-width: 480px) {
  .intro__telephone {
    gap: 3.3333333333vw;
  }
}
@media screen and (max-width: 375px) {
  .intro__telephone {
    gap: 4.2666666667vw;
  }
}
@media screen and (max-width: 1440px) {
  .intro__telephone {
    padding: 2.7777777778vw 5.9027777778vw;
  }
}
@media screen and (max-width: 767px) {
  .intro__telephone {
    padding: 2.998696219vw 3.9113428944vw;
  }
}
@media screen and (max-width: 480px) {
  .intro__telephone {
    padding: 4.7916666667vw 6.25vw;
  }
}
@media screen and (max-width: 375px) {
  .intro__telephone {
    padding: 6.1333333333vw 8vw;
  }
}
@media screen and (max-width: 1440px) {
  .intro__telephone {
    border-radius: 0.5555555556vw;
  }
}
@media screen and (max-width: 767px) {
  .intro__telephone {
    border-radius: 1.0430247718vw;
  }
}
@media screen and (max-width: 480px) {
  .intro__telephone {
    border-radius: 1.6666666667vw;
  }
}
@media screen and (max-width: 375px) {
  .intro__telephone {
    border-radius: 2.1333333333vw;
  }
}
@media screen and (max-width: 1440px) {
  .intro__telephone {
    font-size: 3.75vw;
  }
}
@media screen and (max-width: 767px) {
  .intro__telephone {
    font-size: 4.1720990874vw;
  }
}
@media screen and (max-width: 480px) {
  .intro__telephone {
    font-size: 6.6666666667vw;
  }
}
@media screen and (max-width: 375px) {
  .intro__telephone {
    font-size: 8.5333333333vw;
  }
}
.intro__telephone svg {
  width: 1.8229166667vw;
  height: 1.8229166667vw;
}
@media screen and (max-width: 1440px) {
  .intro__telephone svg {
    width: 2.4305555556vw;
  }
}
@media screen and (max-width: 767px) {
  .intro__telephone svg {
    width: 2.6075619296vw;
  }
}
@media screen and (max-width: 480px) {
  .intro__telephone svg {
    width: 4.1666666667vw;
  }
}
@media screen and (max-width: 375px) {
  .intro__telephone svg {
    width: 5.3333333333vw;
  }
}
@media screen and (max-width: 1440px) {
  .intro__telephone svg {
    height: 2.4305555556vw;
  }
}
@media screen and (max-width: 767px) {
  .intro__telephone svg {
    height: 2.6075619296vw;
  }
}
@media screen and (max-width: 480px) {
  .intro__telephone svg {
    height: 4.1666666667vw;
  }
}
@media screen and (max-width: 375px) {
  .intro__telephone svg {
    height: 5.3333333333vw;
  }
}
@media (max-width: 767px) {
  .intro__telephone {
    width: 100%;
  }
}
.intro__notice {
  font-family: Noto Sans JP;
  font-weight: 350;
  font-size: 1.4583333333vw;
  line-height: 1.4;
  margin-top: 0.7291666667vw;
  margin-bottom: 0;
}
@media screen and (max-width: 1440px) {
  .intro__notice {
    font-size: 1.9444444444vw;
  }
}
@media screen and (max-width: 767px) {
  .intro__notice {
    font-size: 2.6075619296vw;
  }
}
@media screen and (max-width: 480px) {
  .intro__notice {
    font-size: 4.1666666667vw;
  }
}
@media screen and (max-width: 375px) {
  .intro__notice {
    font-size: 5.3333333333vw;
  }
}
@media screen and (max-width: 1440px) {
  .intro__notice {
    margin-top: 0.9722222222vw;
  }
}
@media screen and (max-width: 767px) {
  .intro__notice {
    margin-top: 1.3037809648vw;
  }
}
@media screen and (max-width: 480px) {
  .intro__notice {
    margin-top: 2.0833333333vw;
  }
}
@media screen and (max-width: 375px) {
  .intro__notice {
    margin-top: 2.6666666667vw;
  }
}

.contact {
  padding: 4.1666666667vw 0vw 7.8125vw 0vw;
}
@media screen and (max-width: 1440px) {
  .contact {
    padding: 5.5555555556vw 0vw 10.4166666667vw 0vw;
  }
}
@media screen and (max-width: 767px) {
  .contact {
    padding: 5.2151238592vw 0vw 10.4302477184vw 0vw;
  }
}
@media screen and (max-width: 480px) {
  .contact {
    padding: 8.3333333333vw 0vw 16.6666666667vw 0vw;
  }
}
@media screen and (max-width: 375px) {
  .contact {
    padding: 10.6666666667vw 0vw 21.3333333333vw 0vw;
  }
}
.contact .custom-form__row, .contact .privacy-policy-section, .contact .contact__step-wrapper {
  max-width: 70%;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 767px) {
  .contact .custom-form__row, .contact .privacy-policy-section, .contact .contact__step-wrapper {
    max-width: 100%;
  }
}
.contact hr {
  border-color: #5F758F;
  opacity: 1;
  margin: 2.6041666667vw 0vw;
}
@media screen and (max-width: 1440px) {
  .contact hr {
    margin: 3.4722222222vw 0vw;
  }
}
@media screen and (max-width: 767px) {
  .contact hr {
    margin: 2.6075619296vw 0vw;
  }
}
@media screen and (max-width: 480px) {
  .contact hr {
    margin: 4.1666666667vw 0vw;
  }
}
@media screen and (max-width: 375px) {
  .contact hr {
    margin: 5.3333333333vw 0vw;
  }
}
.contact__step-wrapper {
  justify-content: center;
  margin-bottom: 6.25vw;
  flex-wrap: nowrap;
}
@media screen and (max-width: 1440px) {
  .contact__step-wrapper {
    margin-bottom: 8.3333333333vw;
  }
}
@media screen and (max-width: 767px) {
  .contact__step-wrapper {
    margin-bottom: 7.8226857888vw;
  }
}
@media screen and (max-width: 480px) {
  .contact__step-wrapper {
    margin-bottom: 12.5vw;
  }
}
@media screen and (max-width: 375px) {
  .contact__step-wrapper {
    margin-bottom: 16vw;
  }
}
.contact__step-button-wrapper {
  --min-width: 19.2708333333vw;
  flex: 1 1 var(--min-width);
}
@media screen and (max-width: 1440px) {
  .contact__step-button-wrapper {
    --min-width: 25.6944444444vw;
  }
}
@media screen and (max-width: 767px) {
  .contact__step-button-wrapper {
    --min-width: 14.3415906128vw;
  }
}
@media screen and (max-width: 480px) {
  .contact__step-button-wrapper {
    --min-width: 22.9166666667vw;
  }
}
@media screen and (max-width: 375px) {
  .contact__step-button-wrapper {
    --min-width: 29.3333333333vw;
  }
}
.contact__step-button {
  --step-background: url("../../images/step-1.png");
  position: relative;
  border: 0;
  outline: 0;
  display: inline-block;
  background-image: var(--step-background);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: center;
  background-color: transparent;
  padding: 1.5625vw;
  width: 100%;
  cursor: default !important;
  font-weight: 400;
  font-size: 1.25vw;
  line-height: 1;
}
@media screen and (max-width: 1440px) {
  .contact__step-button {
    padding: 2.0833333333vw;
  }
}
@media screen and (max-width: 767px) {
  .contact__step-button {
    padding: 1.8252933507vw;
  }
}
@media screen and (max-width: 480px) {
  .contact__step-button {
    padding: 2.9166666667vw;
  }
}
@media screen and (max-width: 375px) {
  .contact__step-button {
    padding: 3.7333333333vw;
  }
}
@media screen and (max-width: 1440px) {
  .contact__step-button {
    font-size: 1.6666666667vw;
  }
}
@media screen and (max-width: 767px) {
  .contact__step-button {
    font-size: 2.0860495437vw;
  }
}
@media screen and (max-width: 480px) {
  .contact__step-button {
    font-size: 3.3333333333vw;
  }
}
@media screen and (max-width: 375px) {
  .contact__step-button {
    font-size: 4.2666666667vw;
  }
}
.contact__step-button.active {
  color: #FFFFFF;
}
.contact__step-button.first {
  --step-background: url("../../images/step-1.png");
}
.contact__step-button.first.active {
  --step-background: url("../../images/step-1-active.png");
}
.contact__step-button.second {
  --step-background: url("../../images/step-2.png");
}
.contact__step-button.second.active {
  --step-background: url("../../images/step-2-active.png");
}
.contact__step-button.third {
  --step-background: url("../../images/step-3.png");
}
.contact__step-button.third.active {
  --step-background: url("../../images/step-3-active.png");
}
.contact__button-wrapper {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 2.0833333333vw;
  margin-top: 2.0833333333vw;
}
@media screen and (max-width: 1440px) {
  .contact__button-wrapper {
    gap: 2.7777777778vw;
  }
}
@media screen and (max-width: 767px) {
  .contact__button-wrapper {
    gap: 2.6075619296vw;
  }
}
@media screen and (max-width: 480px) {
  .contact__button-wrapper {
    gap: 4.1666666667vw;
  }
}
@media screen and (max-width: 375px) {
  .contact__button-wrapper {
    gap: 5.3333333333vw;
  }
}
@media screen and (max-width: 1440px) {
  .contact__button-wrapper {
    margin-top: 2.7777777778vw;
  }
}
@media screen and (max-width: 767px) {
  .contact__button-wrapper {
    margin-top: 2.6075619296vw;
  }
}
@media screen and (max-width: 480px) {
  .contact__button-wrapper {
    margin-top: 4.1666666667vw;
  }
}
@media screen and (max-width: 375px) {
  .contact__button-wrapper {
    margin-top: 5.3333333333vw;
  }
}
.contact__button-wrapper .themeBtn {
  min-width: 11.9791666667vw;
}
@media screen and (max-width: 1440px) {
  .contact__button-wrapper .themeBtn {
    min-width: 15.9722222222vw;
  }
}
@media screen and (max-width: 767px) {
  .contact__button-wrapper .themeBtn {
    min-width: 20.8604954368vw;
  }
}
@media screen and (max-width: 480px) {
  .contact__button-wrapper .themeBtn {
    min-width: 33.3333333333vw;
  }
}
@media screen and (max-width: 375px) {
  .contact__button-wrapper .themeBtn {
    min-width: 42.6666666667vw;
  }
}
.contact__thankyou-icon {
  width: 5.2083333333vw;
  height: 5.2083333333vw;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
  margin: auto;
  margin-bottom: 0.5208333333vw;
}
@media screen and (max-width: 1440px) {
  .contact__thankyou-icon {
    width: 6.9444444444vw;
  }
}
@media screen and (max-width: 767px) {
  .contact__thankyou-icon {
    width: 10.4302477184vw;
  }
}
@media screen and (max-width: 480px) {
  .contact__thankyou-icon {
    width: 16.6666666667vw;
  }
}
@media screen and (max-width: 375px) {
  .contact__thankyou-icon {
    width: 21.3333333333vw;
  }
}
@media screen and (max-width: 1440px) {
  .contact__thankyou-icon {
    height: 6.9444444444vw;
  }
}
@media screen and (max-width: 767px) {
  .contact__thankyou-icon {
    height: 10.4302477184vw;
  }
}
@media screen and (max-width: 480px) {
  .contact__thankyou-icon {
    height: 16.6666666667vw;
  }
}
@media screen and (max-width: 375px) {
  .contact__thankyou-icon {
    height: 21.3333333333vw;
  }
}
@media screen and (max-width: 1440px) {
  .contact__thankyou-icon {
    margin-bottom: 0.6944444444vw;
  }
}
@media screen and (max-width: 767px) {
  .contact__thankyou-icon {
    margin-bottom: 1.3037809648vw;
  }
}
@media screen and (max-width: 480px) {
  .contact__thankyou-icon {
    margin-bottom: 2.0833333333vw;
  }
}
@media screen and (max-width: 375px) {
  .contact__thankyou-icon {
    margin-bottom: 2.6666666667vw;
  }
}
.contact__thankyou-title {
  font-size: 2.0833333333vw;
  font-weight: 700;
  line-height: 1.8;
  text-align: center;
  color: #162A43;
  margin-bottom: 3.125vw;
}
@media screen and (max-width: 1440px) {
  .contact__thankyou-title {
    font-size: 2.7777777778vw;
  }
}
@media screen and (max-width: 767px) {
  .contact__thankyou-title {
    font-size: 4.1720990874vw;
  }
}
@media screen and (max-width: 480px) {
  .contact__thankyou-title {
    font-size: 6.6666666667vw;
  }
}
@media screen and (max-width: 375px) {
  .contact__thankyou-title {
    font-size: 8.5333333333vw;
  }
}
@media screen and (max-width: 1440px) {
  .contact__thankyou-title {
    margin-bottom: 4.1666666667vw;
  }
}
@media screen and (max-width: 767px) {
  .contact__thankyou-title {
    margin-bottom: 3.9113428944vw;
  }
}
@media screen and (max-width: 480px) {
  .contact__thankyou-title {
    margin-bottom: 6.25vw;
  }
}
@media screen and (max-width: 375px) {
  .contact__thankyou-title {
    margin-bottom: 8vw;
  }
}
.contact__thankyou-description {
  line-height: 1.7;
  text-align: center;
}

.custom-form .form-submit-button {
  display: none;
}
.custom-form .wpcf7-not-valid-tip {
  font-size: 0.9em;
  margin-bottom: -0.78125vw;
  margin-top: 0.2604166667vw;
}
@media screen and (max-width: 1440px) {
  .custom-form .wpcf7-not-valid-tip {
    margin-bottom: -1.0416666667vw;
  }
}
@media screen and (max-width: 767px) {
  .custom-form .wpcf7-not-valid-tip {
    margin-bottom: -1.9556714472vw;
  }
}
@media screen and (max-width: 480px) {
  .custom-form .wpcf7-not-valid-tip {
    margin-bottom: -3.125vw;
  }
}
@media screen and (max-width: 375px) {
  .custom-form .wpcf7-not-valid-tip {
    margin-bottom: -4vw;
  }
}
@media screen and (max-width: 1440px) {
  .custom-form .wpcf7-not-valid-tip {
    margin-top: 0.3472222222vw;
  }
}
@media screen and (max-width: 767px) {
  .custom-form .wpcf7-not-valid-tip {
    margin-top: 0.6518904824vw;
  }
}
@media screen and (max-width: 480px) {
  .custom-form .wpcf7-not-valid-tip {
    margin-top: 1.0416666667vw;
  }
}
@media screen and (max-width: 375px) {
  .custom-form .wpcf7-not-valid-tip {
    margin-top: 1.3333333333vw;
  }
}
@media (max-width: 767px) {
  .custom-form .wpcf7-not-valid-tip {
    font-size: 0.8em;
  }
}
.custom-form .wpcf7-acceptance input[type=checkbox] ~ span {
  line-height: 1.4;
}
.custom-form .wpcf7-list-item > label {
  display: flex;
  align-items: center;
}
.custom-form .wpcf7-list-item > label input[type=checkbox] {
  flex-shrink: 0;
}
.custom-form .wpcf7-form-control-wrap {
  display: block;
}
.custom-form input[type=checkbox] {
  width: 1.3em;
  height: 1.3em;
  top: 0.1em;
  margin-right: 0.5em;
  vertical-align: middle;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #FFFFFF;
  background-image: var(--bs-form-check-bg-image);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border: 1px solid #162A43;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}
.custom-form input[type=checkbox]:checked {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
  background-color: #162A43;
}
.custom-form input[type=checkbox] ~ span {
  vertical-align: middle;
}
.custom-form__row {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 0.9375vw;
  gap: 0vw;
}
@media screen and (max-width: 1440px) {
  .custom-form__row {
    margin-bottom: 1.25vw;
  }
}
@media screen and (max-width: 767px) {
  .custom-form__row {
    margin-bottom: 3.259452412vw;
  }
}
@media screen and (max-width: 480px) {
  .custom-form__row {
    margin-bottom: 5.2083333333vw;
  }
}
@media screen and (max-width: 375px) {
  .custom-form__row {
    margin-bottom: 6.6666666667vw;
  }
}
@media screen and (max-width: 1440px) {
  .custom-form__row {
    gap: 0vw;
  }
}
@media screen and (max-width: 767px) {
  .custom-form__row {
    gap: 1.0430247718vw;
  }
}
@media screen and (max-width: 480px) {
  .custom-form__row {
    gap: 1.6666666667vw;
  }
}
@media screen and (max-width: 375px) {
  .custom-form__row {
    gap: 2.1333333333vw;
  }
}
.custom-form__label {
  flex: 1 1 0;
  white-space: pre-wrap;
  word-break: break-word;
}
.custom-form__label--bold {
  font-weight: bold;
}
.custom-form__required-badge {
  flex: 0 0 auto;
  margin-right: 2.0833333333vw;
  background-color: #C60000;
  color: #FFFFFF;
  padding: 0.2083333333vw 0.5208333333vw;
  font-size: 0.8333333333vw;
  font-weight: 400;
  border-radius: 0.2604166667vw;
}
@media screen and (max-width: 1440px) {
  .custom-form__required-badge {
    margin-right: 2.7777777778vw;
  }
}
@media screen and (max-width: 767px) {
  .custom-form__required-badge {
    margin-right: 0vw;
  }
}
@media screen and (max-width: 480px) {
  .custom-form__required-badge {
    margin-right: 0vw;
  }
}
@media screen and (max-width: 375px) {
  .custom-form__required-badge {
    margin-right: 0vw;
  }
}
@media screen and (max-width: 1440px) {
  .custom-form__required-badge {
    padding: 0.2777777778vw 0.6944444444vw;
  }
}
@media screen and (max-width: 767px) {
  .custom-form__required-badge {
    padding: 0.5215123859vw;
  }
}
@media screen and (max-width: 480px) {
  .custom-form__required-badge {
    padding: 0.8333333333vw;
  }
}
@media screen and (max-width: 375px) {
  .custom-form__required-badge {
    padding: 1.0666666667vw;
  }
}
@media screen and (max-width: 1440px) {
  .custom-form__required-badge {
    font-size: 1.1111111111vw;
  }
}
@media screen and (max-width: 767px) {
  .custom-form__required-badge {
    font-size: 1.5645371578vw;
  }
}
@media screen and (max-width: 480px) {
  .custom-form__required-badge {
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 375px) {
  .custom-form__required-badge {
    font-size: 3.2vw;
  }
}
@media screen and (max-width: 1440px) {
  .custom-form__required-badge {
    border-radius: 0.3472222222vw;
  }
}
@media screen and (max-width: 767px) {
  .custom-form__required-badge {
    border-radius: 0.6518904824vw;
  }
}
@media screen and (max-width: 480px) {
  .custom-form__required-badge {
    border-radius: 1.0416666667vw;
  }
}
@media screen and (max-width: 375px) {
  .custom-form__required-badge {
    border-radius: 1.3333333333vw;
  }
}
.custom-form__input-wrapper {
  flex: 0 0 67%;
}
.custom-form__input-wrapper--postal-code {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1.0416666667vw;
}
@media screen and (max-width: 1440px) {
  .custom-form__input-wrapper--postal-code {
    gap: 1.3888888889vw;
  }
}
@media screen and (max-width: 767px) {
  .custom-form__input-wrapper--postal-code {
    gap: 2.6075619296vw;
  }
}
@media screen and (max-width: 480px) {
  .custom-form__input-wrapper--postal-code {
    gap: 4.1666666667vw;
  }
}
@media screen and (max-width: 375px) {
  .custom-form__input-wrapper--postal-code {
    gap: 5.3333333333vw;
  }
}
@media (max-width: 767px) {
  .custom-form__input-wrapper {
    flex: 1 1 100%;
  }
}
.custom-form__input {
  display: block;
  width: 100%;
  padding: 0.8333333333vw;
  background: #EDF2F6;
  border: 1px solid #5F758F;
  border-radius: 0.2083333333vw;
}
@media screen and (max-width: 1440px) {
  .custom-form__input {
    padding: 1.1111111111vw;
  }
}
@media screen and (max-width: 767px) {
  .custom-form__input {
    padding: 1.3037809648vw;
  }
}
@media screen and (max-width: 480px) {
  .custom-form__input {
    padding: 2.0833333333vw;
  }
}
@media screen and (max-width: 375px) {
  .custom-form__input {
    padding: 2.6666666667vw;
  }
}
@media screen and (max-width: 1440px) {
  .custom-form__input {
    border-radius: 0.2777777778vw;
  }
}
@media screen and (max-width: 767px) {
  .custom-form__input {
    border-radius: 0.5215123859vw;
  }
}
@media screen and (max-width: 480px) {
  .custom-form__input {
    border-radius: 0.8333333333vw;
  }
}
@media screen and (max-width: 375px) {
  .custom-form__input {
    border-radius: 1.0666666667vw;
  }
}
.custom-form__btn-badge {
  background-color: #162A43;
  padding: 0.3125vw 1.0416666667vw;
  color: #FFFFFF;
  flex: 0 0 auto;
  border-radius: 0.2083333333vw;
}
@media screen and (max-width: 1440px) {
  .custom-form__btn-badge {
    padding: 0.4166666667vw 1.3888888889vw;
  }
}
@media screen and (max-width: 767px) {
  .custom-form__btn-badge {
    padding: 0.7822685789vw 2.6075619296vw;
  }
}
@media screen and (max-width: 480px) {
  .custom-form__btn-badge {
    padding: 1.25vw 4.1666666667vw;
  }
}
@media screen and (max-width: 375px) {
  .custom-form__btn-badge {
    padding: 1.6vw 5.3333333333vw;
  }
}
@media screen and (max-width: 1440px) {
  .custom-form__btn-badge {
    border-radius: 0.2777777778vw;
  }
}
@media screen and (max-width: 767px) {
  .custom-form__btn-badge {
    border-radius: 0.5215123859vw;
  }
}
@media screen and (max-width: 480px) {
  .custom-form__btn-badge {
    border-radius: 0.8333333333vw;
  }
}
@media screen and (max-width: 375px) {
  .custom-form__btn-badge {
    border-radius: 1.0666666667vw;
  }
}
.custom-form__example-text {
  flex: 0 0 67%;
  margin-left: auto;
  margin-top: 1.0416666667vw;
  font-family: Noto Sans JP;
  font-weight: 300;
  font-size: 0.8333333333vw;
}
@media screen and (max-width: 1440px) {
  .custom-form__example-text {
    margin-top: 1.3888888889vw;
  }
}
@media screen and (max-width: 767px) {
  .custom-form__example-text {
    margin-top: 0.5215123859vw;
  }
}
@media screen and (max-width: 480px) {
  .custom-form__example-text {
    margin-top: 0.8333333333vw;
  }
}
@media screen and (max-width: 375px) {
  .custom-form__example-text {
    margin-top: 1.0666666667vw;
  }
}
@media screen and (max-width: 1440px) {
  .custom-form__example-text {
    font-size: 1.1111111111vw;
  }
}
@media screen and (max-width: 767px) {
  .custom-form__example-text {
    font-size: 1.8252933507vw;
  }
}
@media screen and (max-width: 480px) {
  .custom-form__example-text {
    font-size: 2.9166666667vw;
  }
}
@media screen and (max-width: 375px) {
  .custom-form__example-text {
    font-size: 3.7333333333vw;
  }
}
@media (max-width: 767px) {
  .custom-form__example-text {
    flex: 1 1 100%;
    margin-left: 0;
    margin-right: auto;
  }
}

.form-summary .custom-form__label {
  flex: 1 1 40%;
}
.form-summary .custom-form__label--bold {
  flex: 1 1 60%;
}

/* Privacy Policy Section */
.privacy-policy-section__content {
  margin: 2.6041666667vw 0vw;
  padding: 2.0833333333vw;
  border: 1px solid #162A43;
  color: #162A43;
  height: 20.8333333333vw;
  overflow-y: scroll; /* Make content scrollable */
  color: #162A43;
}
@media screen and (max-width: 1440px) {
  .privacy-policy-section__content {
    margin: 3.4722222222vw 0vw;
  }
}
@media screen and (max-width: 767px) {
  .privacy-policy-section__content {
    margin: 6.518904824vw 0vw;
  }
}
@media screen and (max-width: 480px) {
  .privacy-policy-section__content {
    margin: 10.4166666667vw 0vw;
  }
}
@media screen and (max-width: 375px) {
  .privacy-policy-section__content {
    margin: 13.3333333333vw 0vw;
  }
}
@media screen and (max-width: 1440px) {
  .privacy-policy-section__content {
    padding: 2.7777777778vw;
  }
}
@media screen and (max-width: 767px) {
  .privacy-policy-section__content {
    padding: 3.1290743155vw;
  }
}
@media screen and (max-width: 480px) {
  .privacy-policy-section__content {
    padding: 5vw;
  }
}
@media screen and (max-width: 375px) {
  .privacy-policy-section__content {
    padding: 6.4vw;
  }
}
@media screen and (max-width: 1440px) {
  .privacy-policy-section__content {
    height: 27.7777777778vw;
  }
}
@media screen and (max-width: 767px) {
  .privacy-policy-section__content {
    height: 26.075619296vw;
  }
}
@media screen and (max-width: 480px) {
  .privacy-policy-section__content {
    height: 41.6666666667vw;
  }
}
@media screen and (max-width: 375px) {
  .privacy-policy-section__content {
    height: 53.3333333333vw;
  }
}
.privacy-policy-section__content h1, .privacy-policy-section__content h2, .privacy-policy-section__content h3, .privacy-policy-section__content h4, .privacy-policy-section__content h5, .privacy-policy-section__content h6 {
  color: #162A43;
}
@media screen and (max-width: 767px) {
  .privacy-policy-section__content h1, .privacy-policy-section__content h2, .privacy-policy-section__content h3, .privacy-policy-section__content h4, .privacy-policy-section__content h5, .privacy-policy-section__content h6 {
    font-size: 2.0860495437vw;
  }
}
@media screen and (max-width: 480px) {
  .privacy-policy-section__content h1, .privacy-policy-section__content h2, .privacy-policy-section__content h3, .privacy-policy-section__content h4, .privacy-policy-section__content h5, .privacy-policy-section__content h6 {
    font-size: 3.3333333333vw;
  }
}
@media screen and (max-width: 375px) {
  .privacy-policy-section__content h1, .privacy-policy-section__content h2, .privacy-policy-section__content h3, .privacy-policy-section__content h4, .privacy-policy-section__content h5, .privacy-policy-section__content h6 {
    font-size: 4.2666666667vw;
  }
}
.privacy-policy-section__content *:not(h1, h2, h3, h4, h5, h6) {
  line-height: 1.7;
}
.privacy-policy-section__content p {
  margin-bottom: 0.5208333333vw;
}
@media screen and (max-width: 1440px) {
  .privacy-policy-section__content p {
    margin-bottom: 0.6944444444vw;
  }
}
@media screen and (max-width: 767px) {
  .privacy-policy-section__content p {
    margin-bottom: 1.0430247718vw;
  }
}
@media screen and (max-width: 480px) {
  .privacy-policy-section__content p {
    margin-bottom: 1.6666666667vw;
  }
}
@media screen and (max-width: 375px) {
  .privacy-policy-section__content p {
    margin-bottom: 2.1333333333vw;
  }
}
.privacy-policy-section__acceptance {
  display: flex;
  justify-content: center;
  align-items: center;
}
.privacy-policy-section__acceptance .custom-form__required-badge {
  margin-right: 0;
}

.cta {
  padding: 5.2083333333vw 0vw;
}
@media screen and (max-width: 1440px) {
  .cta {
    padding: 6.9444444444vw 0vw;
  }
}
@media screen and (max-width: 767px) {
  .cta {
    padding: 3.9113428944vw 0vw;
  }
}
@media screen and (max-width: 480px) {
  .cta {
    padding: 6.25vw 0vw;
  }
}
@media screen and (max-width: 375px) {
  .cta {
    padding: 8vw 0vw;
  }
}

/*# sourceMappingURL=contact.css.map*/