.searchPage {
  padding: 90px 0 80px;
}

.acureContact .container,
.acureConfirm .container {
  margin: 0 auto;
  max-width: 67.5rem;
}

/* -------------------------------------------------
      mainvisual
  -------------------------------------------------- */

.mainvisual {
  align-items: center;
  display: flex;
  height: 20.625rem;
  position: relative;
  width: 100%;
}

.mainvisual__floating {
  left: 0;
  position: absolute;
  top: 10%;
  width: 100%;
}

.mainvisual__inner {
  margin: 0 auto;
  max-width: 68.75rem;
  width: 100%;
}

.mainvisual__catch--title {
  color: #333;
  font-size: clamp(2rem, 1.483rem + 2.21vw, 3rem);
  font-weight: 700;
  line-height: 1;
}

.mainvisual__catch--lead {
  color: var(--colorPrimary);
  font-family: "Roboto", sans-serif;
  font-size: var(--fontMax16Min14);
  font-weight: 700;
  letter-spacing: 0;
  margin-top: 0.75rem;
}

.mainvisual__illust {
  align-items: flex-end;
  bottom: 0;
  column-gap: 2rem;
  display: flex;
  position: absolute;
  right: 1rem;
}

.mainvisual__illust--img.is-first img {
  height: 9.5vw;
  width: auto;
}

.mainvisual__illust--img.is-second img {
  height: 11.7vw;
  width: auto;
}

.mainvisual__illust--img.is-third img {
  height: 9.5vw;
  width: auto;
}

@media screen and (max-width:1024px) {
  .mainvisual__inner {
    width: calc(100% - 2.5rem);
  }
}

@media screen and (max-width: 767px) {
  .mainvisual__floating {
    height: 100%;
  }
  .mainvisual {
    height: 11.25rem;
  }
  .mainvisual__catch--title {
    font-size: 1.625rem;
  }
}

.anime-floating-y {
  animation: floating-y 2s ease-in-out infinite alternate-reverse;
}

@keyframes floating-y {
  0% {
    transform: translateY(-5%);
  }
  100% {
    transform: translateY(5%);
  }
}

@media screen and (max-width: 767px) {
  .anime-floating-y {
    height: 100%;
    object-fit: cover;
  }
}


/* -------------------------------------------------
      breadcrumb
  -------------------------------------------------- */
.breadcrumb {
  margin-top: 2rem;
  padding: 0 1.25rem;
}

.breadcrumb__list {
  align-items: center;
  column-gap: 3rem;
  display: flex;
  flex-wrap: wrap;
}

.breadcrumb__list li {
  color: #949494;
  font-size: var(--fontMax14Min12);
  position: relative;
}

.breadcrumb__list li:nth-child(1),
.breadcrumb__list li:nth-child(2) {
  min-width: fit-content;
}

.breadcrumb__list li:nth-child(3) {
  line-height: 1.6;
}

.breadcrumb__list li::before {
  border-right: 1px solid #808080;
  border-top: 1px solid #808080;
  bottom: 0;
  content: "";
  height: 0.4em;
  left: -1.5rem;
  margin: auto;
  position: absolute;
  top: 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  vertical-align: middle;
  width: 0.4em;
}

.breadcrumb__list li:first-child::before {
  display: none;
}

.breadcrumb__list li a {
  color: #333;
  transition: opacity 0.3s ease-in-out;
}

.breadcrumb__list li a:hover {
  opacity: 0.7;
}

@media screen and (max-width: 767px) {
  .breadcrumb__list {
    gap: 1.5rem;
    row-gap: 0.5rem;
  }
  .breadcrumb__list li:not(:last-child)::before {
    left: unset;
    right: -1rem;
    top: 0.125rem;
  }
  .breadcrumb__list li:first-child::before {
    display: block;
  }
  .breadcrumb__list li:last-child::before {
    display: none;
  }
}

/* Contact Form */

.contact {
  padding: 0 1.25rem;
}

.contact__step--item {
  position: relative;
}

.contact__step--item::after {
  background-color: #949494;
}

.contact__step--item:nth-last-child(1):after {
  content: none;
}

.contact__step--number {
  font-family: "Roboto", sans-serif;
  font-size: var(--fontMax32Min24);
}


.contact__step--number.is-blue {
  background-color: var(--colorPrimary);
}

.contact__step--text {
  font-family: var(--fontNotoSansJP);
  font-size: var(--fontMax14Min12);
}

@media screen and (max-width:767px) {
  .contact__step--text {
    font-size: var(--fontMax12Min10);
  }
}

.contactForm .acureCta {
  font-size: 0.875rem;
  margin: 0 auto;
  max-width: 15.625rem;
}

.form__textArea {
  max-width: 100%;
}

.documentCheck__group .form__checkbox--container {
  max-width: 100%;
}

.documentCheck__group .form__radioLabel {
  letter-spacing: 0;
}

.acureConfirm .formInner {
  padding: 2.5rem 0;
}

.acureConfirm .confirm__btnBox {
  display: flex;
  gap: 2.5rem;
  justify-content: center;
}

.acureConfirm .confirm__btnBox .acureCta {
  max-width: 15.625rem;
}

.confirmForm {
  padding-bottom: 0;
}

.success {
  padding: clamp(3.75rem, 7.4vw, 5rem) 1.25rem;
}

.success__title {
  color: #3b4043;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0;
  text-align: center;
}

.success__text {
  color: #3b4043;
  letter-spacing: 0;
  margin-top: 2.5rem;
  text-align: center;
}

.success .acureCta {
  margin: 2.5rem auto 0;
  max-width: 13.3125rem;
}

.form__radioLabel::after {
  left: 0.1875rem;
}

.contactNoteBottom label::before {
  top: 0.4375rem;
}

.contactForm label:has(input:checked)::before,
.contactNoteBottom label:has(input:checked)::before {
  background: var(--colorPrimary);
}

.contactNoteBottom label.contactNote__consent::before {
  top: 0.5625rem;
}

.contactNoteBottom label.contactNote__consent::after {
  top: 0.8125rem;
}
