@charset "UTF-8";
.top-first-view .course .swiper-slide.is-filter-hidden {
  display: none !important;
}
.footer-breadcrumb__list li {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 1.4rem;
  line-height: 1.4;
  letter-spacing: -.02em;
}
.footer-breadcrumb__list li a {
  font-weight: 500;
  color: #4a4a4a;
  text-decoration: none;
}
.footer-breadcrumb__list li:not(:first-child)::before {
  content: "";
  display: block;
  flex-shrink: 0;
  width: 7px;
  height: 7px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  transform-origin: 50% center;
  transform: rotate(45deg);
  transition: border-color .2s;
}
.footer-breadcrumb__list li span.current-item {
  font-weight: 400;
  color: #9b9b9b;
}
@media screen and (max-width: 639.9px) {
  .footer-breadcrumb__list li {
    font-size: 1.3rem;
  }
}
main:not(#counseling) .top-courses .row .col dl dt:after {
  background-image: var(--course-icon) !important;
}

/* gformカスタマイズ */
.contact-form .gfield.nolabel label {
  opacity: 0;
}
.gform-theme--foundation .contact-form .gfield input[type="text"],
.gform-theme--foundation .contact-form .gfield input[type="email"] {
  width: 100%;
  min-height: 56px;
  border: 1px solid transparent;
  border-radius: 3px;
  background: #eaeff5;
  padding: 16px;
  font-size: clamp(1.4rem, 1.168rem + .3vw, 1.6rem);
  color: #555;
  line-height: 1.5;
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.gform-theme--foundation .contact-form .gfield textarea {
  width: 100%;
  min-height: 141px;
  resize: vertical;
  border: 1px solid transparent;
  border-radius: 3px;
  background: #eaeff5;
  padding: 16px;
  font-size: clamp(1.4rem, 1.168rem + .3vw, 1.6rem);
  color: #555;
  line-height: 1.5;
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.gform-theme--foundation .contact-form .gfield .ginput_container_select {
  position: relative;
  width: 100%;
  border: 1px solid #d1d5db;
  border-radius: .5rem;
  background: #eaeff5;
  font-size: clamp(1.4rem, 1.168rem + .3vw, 1.6rem);
  line-height: 1.5;
  color: #999;
  cursor: pointer;
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.gform-theme--foundation .contact-form .gfield .ginput_container_select select {
  background: none;
  border:none;
  min-height: 56px;
  padding: 2rem;
  line-height: 1.4rem;
}
.gform-theme--foundation .contact-form .gfield .ginput_container_select:after {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m7 10l5 5l5-5'/%3E%3C/svg%3E");
  background-color: currentColor;
  -webkit-mask-image: var(--svg);
  mask-image: var(--svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  position: absolute;
  top: calc(50% - 12px);
  right: 1.5rem;
}
.gform-theme--framework .contact-form .gfield--type-choice .gfield_radio,
.gform-theme--framework .contact-form .gfield--type-choice .gfield_checkbox  {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.gform-theme--framework .contact-form .gfield--type-choice .gfield_radio .gchoice,
.gform-theme--framework .contact-form .gfield--type-choice .gfield_checkbox .gchoice {
    display: flex;
    align-items: center;
    gap: 16px;
    min-height: 64px;
    padding: 16px 20px;
    border: 1px solid #e5e5e5;
    border-radius: 5px;
    background: #fff;
    cursor: pointer;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.gform-theme--framework .contact-form .field_description_below .gfield_description:where(:not(.gfield_creditcard_warning_message):not(.field_validation_above .gfield_validation_message):not(.ginput_counter_tinymce):not(.gfield_choice_limit_message)) {
  margin: 8px 0 0;
  font-size: clamp(1.1rem, 1.056rem + .1vw, 1.2rem);
  line-height: 1.4;
  color: #6b7280;
}
.gform-theme--framework .contact-form .gform-field-label>.gfield_required:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)) {
  font-weight: 600;
  color: #f8172e;
}
.gform-theme--foundation .contact-form .gform_footer {
  margin: 5rem 0 0;
  display: flex;
  justify-content: center;
}
.gform-theme.gform-theme--framework.gform_wrapper.contact-form_wrapper input[type="submit"].button.gform_button,
.gform-theme.gform-theme--framework.gform_wrapper.contact-form_wrapper .gform_footer input[type="submit"].button.gform_button,
.gform-theme.gform-theme--framework.gform_wrapper.contact-form_wrapper .gform_page_footer input[type="submit"].button.gform_button {
    border: 1px solid #004ea3;
    background-color: #004ea3;
    color: #fff;
    font-weight: 700;
    line-height: 1.2;
    overflow-wrap: anywhere;
    word-break: keep-all;
    text-align: center;
    text-transform: uppercase;
    transition: background-color .2s, color .2s;
    width: 270px;
    height: 60px;
    padding: 2px 30px 0;
    font-size: 1.8rem;
}
.gform-theme--foundation .contact-form .gfield--width-half + .gfield--width-half .gfield_description {
  opacity: 0;
}
@media (max-width: 639.9px) {
  .contact-form .gfield.nolabel label {
    display: none;
  }
  .gform-theme--foundation .contact-form .gfield--width-half.sp-nodesc .gfield_description {
    display: none;
  }
  .gform-theme--foundation .contact-form .gfield--width-half + .gfield--width-half .gfield_description {
    opacity: 1;
  }
  .gform-theme--framework .contact-form .gfield--type-choice .gfield_radio,
  .gform-theme--framework .contact-form .gfield--type-choice .gfield_checkbox {
    grid-template-columns: 1fr;
  }
}

.simulation_wrap #results {
  margin-top: 2rem;
}

.fee-intro {
  margin-bottom: 50px;
  text-align: center;
}

.fee-intro__heading {
  font-size: 5rem;
  font-weight: 500;
  line-height: 1.3;
}

.fee-intro__lead {
  margin-top: 16px;
  font-size: 2rem;
  line-height: 1.6;
}

@media screen and (max-width: 639.9px) {
  .fee-intro {
    margin-bottom: 30px;
  }

  .fee-intro__heading {
    font-size: 3rem;
  }

  .fee-intro__lead {
    margin-top: 12px;
    font-size: 1.6rem;
    line-height: 1.7;
  }
}