@charset "UTF-8";

.aptos-page {
  --aptos-color-text: #575757;
  --aptos-color-heading: #bc6067;
  --aptos-color-soft: #fbf7f7;
  --aptos-color-card: #fff;
  --aptos-color-border: #d9d9d9;
  --aptos-color-pink: #e09c9c;
  --aptos-color-light-pink: rgba(188, 96, 103, 0.05);
  --aptos-container-width: 1250px;
  --aptos-container-narrow: 1114px;
  --aptos-container-padding: 20px;
  --aptos-radius-small: 10px;
  color: var(--aptos-color-text);
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
}

.aptos-page *,
.aptos-page *::before,
.aptos-page *::after {
  box-sizing: border-box;
}

.aptos-page .l-container--narrow {
  max-width: var(--aptos-container-narrow);
}

.aptos-page .p-section {
  padding-top: 80px;
}

.aptos-page .p-section--soft {
  margin-top: 80px;
  padding-block: 80px;
  background: var(--aptos-color-soft);
}

.aptos-page .p-hero__container {
  max-width: 1280px;
  padding: 0 15px;
  box-sizing: content-box;
}

.aptos-page .p-hero__frame {
  overflow: hidden;
  border: 1px solid #d7d3df;
  box-shadow: 0 20px 50px rgba(166, 145, 209, 0.08);
}

.aptos-page .p-hero__frame img {
  width: 100%;
  aspect-ratio: 2560 / 1230;
  object-fit: cover;
}

.aptos-page .p-intro {
  width: 805px;
  max-width: 100%;
  margin: 54px auto 0;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.75;
}

.aptos-page .p-reason {
  margin-top: 72px;
}

.aptos-page .p-reason__label {
  font-size: 25px;
  font-size: 1.5625rem;
  font-weight: 500;
  line-height: 1.75;
  color: var(--aptos-color-heading);
  text-align: left;
}

.aptos-page .p-reason__box {
  display: grid;
  grid-template-columns: 328px 1fr;
  align-items: center;
  padding: 0;
  margin-top: 4px;
  border-radius: var(--aptos-radius-small);
  border: 4px solid var(--aptos-color-pink);
  background: var(--aptos-color-light-pink);
}

.aptos-page .p-reason__title {
  font-size: 36px;
  font-size: 2.25rem;
  line-height: 1.2;
  font-weight: 400;
  color: var(--aptos-color-card);
  background: var(--aptos-color-pink);
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 54px;
  text-align: left;
}

.aptos-page .p-reason__list {
  list-style: none;
  padding: 16px 24px;
}

.aptos-page .p-reason__list li {
  display: flex;
  gap: 12px;
  align-items: center;
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.75;
}

.aptos-page .p-reason__list li + li {
  margin-top: 8px;
}

.aptos-page .p-reason__list span {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--aptos-color-pink);
  color: var(--aptos-color-card);
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
}

.aptos-page .p-feature {
  margin-top: 56px;
}

.aptos-page .p-feature--secondary {
  margin-top: 80px;
}

.aptos-page .p-feature__title {
  font-size: 36px;
  font-size: 2.25rem;
  line-height: 1;
  font-weight: 400;
  color: var(--aptos-color-heading);
  text-align: left;
}

.aptos-page .p-feature__row {
  display: grid;
  grid-template-columns: minmax(0, 560px) minmax(0, 1fr);
  align-items: center;
  margin-top: 40px;
}
.aptos-page .p-feature__row + .p-feature__row {
  margin-top: 24px;
}

.aptos-page .p-feature__image img {
  width: 100%;
}

.aptos-page .p-feature__text {
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.5;
  padding-left: 24px;
  text-align: justify;
}
.aptos-page .p-feature__text p {
  line-height: 1.5;
}

.aptos-page .p-feature__summary {
  display: grid;
  grid-template-columns: 150px 1fr;
  align-items: center;
  margin-top: 80px;
  padding: 0;
  border-radius: var(--aptos-radius-small);
  background: var(--aptos-color-light-pink);
  border: 4px solid var(--aptos-color-pink);
  text-align: left;
}

.aptos-page .p-feature__summary-label {
  font-size: 25.6px;
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--aptos-color-card);
  background: var(--aptos-color-pink);
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.aptos-page .p-feature__summary p {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.75;
  padding: 16px 58px;
}

.aptos-page .p-cases {
  padding-top: 110px;
}

.aptos-page .p-cases .treatment__media__sec-heading {
  margin-bottom: 0;
}

.aptos-page .p-case {
  margin-top: 80px;
}

