.fantasy-lead {
  padding-top: clamp(4rem, 1.1rem + 7.63vw, 7rem);
}
.fantasy-lead__ttl {
  text-align: center;
  margin-bottom: clamp(3rem, 2rem + 2.54vw, 4rem);
}
.fantasy-lead__catch {
  font-family: var(--sub_font);
  font-size: min(6vw, 3rem);
  letter-spacing: 0.05em;
  line-height: 1.67;
  text-align: center;
  margin-bottom: clamp(3rem, 2rem + 2.54vw, 4rem);
}
@media screen and (min-width: 768px) {
  .fantasy-lead__catch {
    font-size: 3rem;
  }
}
.fantasy-lead__txt {
  font-size: clamp(1.6rem, 1.4rem + 0.51vw, 1.8rem);
  letter-spacing: 0.05em;
  line-height: 2.22;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .fantasy-lead__txt {
    text-align: center;
  }
}
.fantasy-lead__txt strong {
  font-weight: 400;
}
.fantasy-lead__txt strong br {
  display: none;
}
@media screen and (min-width: 768px) {
  .fantasy-lead__txt strong br {
    display: block;
  }
}

.fantasy-block {
  padding-top: clamp(7rem, 1.3rem + 15.27vw, 13rem);
  padding-bottom: clamp(7rem, 0.3rem + 17.81vw, 14rem);
}
.fantasy-block__item {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  gap: 30px clamp(6rem, -10rem + 15.63vw, 10rem);
  position: relative;
}
@media screen and (min-width: 1024px) {
  .fantasy-block__item {
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: stretch;
  }
}
@media screen and (min-width: 1024px) {
  .fantasy-block__info {
    flex: 1;
  }
}
@media screen and (min-width: 1024px) {
  .fantasy-block__ttl .cmn-ttl__main {
    font-size: min(3.4vw, 3.6rem);
  }
}
.fantasy-block__ttl {
  margin-bottom: clamp(3rem, 1.6rem + 3.82vw, 4.5rem);
}
.fantasy-block__catch {
  font-family: var(--sub_font);
  font-size: min(5.6vw, 2.4rem);
  letter-spacing: 0.05em;
  line-height: 1.67;
  margin-bottom: clamp(3rem, 1.6rem + 3.82vw, 4.5rem);
}
@media screen and (min-width: 1024px) {
  .fantasy-block__catch {
    font-size: min(2.3vw, 3rem);
  }
}
.fantasy-block__txt {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1.78;
}
.fantasy-block__media {
  width: 80%;
}
@media screen and (min-width: 1024px) {
  .fantasy-block__media {
    max-width: 600px;
    width: 50%;
  }
}
@media screen and (min-width: 1024px) {
  .fantasy-block__media-ph {
    margin-left: -40px;
  }
}
@media screen and (min-width: 1280px) {
  .fantasy-block__media-ph {
    margin-left: max((1200px - 100vw) / 2, -140px);
  }
}
.fantasy-block__illust {
  max-width: max-content;
  position: absolute;
  z-index: -1;
  width: 30%;
  bottom: calc(clamp(5rem, 3.3rem + 4.62vw, 8rem) * -1);
  right: max(50% - 50vw, -130px);
}
@media screen and (min-width: 1024px) {
  .fantasy-block__illust {
    bottom: -8px;
  }
}

.fantasy-approach.gray-approach::before {
  content: none;
}
.fantasy-approach.gray-approach .gray-approach__item {
  border-bottom: solid 1px #9f8d73;
}
.fantasy-approach.gray-approach .gray-approach__item:last-of-type {
  border-bottom: none;
}
@media screen and (min-width: 768px) {
  .fantasy-approach.gray-approach .gray-approach__item {
    border-bottom: none;
  }
  .fantasy-approach.gray-approach .gray-approach__item:nth-of-type(odd) {
    border-right: solid 1px #9f8d73;
  }
  .fantasy-approach.gray-approach .gray-approach__item:last-of-type {
    border-right: none;
  }
}
@media screen and (min-width: 1024px) {
  .fantasy-approach.gray-approach .gray-approach__item {
    border-right: solid 1px #9f8d73;
  }
  .fantasy-approach.gray-approach .gray-approach__item:nth-of-type(3n),
  .fantasy-approach.gray-approach .gray-approach__item:last-of-type {
    border-right: none;
  }
}

.fantasy-concern.cmn-concern02 .cmn-concern02__list {
  gap: 30px 20px;
}
.fantasy-concern.cmn-concern02 .cmn-concern02__item {
  max-width: 590px;
  padding: 20px 15px;
}
@media screen and (min-width: 768px) {
  .fantasy-concern.cmn-concern02 .cmn-concern02__item {
    width: calc((100% - 20px) / 2);
  }
}
@media screen and (min-width: 768px) {
  .fantasy-concern.cmn-concern02 .cmn-concern02__note {
    font-size: clamp(1.9rem, 0.4rem + 1.95vw, 2.4rem);
  }
}
.fantasy-concern.cmn-concern02 .cmn-concern02__note strong {
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .fantasy-concern.cmn-concern02 .cmn-concern02__note strong br {
    display: none;
  }
}

.fantasy-homecare.fantasy-block {
  padding-bottom: 0;
}
@media screen and (min-width: 1024px) {
  .fantasy-homecare.fantasy-block .fantasy-block__info {
    max-width: 600px;
  }
}
@media screen and (min-width: 1024px) {
  .fantasy-homecare.fantasy-block .fantasy-block__media {
    max-width: 500px;
    width: 42%;
  }
}
@media screen and (min-width: 1280px) {
  .fantasy-homecare.fantasy-block .fantasy-block__media-ph {
    margin-left: max((1200px - 100vw) / 2, -240px);
  }
}
