@charset "UTF-8";
main.page-std-treatment {
  overflow-x: hidden;
}
.page-std-treatment .section-title {
  text-align: center;
  font-size: 28px;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: 2.24px;
}
.page-std-treatment .section-title.section-title--pop {
  line-height: 1.4;
}
.page-std-treatment .info-title {
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: 0.8px;
  margin-bottom: 20px;
}
.page-std-treatment .mv {
  background-color: #e9f3f5;
  height: 471px;
  padding-top: 7.1794871795vw;
  padding-left: 5.1282051282vw;
  overflow: inherit;
}
@media (min-width: 769px) {
  .page-std-treatment .mv {
    padding-top: 28px;
    padding-left: 20px;
  }
}
@media (max-width: 768px) {
  .page-std-treatment .mv {
    height: 120.7692307692vw;
  }
}
.page-std-treatment .mv .mv__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.0512820513vw;
  position: relative;
  z-index: 1;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__head {
    gap: 8px;
  }
}
.page-std-treatment .mv .mv__head .category {
  padding: 1.2820512821vw 3.0769230769vw 1.5384615385vw 3.0769230769vw;
  border-radius: 2px;
  border: 1px solid #4f4f4f;
  background: #fff;
  font-size: 3.5897435897vw;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__head .category {
    font-size: 14px;
    padding: 5px 12px 6px 12px;
  }
}
.page-std-treatment .mv .mv__head .category .small {
  font-size: 10px;
}
.page-std-treatment .mv .mv__catch {
  margin-top: 10.7692307692vw;
  position: relative;
  z-index: 1;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__catch {
    margin-top: 42px;
  }
}
.page-std-treatment .mv .mv-logo {
  width: 22.8205128205vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv-logo {
    width: 89px;
  }
}
.page-std-treatment .mv .fukidashi {
  width: 47vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .fukidashi {
    width: 223px;
  }
}
.page-std-treatment .mv .acne-kaihou {
  width: 56.4102564103vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .acne-kaihou {
    width: 220px;
  }
}
.page-std-treatment .mv .top-text {
  font-size: 4.8717948718vw;
  font-weight: 500;
  line-height: 100%;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .top-text {
    font-size: 19px;
  }
}
.page-std-treatment .mv .bottom-text {
  font-size: 8.2051282051vw;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  margin-top: 3.0769230769vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .bottom-text {
    font-size: 32px;
    margin-top: 12px;
  }
}
.page-std-treatment .mv .bottom-text--diet {
  font-weight: 600;
  text-shadow: 0px 0px 1px #fff, 0px 0px 2px #fff, 0px 0px 3px #fff, 0px 0px 4px #fff, 0px 0px 5px #fff, 0px 0px 6px #fff;
}
.page-std-treatment .mv .acne-text {
  font-size: 5.1282051282vw;
  font-weight: 500;
  line-height: 100%;
  letter-spacing: 0.8px;
  margin-top: 6.1538461538vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .acne-text {
    font-size: 20px;
    margin-top: 24px;
  }
}
.page-std-treatment .mv .acne-text .small {
  font-size: 4.1025641026vw;
  letter-spacing: 0.64px;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .acne-text .small {
    font-size: 16px;
  }
}
.page-std-treatment .mv .title-wrap {
  margin: 0 auto 0 0;
}
.page-std-treatment .mv .eachTextAnime span {
  font-size: 16px;
}
.page-std-treatment .mv .mv__image {
  max-width: 66.9230769231vw;
  position: absolute;
  right: 0;
  bottom: 0;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__image {
    max-width: 261px;
  }
}
.page-std-treatment .mv .mv__image--acne {
  max-width: 56.9230769231vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__image--acne {
    max-width: 222px;
  }
}
.page-std-treatment .mv .mv__price {
  border-radius: 2px;
  background: rgba(255, 255, 255, 0.76);
  -webkit-box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.12);
          box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.12);
  padding: 5.1282051282vw 4.1025641026vw 2.0512820513vw 4.1025641026vw;
  position: relative;
  margin-top: 9.2307692308vw;
  width: fit-content;
  white-space: nowrap;
  z-index: 1;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price {
    padding: 20px 16px 8px 16px;
    margin-top: 36px;
    width: fit-content;
  }
}
.page-std-treatment .mv .mv__price .price-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1.0256410256vw 2.5641025641vw;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.0256410256vw;
  border-radius: 2px;
  border: 1.5px solid #4f4f4f;
  background: #4cb2e4;
  position: absolute;
  left: 4.1025641026vw;
  top: -2.5641025641vw;
  color: #fff;
  font-size: 3.5897435897vw;
  font-weight: 500;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price .price-title {
    padding: 4px 10px;
    gap: 4px;
    left: 16px;
    top: -10px;
    font-size: 14px;
  }
}
.page-std-treatment .mv .mv__price .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4.1025641026vw;
  margin-top: 5px;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price .inner {
    gap: 16px;
  }
}
.page-std-treatment .mv .mv__price .mv__price__zero {
  width: 15.3846153846vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price .mv__price__zero {
    width: 60px;
  }
}
.page-std-treatment .mv .mv__price .mv__price__zero img {
  width: 100%;
}
.page-std-treatment .mv .mv__price .mv__price__left .price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 3px;
}
.page-std-treatment .mv .mv__price .mv__price__left .price .month {
  font-size: 4.1025641026vw;
  font-weight: 700;
  line-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 0.7692307692vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price .mv__price__left .price .month {
    font-size: 16px;
    gap: 3px;
  }
}
.page-std-treatment .mv .mv__price .mv__price__left .price em {
  font-size: 8.2051282051vw;
  font-weight: 700;
  line-height: 100%;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price .mv__price__left .price em {
    font-size: 32px;
  }
}
.page-std-treatment .mv .mv__price .mv__price__left .yen {
  font-size: 4.1025641026vw;
  font-weight: 700;
  line-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price .mv__price__left .yen {
    font-size: 16px;
  }
}
.page-std-treatment .mv .mv__price .mv__price__left .yen .astalisk {
  font-size: 2.5641025641vw;
  font-weight: 700;
  line-height: 100%;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price .mv__price__left .yen .astalisk {
    font-size: 10px;
  }
}
.page-std-treatment .mv .mv__price .mv__price__left .tax {
  color: #818181;
  text-align: right;
  font-weight: 400;
  line-height: 100%;
  margin-top: 1.5384615385vw;
  font-size: 3.0769230769vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price .mv__price__left .tax {
    margin-top: 6px;
    font-size: 12px;
  }
}
.page-std-treatment .mv .mv__price--acne {
  width: 100%;
  padding: 5.1282051282vw 0px 3.0769230769vw 4.1025641026vw;
  position: relative;
  margin-top: 13.0769230769vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price--acne {
    margin-top: 51px;
    padding: 20px 0px 12px 16px;
  }
}
.page-std-treatment .mv .mv__price--acne::after {
  position: absolute;
  content: "";
  background-image: url(../images/acne-medicine.png);
  background-size: contain;
  width: 34.358974359vw;
  height: 26.4102564103vw;
  top: -4.358974359vw;
  right: 3.3333333333vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price--acne::after {
    width: 134px;
    height: 103px;
    top: -17px;
    right: 13px;
  }
}
.page-std-treatment .mv .mv__price--acne .price-title {
  top: -3.5897435897vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price--acne .price-title {
    top: -14px;
  }
}
.page-std-treatment .mv .mv__price--acne .price-title .icon {
  width: 4.6153846154vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price--acne .price-title .icon {
    width: 18px;
  }
}
.page-std-treatment .mv .mv__price--acne .mv__price__left .tax {
  text-align: right;
}
.page-std-treatment .mv .mv__price--pill {
  width: 100%;
  background-image: linear-gradient(0deg, transparent calc(100% - 1px), #f7f9fb calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), #f7f9fb calc(100% - 1px));
  background-size: 16px 16px;
  background-repeat: repeat;
  background-position: center center;
  background-color: #fff;
  position: relative;
  padding: 5.1282051282vw 6.1538461538vw 3.0769230769vw 6.1538461538vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price--pill {
    padding: 20px 24px 12px 24px;
  }
}
.page-std-treatment .mv .mv__price--pill .mv__price__zero {
  position: absolute;
  right: 4.1025641026vw;
  top: 50%;
  bottom: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 20.5128205128vw;
  height: 20.5128205128vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price--pill .mv__price__zero {
    right: 16px;
    width: 80px;
    height: 80px;
  }
}
.page-std-treatment .mv .mv__price--pill .mv__price__zero img {
  width: 100%;
}
.page-std-treatment .mv .mv__price--pill .mv__price__left .yen {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.page-std-treatment .mv .mv__price--pill .mv__price__left .tax {
  margin-top: 0;
  text-align: right;
}
.page-std-treatment .mv .mv__price--pill .mv__price__left .price .month {
  gap: 2.0512820513vw;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price--pill .mv__price__left .price .month {
    gap: 8px;
  }
}
.page-std-treatment .mv .mv__price--pill .month-price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.page-std-treatment .mv .mv__price--pill .bg-ya {
  font-size: 3.0769230769vw;
  font-weight: 700;
  line-height: 100%;
  border-radius: 1px;
  border: 1px solid #4f4f4f;
  background: #fff064;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 5.1282051282vw;
  height: 5.1282051282vw;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price--pill .bg-ya {
    font-size: 12px;
    width: 20px;
    height: 20px;
  }
}
.page-std-treatment .mv .mv__price--pill .price-title {
  top: -3.5897435897vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price--pill .price-title {
    top: -14px;
  }
}
.page-std-treatment .mv .mv__price--pill .price-title .icon {
  width: 4.6153846154vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__price--pill .price-title .icon {
    width: 18px;
  }
}
.page-std-treatment .mv--pill,
.page-std-treatment .mv--acne {
  background-image: url(../images/bg-mv-acne.png);
  background-size: cover;
  background-position: top center;
  padding-right: 5.1282051282vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv--pill,
  .page-std-treatment .mv--acne {
    padding-right: 20px;
  }
}
.page-std-treatment .mv--pill .bottom-text {
  margin-top: 8px;
}
.page-std-treatment .qa,
.page-std-treatment .info {
  background: #fff;
}
.page-std-treatment .qa {
  position: relative;
  padding: 68px 0 30px 0;
}
.page-std-treatment .qa::before {
  position: absolute;
  content: "";
  background-image: url(../images/reserve-wave.png);
  background-size: cover;
  width: 100%;
  height: 30px;
  left: 0;
  top: -1px;
}
.page-std-treatment .flow {
  padding: 68px 20px 30px 20px;
  position: relative;
}
.page-std-treatment .flow::before {
  position: absolute;
  content: "";
  background-image: url(../images/white-wave.png);
  background-size: cover;
  width: 100%;
  height: 30px;
  left: 0;
  top: -1px;
}
.page-std-treatment .info {
  padding: 68px 20px 29px 20px;
  position: relative;
}
.page-std-treatment .info::before {
  position: absolute;
  content: "";
  background-image: url(../images/reserve-wave.png);
  background-size: cover;
  width: 100%;
  height: 30px;
  left: 0;
  top: -1px;
}
.page-std-treatment .info .section-title {
  font-size: 28px;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: 2.24px;
  margin-bottom: 40px;
}
.page-std-treatment .section-text {
  font-size: 14px;
  font-weight: 400;
  line-height: 170%;
}
.page-std-treatment .cta-btn-wrap {
  max-width: 334px;
}
.page-std-treatment .point-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 4.1025641026vw;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 2.0512820513vw;
  border-radius: 4.469px;
  -webkit-box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.04);
          box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.04);
  position: relative;
  top: -32px;
  z-index: 1;
  font-size: 4.1025641026vw;
}
@media (min-width: 769px) {
  .page-std-treatment .point-list {
    padding: 16px;
    gap: 8px;
    top: -18px;
    font-size: 16px;
  }
}
@media (min-width: 1300px) {
  .page-std-treatment .point-list {
    top: -16px;
  }
}
.page-std-treatment .point-list .marker {
  font-weight: 700;
}
.page-std-treatment .point-list .icon {
  width: 7.1794871795vw;
}
@media (min-width: 769px) {
  .page-std-treatment .point-list .icon {
    width: 28px;
  }
}
.page-std-treatment .point-list--acne {
  top: inherit;
  bottom: -6.1538461538vw;
}
@media (min-width: 769px) {
  .page-std-treatment .point-list--acne {
    bottom: -24px;
  }
}
.page-std-treatment .point-list--pill {
  top: inherit;
  bottom: -40px;
}
@media (min-width: 769px) {
  .page-std-treatment .point-list--pill {
    bottom: -40px;
  }
}