.aptos-page .p-case__label {
  display: flex;
  justify-items: center;
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: 400;
  line-height: 1.2;
  color: var(--aptos-color-heading);
  margin-bottom: 22px;
  border-left: 4px solid var(--aptos-color-heading);
  padding-left: 10px;
}

.aptos-page .p-case__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.aptos-page .p-case__item img {
  width: 100%;
}

.aptos-page .p-case__item figcaption {
  margin-top: 14px;
  font-size: 30px;
  font-size: 1.875rem;
  line-height: 1.2;
  color: var(--aptos-color-heading);
  text-align: center;
}
.aptos-page .p-case__item figcaption br {
  display: none;
}

.aptos-page .p-flow {
  padding-top: 184px;
}

.aptos-page .treatment__heading-wrap {
  margin-bottom: 54px;
}

.aptos-page .treatment__media__sec-heading {
  margin-bottom: 54px;
}

.aptos-page .treatment-flow__box {
  margin-top: 44px;
}

.aptos-page .treatment-flow__body p {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.2;
}

.aptos-page .treatment-flow__body img {
  width: 100%;
}

.aptos-page .p-flow__review-card {
  margin-top: 60px;
  padding: 50px;
  background: var(--aptos-color-card);
}

.aptos-page .p-flow__review-card h5 {
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 500;
  color: var(--aptos-color-heading);
  text-align: center;
}

.aptos-page .p-flow__review-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 40px;
  padding: 34px 50px;
}

.aptos-page .p-flow__review-grid figcaption {
  margin-top: 13px;
  font-size: 30px;
  font-size: 1.875rem;
  line-height: 1.2;
  text-align: center;
  color: var(--aptos-color-heading);
}

.aptos-page .p-training__text {
  width: 805px;
  max-width: 100%;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.46;
  margin: 0 auto;
  text-align: justify;
}

.aptos-page .p-training__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 80px;
  margin-top: 40px;
}

.aptos-page .p-training__grid img {
  width: 100%;
}

.aptos-page .treatment__table-wrap {
  margin-top: 0;
  padding: 5rem 7.5rem;
}

.aptos-page .treatment__table td.cyuijikou__list--only {
  padding-top: 0;
}

.aptos-page .treatment__table .cyuijikou__list--only {
  margin-top: 0;
}

.aptos-page .treatment__table .cyuijikou__list--only li + li {
  margin-top: 16px;
}

.aptos-page .p-price {
  padding-bottom: 110px;
}

.aptos-page .p-price__card {
  padding: 85px 48px;
  border-radius: 25px;
  background: rgba(192, 166, 168, 0.3);
  text-align: center;
}

.aptos-page .p-price__title {
  font-size: 32px;
  font-size: 2rem;
  line-height: 1.2;
  font-weight: 400;
  color: var(--aptos-color-text);
}

.aptos-page .p-price__text {
  display: inline-block;
  margin-top: 48px;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.2;
  font-weight: 400;
  color: var(--aptos-color-text);
  border-bottom: 1px solid var(--aptos-color-text);
  padding-bottom: 20px;
}

.aptos-page .treatment__price__table-wrap table td br {
  display: none;
}

.aptos-page .p-price__links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 51px;
  margin-top: 80px;
}

.aptos-page .c-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  transition: opacity 0.2s ease;
}

.aptos-page .c-button:hover {
  opacity: 0.85;
}

.aptos-page .c-button--pill {
  min-height: 92px;
  padding: 0;
  border-radius: 999px;
  background: var(--aptos-color-heading);
  color: var(--aptos-color-card);
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 400;
  position: relative;
}

.aptos-page .c-button--pill .icon-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 56px;
}

@media (max-width: 1100px) {
  .aptos-page .p-section--soft {
    margin-top: 80px;
    padding-top: 68px;
  }

  .aptos-page .p-reason__box,
  .aptos-page .p-feature__row,
  .aptos-page .p-price__links {
    grid-template-columns: 1fr;
  }

  .aptos-page .p-reason__label {
    text-align: center;
  }

  .aptos-page .p-reason__box {
    gap: 0;
  }

  .aptos-page .p-reason__title {
    padding: 16px 32px;
    justify-content: center;
    text-align: center;
  }
  .aptos-page .p-reason__title br {
    display: none;
  }

  .aptos-page .p-reason__list {
    padding: 24px 32px 32px;
  }

  .aptos-page .p-feature__row {
    gap: 24px;
    margin-top: 32px;
  }

  .aptos-page .p-feature__row + .p-feature__row {
    margin-top: 32px;
  }

  .aptos-page .p-feature__text {
    padding-left: 0;
  }

  .aptos-page .p-feature__summary {
    grid-template-columns: 130px 1fr;
    margin-top: 56px;
  }

  .aptos-page .p-feature__summary p {
    padding: 16px 32px;
  }

  .aptos-page .p-case__grid {
    gap: 20px;
  }

  .aptos-page .p-flow {
    padding-top: 120px;
  }

  .aptos-page .p-flow__review-card {
    padding: 40px 32px;
  }

  .aptos-page .p-flow__review-grid {
    gap: 24px;
    padding: 32px 0 0;
  }

  .aptos-page .p-training__grid {
    gap: 32px;
  }

  .aptos-page .treatment__table-wrap {
    padding: 48px 32px;
  }

  .aptos-page .p-price__card {
    padding: 64px 32px;
  }

  .aptos-page .p-price__links {
    gap: 20px;
    margin-top: 56px;
  }

}