.mv-bottom {
  position: relative;
  padding-bottom: 58px;
  background: #f7f9fb;
}
.mv-bottom::after {
  position: absolute;
  content: "";
  background-image: url(../images/voice-wave-2.png);
  background-size: cover;
  width: 100%;
  height: 30px;
  left: 0;
  bottom: -1px;
}
.mv-bottom .inner {
  padding: 0 20px;
}
.mv-bottom .caution-list {
  font-size: 10px;
  margin-top: 0;
  font-weight: 400;
  line-height: 150%;
}
.mv-bottom .cta-btn-wrap {
  margin-top: 32px;
}
.mv-bottom .cta-btn-wrap::before {
  left: 3px;
}
.mv-bottom .cta-btn-wrap::after {
  right: -8px;
}
@media (max-width: 350px) {
  .mv-bottom .cta-btn-wrap::after {
    right: 0;
  }
}

.mv-bottom--acne {
  padding-top: 64px;
}
@media (max-width: 768px) {
  .mv-bottom--acne {
    padding-top: 16.4102564103vw;
  }
}

.mv-bottom--pill {
  padding-top: 81px;
}
@media (max-width: 768px) {
  .mv-bottom--pill {
    padding-top: 20.7692307692vw;
  }
}

.mokuji {
  padding: 10px 20px 30px;
}
.mokuji .section-title {
  color: #fff;
  font-size: 28px;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: 2.24px;
}
.mokuji .qa__link {
  margin-top: 40px;
  margin-bottom: 0;
}

.std-treatment-about {
  background: #FFF;
  padding: 68px 20px 30px;
  position: relative;
}
.std-treatment-about::before {
  position: absolute;
  content: "";
  background-image: url(../images/reserve-wave.png);
  background-size: cover;
  width: 100%;
  height: 30px;
  left: 0;
  top: -1px;
}
.std-treatment-about .clinic-about__weight {
  margin: 40px auto 24.8px;
  text-align: center;
}
.std-treatment-about .arrow-bottom {
  text-align: center;
  margin: 20px auto 40px;
}
.std-treatment-about .caution-list {
  margin-top: 6px;
  font-size: 10px;
  font-weight: 500;
}
.std-treatment-about .std-treatment-about__table {
  max-width: 440px;
  margin: 20px auto 0;
  border: 1px solid #4F4F4F;
  border-radius: 16px;
  overflow: hidden;
  container-type: inline-size;
}
.std-treatment-about .std-compare-table {
  width: 100%;
  border-collapse: collapse;
}
.std-treatment-about .std-compare-table th,
.std-treatment-about .std-compare-table td {
  padding: clamp(7px, calc(7px + (100cqw - 320px) / 40), 10px) clamp(4px, calc(4px + (100cqw - 320px) / 30), 8px);
  text-align: center;
  font-size: clamp(11px, calc(11px + (100cqw - 320px) / 60), 13px);
  font-weight: 700;
  color: #222222;
  border-right: 1px solid #4F4F4F;
}
.std-treatment-about .std-compare-table th:last-child,
.std-treatment-about .std-compare-table td:last-child {
  border-right: none;
}
.std-treatment-about .std-compare-table th {
  background: #4CB2E4;
  color: #FFF;
  font-weight: 500;
  border-bottom: 1px solid #4F4F4F;
}
.std-treatment-about .std-compare-table tbody tr:nth-child(even) {
  background: #F7F9FB;
}
.std-treatment-about .border-box {
  margin-top: 20px;
  padding: 16px;
  background: #F5FCFF;
  border: 1px dashed #ccc;
  border-radius: 16px;
}
.std-treatment-about .border-box__ttl {
  font-weight: 700;
  font-size: 14px;
  line-height: 1.5;
}
.std-treatment-about .border-box__list {
  margin-top: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 12px 0;
}
.std-treatment-about .border-box__sttl {
  font-size: 12px;
  font-weight: 700;
}
.std-treatment-about .border-box__text {
  font-size: 12px;
  font-weight: 400;
}
.std-treatment-about .border-box__text a {
  text-decoration: underline;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.std-treatment-about .border-box__text a:hover {
  opacity: 0.7;
}
.std-treatment-about .border-box__text .link01 {
  color: #4CB2E4;
}

.clinic-about--acne {
  padding-right: 0;
  padding-left: 0;
}
.clinic-about--acne .title-wrap .eachTextAnime {
  text-align: right;
}

.clinic-about__support,
.clinic-about__worries {
  margin-top: 42px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  padding: 30px 14px 20px 14px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 12px;
  border-radius: 8px;
  border: 1px solid #4f4f4f;
  position: relative;
}
.clinic-about__support .support-title,
.clinic-about__support .worries-title,
.clinic-about__worries .support-title,
.clinic-about__worries .worries-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 228px;
  padding: 8px 20px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  border-radius: 2px;
  border: 1px solid #4f4f4f;
  position: absolute;
  left: 50%;
  right: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: -18px;
  line-height: 1;
}
.clinic-about__support .support-title span,
.clinic-about__support .worries-title span,
.clinic-about__worries .support-title span,
.clinic-about__worries .worries-title span {
  position: relative;
}
.clinic-about__support .worries-title,
.clinic-about__worries .worries-title {
  background: #4f4f4f;
  color: #fff;
}
.clinic-about__support .worries-title span::after,
.clinic-about__worries .worries-title span::after {
  position: absolute;
  content: "";
  background-image: url(../images/icon-worries.png);
  background-size: contain;
  width: 38px;
  height: 40px;
  top: -28px;
  right: -41px;
}
.clinic-about__support .support-title,
.clinic-about__worries .support-title {
  background: #fff064;
}
.clinic-about__support .support-title span::after,
.clinic-about__worries .support-title span::after {
  position: absolute;
  content: "";
  background-image: url(../images/icon-support.png);
  background-size: contain;
  width: 38px;
  height: 40px;
  top: -28px;
  right: -38px;
}
.clinic-about__support .check-list li,
.clinic-about__support .dot-list li,
.clinic-about__worries .check-list li,
.clinic-about__worries .dot-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 12px;
}
.clinic-about__support .check-list li:last-child,
.clinic-about__support .dot-list li:last-child,
.clinic-about__worries .check-list li:last-child,
.clinic-about__worries .dot-list li:last-child {
  margin-bottom: 0;
}
.clinic-about__support .check-list p,
.clinic-about__support .dot-list p,
.clinic-about__worries .check-list p,
.clinic-about__worries .dot-list p {
  text-align: justify;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 140%;
}
.clinic-about__support .check-list li,
.clinic-about__worries .check-list li {
  gap: 4px;
}

.clinic-about__support {
  margin-bottom: 24px;
}

/* 基本アプローチ */
.approach {
  background: #f5fcff;
  padding: 55px 20px 0;
}
.approach .section-icon {
  margin-bottom: 0;
}
.approach .icon-approach {
  width: 148px;
}
.approach .section-title {
  line-height: 140%;
}
.approach .section-title span {
  position: relative;
}
.approach .section-title span::after {
  position: absolute;
  content: "";
  background-image: url(../images/wave.svg);
  background-size: contain;
  width: 100%;
  height: 5px;
  bottom: -5px;
  left: 0;
}
.approach .approach__guideline {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 40px;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid #4f4f4f;
  background: #fff;
}
.approach .approach__guideline .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 16px 12px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  border-right: 1px dashed #ccc;
  background: #fff064;
  font-size: 16px;
  font-weight: 500;
  line-height: 100%;
}
@media (max-width: 350px) {
  .approach .approach__guideline .title {
    width: 54%;
    line-height: 1.3;
  }
}
.approach .approach__guideline .guideline {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 54px;
  padding: 16px 12px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
  font-size: 20px;
  font-weight: 700;
  line-height: 100%;
  background: #fff;
}
.approach .section-text {
  margin-top: 20px;
  margin-bottom: 26px;
}
.approach .approach__detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  padding: 24px 16px 16px 16px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  border-radius: 16px;
  border: 1px solid #4f4f4f;
  background: #fff;
  position: relative;
}
.approach .approach__detail::before {
  position: absolute;
  content: "";
  background-image: url(../images/icon-clip.png);
  background-size: contain;
  width: 25.714px;
  height: 24px;
  top: -8px;
  left: 50%;
  right: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 1;
}
.approach .approach__detail p {
  border-top: dashed 1px #ccc;
  padding-top: 12px;
  text-align: justify;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 170%;
  margin-top: 12px;
}
.approach .approach__detail .caution-list {
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
}
.approach .deatail-list li {
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}
.approach .deatail-list li:last-child {
  margin-bottom: 0;
}
.approach .deatail-list li .label {
  border-radius: 2px;
  background: #4cb2e4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 4px 8px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  color: #fff;
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: 100%;
}

/* 選べる３つのプラン */
.plan {
  background: #f5fcff;
  padding: 72px 20px 30px;
}
.plan .plan__inner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 60px 16px 20px 16px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: -11px;
  -ms-flex-item-align: stretch;
      align-self: stretch;
}
.plan .section-title {
  text-align: center;
  position: absolute;
  left: 50%;
  right: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: -29px;
  width: 294px;
}
.plan .section-title img {
  width: 294px;
}
.plan .plan__list__content {
  font-size: 14px;
  padding-bottom: 60px;
  height: 40px;
  overflow: hidden;
  position: relative;
}
.plan .plan__list__content::after {
  position: absolute;
  content: "";
  background-image: url(../images/icon-acco.svg);
  background-size: contain;
  width: 12px;
  height: 6px;
  top: 33%;
  right: 30%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.plan .plan__list__content .item-block {
  border-radius: 16px;
  background: #f7f9fb;
  padding: 16px 10px;
  margin-top: 20px;
}
.plan .plan__list__content .item-block:first-of-type {
  margin-top: 0;
}
.plan .plan__list__content .item-block .caution {
  font-size: 10px;
  text-align: justify;
  gap: 0;
}
.plan .plan__list__content .icon-list {
  margin-bottom: 8px;
}
.plan .plan__list__content .icon-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
  margin-bottom: 8px;
}
.plan .plan__list__content .icon-list li .icon {
  width: 18px;
}
.plan .plan__list__content .icon-list li:last-child {
  margin-bottom: 0;
}
.plan .plan__list__content .dot-list {
  margin-bottom: 17px;
}
.plan .plan__list__content .dot-list:last-of-type {
  margin-bottom: 0;
}
.plan .plan__list__content .dot-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 8px;
}
.plan .plan__list__content .dot-list li:last-child {
  margin-bottom: 0;
}
.plan .plan__list__content .dot-list li .dot {
  font-size: 16px;
  font-weight: 700;
}
.plan .plan__list__content .item-title {
  font-size: 14px;
  font-weight: 700;
  line-height: 100%;
  margin-bottom: 16px;
}
.plan .plan__list__content .price-wrap {
  font-size: 10px;
  font-weight: 500;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  line-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  white-space: nowrap;
}
.plan .plan__list__content .price-wrap .marker {
  font-size: 20px;
}
.plan .plan__list__content .caution {
  font-size: 12px;
  font-weight: 500;
  line-height: 150%;
  color: #818181;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-top: 8px;
  gap: 4px;
}
.plan .plan__list__content .more-btn-wrap {
  margin-top: 28px;
  margin-bottom: 31px;
}
.plan .plan__list__content.js-open::after {
  position: absolute;
  content: "";
  background-image: url(../images/icon-acco.svg);
  background-size: contain;
  width: 12px;
  height: 6px;
  top: inherit;
  bottom: 33px;
  right: 30%;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.plan .js-btn-open {
  background: none;
  bottom: -1px;
}
.plan .plan__list__content-wrap {
  position: relative;
}
.plan .show-more-btn {
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 100%;
  height: 50px;
  text-align: center;
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(70%, rgb(255, 255, 255)));
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 70%);
  cursor: pointer;
  -webkit-transition: bottom 0.2s;
  transition: bottom 0.2s;
  padding-top: 5px;
}

.plan--1 .plan__list {
  position: relative;
}
.plan--1 .plan__list::after {
  position: absolute;
  content: "";
  background-image: url(../images/icon-osusume.png);
  background-size: contain;
  width: 105px;
  height: 38px;
  left: 0.283px;
  top: -21.506px;
}

.plan__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 16px;
  -ms-flex-item-align: stretch;
      align-self: stretch;
}
.plan__list .plan__list__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: solid 1px #4f4f4f;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
  width: 100%;
}
.plan__list .plan__list__item .list-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 16px 24px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  background: #4cb2e4;
  color: #fff;
  font-size: 20px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  text-align: center;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.plan__list .plan__list__item .list-block {
  background: #fff;
  padding: 20px 17px 0;
}
.plan__list .plan__list__item .block-title {
  padding: 5px 12px;
  display: table;
  margin: 0 auto;
  border-radius: 2px;
  border: 1px solid #4f4f4f;
  background: #fff064;
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 1;
}
.plan__list .plan__list__item .list-text {
  text-align: justify;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  margin-top: 8px;
  margin-bottom: 28px;
}
.plan__list .plan__list__item .acco-btn {
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 4px 12px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/* 料金について */
.clinic-price {
  padding: 68px 20px 30px 20px;
  background: #fff;
  position: relative;
}
.clinic-price::before {
  position: absolute;
  content: "";
  background-image: url(../images/reserve-wave.png);
  background-size: cover;
  width: 100%;
  height: 30px;
  left: 0;
  top: -1px;
}
.clinic-price .price__sum {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 12px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  border-radius: 8px;
  background: #4cb2e4;
  margin-top: 40px;
}
.clinic-price .price__sum li {
  border-radius: 4px;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 12px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  position: relative;
}
.clinic-price .price__sum li::after {
  position: absolute;
  content: "";
  background-image: url(../images/icon-plus.svg);
  background-size: contain;
  width: 12px;
  height: 12px;
  top: 50%;
  bottom: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: -16px;
}
.clinic-price .price__sum li .name {
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
  margin-bottom: 6px;
}
.clinic-price .price__sum li .price {
  font-size: 10px;
  font-style: normal;
  font-weight: 500;
  line-height: 100%;
}
.clinic-price .price__sum li .price em {
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
}
.clinic-price .price__sum li .price-sum-2 {
  width: 18.853px;
}
.clinic-price .price__sum li .price__sum__text {
  text-align: center;
}
.clinic-price .price__sum li:nth-child(1) .price em {
  font-size: 18px;
}
.clinic-price .price__sum li:last-child::after {
  display: none;
}
.clinic-price .fukidashi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 16px 0px 28px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  background: #fff;
  text-align: center;
  font-size: 18px;
  font-weight: 500;
  line-height: 150%;
  margin: 32px auto 0;
  position: relative;
  width: 100%;
  max-width: 350px;
  height: 95px;
}
.clinic-price .fukidashi::before {
  position: absolute;
  content: "";
  background-image: url(../images/dot-fukidashi.png);
  background-size: contain;
  width: 100%;
  height: 95px;
  top: 0;
  left: 0;
}
.clinic-price .fukidashi p {
  position: relative;
  z-index: 1;
}
.clinic-price .fukidashi .marker {
  font-size: 18px;
  font-weight: 700;
}
.clinic-price .price__list {
  margin-top: 24px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 16px;
  -ms-flex-item-align: stretch;
      align-self: stretch;
}
.clinic-price .price__list .price-accordion {
  border-radius: 8px;
  border: 1px solid #4f4f4f;
  background: #f5fcff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 20px 12px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  -ms-flex-item-align: stretch;
      align-self: stretch;
}
.clinic-price .price__list .price-accordion .label {
  display: inline-block;
  padding: 8px 6px;
  border-radius: 2px;
  border: 1px solid #4f4f4f;
  background: #fff064;
  text-align: center;
  font-family: "Mochiy Pop One";
  font-size: 10px;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
}
.clinic-price .price__list .price-accordion .title-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
  margin-top: 0;
}
.clinic-price .price__list .price-accordion .plan-title {
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}
.clinic-price .price__list .price-accordion .price {
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
}
.clinic-price .price__list .price-accordion .price .label-wh {
  background: #fff;
  text-align: center;
  font-size: 10px;
  font-weight: 700;
  line-height: 100%;
  padding: 1px 3px;
  border-radius: 2px;
  border: 1px solid #4f4f4f;
}

.clinic-price--pill::before {
  background-image: url(../images/reason-wave.png);
}
.clinic-price--pill .plan__item__block .single .price-wrap {
  padding: 12px;
  background: #fff;
}
.clinic-price--pill .plan__item__block .price-wrap {
  background: #f5fcff;
}

.price__list__open {
  display: none;
  width: 100%;
}

.price__list__open--iso .more-btn {
  width: 100%;
}

.more-btn-100 {
  width: 100%;
}