@media (max-width: 768px) {
  .aptos-page {
    --aptos-container-padding: 16px;
    font-size: 14px;
    font-size: 0.875rem;
  }

  .aptos-page .p-hero {
    padding-top: 16px;
  }

  .aptos-page .p-hero__container {
    padding: 0 16px;
  }

  .aptos-page .p-section {
    padding-top: 40px;
  }

  .aptos-page .p-section--soft {
    margin-top: 72px;
    padding-top: 56px;
  }

  .aptos-page .p-intro,
  .aptos-page .p-feature__text,
  .aptos-page .p-training__text {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.8;
  }

  .aptos-page .p-reason {
    margin-top: 42px;
  }

  .aptos-page .p-reason__label {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.6;
  }

  .aptos-page .p-reason__box {
    gap: 0;
    margin-top: 18px;
  }

  .aptos-page .p-reason__title {
    padding: 16px 16px;
    font-size: 20px;
    font-size: 1.25rem;
    justify-content: center;
    text-align: center;
  }

  .aptos-page .p-reason__list {
    padding: 20px 16px;
  }

  .aptos-page .p-reason__list li {
    align-items: flex-start;
    gap: 12px;
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.7;
  }

  .aptos-page .p-reason__list span {
    font-size: 14px;
    font-size: 0.875rem;
  }

  .aptos-page .p-feature,
  .aptos-page .p-feature--secondary {
    margin-top: 56px;
  }

  .aptos-page .p-feature__title {
    font-size: 21px;
    font-size: 1.3125rem;
    line-height: 1.6;
  }

  .aptos-page .p-feature__row {
    gap: 20px;
    margin-top: 24px;
  }

  .aptos-page .p-feature__summary {
    grid-template-columns: 1fr;
    margin-top: 24px;
    padding: 0;
  }

  .aptos-page .p-feature__summary-label {
    font-size: 18px;
    font-size: 1.125rem;
    padding: 14px 16px;
  }

  .aptos-page .p-feature__summary p {
    padding: 18px 16px;
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.7;
  }

  .aptos-page .p-case {
    margin-top: 36px;
  }

  .aptos-page .p-case__label {
    font-size: 16px;
    font-size: 1rem;
  }

  .aptos-page .p-case__grid {
    gap: 1rem;
  }

  .aptos-page .p-case__item figcaption {
    font-size: 14px;
    font-size: 0.875rem;
  }
  .aptos-page .p-case__item figcaption br {
    display: inline;
  }

  .aptos-page .treatment-flow__body p {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.8;
  }

  .aptos-page .p-flow__review-card h5 {
    font-size: 18px;
    font-size: 1.125rem;
  }

  .aptos-page .p-flow__review-card {
    margin-top: 24px;
    padding: 24px 16px;
  }

  .aptos-page .p-flow__review-grid {
    gap: 20px;
    padding: 24px 0;
  }

  .aptos-page .p-flow__review-grid figcaption {
    font-size: 14px;
    font-size: 0.875rem;
  }

  .aptos-page .p-training__grid {
    gap: 16px;
  }

  .aptos-page .p-price__title {
    font-size: 21px;
    font-size: 1.3125rem;
  }

  .aptos-page .p-price {
    padding-bottom: 72px;
  }

  .aptos-page .p-price__card {
    padding: 28px 20px;
  }

  .aptos-page .p-price__text {
    font-size: 16px;
    font-size: 1rem;
  }

  .aptos-page .treatment__price__table-wrap table td br {
    display: inline;
  }

  .aptos-page .p-price__links {
    gap: 14px;
    margin-top: 18px;
  }

  .aptos-page .c-button--pill {
    min-height: 58px;
    padding: 0 52px 0 20px;
    font-size: 16px;
    font-size: 1rem;
  }

  .aptos-page .c-button--pill .icon-arrow {
    right: 20px;
  }

  .aptos-page .instagram__wrapper--static {
    margin-top: 32px;
    padding: 0 16px;
  }
}