.plan__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: solid 1px #4f4f4f;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
  margin-bottom: 24px;
  width: 100%;
}
.plan__item:last-of-type {
  margin-bottom: 0;
}
.plan__item .item-title {
  width: 100%;
  padding: 12px;
  display: block;
  color: #fff;
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  text-align: center;
}
.plan__item .item-title small {
  font-size: 12px;
  font-weight: 700;
}
.plan__item .price-list {
  width: 100%;
}
.plan__item .price-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100%;
  margin-bottom: 4px;
}
.plan__item .price-list li:last-child {
  margin-bottom: 0;
}
.plan__item .price-list li .title {
  background-image: url(../images/bg-stripe-ye.png);
  background-size: cover;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 31%;
}
.plan__item .price-list li .title .small {
  font-size: 10px;
}
.plan__item .price-list li .label {
  border-radius: 2px;
  border: 0.8px solid #ccc;
  background: #fff;
  text-align: center;
  font-size: 10px;
  font-weight: 400;
  line-height: 100%;
  color: #818181;
  padding: 4px 8px;
  display: inline-block;
  margin-top: 8px;
}
.plan__item .price-list li .price-wrap {
  border: 1px solid #f7f9fb;
  background: #f5fcff;
  padding: 0 6px;
  width: 69%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 8px 4px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.plan__item .price-list li .price-wrap .price {
  font-size: 12px;
  line-height: 100%;
  font-weight: 700;
}
.plan__item .price-list li .price-wrap .price em {
  font-size: 20px;
}
.plan__item .price-list li .price-wrap .tax {
  color: #818181;
  font-size: 10px;
  font-weight: 400;
  line-height: 100%;
}
.plan__item .prescription {
  border-radius: 4px;
  border: 1px dashed #ccc;
  background: #fff;
  padding: 15px 16px;
  margin-top: 16px;
}
.plan__item .prescription .title {
  font-size: 12px;
  font-weight: 700;
  line-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
}
.plan__item .prescription .title img {
  width: 18px;
}
.plan__item .prescription .caution-list {
  font-size: 10px;
}
.plan__item .prescription .dot-list {
  font-size: 12px;
  font-weight: 400;
  line-height: 150%;
  margin-top: 8px;
}
.plan__item .prescription .dot-list li {
  margin-bottom: 6px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  text-align: justify;
}
.plan__item .prescription .dot-list li:last-child {
  margin-bottom: 0;
}

.price-block {
  background: #f5fcff;
  padding: 12px;
}
.price-block .month {
  text-align: center;
  font-size: 14px;
}
.price-block .price {
  text-align: center;
}

.price-list-vertical {
  width: 100%;
}
.price-list-vertical li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100%;
  margin-bottom: 16px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.price-list-vertical li:last-child {
  margin-bottom: 0;
}
.price-list-vertical li .title {
  background-image: url(../images/bg-stripe-ye-vertical.png);
  background-size: cover;
  font-size: 14px;
  font-weight: 700;
  line-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 8px 0;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
  width: 100%;
}
.price-list-vertical li .title .icon {
  width: 11.446px;
}
.price-list-vertical li .price-wrap {
  border: 1px solid #f7f9fb;
  background: #f5fcff;
  padding: 0 6px;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 8px 4px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.price-list-vertical li .price-wrap .price {
  font-size: 12px;
  line-height: 100%;
  font-weight: 700;
}
.price-list-vertical li .price-wrap .price em {
  font-size: 20px;
}
.price-list-vertical li .price-wrap .tax {
  color: #818181;
  font-size: 10px;
  font-weight: 400;
  line-height: 100%;
}

.title-raku {
  background-image: url(../images/bg-rakuaku.png);
  background-size: cover;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 5.9px 0px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  line-height: 100%;
  width: 100%;
}
.title-raku .icon {
  width: 20px;
}

.price-table {
  background: #f5fcff;
  width: 100%;
  border-spacing: 0;
}
.price-table td {
  border-right: 1px dashed #ccc;
  text-align: center;
}
.price-table .tr-month td {
  border-bottom: 1px dashed #ccc;
  padding: 8px;
}
.price-table .tr-month td:last-of-type {
  border-right: none;
}
.price-table .tr-month .month {
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
}
.price-table .tr-price td {
  padding: 15px 0;
}
.price-table .tr-price td:last-of-type {
  border-right: none;
}
.price-table .tr-price .red {
  color: #ff4d4d;
}
.price-table .tr-price .month {
  text-align: center;
  font-size: 12px;
  font-weight: 400;
  line-height: 100%;
}
.price-table .tr-price .label {
  border-radius: 2px;
  border: 0.8px solid #ccc;
  background: #fff;
  text-align: center;
  font-size: 10px;
  font-weight: 400;
  line-height: 100%;
  color: #818181;
  padding: 4px 2px;
  display: inline-block;
  margin-top: 12px;
}

.mataha {
  color: #000;
  text-align: center;
  font-size: 10px;
  font-weight: 500;
  line-height: 130%;
  margin-top: 12px;
  position: relative;
  width: 100%;
}
.mataha::before {
  position: absolute;
  content: "";
  background-image: url(../images/mataha-line.png);
  background-size: contain;
  width: 78px;
  height: 1px;
  -webkit-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
  top: 50%;
  bottom: 50%;
  left: 50%;
  right: 50%;
}
.mataha span {
  background: #fff;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 0px 8px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  position: relative;
  z-index: 1;
}

.single {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100%;
  margin-top: 12px;
}
.single .title {
  background-image: url(../images/bg-stripe-gr.png);
  background-size: 100% 100%;
  font-size: 12px;
  font-weight: 500;
  line-height: 130%;
  padding: 6px 4px 6px 10px;
  width: 46%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
}
.single .title .icon {
  width: 16.148px;
}
.single .title .small {
  font-size: 10px;
}
.single .title-30 {
  width: 30%;
}
.single .price-wrap {
  border: 1px solid #f7f9fb;
  background: #fff;
  padding: 10px 7px;
  width: 54%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.single .price-wrap .price {
  font-size: 10px;
  font-weight: 500;
  line-height: 150%;
  white-space: nowrap;
  text-align: center;
  margin: 0 auto;
}
.single .price-wrap .price em {
  font-weight: 500;
  font-size: 14px;
}
.single .price-wrap .tax {
  color: #818181;
  font-size: 10px;
  font-weight: 400;
  line-height: 100%;
}

.plan__item__block {
  padding: 20px 16px;
  width: 100%;
}
.plan__item__block .title-raku {
  background-image: url(../images/bg-rakuaku.png);
  background-size: cover;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 5.9px 0px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  line-height: 100%;
}
.plan__item__block .title-raku .icon {
  width: 20px;
}
.plan__item__block .price-table {
  background: #f5fcff;
  width: 100%;
  border-spacing: 0;
}
.plan__item__block .price-table td {
  border-right: 1px dashed #ccc;
  text-align: center;
}
.plan__item__block .price-table .tr-month td {
  border-bottom: 1px dashed #ccc;
  padding: 8px;
}
.plan__item__block .price-table .tr-month td:last-of-type {
  border-right: none;
}
.plan__item__block .price-table .tr-month .month {
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
}
.plan__item__block .price-table .tr-price td {
  padding: 15px 8px;
}
.plan__item__block .price-table .tr-price td:last-of-type {
  border-right: none;
}
.plan__item__block .price-table .tr-price .red {
  color: #ff4d4d;
}
.plan__item__block .price-table .tr-price .month {
  text-align: center;
  font-size: 12px;
  font-weight: 400;
  line-height: 100%;
  color: #818181;
}
.plan__item__block .price-table .tr-price .label {
  border-radius: 2px;
  border: 0.8px solid #ccc;
  background: #fff;
  text-align: center;
  font-size: 10px;
  font-weight: 400;
  line-height: 140%;
  color: #818181;
  padding: 4px 0.7px;
  display: inline-block;
  margin-top: 12px;
  width: 100%;
}
.plan__item__block .price {
  font-size: 12px;
  margin: 4px auto;
  line-height: 1;
}
.plan__item__block .price em {
  font-weight: 700;
  font-size: 20px;
}
.plan__item__block .tax,
.plan__item__block .count {
  color: #818181;
  text-align: center;
  font-size: 10px;
  font-weight: 400;
  line-height: 100%;
  margin-top: 4px;
}
.plan__item__block .off {
  border-radius: 2px;
  border: 1px solid #4f4f4f;
  background: #fff064;
  display: inline-block;
  padding: 4px 8px;
  gap: 10px;
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
  text-align: center;
  margin-bottom: 4px;
}
.plan__item__block .off-wh {
  border: 1px solid #ccc;
  background: #fff;
  font-weight: 400;
}
.plan__item__block .off-blue {
  background: #f5fcff;
  margin-right: 8px;
  margin-bottom: 0;
  white-space: nowrap;
}
.plan__item__block .single__right {
  width: 70%;
}
.plan__item__block .single__right .price-wrap {
  width: 100%;
}
.plan__item__block .single__right .price-wrap:first-of-type {
  border-bottom: none;
  position: relative;
}
.plan__item__block .single__right .price-wrap:first-of-type::after {
  position: absolute;
  content: "";
  background-image: url(../images/line-price.svg);
  background-size: contain;
  background-repeat: repeat-x;
  width: 201px;
  height: 1px;
  bottom: 0;
  left: 50%;
  right: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.plan__item__block .single__right .price-wrap:nth-of-type(2) {
  border-top: none;
}
.plan__item__block .price-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 12px 0px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}
.plan__item__block .caution-list {
  margin-top: 16px;
}

/*tabの形状*/
.tab {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  margin-bottom: 16px;
}
.tab li {
  width: 33.3333333333%;
}

.tab li a {
  display: block;
  background: #fff;
  color: #818181;
  padding: 10px 0;
  border-radius: 4px;
  border: 1px solid #ccc;
  font-size: 10px;
  font-style: normal;
  font-weight: 500;
  line-height: 120%;
  text-align: center;
}

.tab-3 li,
.tab-4 li {
  width: 50%;
}
.tab-3 li a,
.tab-4 li a {
  font-size: 14px;
}

.plan__item--aga-male {
  border: none;
  border-radius: 0;
}
.plan__item--aga-male .tab-1 li {
  width: 50%;
}
.plan__item--aga-male .tab-1 li a {
  font-size: 10px;
}
.plan__item--aga-male .plan__item__block {
  padding: 0;
}
.plan__item--aga-male .item-title {
  border-radius: 16px 16px 0 0;
  border-right: solid 1px #4f4f4f;
  border-left: solid 1px #4f4f4f;
  border-top: solid 1px #4f4f4f;
}
.plan__item--aga-male .tab {
  margin-bottom: 0;
  padding: 20px 16px 16px;
  border-right: solid 1px #4f4f4f;
  border-left: solid 1px #4f4f4f;
}
.plan__item--aga-male .tab-border {
  padding: 0 16px 20px;
  border-right: solid 1px #4f4f4f;
  border-left: solid 1px #4f4f4f;
  border-bottom: solid 1px #4f4f4f;
  border-radius: 0 0 16px 16px;
}
.plan__item--aga-male .more-btn-wrap {
  margin-top: 24px;
  gap: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.plan__item--aga-male .more-btn-wrap a {
  font-size: 14px;
  width: 100%;
}

.area__detail {
  border-radius: 16px;
  border: 1px solid #4f4f4f;
  background: #f5fcff;
  padding: 20px 0px;
}
.area__detail .detail-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-item-align: stretch;
      align-self: stretch;
}
.area__detail .detail-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0px 4px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
  -ms-flex-item-align: stretch;
      align-self: stretch;
}
.area__detail .detail-list .list-title {
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  line-height: 100%;
}
.area__detail .detail-list p {
  text-align: center;
  font-size: 12px;
  font-weight: 500;
  line-height: 150%;
}

.area__recommend {
  margin-top: 40px;
}
.area__recommend .marker-title {
  color: #000;
  text-align: center;
  font-size: 16px;
}
.area__recommend p {
  margin-top: 8px;
  font-size: 12px;
  font-weight: 500;
  line-height: 100%;
  text-align: center;
}
.area__recommend .redommend-img {
  margin-top: 20px;
  margin-bottom: 24px;
}

/*liにactiveクラスがついた時の形状*/
.tab li.active {
  position: relative;
}
.tab li.active::after {
  position: absolute;
  content: "";
  background-image: url(../images/tab-arrow.png);
  background-size: contain;
  width: 18px;
  left: 50%;
  right: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  height: 8.772px;
  bottom: -5px;
}

.tab li.active a {
  background: #4cb2e4;
  color: #fff;
  border: 1px solid #222222;
}

/*エリアの表示非表示と形状*/
.area {
  display: none;
  opacity: 1;
}
@media (max-width: 768px) {
  .area {
    opacity: 0;
  }
}

/*areaにis-activeというクラスがついた時の形状*/
.area.is-active {
  display: block;
}
@media (max-width: 768px) {
  .area.is-active {
    -webkit-animation-name: displayAnime;
            animation-name: displayAnime;
    -webkit-animation-duration: 1s;
            animation-duration: 1s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
}

@-webkit-keyframes displayAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes displayAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.price__list__open {
  -webkit-animation-name: displayAnime;
          animation-name: displayAnime;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.medicine {
  background: #f5fcff;
  padding: 68px 16px 30px 16px;
  position: relative;
}
.medicine::before {
  position: absolute;
  content: "";
  background-image: url(../images/white-wave.png);
  background-size: cover;
  width: 100%;
  height: 30px;
  left: 0;
  top: -1px;
}
.medicine .medicine__title {
  margin-top: 40px;
  background-image: url(../images/bg-dot-ye.png);
  background-size: cover;
  border-radius: 4px;
  border: 1px solid #4f4f4f;
  padding: 12px;
  font-size: 20px;
  font-weight: 700;
  line-height: 120%;
  text-align: center;
}
.medicine .medicine__list {
  margin-top: 24px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.medicine .medicine__list li {
  border-radius: 4px;
  border: 1px dashed #ccc;
  background: #fff;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.medicine .medicine__list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 16px 5px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 12px;
  height: 100%;
  position: relative;
  min-height: 131px;
}
.medicine .medicine__list li a::after {
  position: absolute;
  content: "";
  background-image: url(../images/arrow-right.svg);
  background-size: contain;
  width: 6px;
  height: 12px;
  top: 50%;
  bottom: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 5px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.medicine .medicine__list li .label {
  border-radius: 2px;
  background: #4cb2e4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 4px 12px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  color: #fff;
  font-size: 12px;
  font-weight: 400;
  line-height: 100%;
}
.medicine .medicine__list li .list-img {
  height: 60px;
  text-align: center;
}
.medicine .medicine__list li .list-img img {
  height: 60px;
  -o-object-fit: contain;
     object-fit: contain;
}
.medicine .medicine__list li .list-title {
  font-size: 14px;
  font-weight: 700;
  line-height: 120%;
  text-align: center;
  margin-top: 8px;
}
.medicine .medicine__list li .list-title .small {
  font-size: 12px;
  font-weight: 700;
  line-height: 150%;
}
.medicine .medicine__list li:active a::after, .medicine .medicine__list li:focus a::after, .medicine .medicine__list li:hover a::after {
  right: 2px;
}
.medicine .medicine__text {
  color: #595959;
  border-radius: 16px;
  background: #fff;
  text-align: justify;
  font-size: 12px;
  font-weight: 500;
  line-height: 150%;
  padding: 12px;
  margin-top: 40px;
}

/* モーダル */
.modaal-wrapper {
  height: 100dvh;
  overflow: hidden;
}

.modaal-content-container {
  position: relative;
}

.modaal-content-container {
  background: #4cb2e4;
}

.modaal-inner-wrapper {
  /*padding: sp(20) sp(16) sp(60);*/
  position: relative;
  padding: 0 16px 0;
  /*&::after {
        position: absolute;
        content: "";
        background-image: url(../images/modal-close.svg);
        background-size: contain;
        width: 64px;
        height: 14px;
        bottom: 23px;
        left: 50%;
        right: 50%;
        transform: translateX(-50%);
    }*/
}
@media (min-width: 769px) {
  .modaal-inner-wrapper {
    /*padding: 20px 16px 60px;*/
  }
}

.modaal-wrapper .close-btn.modaal-close {
  background: #4cb2e4;
  position: fixed;
  width: 100%;
  z-index: 100;
  height: 60px;
  bottom: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: none;
  top: inherit;
  right: inherit;
  border-radius: 0;
}
.modaal-wrapper .close-btn.modaal-close::after, .modaal-wrapper .close-btn.modaal-close::before {
  display: none;
}

.modaal-container {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%;
  margin: auto;
  text-align: left;
  color: #000;
  max-width: 1000px;
  border-radius: 0;
  background: #4cb2e4;
  -webkit-box-shadow: none;
          box-shadow: none;
  cursor: auto;
  border-radius: 16px;
  overflow: hidden;
}

.modaal-content-container {
  /*padding: sp(24) sp(16) sp(32) sp(16);*/
  padding: 0;
}
@media (min-width: 769px) {
  .modaal-content-container {
    /*padding: 24px 16px 32px 16px;*/
  }
}

.modaal-container-inner {
  height: 95dvh;
  overflow-y: scroll;
  background-image: linear-gradient(0deg, transparent calc(100% - 1px), #f7f9fb calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), #f7f9fb calc(100% - 1px));
  background-size: 16px 16px;
  background-repeat: repeat;
  background-position: center center;
  background-color: #fff;
  border: 1px solid #4f4f4f;
  border-radius: 16px;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: #222222;
  padding: 24px 16px 32px 16px;
  position: relative;
  top: 20px;
}

.modal__content {
  border-radius: 16px;
  overflow: hidden;
}

.hide-area {
  display: none;
}

/*全て共通：モーダルのボタンの色を変更したい場合*/
.modaal-wrapper {
  -webkit-transition: all 0.1s;
  transition: all 0.1s;
}

.modaal-overlay {
  -webkit-transition: all 0.1s;
  transition: all 0.1s;
}

.modaal-wrapper .modaal-close {
  background: #4cb2e4;
  border: 1px solid #4f4f4f;
  width: 40px;
  height: 40px;
  right: 32px;
  top: 32px;
}

.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before {
  background: #fff;
}

.modal-scroll-y {
  height: 80vh;
  overflow-y: scroll;
}

.modal-scroll-y--100 {
  overflow-y: scroll;
  height: 90vh;
  padding-bottom: 32px;
}

.modal__top {
  text-align: center;
  padding-bottom: 24px;
}
.modal__top .label {
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  line-height: 100%;
  display: inline-block;
  padding: 4px 12px;
  gap: 10px;
  border-radius: 2px;
  border: 1px solid #4f4f4f;
  background: #fff064;
}

.modal-title {
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  line-height: 150%;
  margin-bottom: 24px;
}
.modal-title .small {
  font-size: 16px;
  line-height: 150%;
}

.modal__content .modal__img {
  text-align: center;
}

.modal__item-list {
  margin-top: 24px;
}
.modal__item-list .modal__item {
  border-radius: 12px;
  background: #f7f9fb;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 16px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 8px;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  margin-bottom: 16px;
}
.modal__item-list .modal__item:last-of-type {
  margin-bottom: 0;
}
.modal__item-list .modal__item .item-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
  font-size: 14px;
}
.modal__item-list .modal__item .item-title .icon {
  width: 20px;
}
.modal__item-list .modal__item .about-text {
  -ms-flex-item-align: stretch;
      align-self: stretch;
  text-align: justify;
  font-size: 12px;
  font-weight: 400;
  line-height: 150%;
}
.modal__item-list .modal__item .item-text {
  -ms-flex-item-align: stretch;
      align-self: stretch;
  text-align: justify;
  font-size: 12px;
  font-weight: 400;
  line-height: 150%;
}
.modal__item-list .modal__item .caution-list {
  color: #222222;
  text-align: justify;
  font-size: 10px;
  font-weight: 400;
  line-height: 150%;
  padding-left: 24px;
  margin-top: 4px;
}
.modal__item-list .modal__item .dot-list {
  text-align: justify;
  font-size: 12px;
  font-weight: 400;
  line-height: 150%;
}
.modal__item-list .modal__item .dot-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 4px;
}
.modal__item-list .modal__item .dot-list li:last-child {
  margin-bottom: 0;
}
.modal__item-list .modal__item .subtitle {
  font-size: 12px;
  font-weight: 700;
  line-height: 150%;
}
.modal__item-list .modal__item h6 {
  font-size: 12px;
  font-weight: 500;
  line-height: 150%;
}

.clinic-slider .bg-square {
  border-radius: 16px;
  border: 1px solid #4f4f4f;
  width: 100%;
  padding: 36px 20px 24px 20px;
  position: relative;
  margin-top: 50px;
  margin-right: 20px;
  margin-left: 20px;
}
.clinic-slider .slide-title {
  text-align: center;
}
.clinic-slider .slide-title .label {
  position: absolute;
  left: 50%;
  right: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: -11px;
  width: 121px;
}
.clinic-slider .clinic-slider__img img {
  margin: 0 auto;
}
.clinic-slider .clinic-table {
  border-radius: 16px;
  background: #f7f9fb;
  padding: 16px 16px 20px 16px;
  margin-top: 25px;
  width: 100%;
}
.clinic-slider .clinic-table tr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 8px 4px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 8px;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  border-bottom: 1px dashed #ccc;
}
.clinic-slider .clinic-table tr th {
  width: 25.9%;
  font-size: 12px;
  font-weight: 700;
  line-height: 150%;
}
.clinic-slider .clinic-table tr td {
  text-align: justify;
  font-size: 12px;
  font-weight: 400;
  line-height: 150%;
  width: 68.35%;
}
.clinic-slider .clinic-table tr:nth-of-type(2) td {
  font-size: 14px;
}
.clinic-slider .caution-list {
  margin-top: 4px;
}
.clinic-slider .dot-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  text-align: justify;
}
.clinic-slider .slick-prev,
.clinic-slider .slick-next {
  bottom: -2%;
}

/* AGA */
.aga .title-wrap {
  margin-bottom: 60px;
}
.aga .plan__inner {
  padding: 60px 16px 20px 16px;
  position: relative;
  margin-top: 70px;
}
.aga .plan__inner .section-title {
  width: 294px;
  position: absolute;
  top: -29px;
  left: 50%;
  right: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.aga .plan__list__item .list-block {
  padding: 20px;
}
.aga .plan__list__item .item-block {
  border-radius: 0;
  background: #f7f9fb;
  padding: 12px;
  font-size: 14px;
  margin-top: 20px;
}
.aga .plan__list__item .dot-list {
  font-size: 14px;
  font-weight: 500;
  line-height: 150%;
}
.aga .plan__list__item .dot-list li {
  margin-bottom: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  text-align: justify;
}
.aga .plan__list__item .dot-list li:last-child {
  margin-bottom: 0;
}
.aga .plan__list__item .example-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  text-align: justify;
  font-size: 14px;
  font-weight: 700;
  line-height: 150%;
}

.aga__item {
  margin-top: 64px;
  margin-bottom: 85px;
}
.aga__item:last-of-type {
  margin-bottom: 0;
}
.aga__item p {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.7;
}
.aga__item .marker-title {
  font-size: 18px;
  letter-spacing: -0.7px;
}
.aga__item .marker-title .dansei {
  margin-left: -8px;
}
.aga__item .caution-text {
  color: #818181;
  font-size: 10px;
  font-weight: 400;
  line-height: 150%;
  margin-top: 8px;
}
.aga__item .aga-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 8px 16px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  border-radius: 4px;
  border: 1.5px solid #4f4f4f;
  background: #fff;
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  line-height: 170%;
  margin-bottom: 28px;
  position: relative;
}
.aga__item .aga-title span {
  position: relative;
}
.aga__item .aga-title::before {
  position: absolute;
  content: "";
  background-image: url(../images/aga-title-q.png);
  background-size: contain;
  width: 54px;
  height: 55.5px;
  top: -24px;
}
.aga__item .section-text {
  margin-top: 20px;
}
.aga__item .section-text .marker {
  font-weight: 700;
}
.aga__item .caution-list {
  margin-top: 20px;
}
.aga__item .aga-graph {
  margin-top: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  padding: 24px 20px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  border-radius: 16px;
  border: 1px solid #4f4f4f;
}
.aga__item .aga-graph .aga-graph-title {
  border-radius: 2px;
  border: 1px solid #4f4f4f;
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  line-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 8px 20px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-image: url(../images/bg-dot-ye.png);
}
.aga__item .aga-cause {
  margin-top: 20px;
  width: 100%;
  padding: 20px 16px;
  gap: 12px;
  border-radius: 8px;
  border: 1px solid #4f4f4f;
}
.aga__item .aga-cause .dot-title {
  text-align: justify;
  font-size: 14px;
  font-weight: 700;
  line-height: 150%;
  margin-top: 12px;
}
.aga__item .aga-cause .dot-title:first-of-type {
  margin-top: 0;
}
.aga__item .aga-cause .dot-list {
  margin-top: 2px;
  padding-left: 20px;
}
.aga__item .aga-cause .dot-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  text-align: justify;
  font-size: 14px;
  font-weight: 500;
  line-height: 150%;
  margin-bottom: 2px;
}
.aga__item .aga-cause .dot-list li:last-child {
  margin-bottom: 0;
}
.aga__item .aga-caution {
  padding: 16px;
  border-radius: 16px;
  background: #fff;
  margin-top: 20px;
}
.aga__item .aga-caution .item-title {
  font-size: 14px;
  font-weight: 700;
  line-height: 150%;
}
.aga__item .aga-caution .dot-list {
  margin-top: 8px;
}
.aga__item .aga-caution .dot-list li {
  text-align: justify;
  font-size: 14px;
  font-weight: 500;
  line-height: 150%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 4px;
}
.aga__item .aga-caution .dot-list li:last-child {
  margin-bottom: 0;
}
.aga__item .aga-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-column-gap: 16px;
     -moz-column-gap: 16px;
          column-gap: 16px;
  row-gap: 24px;
}
.aga__item .aga-list li {
  width: calc(50% - 8px);
  text-align: center;
}
.aga__item .aga-list li p {
  font-size: 12px;
  font-weight: 700;
  line-height: 150%;
  margin-top: 4px;
}
.aga__item .cause-list {
  margin-top: 28px;
}
.aga__item .cause-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  padding: 58px 16px 20px 16px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  border-radius: 8px;
  border: 1px solid #4f4f4f;
  position: relative;
  margin-bottom: 28px;
}
.aga__item .cause-list li:last-child {
  margin-bottom: 0;
}
.aga__item .cause-list li .list-title {
  position: absolute;
  top: -8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  justify-items: center;
  gap: 12px;
}
.aga__item .cause-list li .list-title .label {
  color: #fff;
  font-family: "Mochiy Pop One";
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 100%;
  border-radius: 2px;
  background: #4f4f4f;
  padding: 5px 12px;
}
.aga__item .cause-list li .list-title .marker {
  text-align: justify;
  font-size: 18px;
  font-weight: 700;
  line-height: 100%;
}
.aga__item .cause-list li p {
  text-align: justify;
  font-size: 14px;
  font-weight: 500;
  line-height: 150%;
}

.page-aga .mv {
  background-image: url(../images/mv-men-aga.jpg);
  height: 451px;
}
@media (max-width: 768px) {
  .page-aga .mv {
    height: 115.641025641vw;
  }
}
.page-aga .mv .bottom-text {
  margin-top: 1px;
}
.page-aga .point-list {
  top: -58px;
}
@media (max-width: 768px) {
  .page-aga .point-list {
    top: -14.8717948718vw;
  }
}
.page-aga .mv-bottom .caution-list {
  margin-top: -41px;
}
@media (max-width: 768px) {
  .page-aga .mv-bottom .caution-list {
    margin-top: -10.5128205128vw;
  }
}
.page-aga .aga .title-wrap {
  margin-top: 8px;
  margin-bottom: 66px;
}
.page-aga .aga .title-wrap .eachTextAnime span {
  font-size: 26px;
  letter-spacing: -4.68px;
  font-weight: 700;
  line-height: 100%;
}
.page-aga .price__list .more-btn-wrap {
  margin-bottom: 40px;
}
.page-aga .price__list .more-btn-wrap .more-btn {
  font-size: 14px;
  width: 100%;
  border-radius: 8px;
}

.page-aga-female .mv .bottom-text {
  margin-top: 1px;
}
.page-aga-female .aga .title-wrap {
  margin-top: 8px;
  margin-bottom: 66px;
}
.page-aga-female .aga .title-wrap .eachTextAnime span {
  letter-spacing: 5.22px;
  font-size: 26px;
}
.page-aga-female .aga .title-wrap .eachTextAnime span:nth-of-type(2) {
  letter-spacing: -0.78px;
}
.page-aga-female .aga .title-wrap .eachTextAnime span:nth-of-type(3), .page-aga-female .aga .title-wrap .eachTextAnime span:nth-of-type(4), .page-aga-female .aga .title-wrap .eachTextAnime span:nth-of-type(5) {
  letter-spacing: -5.2px;
}
.page-aga-female .mv {
  background-image: url(../images/mv-women-aga.jpg);
  background-position: right;
  height: 451px;
}
@media (max-width: 768px) {
  .page-aga-female .mv {
    height: 115.641025641vw;
  }
}
.page-aga-female .point-list {
  top: -58px;
}
@media (max-width: 768px) {
  .page-aga-female .point-list {
    top: -14.8717948718vw;
  }
}
.page-aga-female .mv-bottom .caution-list {
  margin-top: -41px;
}
@media (max-width: 768px) {
  .page-aga-female .mv-bottom .caution-list {
    margin-top: -10.5128205128vw;
  }
}
.page-aga-female .price__list .more-btn-wrap .more-btn {
  font-size: 14px;
  width: 100%;
  border-radius: 8px;
  margin-bottom: 16px;
}
.page-aga-female .price__list .more-btn-wrap .more-btn:last-of-type {
  margin-bottom: 0;
}
.page-aga-female .medicine .medicine__list li a {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.page-no-smoking .mv {
  background-image: url(../images/mv-no-smoking.png);
  background-position: right;
  height: 460px;
}
@media (max-width: 768px) {
  .page-no-smoking .mv {
    height: 117.9487179487vw;
  }
}
.page-no-smoking .mv .mv__title {
  width: 90.5128205128vw;
  margin-top: 0.625vw;
}
@media (min-width: 769px) {
  .page-no-smoking .mv .mv__title {
    width: 353px;
    margin-top: 9px;
  }
}
.page-no-smoking .mv .mv__price {
  width: 76.9230769231vw;
}
@media (min-width: 769px) {
  .page-no-smoking .mv .mv__price {
    width: 300px;
  }
}
.page-no-smoking .mv .mv__price .price-title {
  left: 12px;
  padding: 2px 10px;
}
.page-no-smoking .mv .mv__price .price-title .small {
  font-size: 10px;
}
.page-no-smoking .mv .mv__price .mv__price__left .tax {
  text-align: right;
}
.page-no-smoking .no-smoking-risk {
  padding: 24px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 20px;
  border-radius: 16px;
  border: 1px solid #000;
  margin-top: 20px;
  margin-bottom: 12px;
}
.page-no-smoking .no-smoking-care {
  padding: 24px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 14px;
  border-radius: 16px;
  border: 1px solid #000;
  margin-top: 20px;
}
.page-no-smoking .num-caution-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 2px;
  text-align: justify;
  font-family: "Noto Sans JP";
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  color: #595959;
  margin-bottom: 8px;
}
.page-no-smoking .num-caution-list li:last-child {
  margin-bottom: 0;
}
.page-no-smoking .num-caution-list li a {
  color: #4cb2e4;
  text-decoration: underline;
}
.page-no-smoking .caution {
  padding: 12px;
  border-radius: 16px;
  background: #fff;
  margin-top: 20px;
}
.page-no-smoking .care {
  padding: 78px 20px 60px 20px;
  position: relative;
}
.page-no-smoking .care::before {
  position: absolute;
  content: "";
  background-image: url(../images/reserve-wave.png);
  background-size: cover;
  width: 100%;
  height: 30px;
  left: 0;
  top: -1px;
}
.page-no-smoking .medical__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: solid 1px #4f4f4f;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
  width: 100%;
}
.page-no-smoking .medical__item .tab-border {
  width: 100%;
}
.page-no-smoking .medical__item .price {
  font-size: 12px;
  margin: 4px auto;
  line-height: 1;
}
.page-no-smoking .medical__item .price em {
  font-weight: 700;
  font-size: 20px;
}
.page-no-smoking .medical__item .tax,
.page-no-smoking .medical__item .count {
  color: #818181;
  text-align: center;
  font-size: 10px;
  font-weight: 400;
  line-height: 100%;
  margin-top: 4px;
}
.page-no-smoking .medical__item .off {
  border-radius: 2px;
  border: 1px solid #4f4f4f;
  background: #fff064;
  display: inline-block;
  padding: 4px 8px;
  gap: 10px;
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
  text-align: center;
  margin-bottom: 4px;
}
.page-no-smoking .medical__item .off-wh {
  border: 1px solid #ccc;
  background: #fff;
  font-weight: 400;
}
.page-no-smoking .medical__item .off-blue {
  background: #f5fcff;
  margin-right: 8px;
  margin-bottom: 0;
  white-space: nowrap;
}
.page-no-smoking .medical__item .list-title {
  padding: 16px 24px;
  background: #4cb2e4;
  color: #fff;
  font-size: 20px;
  font-weight: 500;
  line-height: 100%;
  text-align: center;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.page-no-smoking .medical__item .list-block {
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 28px 20px 20px 20px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 28px;
  -ms-flex-item-align: stretch;
      align-self: stretch;
}
.page-no-smoking .medical__item .medical-img {
  text-align: center;
}
.page-no-smoking .medical__item .list-top p {
  text-align: justify;
  font-size: 14px;
  font-weight: 500;
  line-height: 150%;
  margin-top: 10px;
}
.page-no-smoking .medical__item .block-title {
  padding: 5px 12px;
  display: table;
  margin: 0 auto;
  border-radius: 2px;
  border: 1px solid #4f4f4f;
  background: #fff064;
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 1;
}
.page-no-smoking .medical__item .list-text {
  text-align: justify;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  margin-top: 8px;
  margin-bottom: 28px;
}
.page-no-smoking .aga__item {
  margin-top: 60px;
}
.page-no-smoking .aga__item .caution-list {
  color: #595959;
  line-height: 150%;
  margin-top: 12px;
  margin-bottom: 41px;
}
.page-no-smoking .aga-title {
  line-height: 120%;
}
.page-no-smoking .aga-title::before {
  background-image: url(../images/aga-title-medical.png);
}
.page-no-smoking .aga-title small {
  font-size: 14px;
}
.page-no-smoking .no-smoking-graph {
  margin-top: 24px;
}
.page-no-smoking .price-table .label {
  width: 86%;
  line-height: 140%;
}
.page-no-smoking .price-table .tr-price .month {
  color: #818181;
}
.page-no-smoking .medicine::before {
  background-image: url(../images/wave-square-bottom.png);
}
.page-no-smoking .medicine .medicine__list li a {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.page-diet .mv {
  background-image: url(../images/mv-diet.jpg);
}
.page-diet .mv .mv__title {
  width: 67.4358974359vw;
  margin-top: 3.0769230769vw;
}
@media (min-width: 769px) {
  .page-diet .mv .mv__title {
    width: 263px;
    argin-top: 12px;
  }
}

.page-pill .mv .mv__title {
  width: 65.641025641vw;
  margin-top: 2.3076923077vw;
}
@media (min-width: 769px) {
  .page-pill .mv .mv__title {
    width: 256px;
    margin-top: 9px;
  }
}

.page-aga-male .mv .mv__title {
  width: 65.641025641vw;
  margin-top: 2.3076923077vw;
}
@media (min-width: 769px) {
  .page-aga-male .mv .mv__title {
    width: 256px;
    margin-top: 9px;
  }
}

.page-aga-female .mv .mv__title {
  width: 76.9230769231vw;
  margin-top: 2.3076923077vw;
}
@media (min-width: 769px) {
  .page-aga-female .mv .mv__title {
    width: 300px;
    margin-top: 9px;
  }
}

/* タブレット幅でもSPと同じスクロール連動の出し入れができるように、
   常時表示のrelative配置ではなく、.sp-width内のスクロールに追従するsticky配置にする */
@media (min-width: 769px) and (max-width: 1299px) {
  .header {
    position: sticky;
    top: 0;
    margin-bottom: -70px;
  }
}

.doctor__list {
  display: flex;
  flex-wrap: wrap;
}
.doctor__list dt {
  float: none;
  clear: none;
  width: 80px;
  padding-top: 4px;
  padding-bottom: 7px;
  border-bottom: 1px dashed #ccc;
}
.doctor__list dd {
  padding-left: 0;
  width: calc(100% - 80px);
}

.page-std-treatment .mv {
  background-image: url(../images/mv-std-treatment.jpg);
  height: 117.9487179487vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv {
    height: 460px;
  }
}
.page-std-treatment .mv .fukidashi {
  width: 47vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .fukidashi {
    width: 223px;
  }
}
.page-std-treatment .mv .mv__title {
  width: 80vw;
  margin-top: -1.7948717949vw;
}
@media (min-width: 769px) {
  .page-std-treatment .mv .mv__title {
    width: 353px;
    margin-top: -7px;
  }
}
.page-std-treatment .clinic-about {
  padding: 67px 20px 30px;
}
.page-std-treatment .clinic-about.clinic-about--price {
  padding-top: 25px;
}
.page-std-treatment .clinic-about.clinic-about--price::before {
  background: none;
}
.page-std-treatment .clinic-about.clinic-about--price .caution-list {
  width: fit-content;
  margin: 8px auto;
}
.page-std-treatment .clinic-about.clinic-about--price .caution-list li {
  list-style: none;
}
.page-std-treatment .clinic-about.clinic-about--price .caution-list li::before {
  content: "※";
}
.page-std-treatment .title-wrap {
  margin-top: 8px;
}
.page-std-treatment .title-small {
  font-size: 20px;
  text-align: center;
  margin-bottom: 40px;
  line-height: 140%;
}
.page-std-treatment .item__img {
  margin-top: 20px;
}
.page-std-treatment .search {
  padding: 78px 0 30px;
  position: relative;
}
.page-std-treatment .search::before {
  position: absolute;
  content: "";
  background-image: url(../images/reserve-wave-white.png);
  background-size: cover;
  background-position: bottom;
  width: 100%;
  height: 30px;
  left: 0;
  top: -1px;
}
.page-std-treatment .worries {
  padding: 78px 0;
  position: relative;
}
.page-std-treatment .worries::before {
  position: absolute;
  content: "";
  background-image: url(../images/reason-wave.png);
  background-size: cover;
  background-position: bottom;
  width: 100%;
  height: 30px;
  left: 0;
  top: -1px;
}
.page-std-treatment .worries::after {
  position: absolute;
  content: "";
  background-image: url(../images/reason-wave-2.png);
  background-size: cover;
  width: 100%;
  height: 30px;
  left: 0;
  bottom: -1px;
}
.page-std-treatment .worries .wave-title {
  text-align: center;
  font-size: 24px;
  font-weight: 700;
  line-height: 140%;
  margin-top: 60px;
}
.page-std-treatment .worries .wave-title .icon {
  display: block;
  margin: 0 auto;
}
.page-std-treatment .worries .wave-title span {
  position: relative;
  padding-bottom: 5px;
  margin-top: 8px;
  display: inline-block;
}
.page-std-treatment .worries .wave-title span::after {
  position: absolute;
  content: "";
  background-image: url(../images/wave.svg);
  background-size: cover;
  width: 100%;
  height: 5px;
  bottom: -5px;
  left: 0;
}
.page-std-treatment .worries .fukidashi {
  margin-top: 29px;
  padding: 0 20px;
}
.page-std-treatment .kit-slider {
  margin-top: 15px;
  padding: 0 10px;
  display: none;
}
.page-std-treatment .kit-slider.active {
  display: block;
}
.page-std-treatment .kit-slider li {
  margin: 0 10px;
}
.page-std-treatment .kit-slider .slide-medichine {
  display: grid;
  grid-template-columns: 72px 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 16px;
  gap: 8px 4px;
  border-radius: 16px;
  background: #f7f9fb;
}
.page-std-treatment .kit-slider .slide-medichine .title {
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}
.page-std-treatment .kit-slider .kit-sex {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 4px 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 4px;
  line-height: 1;
}
.page-std-treatment .kit-slider .kit-sex.kit-sex--man {
  border: 1px solid #4CB2E4;
  border-radius: 2px;
  background: #F5FCFF;
}
.page-std-treatment .kit-slider .kit-sex.kit-sex--woman {
  border: 1px solid #EB637C;
  border-radius: 2px;
  background: #FFF5FB;
}
.page-std-treatment .kit-slider .kit-sex__text {
  font-size: 12px;
  font-weight: 500;
}
.page-std-treatment .kit-slider .kit-types {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 4px;
}
.page-std-treatment .kit-slider .kit-types p {
  padding: 6px 8px;
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  display: inline-block;
  border: 1px solid #ccc;
  border-radius: 2px;
  background: #FFF;
}
.page-std-treatment .kit-slider .kit-body {
  margin-top: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 12px 0;
}
.page-std-treatment .kit-slider .kit-box {
  padding: 16px;
  border: 1px dashed #ccc;
  border-radius: 4px;
}
.page-std-treatment .kit-slider .kit-box__ttl {
  margin-bottom: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 3px;
}
.page-std-treatment .kit-slider .kit-box__ttl02 {
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}
.page-std-treatment .kit-slider .kit-box__price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  line-height: 1;
}
.page-std-treatment .kit-slider .kit-box__price01 {
  font-size: 20px;
  font-weight: 700;
}
.page-std-treatment .kit-slider .kit-box__price02 {
  font-size: 12px;
  font-weight: 400;
}
.page-std-treatment .kit-slider .kit-box__price03 {
  font-size: 10px;
  font-weight: 400;
  color: #818181;
}
.page-std-treatment .kit-slider .kit-box_list li {
  margin: 0;
  padding-left: 12px;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  position: relative;
}
.page-std-treatment .kit-slider .kit-box_list li::before {
  content: "・";
  font-size: 12px;
  line-height: 1.5;
  position: absolute;
  top: 0;
  left: 0;
}
.page-std-treatment .kit-slider .kit-box__text {
  font-size: 12px;
  line-height: 1.5;
  font-weight: 500;
}
.page-std-treatment .kit-slider .kit-box__btn {
  margin-top: 16px;
  display: flex;
  justify-content: center;
}
.page-std-treatment .kit-slider .slick-prev,
.page-std-treatment .kit-slider .slick-next {
  bottom: 50%;
}
.page-std-treatment .kit-slider .slick-prev {
  left: 10px;
}
.page-std-treatment .kit-slider .slick-next {
  right: 10px;
}
.page-std-treatment .kit-slider .slick-track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.page-std-treatment .kit-slider .slick-slide {
  height: auto !important;
}
.page-std-treatment .kit-slider .slick-slide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: solid 1px #4f4f4f;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
  width: 100%;
}
.page-std-treatment .kit-slider .slick-slide .slide-title {
  padding: 12px;
  background: #4cb2e4;
  color: #fff;
  font-size: 18px;
  font-weight: 500;
  line-height: 150%;
  text-align: center;
}
.page-std-treatment .kit-slider .slick-slide .slide-title small {
  font-size: 12px;
}
.page-std-treatment .kit-slider .slick-slide .label {
  display: table;
  padding: 5px 16px;
  margin: 0 auto;
  border-radius: 2px;
  border: 1px solid #4f4f4f;
  background: #fff064;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
}
.page-std-treatment .kit-slider .slick-slide .label em {
  font-size: 20px;
  font-weight: 700;
}
.page-std-treatment .kit-slider .slick-slide .list-block {
  padding: 16px 16px 20px 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.page-std-treatment .kit-slider .slick-slide .slide-text {
  margin-top: 8px;
  text-align: justify;
  font-size: 14px;
  font-weight: 500;
  line-height: 150%;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.page-std-treatment .kit-slider .slick-slide .more-btn-wrap {
  margin: 30px auto 0;
}
.page-std-treatment .kit-slider .slick-slide .more-btn-wrap .more-btn {
  height: 48px;
  border-radius: 8px;
}
.page-std-treatment .plan__item .item-title {
  padding: 12px;
}

.modal__content--plan .modal-title {
  line-height: 120%;
}
.modal__content--plan .modal-title small {
  font-size: 14px;
}
.modal__content--plan .modal-text {
  text-align: justify;
  font-size: 14px;
  font-weight: 500;
  line-height: 150%;
  margin-top: 8px;
}
.modal__content--plan .modal__item-list .modal__item {
  background: #fff;
  border: 1px dashed #ccc;
  border-radius: 8px;
}
.modal__content--plan .modal__item-list .modal__item .item-title {
  font-size: 12px;
}
.modal__content--plan .modal-text {
  margin-bottom: 24px;
  padding: 0 8px;
}
.modal__content--plan .pop-tabs {
  margin-bottom: 24px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 12px;
}
.modal__content--plan .pop-tab {
  width: 157px;
  position: relative;
}
.modal__content--plan .pop-tab button {
  width: 100%;
  padding: 10px 0;
  font-size: 14px;
  font-weight: 700;
  display: block;
  background: #FFF;
  border: 1px solid #CCC;
  border-radius: 4px;
  color: #818181;
}
.modal__content--plan .pop-tab.pop-tab--active button {
  background: #4CB2E4;
  border: 1px solid #4F4F4F;
  color: #FFF;
  position: relative;
}
.modal__content--plan .pop-tab.pop-tab--active button::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -6px;
  width: 18px;
  height: 8px;
  display: block;
  background: url(../images/pop-active.svg) no-repeat center;
}
.modal__content--plan .pop-tab-contents {
  display: none;
}
.modal__content--plan .pop-tab-contents.show {
  display: block;
}
.modal__content--plan .pop-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 12px 0;
}
.modal__content--plan .pop-box {
  padding: 16px;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  border-radius: 16px;
  background: #F7F9FB;
}
.modal__content--plan .pop-gp {
  margin-top: 12px;
}
.modal__content--plan .pop-gp:first-child {
  margin-top: 0;
}
.modal__content--plan .pop-sbox--bd-bottom {
  margin-bottom: 12px;
  padding-bottom: 12px;
  border-bottom: 1px dashed #CCCCCC;
}
.modal__content--plan .pop-box__bold {
  margin-top: 8px;
  font-weight: 700;
}
.modal__content--plan .pop-box__bold:first-child {
  margin-top: 0;
}
.modal__content--plan .pop-slist {
  margin-top: 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4px 0;
}
.modal__content--plan .pop-slist__ttl {
  padding-left: 1em;
  font-weight: 700;
  position: relative;
}
.modal__content--plan .pop-slist__ttl:before {
  content: "・";
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  position: absolute;
  top: 0;
  left: 0;
}
.modal__content--plan .pop-slist__text {
  padding-left: 1em;
}
.modal__content--plan .pop-box__note {
  margin-top: 4px;
  padding-left: 1em;
  color: #818181;
  position: relative;
}
.modal__content--plan .modal-text + .pop-box__note {
  margin-top: -12px;
  margin-bottom: 24px;
  padding: 0 8px 0 calc(8px + 1em);
  font-size: 12px;
}
.modal__content--plan .pop-box__note:before {
  content: "※";
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  position: absolute;
  top: 0;
  left: 0;
}
.modal__content--plan .pop-box__yellow-box {
  margin-top: 8px;
  padding: 2px 6px;
  font-size: 10px;
  font-weight: 700;
  display: inline-block;
  background: #FFF064;
  border: 1px solid #4F4F4F;
  border-radius: 2px;
}
.modal__content--plan .pop-box__yellow-box--gray {
  background: #E5E5E5;
}
.modal__content--plan .pop-box__text {
  margin-top: 4px;
}
.modal__content--plan .pop-sublist {
  margin-top: 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4px 0;
}
.modal__content--plan .pop-sublist__item {
  padding-left: 1em;
  font-weight: 400;
  position: relative;
}
.modal__content--plan .pop-sublist__item:before {
  content: "・";
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  position: absolute;
  top: 0;
  left: 0;
}
.modal__content--plan .single,
.modal__content--plan .mataha {
  margin-top: 4px;
}
.modal__content--plan .single .title {
  width: 50%;
}
.modal__content--plan .raku-wrap {
  width: 100%;
}
.modal__content--plan .raku-wrap .price {
  font-size: 12px;
  margin: 4px auto;
  line-height: 1;
}
.modal__content--plan .raku-wrap .price em {
  font-weight: 700;
  font-size: 20px;
}
.modal__content--plan .raku-wrap .tax,
.modal__content--plan .raku-wrap .count {
  color: #818181;
  text-align: center;
  font-size: 10px;
  font-weight: 400;
  line-height: 100%;
  margin-top: 4px;
}
.modal__content--plan .raku-wrap .off {
  border-radius: 2px;
  border: 1px solid #4f4f4f;
  background: #fff064;
  display: inline-block;
  padding: 4px 8px;
  gap: 10px;
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
  text-align: center;
  margin-bottom: 4px;
}
.modal__content--plan .raku-wrap .off-wh {
  border: 1px solid #ccc;
  background: #fff;
  font-weight: 400;
}
.modal__content--plan .raku-wrap .off-blue {
  background: #f5fcff;
  margin-right: 8px;
  margin-bottom: 0;
  white-space: nowrap;
}
.modal__content--plan .btn-wrap {
  padding-bottom: 5px;
  max-width: 324px;
  width: 100%;
  margin: 0 auto;
}

.know-list {
  margin-top: 40px;
  padding: 0 20px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.know-btn a {
  height: 56px;
  padding: 0 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #FFF;
  border: 1px solid #4F4F4F;
  border-radius: 12px;
  font-weight: 700;
  font-size: 14px;
  line-height: 1.5;
  position: relative;
}
.know-btn a::after {
  content: "";
  position: absolute;
  right: 8px;
  top: 50%;
  width: 8px;
  height: 14px;
  display: block;
  background: url(../images/know-arrow.svg) no-repeat center/100% auto;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.price-list {
  margin-top: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px 0;
}

.price-item__ttl {
  padding: 10px 0;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #FFF;
  text-align: center;
  background: #4CB2E4;
}

.price-item__ul {
  background: #FFF;
}

.price-item__li {
  padding: 8px 0 8px 8px;
  border: 1px dashed #ccc;
  border-top: none;
  display: grid;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  grid-template-columns: 1fr 110px;
}
.price-item__text {
  font-weight: 500;
  font-size: 14px;
  line-height: 1.5;
}

.price-item__price {
  text-align: center;
  font-weight: 700;
  font-size: 14px;
  line-height: 1;
}
.price-item__price span {
  font-weight: 500;
  font-size: 12px;
  color: #818181;
}

.flow .flow__list li {
  padding-right: 20px;
  padding-left: 20px;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.flow .flow__list li:nth-child(1) .list-img::before {
  background-image: url(../images/step-1-02.png);
}
.flow .flow__list li:nth-child(2) .list-img::before {
  background-image: url(../images/step-2-02.png);
}
.flow .flow__list li:nth-child(3) .list-img::before {
  background-image: url(../images/step-3-02.png);
}
.flow .flow__list li .list-img {
  width: 70px;
}
.flow .flow__list li .list-img::before {
  background-size: contain;
  width: 58px;
  height: 60px;
  left: 12px;
  top: -5px;
}
.flow .flow__list li .flow__list__text {
  width: calc(100% - 86px);
}
.flow .flow__list li .list-title {
  width: 100%;
  padding-left: 56px;
}
.flow .flow__list li .list-text {
  font-weight: 500;
  font-size: 16px;
  line-height: 1.7;
  letter-spacing: 0;
  color: #595959;
}

.info .caution-list li {
  color: #818181;
}
.info .caution-list li::before {
  color: #818181;
}

.kit-description {
  margin: 40px 20px 0;
  padding: 16px 20px;
  background: #F5FCFF;
  border-radius: 16px;
  border: 1px solid #4F4F4F;
}

.kit-description__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px 0;
}
.kit-description__list li {
  padding-left: 1em;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 500;
  position: relative;
}
.kit-description__list li:before {
  content: "";
  width: 8px;
  height: 8px;
  background: #FFF064;
  border: 1px solid #4F4F4F;
  border-radius: 50%;
  position: absolute;
  top: 7px;
  left: 0;
}
.kit-description__list li span {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, rgb(255, 240, 100)));
  background: linear-gradient(transparent 70%, rgb(255, 240, 100) 70%);
}

.kit-select {
  margin: 40px 20px 0;
  padding: 16px;
  background: #F7F9FB;
  border-radius: 8px;
  border: 1px dashed #ccc;
}
.kit-select input[type=radio],
.kit-select input[type=checkbox] {
  display: none;
}

.kit-select__ttl {
  margin-bottom: 27px;
  padding-left: 27px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  position: relative;
}
.kit-select__ttl::before {
  content: "";
  width: 24px;
  height: 24px;
  background: url(../images/kit-icon.svg) no-repeat center/100% auto;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.kit-select__box {
  margin-top: 20px;
}
.kit-select__box:first-of-type {
  margin-top: 0;
}

.kit-select__text {
  margin-bottom: 12px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
}

.kit-select__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px 12px;
}

.kit-select__radio {
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  background: #FFF;
  display: inline-block;
  border-radius: 30px;
  overflow: hidden;
  -webkit-box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.12);
          box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.12);
}

.checkbox-circle {
  width: 100%;
  cursor: pointer;
  display: block;
  padding: 13px 12px 13px 36px;
  font-size: 16px;
  letter-spacing: 0.05em;
  position: relative;
}
.checkbox-circle::before {
  border: 1px solid #ccc;
  content: "";
  display: block;
  height: 20px;
  left: 8px;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 20px;
}
.checkbox-circle::after {
  content: "";
  display: block;
  left: 12px;
  opacity: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 12px;
  height: 8px;
  background: url(../images/radio-check.svg) no-repeat center/100%;
  background-color: #FFF;
}

input:checked + .checkbox-circle {
  background: #4CB2E4;
  color: #FFF;
}

input:checked + .checkbox-circle::before {
  background: #FFF;
  border-color: #FFF;
}

input:checked + .checkbox-circle::after {
  opacity: 1;
}

.flow .flow__list li:after {
  background-image: url(../images/arrow-bottom02.svg);
}