@charset "UTF-8";
@media screen and (min-width: 321px) {
  .ssp {
    display: none;
  }
}
@media screen and (min-width: 541px) {
  .sp {
    display: none;
  }
}
@media screen and (max-width: 540px) {
  .pc {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .tb {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .nb {
    display: none;
  }
}
:root {
  --base-black:#3C3C3C;
  --base-darkgray:#858585;
  --base-gray:#CCCCCC;
  --base-lightgray:#EAEAEA;
  --base-blightgray:#F6F6F6;
  --base-white:#ffffff;
  --blue-dark:#6068D5;
  --blue-main:#7980E9;
  --blue-light:#E2E4FF;
  --blue-blight:#F6F7FF;
  --sky-moredark:#199FB4;
  --sky-dark:#1EBED7;
  --sky-main:#79DAE9;
  --sky-light:#E3FCFF;
  --sky-blight:#F2FEFF;
  --green-dark:#2AC854;
  --green-main:#82E36C;
  --green-light:#E3FFDD;
  --green-blight:#F1FFEE;
  --accent-gradation:linear-gradient(135deg,var(--green-main),var(--sky-main),var(--blue-main));
  --accent-light-gradation:linear-gradient(135deg,var(--green-light),var(--sky-light),var(--blue-light));
}

section.grade-bg {
  background: url(../img/common/grade-bg.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: contain;
}
section.grade-bg02 {
  background: url(../img/common/grade-bg02.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: contain;
}

header {
  background-color: var(--base-white);
  border-bottom: 1px solid var(--base-gray);
}

.top-title {
  margin-top: 90px;
  padding: 0 0 60px;
}
.top-title .text {
  margin-top: -60px;
  padding: 0 12px;
}
.top-title .text h1 {
  color: var(--base-black);
  font-size: 27px;
  text-align: left;
  margin-bottom: 20px;
}
@media screen and (max-width:320px) {
  .top-title .text h1 {
    font-size: 20px;
  }
}
.top-title .text h1 span {
  padding: 3px 10px;
  background: var(--base-white);
  box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.15);
  display: inline-block;
  margin-bottom: 5px;
}
.top-title .text p {
  font-size: 13px;
  text-shadow: none;
  color: var(--base-black);
  text-align: left;
}
.top-title .point {
  padding: 0 0 35px;
}
@media screen and (max-width:320px) {
  .top-title .point {
    width: 90%;
    margin: 0 auto;
  }
}
.top-title .point .flex {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}
@media screen and (max-width:320px) {
  .top-title .point .flex {
    gap: 5px;
  }
}
.top-title .point .flex .circle {
  width: 114px;
  height: 114px;
  border-radius: 100%;
  border: 1px solid var(--blue-dark);
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width:320px) {
  .top-title .point .flex .circle {
    width: 90px;
    height: 90px;
  }
}
.top-title .point .flex .circle p {
  text-align: center;
  font-family: "Bold";
  font-size: 16px;
  color: var(--blue-dark);
}
@media screen and (max-width:320px) {
  .top-title .point .flex .circle p {
    font-size: 13px;
  }
}
.top-title .point .flex .circle p.mini {
  font-size: 14px;
}
@media screen and (max-width:320px) {
  .top-title .point .flex .circle p.mini {
    font-size: 11px;
  }
}
.top-title .cta {
  padding: 0 24px;
  margin-top: 0;
}

.recommend .box {
  background: var(--base-white);
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
  padding: 30px 18px;
  border-radius: 8px;
}
.recommend .box p.title {
  text-align: center;
  margin-bottom: 15px;
  font-size: 20px;
  font-family: "Bold";
}
.recommend .box img {
  margin-bottom: 25px;
}
.recommend .box .content {
  margin-bottom: 25px;
}
.recommend .box .content .list {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 10px;
  margin-bottom: 10px;
  height: auto;
}
.recommend .box .content .list p {
  font-size: 15px;
  max-width: 226px;
}
@media screen and (max-width:320px) {
  .recommend .box .content .list p {
    max-width: 175px;
  }
}
.recommend .box .content .list p.title {
  color: var(--sky-moredark);
  font-size: 13px;
  width: 67px;
  border: 1px solid var(--sky-dark);
  border-radius: 2px;
}

.cta {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 40px;
}

.flow {
  background-color: var(--sky-blight);
}
.flow h2 {
  text-align: center;
  font-size: 23px;
  font-family: "Bold";
  line-height: 37px;
  color: var(--sky-moredark);
  margin-bottom: 30px;
}
@media screen and (max-width:320px) {
  .flow h2 {
    font-size: 20px;
  }
}
.flow .steps {
  display: flex;
  flex-direction: column;
  gap: 15px;
  width: 100%;
}
.flow .steps .step-item {
  display: flex;
  flex-direction: column;
}
.flow .steps .step-item .step-label {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 87px;
  height: 29px;
  background-color: var(--sky-dark);
  border-radius: 10px 10px 0 0;
  padding: 6px 16px 5px 15px;
}
.flow .steps .step-item .step-label span {
  font-size: 15px;
  font-family: "Bold";
  line-height: 18px;
  color: var(--base-white);
}
.flow .steps .step-item .step-card {
  background-color: var(--base-white);
  border-radius: 0 7px 7px 7px;
  padding: 20px;
}
.flow .steps .step-item .step-card .step-card-inner {
  display: flex;
  gap: 18px;
}
.flow .steps .step-item .step-card .step-card-inner.align-center {
  align-items: center;
}
.flow .steps .step-item .step-card .step-card-inner.align-start {
  align-items: flex-start;
}
.flow .steps .step-item .step-card .step-card-inner img {
  width: 91px;
  height: 91px;
  flex-shrink: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
.flow .steps .step-item .step-card .step-card-inner .step-text {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.flow .steps .step-item .step-card .step-card-inner .step-text h3 {
  font-size: 20px;
  font-family: "Bold";
  line-height: normal;
  line-height: 1.2;
}
.flow .steps .step-item .step-card .step-card-inner .step-text h3 .sub {
  font-size: 16px;
}
.flow .steps .step-item .step-card .step-card-inner .step-text p {
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}
.flow .actions {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
  margin-top: 40px;
}

.risk {
  padding: 60px 0;
}
.risk h2 {
  text-align: center;
  font-size: 24px;
  font-family: "Bold";
  letter-spacing: 0.05em;
  margin-bottom: 40px;
}
.risk .risk-cards {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin: 0 auto;
}
.risk .risk-cards .risk-card {
  border: 1px solid #d0d0d0;
  border-radius: 8px;
  overflow: hidden;
}
.risk .risk-cards .risk-card .risk-card__header {
  background-color: #3a3a3a;
  padding: 12px 16px;
}
.risk .risk-cards .risk-card .risk-card__header .risk-card__title {
  color: var(--base-white);
  font-size: 15px;
  font-weight: 600;
}
.risk .risk-cards .risk-card .risk-card__body {
  background-color: var(--base-white);
}
.risk .risk-cards .risk-card .risk-card__body .risk-row {
  display: grid;
  grid-template-columns: 95px 1fr;
  border-bottom: 1px solid var(--base-lightgray);
}
.risk .risk-cards .risk-card .risk-card__body .risk-row:last-child {
  border-bottom: none;
}
.risk .risk-cards .risk-card .risk-card__body .risk-row .risk-row__label {
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 600;
  color: #555555;
  border-right: 1px solid var(--base-lightgray);
  display: flex;
  align-items: flex-start;
  line-height: 1.5;
}
.risk .risk-cards .risk-card .risk-card__body .risk-row .risk-row__value {
  padding: 10px 12px;
  font-size: 13px;
  color: #2a2a2a;
  line-height: 1.65;
}
.risk .risk-cards .risk-card .risk-card__body .risk-row .risk-row__value ul {
  list-style: none;
  padding: 0;
}
.risk .risk-cards .risk-card .risk-card__body .risk-row .risk-row__value ul li::before {
  content: "・";
  color: #888888;
}
.risk .risk-cards .risk-card .risk-card__body .risk-row.wi100 {
  width: 100%;
  display: block;
}
.risk .risk-cards .risk-card .risk-row--shaded .risk-row__label,
.risk .risk-cards .risk-card .risk-row--shaded .risk-row__value {
  background-color: var(--base-blightgray);
}

.doctor-section {
  background-color: var(--blue-blight);
  padding: 50px 0;
}
.doctor-section p.doctor-section__label {
  text-align: center;
  font-size: 12px;
  font-family: "Bold";
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--blue-dark);
  margin-bottom: 20px;
}
.doctor-section .doctor-card {
  background-color: var(--base-white);
  border-radius: 12px;
  padding: 32px 24px;
  margin: 0 auto;
  text-align: center;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
}
.doctor-section .doctor-card .doctor-card__avatar {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto 16px;
  background-color: #d0d8e0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.doctor-section .doctor-card .doctor-card__avatar img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.doctor-section .doctor-card p.doctor-card__role {
  font-size: 12px;
  color: #6a7a8a;
  margin-bottom: 6px;
}
.doctor-section .doctor-card p.doctor-card__bio {
  font-size: 13px;
  color: #4a5568;
  line-height: 1.8;
  margin-bottom: 24px;
  text-align: left;
}
.doctor-section .doctor-card h2.doctor-card__name {
  font-size: 22px;
  font-family: "Bold";
  margin-bottom: 14px;
}

.negative {
  background-color: var(--base-blightgray);
  padding: 60px 0 20px;
}
.negative h2 {
  margin-bottom: 30px;
}
.negative .list-box {
  padding: 20px;
  padding-top: 0;
  background-color: var(--base-white);
  border-radius: 10px;
  min-width: 265px;
  max-width: 300px;
  margin-bottom: 20px;
}
.negative .list-box .title-box {
  position: relative;
}
.negative .list-box .title-box p.main {
  font-size: 16px;
  font-family: "Bold";
  padding: 30px 0;
}
.negative .list-box .title-box p.main.one {
  padding: 40px 0;
}
.negative .list-box .title-box img.lady {
  position: absolute;
  top: 40%;
  right: 10px;
  transform: translateY(-50%);
}
.negative .list-box .title-box img.lady01 {
  width: 92px;
}
.negative .list-box .title-box img.lady02 {
  width: 85px;
}
.negative .list-box .title-box img.lady03 {
  width: 132px;
  right: 0;
}
.negative .list-box ul li {
  position: relative;
  list-style: none;
  padding-left: 13px;
  font-size: 13px;
  margin-bottom: 4px;
}
.negative .list-box ul li::before {
  position: absolute;
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 100%;
  background-color: var(--base-gray);
  top: 5px;
  left: 0px;
}
.negative .list-box.right {
  margin-left: auto;
}

.variation {
  padding: 90px 0 80px;
  position: relative;
}
.variation::before {
  position: absolute;
  content: "";
  top: 0px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 195px solid transparent;
  border-left: 195px solid transparent;
  border-top: 60px solid var(--base-blightgray);
  border-bottom: 0;
}
.variation::after {
  position: absolute;
  content: "";
  bottom: 0;
  right: 50%;
  transform: translateX(50%) rotate(180deg);
  width: 100%;
  height: 494px;
  background: url(../img/menu/grade-bg.png);
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: contain;
}
.variation .card-list > * {
  position: relative;
  z-index: 2;
}
.variation h2 {
  color: var(--base-white);
  margin-bottom: 30px;
  font-size: 30px;
}
@media screen and (max-width:320px) {
  .variation h2 {
    font-size: 25px;
  }
}
.variation h2 span {
  font-size: 45px;
  position: relative;
}
@media screen and (max-width:320px) {
  .variation h2 span {
    font-size: 30px;
  }
}
.variation h2 span::before {
  content: "・";
  position: absolute;
  top: -1em;
  left: 50%;
  transform: translateX(-50%);
  color: var(--base-white);
  font-size: 30px;
}
.variation .card-list {
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 350px;
  margin: 0 auto;
  padding: 4px;
}
.variation .card-list .card {
  background: var(--base-white);
  border: 1px solid #d7d7d7;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
}
.variation .card-list .card .card-image {
  position: relative;
  height: 140px;
  background-color: var(--base-blightgray);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.variation .card-list .card .card-image.low-dose {
  background-image: url("../img/menu/pill/pill-var01.png");
}
.variation .card-list .card .card-image.after-pill {
  background-image: url("../img/menu/pill/pill-var02.png");
}
.variation .card-list .card .card-image.menstrual {
  background-image: url("../img/menu/pill/pill-var03.png");
}
.variation .card-list .card .card-image .card-image-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.18) 0%, transparent 60%);
}
.variation .card-list .card .card-image .card-tag {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 12px;
  border: 1px solid var(--base-darkgray);
  background: var(--base-white);
  border-radius: 4px;
  padding: 5px 10px 6px;
}
.variation .card-list .card .card-image .card-tag span {
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}
.variation .card-list .card .card-body {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 24px 20px;
}
.variation .card-list .card .card-body .card-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.variation .card-list .card .card-body .card-header h3.card-title {
  font-size: 22px;
  font-family: "Bold";
}
@media screen and (max-width:320px) {
  .variation .card-list .card .card-body .card-header h3.card-title {
    font-size: 18px;
  }
}
.variation .card-list .card .card-body .card-header .card-price {
  font-size: 17px;
  font-family: "Bold";
  line-height: 28px;
  white-space: nowrap;
  padding-top: 4px;
  text-align: right;
}
@media screen and (max-width:320px) {
  .variation .card-list .card .card-body .card-header .card-price {
    padding-top: 0;
  }
}
.variation .card-list .card .card-body .card-description {
  font-size: 16px;
  font-weight: 400;
}

.section-price {
  position: relative;
  padding: 100px 0 70px;
}
.section-price .price-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
  width: 100%;
}
.section-price .price-header p.header-subtitle {
  margin-bottom: 0;
}
.section-price .price-header .price-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 26px;
  width: 100%;
}
.section-price .price-header .price-content .price-note-card {
  width: 100%;
  border-radius: 8px;
  background: var(--base-white);
}
.section-price .price-header .price-content .price-note-card .price-note-card-body {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 12px 16px;
}
.section-price .price-header .price-content .price-note-card .price-note-card-body p {
  font-size: 13px;
  font-weight: 400;
  line-height: 20px;
}
.section-price .price-header .price-content .price-table-card {
  width: 100%;
  border-radius: 8px;
  border: 1px solid var(--base-white);
  background: var(--base-white);
  overflow: hidden;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
}
.section-price .price-header .price-content .price-table-card .price-table-head {
  display: grid;
  grid-template-columns: 78px 1fr 96px;
  gap: 5px;
  background: var(--blue-dark);
  padding: 10px 12px;
}
.section-price .price-header .price-content .price-table-card .price-table-head div {
  font-size: 12px;
  font-family: "Bold";
  color: var(--base-white);
  line-height: 1.4;
}
.section-price .price-header .price-content .price-table-card .price-table-head div:last-child {
  text-align: right;
}
.section-price .price-header .price-content .price-table-card .price-table-row {
  display: grid;
  grid-template-columns: 78px 1fr 96px;
  gap: 5px;
  background: var(--base-white);
  padding: 10px 12px;
  border-top: 1px solid var(--base-gray);
}
.section-price .price-header .price-content .price-table-card .price-table-row:first-of-type {
  border-top: none;
}
.section-price .price-header .price-content .price-table-card .price-table-row .col-type {
  font-size: 12px;
  font-weight: 400;
  color: var(--base-darkgray);
  line-height: 1.4;
}
.section-price .price-header .price-content .price-table-card .price-table-row .col-medicine {
  font-size: 12px;
  font-family: "Bold";
  color: var(--blue-dark);
  line-height: 1.4;
}
.section-price .price-header .price-content .price-table-card .price-table-row .col-price {
  font-size: 12px;
  font-family: "Bold";
  color: var(--blue-dark);
  line-height: 1.4;
  text-align: right;
}
.section-price .price-header .price-content .price-disclaimer {
  font-size: 12px;
  font-weight: 400;
  color: var(--base-darkgray);
  line-height: 18px;
}
.section-price .action-buttons {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  width: 100%;
}

.related-posts {
  padding: 60px 20px;
}
.related-posts .related-title {
  font-size: 23px;
  font-family: "Bold";
  margin-bottom: 24px;
  text-align: center;
}
.related-posts .article-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.related-posts .article-list .card a {
  display: flex;
  color: var(--base-black);
  border: 1px solid var(--base-gray);
  border-radius: 5px;
}
.related-posts .article-list .card a .card-thumbnail {
  border-radius: 5px 0 0 5px;
}
.related-posts .article-list .card a .card-thumbnail img {
  width: 120px;
  height: 90px;
  -o-object-fit: cover;
     object-fit: cover;
}
.related-posts .article-list .card a .card-body {
  height: 90px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding: 0 10px;
}
.related-posts .article-list .card a .card-body h3 {
  font-size: 13px;
}
.related-posts .article-list .card a .card-body .card-meta {
  font-size: 12px;
  color: var(--base-darkgray);
}

.gradation-title {
  background: var(--accent-gradation);
  padding: 85px 0 25px;
  position: relative;
}
.gradation-title::before {
  position: absolute;
  content: "";
  top: 0px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 195px solid transparent;
  border-left: 195px solid transparent;
  border-top: 60px solid var(--base-blightgray);
  border-bottom: 0;
}
.gradation-title p.title {
  text-align: center;
  font-family: "Bold";
  font-size: 25px;
  color: var(--base-white);
  line-height: 1.2;
  margin-bottom: 12px;
}
.gradation-title p.title span {
  font-size: 35px;
}
.gradation-title p.title:last-child {
  margin-bottom: 0;
}
.gradation-title img.logo {
  width: 300px;
  margin: 0 auto;
}

.section-price-detail {
  background-color: var(--blue-blight);
  padding: 50px 0 70px;
}
.section-price-detail h2 {
  color: var(--blue-dark);
}
.section-price-detail .price-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
  width: 100%;
}
.section-price-detail .treatment-card {
  width: 100%;
  border-radius: 8px;
  border: 2px solid var(--base-lightgray);
  background: var(--base-white);
  padding: 40px 12px;
}
.section-price-detail .treatment-card .treatment-inner {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 25px;
}
.section-price-detail .treatment-card .treatment-inner .treatment-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  width: 100%;
}
.section-price-detail .treatment-card .treatment-inner .treatment-header .treatment-title {
  width: 100%;
  text-align: center;
  font-size: 20px;
  font-family: "Bold";
  line-height: normal;
}
.section-price-detail .treatment-card .treatment-inner .treatment-header .treatment-meta {
  display: inline-flex;
  align-items: center;
  gap: 2px;
}
.section-price-detail .treatment-card .treatment-inner .treatment-header .treatment-meta .treatment-price {
  font-size: 14px;
  font-family: "Medium";
  white-space: nowrap;
}
.section-price-detail .treatment-card .treatment-inner .treatment-header .treatment-meta .duration-badge {
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--blue-main);
  border-radius: 100px;
  background: var(--base-white);
  padding: 2px 12px;
  font-family: "Bold";
}
.section-price-detail .treatment-card .treatment-inner .treatment-header .treatment-meta .duration-badge .prefix, .section-price-detail .treatment-card .treatment-inner .treatment-header .treatment-meta .duration-badge .suffix {
  font-size: 11px;
  color: var(--blue-main);
}
.section-price-detail .treatment-card .treatment-inner .treatment-header .treatment-meta .duration-badge .value {
  font-size: 14px;
  color: var(--blue-main);
}
.section-price-detail .treatment-card .treatment-inner .treatment-header .treatment-meta .duration-badge .sep {
  font-size: 12px;
  color: var(--blue-main);
}
.section-price-detail .content-blocks {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
  width: 100%;
}
.section-price-detail .content-blocks .ingredient-table-wrap {
  width: 100%;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid var(--base-white);
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.1);
}
.section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table {
  width: 100%;
  border-collapse: collapse;
}
.section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table thead tr {
  background-color: var(--blue-dark);
}
.section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table thead th {
  padding: 10px 12px;
  text-align: left;
  font-size: 12px;
  font-family: "Bold";
  color: var(--base-white);
}
.section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table thead th:first-child {
  width: 108px;
}
@media screen and (max-width:320px) {
  .section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table thead th:first-child {
    width: 70px;
  }
}
.section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table thead th:nth-child(2) {
  width: 62px;
}
@media screen and (max-width:320px) {
  .section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table thead th:nth-child(2) {
    width: 70px;
  }
}
.section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table tbody tr {
  background: var(--base-white);
}
.section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table tbody tr + tr {
  border-top: 1px solid var(--base-gray);
}
.section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table tbody td {
  padding: 10px 12px;
  font-size: 12px;
  vertical-align: top;
}
.section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table tbody td:first-child {
  font-family: "Bold";
  color: var(--blue-dark);
  width: 120px;
}
@media screen and (max-width:320px) {
  .section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table tbody td:first-child {
    width: 70px;
  }
}
.section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table tbody td:nth-child(2) {
  font-family: "Medium";
  color: var(--base-darkgray);
  width: 62px;
}
@media screen and (max-width:320px) {
  .section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table tbody td:nth-child(2) {
    width: 70px;
  }
}
.section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table tbody td:last-child {
  font-weight: 400;
  color: var(--base-darkgray);
}
.section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table tbody td div {
  display: block;
}
.section-price-detail .detail-card {
  width: 100%;
  border-radius: 8px;
  border: 1px solid var(--base-gray);
  background: var(--base-white);
  padding: 12px 14px;
}
.section-price-detail .detail-card .detail-list {
  display: flex;
  flex-direction: column;
  gap: 15px;
  width: 100%;
  list-style: none;
}
.section-price-detail .detail-card .detail-list .detail-item {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 5px;
}
.section-price-detail .detail-card .detail-list .detail-item .detail-label {
  font-size: 13px;
  font-family: "Bold";
  color: var(--blue-dark);
  line-height: 22px;
  white-space: nowrap;
  min-width: 91px;
}
.section-price-detail .detail-card .detail-list .detail-item .detail-value {
  font-size: 13px;
  font-weight: 400;
  color: var(--base-darkgray);
  line-height: 18.2px;
}
.section-price-detail .cta-button {
  width: 100%;
  border-radius: 6px;
  border: 1px solid var(--base-black);
  background: var(--base-white);
  padding: 14px 24px;
  font-size: 14px;
  font-family: "Bold";
  color: var(--base-black);
  font-family: "Noto Sans JP", Helvetica, sans-serif;
  cursor: pointer;
  line-height: 20px;
  text-align: center;
}
.section-price-detail .cta-button:hover {
  background: #f5f5f5;
}
.section-price-detail .info-card {
  width: 100%;
  border-radius: 8px;
  border: 1px solid var(--base-lightgray);
  background: var(--base-white);
  padding: 12px 16px;
}
.section-price-detail .info-card .info-card-inner {
  display: flex;
  align-items: flex-start;
  gap: 8px;
}
.section-price-detail .info-card .info-card-inner .info-card-icon {
  flex-shrink: 0;
  margin-top: 2px;
  font-size: 18px;
  line-height: 1;
}
.section-price-detail .info-card .info-card-inner .info-card-title {
  font-size: 13px;
  font-family: "Bold";
  color: var(--base-darkgray);
  line-height: 22px;
}
.section-price-detail .info-card .info-card-inner .info-card-body {
  font-size: 11px;
  font-weight: 400;
  color: var(--base-darkgray);
  line-height: 17px;
}
.section-price-detail .alert-box {
  width: 100%;
  border-radius: 8px;
  background: var(--blueblight);
  padding: 12px 16px;
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 60px;
}
.section-price-detail .alert-box .alert-icon {
  font-size: 16px;
  font-family: "Medium";
  color: var(--base-black);
  flex-shrink: 0;
}
.section-price-detail .alert-box .alert-text {
  font-size: 12px;
  font-weight: 400;
  color: var(--base-black);
  line-height: 18px;
  flex: 1;
}
.section-price-detail .section-detail {
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 100%;
}
.section-price-detail .section-detail .section-detail-title {
  font-size: 13px;
  font-family: "Bold";
  color: var(--blue-dark);
  line-height: 22px;
}
.section-price-detail .section-detail .section-detail-text {
  font-size: 13px;
  font-weight: 400;
  color: var(--base-darkgray);
  line-height: 18.2px;
}

.type {
  background: url(../img/common/hero-titlebg.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  margin-top: 20px;
}
.type .service-section {
  width: 100%;
  display: flex;
  flex-direction: column;
  padding: 16px 16px 0;
}
.type .service-section:last-child {
  padding-bottom: 24px;
}
.type .service-section .section-header {
  display: flex;
  align-items: center;
  width: 100%;
}
.type .service-section .section-header img.character {
  flex-shrink: 0;
  height: auto;
}
.type .service-section .section-header img.character.char-sm {
  width: 92px;
}
.type .service-section .section-header img.character.char-md {
  width: 110px;
}
.type .service-section .section-header img.character.char-lg {
  width: 125px;
}
.type .service-section .section-header img.character.char-xl {
  width: 147px;
  height: 84px;
  -o-object-fit: contain;
     object-fit: contain;
}
.type .service-section .section-header .bubble-wrap {
  flex: 1;
  display: flex;
  align-items: center;
}
.type .service-section .section-header .bubble-wrap.bubble-offset-sm {
  margin-left: -8px;
}
.type .service-section .section-header .bubble-wrap.bubble-offset-md {
  margin-left: -7px;
}
.type .service-section .section-header .bubble-wrap.bubble-offset-lg {
  margin-left: -5px;
}
.type .service-section .section-header .bubble-wrap.bubble-offset-xl {
  margin-left: -15px;
}
.type .service-section .section-header .bubble-wrap .bubble-tail {
  position: relative;
  display: inline-flex;
  align-items: center;
  border-radius: 8px;
  padding: 12px 18px 12px 22px;
  min-height: 56px;
}
.type .service-section .section-header .bubble-wrap .bubble-tail::before {
  content: "";
  position: absolute;
  left: -10px;
  top: 50%;
  transform: translateY(-50%);
  border-width: 8px 10px 8px 0;
  border-style: solid;
  border-color: transparent currentColor transparent transparent;
}
.type .service-section .section-header .bubble-wrap .bubble-tail::after {
  content: "";
  position: absolute;
  left: -8px;
  top: 50%;
  transform: translateY(-50%);
  border-width: 8px 10px 8px 0;
  border-style: solid;
  border-color: transparent var(--base-white) transparent transparent;
}
.type .service-section .section-header .bubble-wrap .bubble-tail .bubble-text {
  font-size: 15px;
  font-family: "Bold";
  line-height: 1.5;
  color: var(--base-black);
  white-space: nowrap;
}
.type .service-section .card {
  width: 100%;
  border-radius: 10px;
  border: 1.5px solid;
  background: var(--base-white);
  margin-top: -2px;
}
.type .service-section .card .card-body {
  display: flex;
  flex-direction: column;
  gap: 15px;
  padding: 20px 19px 17px;
}
.type .service-section .card .card-body .card-title-row {
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 1.5px solid;
  padding: 0 10px 10px;
}
.type .service-section .card .card-body .card-title-row .card-title {
  font-size: 20px;
  font-family: "Bold";
  line-height: 22px;
  letter-spacing: 0;
}
.type .service-section .card .card-body .card-title-row .card-desc {
  text-align: center;
  font-size: 13px;
  font-weight: 400;
  line-height: 22px;
  letter-spacing: 0;
  color: var(--base-black);
  width: 100%;
}
.type .service-section .card .price-box {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  width: 100%;
}
.type .service-section .card .price-box .price-text {
  font-size: 16px;
  font-family: "Bold";
  color: var(--base-black);
  white-space: nowrap;
}
.type .service-section .card .price-box .price-text .unit {
  font-size: 13px;
}
.type .service-section.theme-green .bubble-wrap .bubble-tail {
  background: var(--base-white);
  border: 1.5px solid var(--green-dark);
}
.type .service-section.theme-green .bubble-wrap .bubble-tail::before {
  border-color: transparent #2AC854 transparent transparent;
}
.type .service-section.theme-green .card {
  border-color: var(--green-dark);
}
.type .service-section.theme-green .card-title-row {
  border-color: var(--green-dark);
}
.type .service-section.theme-green .card-title {
  color: var(--green-dark);
}
.type .service-section.theme-green .price-box {
  background: var(--green-blight);
}
.type .service-section.theme-sky .bubble-wrap .bubble-tail {
  background: var(--base-white);
  border: 1.5px solid var(--sky-dark);
}
.type .service-section.theme-sky .bubble-wrap .bubble-tail::before {
  border-color: transparent #1EBED7 transparent transparent;
}
.type .service-section.theme-sky .card {
  border-color: var(--sky-dark);
}
.type .service-section.theme-sky .card-title-row {
  border-color: var(--sky-dark);
}
.type .service-section.theme-sky .card-title {
  color: var(--sky-dark);
}
.type .service-section.theme-sky .price-box {
  background: var(--sky-blight);
}
.type .service-section.theme-blue .bubble-wrap .bubble-tail {
  background: var(--base-white);
  border: 1.5px solid var(--blue-dark);
}
.type .service-section.theme-blue .bubble-wrap .bubble-tail::before {
  border-color: transparent #6068D5 transparent transparent;
}
.type .service-section.theme-blue .card {
  border-color: var(--blue-dark);
}
.type .service-section.theme-blue .card-title-row {
  border-color: var(--blue-dark);
}
.type .service-section.theme-blue .card-title {
  color: var(--blue-dark);
}
.type .service-section.theme-blue .price-box {
  background: var(--blue-blight);
}

.answer-section {
  padding: 120px 0 60px;
  background: url(../img/common/hero-titlebg.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  position: relative;
}
.answer-section::before {
  position: absolute;
  content: "";
  top: 0px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 195px solid transparent;
  border-left: 195px solid transparent;
  border-top: 60px solid var(--base-blightgray);
  border-bottom: 0;
}
.answer-section .section-title {
  margin-bottom: 50px;
}
.answer-section .section-title img {
  width: 300px;
  margin: 0 auto 15px;
}
.answer-section .list {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.answer-section .list .contents {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
}
.answer-section .list .contents img {
  width: 215px;
}
.answer-section .list .contents p {
  font-size: 16px;
  font-family: "Bold";
  line-height: 2.6;
  margin-left: -110px;
}
.answer-section .list .contents p span {
  padding: 10px;
  background-color: var(--base-white);
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
}
.answer-section .list .contents:nth-child(2) {
  flex-direction: row-reverse;
}
.answer-section .list .contents:nth-child(2) p {
  margin-left: auto;
  margin-right: -100px;
  z-index: 2;
}

.other-menu h2 {
  margin-bottom: 30px;
}
.other-menu .btn-box {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.other-menu .btn-box a.menu-btn {
  background: var(--base-white);
  border: 1px solid var(--green-dark);
  position: relative;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 20px;
  transition: 0.4s;
}
.other-menu .btn-box a.menu-btn:hover {
  opacity: 0.8;
  transform: scale(1.04);
}
.other-menu .btn-box a.menu-btn::before {
  position: absolute;
  content: "";
  width: 7px;
  height: 7px;
  border-top: 3px solid var(--green-dark);
  border-right: 3px solid var(--green-dark);
  top: 50%;
  right: 10px;
  transform: translateY(-50%) rotate(45deg);
}
.other-menu .btn-box a.menu-btn img {
  width: 165px;
  border-radius: 7px 0 0 7px;
}
.other-menu .btn-box a.menu-btn .text p.name {
  color: var(--base-black);
  font-family: "Bold";
  font-size: 18px;
  margin-bottom: 10px;
  line-height: 1.2;
}
.other-menu .btn-box a.menu-btn .text p.desc {
  font-size: 12px;
  color: var(--base-darkgray);
}
.other-menu.sky-bg .btn-box a.menu-btn {
  border: 1px solid var(--sky-dark);
}
.other-menu.sky-bg .btn-box a.menu-btn::before {
  border-top: 3px solid var(--sky-dark);
  border-right: 3px solid var(--sky-dark);
}

.two-flow {
  background: url(../img/common/bluegrade-bg.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: contain;
}
.two-flow .heading {
  text-align: center;
  font-family: "Bold";
  color: var(--base-white);
  margin-bottom: 30px;
}
.two-flow .heading .num {
  font-size: 40px;
  line-height: 1;
  letter-spacing: 0.96px;
}
.two-flow .cards {
  display: flex;
  flex-direction: column;
  gap: 25px;
}
.two-flow .cards .card {
  background: var(--base-white);
  border-radius: 12px;
  border: 1px solid;
  padding: 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.1);
}
.two-flow .cards .card.card--blue {
  border-color: var(--blue-dark);
}
.two-flow .cards .card.card--teal {
  border-color: var(--sky-dark);
}
.two-flow .cards .card .card-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
}
.two-flow .cards .card .card-header .card-title {
  font-size: 18px;
  font-family: "Bold";
  text-align: center;
}
.two-flow .cards .card .card-header .card-title.card-title--blue {
  color: #6068d5;
}
.two-flow .cards .card .card-header .card-title.card-title--teal {
  color: #189fb4;
}
.two-flow .cards .card .card-header .badge {
  display: inline-block;
  background: #7980e9;
  color: #fff;
  font-size: 12px;
  font-family: "Bold";
  border-radius: 100px;
  padding: 3px 10px;
  line-height: normal;
  text-align: center;
}
.two-flow .cards .card ol.steps {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.two-flow .cards .card ol.steps li.step {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.two-flow .cards .card ol.steps li.step .step-num {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 12px;
  font-family: "Bold";
}
.two-flow .cards .card ol.steps li.step .step-num.step-num--blue {
  background: var(--blue-dark);
}
.two-flow .cards .card ol.steps li.step .step-num.step-num--teal {
  background: var(--sky-dark);
}
.two-flow .cards .card ol.steps li.step .step-body {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.two-flow .cards .card ol.steps li.step .step-body .step-title {
  font-size: 15px;
  font-family: "Bold";
}
.two-flow .cards .card ol.steps li.step .step-body .step-desc {
  font-size: 12px;
  font-weight: 400;
  line-height: 20px;
}
.two-flow .footnote {
  margin-top: 35px;
  font-size: 12px;
  font-weight: 400;
  line-height: 20px;
  color: var(--base-darkgray);
}

.flow-section .flow-contents {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-bottom: 30px;
}
.flow-section .flow-contents .flow-box {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 12px;
  background: var(--base-white);
  border-radius: 8px;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
  padding: 18px 12px;
}
.flow-section .flow-contents .flow-box .num {
  width: 24px;
  height: 24px;
  background: var(--blue-dark);
  border-radius: 100%;
  text-align: center;
  color: var(--base-white);
  font-size: 11px;
  font-family: "Bold";
  display: flex;
  align-items: center;
  justify-content: center;
}
.flow-section .flow-contents .flow-box .content p.title {
  font-size: 16px;
  font-family: "Bold";
  margin-bottom: 8px;
}
.flow-section .flow-contents.online .flow-box .num {
  background: var(--sky-dark);
}
.flow-section .belong {
  background-color: var(--blue-blight);
  border-radius: 8px;
  padding: 16px;
}
.flow-section .belong p span {
  font-size: 12px;
}
.flow-section .belong p + p {
  margin-top: 10px;
}
.flow-section .belong.online {
  background-color: var(--sky-light);
}

.pill .hero {
  background: url(../img/common/hero-titlebg.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  margin-top: 20px;
}
.pill .hero .hero-inner {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
.pill .hero .hero-inner .hero-subtitle {
  text-align: center;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0;
}
.pill .hero .hero-inner .hero-subtitle .online {
  font-family: "Bold";
  color: var(--sky-dark);
}
.pill .hero .hero-inner .hero-subtitle .inperson {
  font-family: "Bold";
  color: var(--blue-dark);
}
.pill .hero .hero-inner .hero-subtitle .mid {
  font-family: "Medium";
}
.pill .hero .hero-inner .hero-subtitle .logo-img {
  width: 100%;
  max-width: 314px;
  height: 28px;
  -o-object-fit: contain;
     object-fit: contain;
}
.pill .hero .feature-list {
  margin-top: 26px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.pill .hero .feature-list .feature-card {
  width: 100%;
  display: grid;
  grid-template-columns: 119px 1fr;
  min-height: 55px;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.pill .hero .feature-list .feature-card .feature-label {
  display: flex;
  align-items: center;
  padding: 0 11px;
  padding-right: 0;
  font-size: 14px;
  font-family: "Medium";
  line-height: 1.14;
  color: #fff;
}
.pill .hero .feature-list .feature-card .feature-label.bg-blue {
  background: var(--blue-main);
}
.pill .hero .feature-list .feature-card .feature-label.bg-sky {
  background: var(--sky-dark);
}
.pill .hero .feature-list .feature-card .feature-value {
  display: flex;
  align-items: center;
  padding: 0 11px;
  background: var(--base-white);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.07;
}
.pill .value-section {
  background: url(../img/common/point-grade.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: contain;
  padding: 90px 0 55px;
}
.pill .value-section .value-inner {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 70px;
}
.pill .value-section .value-inner .reasons-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 50px;
}
.pill .value-section .value-inner .reasons-block .reasons-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
}
.pill .value-section .value-inner .reasons-block .reasons-header .section-title-group {
  max-width: 302px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 9px;
}
.pill .value-section .value-inner .reasons-block .reasons-header .section-title-group .section-logo {
  height: 26px;
  width: 100%;
  max-width: 302px;
}
.pill .value-section .value-inner .reasons-block .reasons-header .section-title-group .section-heading {
  font-size: 23px;
  font-family: "Bold";
  line-height: 1.83;
  text-align: center;
}
.pill .value-section .value-inner .reasons-block .reasons-header .reason-cards {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.pill .value-section .value-inner .reasons-block .reasons-header .reason-cards .reason-card {
  background: var(--base-white);
  border-radius: 12px;
  padding: 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.pill .value-section .value-inner .reasons-block .reasons-header .reason-cards .reason-card .reason-card-top {
  display: flex;
  gap: 10px;
  align-items: flex-start;
}
.pill .value-section .value-inner .reasons-block .reasons-header .reason-cards .reason-card .reason-card-top.center {
  align-items: center;
}
.pill .value-section .value-inner .reasons-block .reasons-header .reason-cards .reason-card .reason-card-top .reason-number {
  font-size: 24px;
  font-family: "Bold";
  color: var(--base-darkgray);
  flex-shrink: 0;
}
.pill .value-section .value-inner .reasons-block .reasons-header .reason-cards .reason-card .reason-card-top .reason-title {
  font-size: 16px;
  font-family: "Bold";
  line-height: 1.44;
  flex: 1;
}
.pill .value-section .value-inner .reasons-block .reasons-header .reason-cards .reason-card .reason-desc {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.69;
}
.pill .value-section .value-inner .reasons-block .action-buttons {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}
.pill .value-section .value-inner .privacy-card {
  width: 100%;
  background: var(--base-white);
  border-radius: 8px;
  padding: 38px 20px 40px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.pill .value-section .value-inner .privacy-card .privacy-heading {
  font-size: 20px;
  font-family: "Bold";
  line-height: 1.6;
  text-align: center;
  margin-bottom: 25px;
}
.pill .value-section .value-inner .privacy-card .privacy-items {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.pill .value-section .value-inner .privacy-card .privacy-items .privacy-item {
  background: var(--base-blightgray);
  border-radius: 12px;
  padding: 20px 16px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
}
.pill .value-section .value-inner .privacy-card .privacy-items .privacy-item .privacy-icon {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  color: var(--base-black);
}
.pill .value-section .value-inner .privacy-card .privacy-items .privacy-item .privacy-text-title {
  font-size: 16px;
  font-family: "Bold";
  color: var(--base-black);
  margin-bottom: 10px;
}
.pill .value-section .value-inner .privacy-card .privacy-items .privacy-item .privacy-text-desc {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.54;
  color: var(--base-darkgray);
}
.pill .section-subscription {
  padding: 80px 0 70px;
  width: 100%;
  position: relative;
}
.pill .section-subscription::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 494px;
  background: url(../img/menu/sky-bg.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 30px;
  right: 0;
  transform: rotate(180deg);
}
.pill .section-subscription .inner > * {
  position: relative;
  z-index: 2;
}
.pill .section-subscription .inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.pill .section-subscription .inner h2 {
  margin-bottom: 28px;
  font-family: "Bold";
}
.pill .section-subscription .inner .cards-wrap {
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.pill .section-subscription .inner .cards-wrap .card {
  width: 100%;
  border-radius: 8px;
  border: 2px solid var(--base-lightgray);
  background: var(--base-white);
}
.pill .section-subscription .inner .cards-wrap .card .card-body {
  padding: 40px 12px 20px;
}
.pill .section-subscription .inner .cards-wrap .card .card-body.card-body-delivery {
  padding: 40px 12px 25px;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .plan-card-inner {
  max-width: 341px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 25px;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .plan-card-inner h3 {
  width: 100%;
  text-align: center;
  font-size: 20px;
  font-family: "Bold";
  line-height: 1.4;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .plan-card-inner .plan-header-info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 18px;
  width: 100%;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .plan-card-inner .plan-header-info p {
  width: 100%;
  text-align: center;
  font-family: "Medium";
}
.pill .section-subscription .inner .cards-wrap .card .card-body .plan-card-inner .plan-header-info .badge-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  width: 100%;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .plan-card-inner .plan-header-info .badge-wrap .badge {
  display: inline-block;
  border: 1px solid var(--green-dark);
  border-radius: 100px;
  padding: 6px 12px;
  font-size: 11px;
  font-family: "Bold";
  color: var(--green-dark);
  background: var(--base-white);
  line-height: 1;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .plan-card-inner .plan-items-wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 18px;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .plan-card-inner .plan-items-wrap .plan-items-list {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 13px;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .plan-card-inner .plan-items-wrap .plan-items-list .plan-item {
  width: 100%;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .plan-card-inner .plan-items-wrap .plan-items-list .plan-item .plan-item-header {
  display: flex;
  align-items: center;
  height: 33px;
  border-radius: 5px 5px 0 0;
  background: var(--green-dark);
  padding: 6px 0 5px 14px;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .plan-card-inner .plan-items-wrap .plan-items-list .plan-item .plan-item-header h4 {
  font-size: 13px;
  font-family: "Bold";
  color: var(--base-white);
  line-height: 13px;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .plan-card-inner .plan-items-wrap .plan-items-list .plan-item .plan-item-body {
  display: flex;
  align-items: center;
  min-height: 73px;
  border-radius: 0 0 5px 5px;
  border: 1px solid var(--green-dark);
  background: var(--base-white);
  padding: 13px 16px 12px 17px;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .plan-card-inner .plan-items-wrap .plan-items-list .plan-item .plan-item-body p {
  font-size: 16px;
  font-family: "Medium";
  line-height: 24px;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .plan-card-inner .plan-items-wrap .plan-note {
  width: 100%;
  text-align: center;
  font-size: 12px;
  font-weight: 400;
  color: var(--base-darkgray);
  line-height: 20px;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .delivery-card-inner {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 18px;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .delivery-card-inner h3 {
  width: 100%;
  text-align: center;
  font-size: 20px;
  font-family: "Bold";
}
.pill .section-subscription .inner .cards-wrap .card .card-body .delivery-card-inner .delivery-plans-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
  width: 100%;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .delivery-card-inner .delivery-plans-wrap > p {
  text-align: center;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .delivery-card-inner .delivery-plans-wrap .delivery-items-wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .delivery-card-inner .delivery-plans-wrap .delivery-items-wrap .delivery-items-list {
  display: flex;
  flex-direction: column;
  gap: 15px;
  width: 100%;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .delivery-card-inner .delivery-plans-wrap .delivery-items-wrap .delivery-items-list .delivery-item-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 33px;
  border-radius: 5px 5px 0 0;
  background: var(--sky-dark);
  padding: 6px 14px 5px;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .delivery-card-inner .delivery-plans-wrap .delivery-items-wrap .delivery-items-list .delivery-item-header h4, .pill .section-subscription .inner .cards-wrap .card .card-body .delivery-card-inner .delivery-plans-wrap .delivery-items-wrap .delivery-items-list .delivery-item-header span {
  font-size: 13px;
  font-family: "Bold";
  color: var(--base-white);
  line-height: 13px;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .delivery-card-inner .delivery-plans-wrap .delivery-items-wrap .delivery-items-list .delivery-item-body {
  border-radius: 0 0 5px 5px;
  border: 1px solid #1dbed6;
  background: var(--base-white);
  width: 100%;
  padding: 15px 10px;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .delivery-card-inner .delivery-plans-wrap .delivery-items-wrap .delivery-items-list .delivery-item-body.tall {
  min-height: 78px;
  padding: 20px 10px;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .delivery-card-inner .delivery-plans-wrap .delivery-items-wrap .delivery-items-list .delivery-item-body p {
  text-align: center;
  margin-bottom: 10px;
}
.pill .section-subscription .inner .cards-wrap .card .card-body .delivery-card-inner .delivery-plans-wrap .delivery-items-wrap .delivery-footnotes {
  font-size: 12px;
  font-weight: 400;
  color: var(--base-darkgray);
  line-height: 20px;
}

.std .flow {
  background-color: var(--blue-blight);
}
.std .flow h2 {
  color: var(--blue-dark);
}
.std .flow .steps .step-item .step-label {
  background-color: var(--blue-dark);
}
.std .flow p.center {
  text-align: center;
  color: var(--blue-dark);
  font-family: "Bold";
  margin-top: 30px;
}
.std .flow .actions {
  margin-top: 30px;
}
.std .variation h2 {
  font-size: 26px;
  line-height: 1.65;
}
.std .variation h2 span {
  font-size: 35px;
}
@media screen and (max-width:320px) {
  .std .variation h2 {
    font-size: 20px;
  }
}
.std .variation .card-list .card .card-image.std01 {
  background-image: url("../img/menu/std/std-var01.png");
}
.std .variation .card-list .card .card-image.std02 {
  background-image: url("../img/menu/std/std-var02.png");
}
.std .variation .card-list .card .card-image.std03 {
  background-image: url("../img/menu/std/std-var03.png");
}
.std .variation .card-list .card .card-image.std04 {
  background-image: url("../img/menu/std/std-var04.png");
}
.std .section-price.blue-bg {
  padding-bottom: 50px;
}
.std .section-price.blue-bg .price-header {
  margin-bottom: 0;
}
.std .section-price.green-bg .price-header .price-content .price-table-card .price-table-head {
  background-color: var(--green-dark);
}
.std .section-price.green-bg .price-header .price-content .price-table-card .price-table-row .col-medicine {
  color: var(--green-dark);
}
.std .section-price.green-bg .price-header .price-content .price-table-card .price-table-row .col-price {
  color: var(--green-dark);
}
.std .value-section {
  background: url(../img/common/point-grade.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: contain;
  padding: 90px 0 55px;
}
.std .value-section .value-inner {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 70px;
  width: 100%;
}
.std .value-section .value-inner .reasons-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 50px;
  width: 100%;
}
.std .value-section .value-inner .reasons-block .reasons-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
  width: 100%;
}
.std .value-section .value-inner .reasons-block .reasons-header .section-heading {
  font-size: 23px;
  font-family: "Bold";
  line-height: 1.83;
  text-align: center;
}
.std .value-section .value-inner .reasons-block .reasons-header .reason-cards {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.std .value-section .value-inner .reasons-block .reasons-header .reason-cards .reason-card {
  background: var(--base-white);
  border-radius: 12px;
  padding: 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.std .value-section .value-inner .reasons-block .reasons-header .reason-cards .reason-card ul li {
  color: var(--base-darkgray);
  font-size: 15px;
  list-style: none;
  position: relative;
  padding-left: 15px;
  margin-bottom: 5px;
}
.std .value-section .value-inner .reasons-block .reasons-header .reason-cards .reason-card ul li:last-child {
  margin-bottom: 0;
}
.std .value-section .value-inner .reasons-block .reasons-header .reason-cards .reason-card ul li::before {
  position: absolute;
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 100%;
  background-color: var(--base-darkgray);
  top: 50%;
  left: 0px;
  transform: translateY(-50%);
}
.std .value-section .value-inner .privacy-card {
  width: 100%;
  background: var(--base-white);
  border-radius: 8px;
  padding: 38px 20px 40px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.std .value-section .value-inner .privacy-card .privacy-heading {
  font-size: 20px;
  font-family: "Bold";
  line-height: 1.6;
  text-align: center;
  margin-bottom: 25px;
}
.std .value-section .value-inner .privacy-card .privacy-items {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.std .value-section .value-inner .privacy-card .privacy-items .privacy-item {
  background: var(--base-blightgray);
  border-radius: 12px;
  padding: 20px 16px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
}
.std .value-section .value-inner .privacy-card .privacy-items .privacy-item .privacy-icon {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  color: var(--base-black);
}
.std .value-section .value-inner .privacy-card .privacy-items .privacy-item .privacy-text-title {
  font-size: 16px;
  font-family: "Bold";
  color: var(--base-black);
  margin-bottom: 10px;
}
.std .value-section .value-inner .privacy-card .privacy-items .privacy-item .privacy-text-desc {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.54;
  color: #666;
}
.std .value-section .cards-container {
  display: flex;
  flex-direction: column;
  gap: 22px;
  width: 100%;
}
.std .value-section .cards-container .guide-card {
  width: 100%;
  background: var(--base-white);
  border-radius: 12px;
  border: 1px solid;
  overflow: hidden;
}
.std .value-section .cards-container .guide-card .card-header {
  padding: 24px 20px 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  position: relative;
  background-size: cover;
  background-position: center;
}
.std .value-section .cards-container .guide-card .card-header::before {
  content: "";
  position: absolute;
  inset: 0;
  background: inherit;
  opacity: 0.6;
}
.std .value-section .cards-container .guide-card .card-header > * {
  position: relative;
}
.std .value-section .cards-container .guide-card .card-header .card-title-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}
.std .value-section .cards-container .guide-card .card-header .card-title-row h3 {
  font-size: 20px;
  font-family: "Bold";
  color: var(--base-white);
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.std .value-section .cards-container .guide-card .card-header .card-title-row .badge {
  display: inline-flex;
  align-items: center;
  padding: 3px 8px;
  border-radius: 100px;
  font-size: 12px;
  font-family: "Medium";
  color: var(--base-white);
}
.std .value-section .cards-container .guide-card .card-header .card-title-row .badge.green {
  background: var(--green-main);
}
.std .value-section .cards-container .guide-card .card-header .card-title-row .badge.sky {
  background: var(--sky-dark);
}
.std .value-section .cards-container .guide-card .card-header .card-title-row .badge.blue {
  background: var(--blue-main);
}
.std .value-section .cards-container .guide-card .card-header .card-description {
  font-family: "Medium";
  line-height: 1.4;
  color: var(--base-white);
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.std .value-section .cards-container .guide-card .card-header .card-description.sm {
  font-size: 14px;
}
.std .value-section .cards-container .guide-card .card-header .card-description.xs {
  font-size: 13px;
}
.std .value-section .cards-container .guide-card .card-divider {
  height: 2px;
  width: 100%;
}
.std .value-section .cards-container .guide-card .card-body {
  background: var(--base-white);
  padding: 20px 20px 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.std .value-section .cards-container .guide-card .card-body .step-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.std .value-section .cards-container .guide-card .card-body .step-row .step-number {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.std .value-section .cards-container .guide-card .card-body .step-row .step-number span {
  font-size: 11px;
  font-family: "Bold";
  color: var(--base-white);
}
.std .value-section .cards-container .guide-card .card-body .step-row .step-content {
  flex: 1;
}
.std .value-section .cards-container .guide-card .card-body .step-row .step-content h4 {
  font-size: 15px;
  font-family: "Bold";
  line-height: 1.4;
  margin-bottom: 2px;
}
.std .value-section .cards-container .guide-card .card-body .step-row .step-content p {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--base-darkgray);
}
.std .value-section .cards-container .guide-card .card-body .card-note {
  font-size: 11px;
  font-weight: 400;
  line-height: 1.4;
  color: var(--base-darkgray);
}
.std .value-section .cards-container .guide-card.green {
  border-color: var(--green-main);
}
.std .value-section .cards-container .guide-card.green .card-header {
  background-color: rgba(18, 114, 44, 0.8);
  background-blend-mode: multiply;
  background-image: url("../img/info/card-header_chat.png");
}
.std .value-section .cards-container .guide-card.green .card-divider {
  background: var(--green-main);
}
.std .value-section .cards-container .guide-card.green .step-number {
  background: var(--green-dark);
}
.std .value-section .cards-container .guide-card.sky {
  border-color: var(--sky-main);
}
.std .value-section .cards-container .guide-card.sky .card-header {
  background-color: rgba(25, 159, 180, 0.8);
  background-blend-mode: multiply;
  background-image: url("../img/info/card-header_online.png");
}
.std .value-section .cards-container .guide-card.sky .card-divider {
  background: var(--sky-main);
}
.std .value-section .cards-container .guide-card.sky .step-number {
  background: var(--sky-dark);
}
.std .value-section .cards-container .guide-card.blue {
  border-color: var(--blue-main);
}
.std .value-section .cards-container .guide-card.blue .card-header {
  background-color: rgba(96, 104, 213, 0.8);
  background-blend-mode: multiply;
  background-image: url("../img/info/card-header_clinic.png");
}
.std .value-section .cards-container .guide-card.blue .card-divider {
  background: var(--blue-main);
}
.std .value-section .cards-container .guide-card.blue .step-number {
  background: var(--blue-dark);
}
.std .value-section .cards-container .info-box {
  width: 100%;
  background: var(--base-white);
  border-radius: 8px;
  padding: 12px 16px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.std .value-section .cards-container .info-box svg {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  color: var(--base-black);
}
.std .value-section .cards-container .info-box span {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--base-black);
}
.std .method-section {
  background: url(../img/common/hero-titlebg.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  margin-top: 20px;
}
.std .method-section .method-heading {
  text-align: center;
  margin-bottom: 30px;
}
.std .method-section .method-heading .text-default {
  color: var(--base-black);
}
.std .method-section .method-heading .text-sky {
  color: var(--sky-moredark);
}
.std .method-section .method-heading .text-blue {
  color: var(--blue-dark);
}
.std .method-section .method-cards-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-bottom: 20px;
}
.std .method-section .method-cards-row .method-card {
  width: 147px;
  height: 147px;
  border-radius: 50%;
  background: var(--base-white);
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
}
@media screen and (max-width:320px) {
  .std .method-section .method-cards-row .method-card {
    height: 121px;
  }
}
.std .method-section .method-cards-row .method-card .method-card-icon img.ugai {
  width: 85px;
}
.std .method-section .method-cards-row .method-card .method-card-icon img.nyo {
  width: 39px;
}
.std .method-section .method-cards-row .method-card .method-card-label {
  font-size: 16px;
  font-family: "Bold";
  line-height: 1.4;
  text-align: center;
  color: var(--blue-dark);
}
.std .method-section .method-cards-row .method-card .method-card-label.nyo {
  color: var(--sky-moredark);
}
.std .method-section .method-cards-row .method-card .method-plus {
  font-size: 25px;
  font-family: "Bold";
  color: var(--base-black);
}
.std .method-section .overview-table {
  width: 100%;
  border-radius: 8px;
  background: var(--base-white);
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}
.std .method-section .overview-table .overview-row {
  display: flex;
  min-height: 55px;
}
.std .method-section .overview-table .overview-row .overview-row-label {
  width: 119px;
  display: flex;
  align-items: center;
  padding: 0 11px;
  font-size: 14px;
  font-family: "Medium";
  line-height: 1.14;
  letter-spacing: 0;
  color: var(--base-white);
  flex-shrink: 0;
}
.std .method-section .overview-table .overview-row .overview-row-label.bg-bluemain {
  background-color: var(--blue-main);
}
.std .method-section .overview-table .overview-row .overview-row-label.bg-skydark {
  background-color: var(--sky-dark);
}
.std .method-section .overview-table .overview-row .overview-row-value {
  flex: 1;
  display: flex;
  align-items: center;
  padding: 12px 11px;
  font-size: 15px;
  font-weight: 400;
  color: var(--base-black);
}
.std .method-section .overview-table .overview-row + .overview-row {
  border-top: 1px solid #e5e5e5;
}
.std .method-section .overview-note {
  margin-top: 16px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--base-darkgray);
}
.std .infections-section {
  background-color: var(--green-blight);
  padding: 60px 0;
  margin-bottom: 50px;
}
.std .infections-section h2.infections-heading {
  font-size: 23px;
  color: var(--green-dark);
  text-align: center;
  margin-bottom: 30px;
}
@media screen and (max-width:320px) {
  .std .infections-section h2.infections-heading {
    font-size: 20px;
  }
}
.std .infections-section .infections-list {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.std .infections-section .infections-list .infection-article {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.std .infections-section .infections-list .infection-article .infection-header {
  display: flex;
  flex-direction: column;
  gap: 3px;
  border-bottom: 1px solid #2ac854;
  padding-bottom: 10px;
}
.std .infections-section .infections-list .infection-article .infection-header .infection-name {
  font-size: 18px;
  font-family: "Bold";
  line-height: 1.22;
}
.std .infections-section .infections-list .infection-article .infection-header .infection-method {
  font-size: 12px;
  font-family: "Medium";
  color: var(--base-darkgray);
}
.std .infections-section .infections-list .infection-article .infection-sections {
  display: flex;
  flex-direction: column;
  gap: 11px;
}
.std .infections-section .infections-list .infection-article .infection-sections .info-card {
  background: var(--base-white);
  border-radius: 8px;
  padding: 10px 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.std .infections-section .infections-list .infection-article .infection-sections .info-card .info-card-title {
  font-size: 16px;
  font-family: "Bold";
  line-height: 1.13;
}
@media screen and (max-width:320px) {
  .std .infections-section .infections-list .infection-article .infection-sections .info-card .info-card-title {
    font-size: 14px;
  }
}
.std .infections-section .infections-list .infection-article .infection-sections .info-card .info-card-rows {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.std .infections-section .infections-list .infection-article .infection-sections .info-card .info-card-rows.gap-none {
  gap: 0;
}
.std .infections-section .infections-list .infection-article .infection-sections .info-card .info-card-rows .info-row {
  display: flex;
  gap: 15px;
  align-items: flex-start;
}
.std .infections-section .infections-list .infection-article .infection-sections .info-card .info-card-rows .info-row .info-row-label {
  min-width: 65px;
  font-size: 13px;
  font-family: "Bold";
  line-height: 1.69;
  color: var(--green-dark);
  flex-shrink: 0;
}
.std .infections-section .infections-list .infection-article .infection-sections .info-card .info-card-rows .info-row .info-row-content {
  flex: 1;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.69;
  color: var(--base-darkgray);
}
.std .infections-section .infections-list .infection-article .infection-sections .info-card .info-card-rows .info-row .info-row-content-full {
  width: 100%;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.69;
  color: var(--base-darkgray);
}
.std .infections-section .action-buttons {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 40px;
}

.test-kit {
  @import url("https://fonts.googleapis.com/css?family=Noto+Serif+JP:300,900,600,500,400,700|Noto+Sans:500,400|Noto+Sans+JP:500,900");
  margin-top: 90px;
}
.test-kit .hero-section {
  background: url(../img/menu/test-kit/hero-bg.webp);
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 20px 0 50px;
}
.test-kit .hero-section .hero-content {
  position: relative;
  padding: 0 20px;
}
.test-kit .hero-section .hero-content .clinic-name img {
  height: auto;
  width: 55%;
}
.test-kit .hero-section .hero-content .hero-title {
  font-family: "Noto Serif JP", Helvetica;
  font-family: "Bold";
  color: #3b413d;
  text-shadow: 0px 4px 14px rgba(102, 168, 255, 0.25);
  text-align: left;
  font-size: 40px;
  margin-top: 25px;
}
.test-kit .hero-section .hero-content .hero-title .mini {
  font-size: 30px;
}
.test-kit .hero-section .hero-content .hero-main-text {
  font-family: "Noto Serif JP", Helvetica;
  font-family: "Bold";
  color: #E2789D;
  line-height: 1.2;
  font-size: 50px;
}
.test-kit .hero-section .hero-content .hero-subtitle {
  font-family: "Noto Serif JP", Helvetica;
  font-family: "Bold";
  font-size: 35px;
}
.test-kit .hero-section .hero-content .hero-subtitle.blue {
  color: #00a4af;
  margin-top: 25px;
  display: block;
  font-size: 40px;
}
.test-kit .hero-section .hero-content .hero-subtitle .dots {
  background-image: radial-gradient(circle at center, #00a4af 20%, transparent 20%);
  background-position: top right;
  background-repeat: repeat-x;
  background-size: 1em 0.3em;
  padding-top: 0.2em;
}
.test-kit .hero-section .hero-content .hero-subtitle .mini {
  font-size: 25px;
}
.test-kit .hero-section .hero-content .hero-flow {
  font-weight: 600;
  font-size: 20px;
  margin-top: 25px;
}
.test-kit .hero-section .hero-content .hero-complete {
  font-family: "Noto Serif JP", Helvetica;
  font-size: 45px;
  font-family: "Bold";
  color: #00a4af;
  line-height: 1;
}
.test-kit .hero-section .hero-content .badge-container {
  display: flex;
  justify-content: space-around;
  margin: 25px auto 25px;
  padding: 0;
}
.test-kit .hero-section .hero-content .badge-container .badge {
  text-align: center;
  background: url(../img/menu/test-kit/point-bg.webp);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  padding-top: 27px;
  width: 112px;
  height: 112px;
}
.test-kit .hero-section .hero-content .badge-container .badge-title {
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 900;
  color: #fcffb0;
  line-height: 1.2;
  font-size: 9.5px;
}
.test-kit .hero-section .hero-content .badge-container .badge-main {
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 900;
  color: #ffffff;
  line-height: 1.3;
  margin-top: 5px;
  font-size: 16px;
}
.test-kit .hero-section .hero-content .badge-container .badge-main.mini {
  line-height: 1.5;
  font-size: 13px;
  margin-top: 0;
}
.test-kit .hero-section .hero-content .price-card {
  background: #ffffff;
  padding: 0;
  box-shadow: 0 4px 14px rgba(103, 169, 255, 0.25);
  border: 2px solid transparent;
  background-image: linear-gradient(white, white), linear-gradient(90deg, #efa2bd 0%, #e07299 100%);
  background-origin: border-box;
  background-clip: padding-box, border-box;
  margin: 35px auto;
  border-radius: 10px;
}
.test-kit .hero-section .hero-content .price-card .price-header {
  background: linear-gradient(90deg, #efa2bd 0%, #e07299 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 0;
  border-radius: 8px 8px 0 0;
}
.test-kit .hero-section .hero-content .price-card .price-header .price-header-text {
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 900;
  color: #ffffff;
  font-size: 20px;
}
.test-kit .hero-section .hero-content .price-card .price-highlight {
  color: #fcffb0;
}
.test-kit .hero-section .hero-content .price-card .price-content {
  padding: 0;
  text-align: center;
}
.test-kit .hero-section .hero-content .price-card .price-label {
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 900;
  color: #3b413d;
  display: inline-block;
  font-size: 16px;
}
.test-kit .hero-section .hero-content .price-card .price-amount {
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 600;
  color: #ec115c;
  display: inline-block;
  font-size: 45px;
}
.test-kit .hero-section .hero-content .price-card .price-yen {
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 900;
  color: #ee3455;
  font-size: 20px;
}
.test-kit .hero-section .hero-content .price-card .price-tax {
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 900;
  color: #ee3455;
  font-size: 13px;
}
.test-kit .hero-section .hero-content a {
  text-decoration: none;
  text-align: center;
}
.test-kit .hero-section .hero-content .cta-button {
  background: linear-gradient(to bottom, #E5005C 0%, #FF4957 100%);
  border: none;
  border-radius: 64px;
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 900;
  color: #ffffff;
  cursor: pointer;
  margin: 0 auto 30px;
  display: block;
  box-shadow: 0 4px 14px rgba(103, 169, 255, 0.25);
  font-size: 25px;
  padding: 20px 0;
}
.test-kit .hero-section .hero-content .cta-button:hover {
  opacity: 0.9;
}
.test-kit .hero-section p.center {
  text-align: center;
  color: #eb0c6f;
  font-size: 23px;
}
.test-kit .section-header {
  text-align: center;
  padding: 20px 0 30px;
  background: linear-gradient(to right, rgb(255, 231, 237) 0%, rgb(249, 235, 247) 50%, rgb(233, 243, 255) 100%);
}
.test-kit .section-header .section-title-en {
  font-family: "Noto Serif JP", Helvetica;
  color: #00a4af;
  font-family: "Medium";
  font-size: 32px;
}
.test-kit .section-header .section-title-ja {
  font-family: "Noto Serif JP", Helvetica;
  color: #3b413d;
  font-family: "Medium";
  font-size: 20px;
  margin-top: 0;
}
.test-kit .products-section {
  background-color: #fcfeff;
  padding: 0;
}
.test-kit .products-section .product-card {
  display: block;
  margin: 50px auto;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  border-radius: 20px;
  border: 4px solid #e07299;
  width: 95%;
}
.test-kit .products-section .product-card .product-header {
  background: linear-gradient(to right, #EFA1BD, #E2739A);
  padding: 20px 0 30px;
  border-radius: 15px 15px 0 0;
}
.test-kit .products-section .product-card .product-header .product-title {
  color: white;
  text-align: center;
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 600;
  margin-bottom: 10px;
  font-size: 30px;
}
.test-kit .products-section .product-card .product-header p {
  margin: 0 auto;
  text-align: center;
}
.test-kit .products-section .product-card .product-header p .product-name {
  background: #ffffff;
  border-radius: 58px;
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 600;
  color: #e4739b;
  font-size: 18px;
  padding: 5px 20px;
}
.test-kit .products-section .product-card .product-body {
  background: #ffffff;
  border-radius: 20px;
  padding: 20px;
}
.test-kit .products-section .product-card .product-body .product-image-container {
  text-align: center;
  margin: 0 auto;
  position: relative;
}
.test-kit .products-section .product-card .product-body .product-image-container .gender-badges {
  display: flex;
  position: absolute;
  justify-content: center;
  gap: 0px;
  bottom: 50px;
  left: 20px;
}
.test-kit .products-section .product-card .product-body .product-image-container .gender-badges .gender-badge {
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Noto Serif JP", Helvetica;
  font-family: "Bold";
  color: #ffffff;
  font-size: 14px;
  width: 60px;
  height: 60px;
  border: 3px solid #ffffff;
}
.test-kit .products-section .product-card .product-body .product-image-container .gender-badges .gender-badge.gender-male {
  background: #4aa0ff;
}
.test-kit .products-section .product-card .product-body .product-image-container .gender-badges .gender-badge.gender-female {
  background: #ff76a7;
  margin-left: -10px;
}
.test-kit .products-section .product-card .product-body .product-image-container .product-image {
  height: auto;
  max-width: 160px;
  margin: 0 auto;
}
.test-kit .products-section .product-card .product-body .product-image-container.double img.product-image {
  max-width: 205px;
}
.test-kit .products-section .product-card .product-body .product-image-container.double .gender-badges {
  bottom: 30px;
}
.test-kit .products-section .product-card .product-body .product-description {
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 600;
  color: #000000;
  text-align: center;
  font-size: 12px;
}
.test-kit .products-section .product-card .product-body .product-price-section {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 10px;
  flex-wrap: wrap;
}
.test-kit .products-section .product-card .product-body .product-price-section .price-badge {
  background: #696969;
  border-radius: 8px;
  padding: 5px 20px;
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 600;
  font-size: 32px;
  color: #ffffff;
  font-size: 16px;
  padding: 3px 10px;
}
.test-kit .products-section .product-card .product-body .product-price-section .product-price {
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 600;
  font-size: 40px;
  color: #ea0c5b;
  margin-left: 10px;
}
.test-kit .products-section .product-card .product-body .product-price-section .product-price-yen {
  font-size: 26px;
}
.test-kit .products-section .product-card .product-body .product-price-section .product-price-tax {
  font-size: 16px;
  margin-left: 10px;
}
.test-kit .products-section .product-card .product-body .product-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-start;
  margin: 0 0 30px;
}
.test-kit .products-section .product-card .product-body .product-tags .product-tag {
  background: #e4ffdf;
  border-radius: 30px;
  padding: 5px 20px;
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 600;
  font-size: 14px;
  color: #000000;
}
.test-kit .products-section .product-card .product-body .product-tags .product-tag.product-tag-pink {
  background: #ffe8ee;
}
.test-kit .products-section .product-card .product-body a {
  display: block;
  margin: 20px auto;
  text-align: center;
  max-width: 500px;
}
.test-kit .products-section .product-card .product-body a.product-button {
  border: 2px solid #e07299;
  background: transparent;
  border-radius: 64px;
  padding: 10px 20px;
  font-family: "Noto Sans JP", Helvetica;
  font-family: "Medium";
  font-size: 18px;
  color: #e07299;
  cursor: pointer;
  text-decoration: none;
}
.test-kit .products-section .product-card .product-body a.product-button:hover {
  background: rgba(224, 114, 153, 0.1);
}
.test-kit .for-you-section {
  background: #f4fcff;
  padding: 0 0 80px;
  position: relative;
  overflow: hidden;
}
.test-kit .for-you-section .checklist {
  margin: 0 0 50px;
  padding: 30px 10px;
  background: url(../img/menu/test-kit/check-bg.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}
.test-kit .for-you-section .checklist::after {
  position: absolute;
  content: "";
  width: 121.5px;
  height: 146px;
  background: url(../img/menu/test-kit/checklist-gz.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  bottom: -25px;
  right: 0;
}
.test-kit .for-you-section .checklist .checklist-item {
  font-family: "Noto Serif JP", Helvetica;
  color: #000000;
  margin: 0 0 20px;
  line-height: 1.5;
  font-size: 12px;
}
.test-kit .for-you-section .checklist .checklist-item .checkbox {
  color: #016b72;
  margin-right: 5px;
  position: relative;
}
.test-kit .for-you-section .checklist .checklist-item .checkbox::before {
  position: absolute;
  content: "✔";
  top: -5px;
  left: 5px;
}
.test-kit .for-you-section .checklist .checklist-item span {
  font-size: 16px;
}
.test-kit .for-you-section .checklist .checklist-item span.highlight {
  color: #e0759a;
  font-family: "Bold";
  background: rgba(255, 242, 100, 0.7);
  padding: 0 5px;
}
.test-kit .for-you-section .feature-points-title {
  font-family: "Noto Serif JP", Helvetica;
  text-align: center;
  margin: 60px auto 50px;
  font-size: 18px;
}
.test-kit .for-you-section .feature-points-title span {
  font-size: 40px;
  color: #e0739a;
}
.test-kit .for-you-section .feature-point {
  max-width: 647px;
  margin: 80px auto;
  background: #ffffff;
  border-radius: 20px;
  padding: 40px 20px 20px;
  box-shadow: 0 4px 14px rgba(102, 168, 255, 0.25);
  width: 90%;
}
.test-kit .for-you-section .feature-point.last {
  margin-bottom: 0px;
}
.test-kit .for-you-section .feature-point .point-header {
  margin: -90px 0 0px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  transform: translateX(50px);
  gap: 20px;
}
.test-kit .for-you-section .feature-point .point-header .point-number {
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 600;
  font-size: 48px;
  color: #e1749b;
  text-align: center;
  line-height: 0.9;
  transform: translateY(-25px);
}
.test-kit .for-you-section .feature-point .point-header .point-number span.mini {
  font-size: 16px;
}
.test-kit .for-you-section .feature-point .point-header .point-title {
  width: 450px;
  padding: 20px 0px 20px 20px;
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 900;
  font-size: 18px;
  color: #ffffff;
  background: linear-gradient(90deg, #efa2bd 0%, #e07299 100%);
  text-align: left;
  display: block;
  z-index: 2;
}
.test-kit .for-you-section .feature-point .point-icon-container {
  background: #fff1f1;
  border-radius: 50%;
  width: 83px;
  height: 83px;
  margin: 0 auto 30px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.test-kit .for-you-section .feature-point .point-icon-container .point-icon {
  width: 54.5px;
  height: 54.5px;
}
.test-kit .for-you-section .feature-point .point-description {
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 300;
  font-size: 12px;
  color: #000000;
  text-align: center;
  line-height: 1.5;
}
.test-kit .test-methods-section {
  background: url(../img/menu/test-kit/method-bg.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom right;
  padding: 0px 0px 80px;
}
.test-kit .test-methods-section .section-banner {
  background: linear-gradient(270deg, #0cbfcc 0%, #87e6f0 100%);
  padding: 20px;
  text-align: center;
  margin: 0 auto 50px;
  box-shadow: 0 4px 14px rgba(103, 169, 255, 0.25);
}
.test-kit .test-methods-section .section-banner .banner-text {
  font-family: "Noto Serif JP", Helvetica;
  font-family: "Bold";
  font-size: 24px;
  color: #ffffff;
}
.test-kit .test-methods-section .section-banner .banner-number {
  font-family: "Noto Serif JP", Helvetica;
  font-family: "Bold";
  font-size: 32px;
  color: #ffffff;
}
.test-kit .test-methods-section .test-cards {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin: 30px auto;
}
.test-kit .test-methods-section .test-cards.wrap {
  flex-wrap: wrap;
}
.test-kit .test-methods-section .test-cards.wrap ul {
  width: 90%;
}
.test-kit .test-methods-section .test-cards.wrap ul li {
  list-style: none;
  display: flex;
  margin-bottom: 10px;
}
.test-kit .test-methods-section .test-cards.wrap ul li span {
  background: #65DBE6;
  width: 10px;
  padding: 0px 5px;
  width: 60px;
  text-align: center;
  color: white;
  height: -moz-fit-content;
  height: fit-content;
  border-radius: 20px;
  display: inline-block;
  margin-right: 10px;
}
.test-kit .test-methods-section .test-cards.wrap .test-card {
  width: 90%;
}
.test-kit .test-methods-section .test-cards.wrap .test-card ul {
  color: #00A4AF;
  margin-bottom: 20px;
}
.test-kit .test-methods-section .test-cards.wrap img {
  width: 80%;
}
.test-kit .test-methods-section .test-cards .test-card {
  background: #ffffff;
  border-radius: 10px;
  width: 150px;
  box-shadow: 0px 3.45px 12.07px rgba(102, 168, 255, 0.25);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  padding: 20px 0;
}
.test-kit .test-methods-section .test-cards .test-card .test-card-circle {
  background: #f4fcff;
  border-radius: 50%;
  width: 100px;
  height: 100px;
}
.test-kit .test-methods-section .test-cards .test-card .test-card-circle img {
  width: 90%;
  margin: 0 auto;
  display: block;
}
.test-kit .test-methods-section .test-cards .test-card .test-card-title {
  font-family: "Noto Serif JP", Helvetica;
  font-family: "Medium";
  font-size: 20px;
  color: #00a4af;
}
.test-kit .test-methods-section .test-description {
  font-family: "Noto Serif JP", Helvetica;
  font-family: "Medium";
  font-size: 16px;
  color: #3b413d;
  text-align: center;
  margin: 35px auto 40px;
}
.test-kit .test-methods-section .line-notification {
  max-width: 670px;
  margin: 35px auto 0;
  display: flex;
  gap: 20px;
  align-items: center;
  width: 95%;
}
.test-kit .test-methods-section .line-notification .line-card {
  background: #fdfdfc;
  border-radius: 10px;
  padding: 20px 10px 0;
  box-shadow: 0px 3.45px 12.07px rgba(102, 168, 255, 0.25);
  position: relative;
}
.test-kit .test-methods-section .line-notification .line-card img.icon {
  position: absolute;
  top: -20px;
  right: -20px;
  width: 80px;
}
.test-kit .test-methods-section .line-notification .line-image {
  width: 150px;
  -o-object-fit: cover;
     object-fit: cover;
}
.test-kit .test-methods-section .line-notification .line-description {
  font-family: "Noto Serif JP", Helvetica;
  font-family: "Medium";
  font-size: 14px;
  color: #3b413d;
  line-height: 1.5;
  text-shadow: 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff;
}
.test-kit .steps-section {
  background-color: #FDFEFF;
  padding: 60px 0;
  padding-top: 40px;
}
.test-kit .steps-section .step-article {
  position: relative;
  width: 100%;
}
.test-kit .steps-section .step-article .step-card {
  max-width: 650px;
  background: white;
  border-radius: 10px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  padding: 35px 17px 20px;
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 0 auto;
  width: 90%;
}
.test-kit .steps-section .step-article .step-card .step-content {
  width: 381px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.test-kit .steps-section .step-article .step-card .step-content .step-title {
  font-size: 18px;
  font-family: "Medium";
  color: #016b72;
}
.test-kit .steps-section .step-article .step-card .step-content .step-description {
  font-size: 12px;
  font-weight: 300;
  color: black;
}
.test-kit .steps-section .step-article .step-card .step-content .step-image-cover {
  -o-object-fit: cover;
     object-fit: cover;
}
.test-kit .steps-section .step-article .step-card .step-image {
  width: 107px;
}
.test-kit .steps-section .step-article .step-card .step-image img {
  display: block;
}
.test-kit .steps-section .step-article .step-badge {
  position: absolute;
  top: -5px;
  left: 30px;
  width: 100px;
  height: 30px;
  background: linear-gradient(90deg, rgb(239, 162, 189) 0%, rgb(224, 114, 153) 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.test-kit .steps-section .step-article .step-badge .step-badge-text {
  font-size: 16px;
  font-family: "Bold";
  color: white;
  text-align: center;
}
.test-kit .steps-section .arrow-icon {
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 12px solid transparent;
  border-left: 12px solid transparent;
  border-top: 16px solid #ffadca;
  border-bottom: 0;
  margin: 15px auto;
}
.test-kit .positive-section {
  position: relative;
  padding-bottom: 60px;
}
.test-kit .positive-section .positive-title {
  font-size: 48px;
  font-weight: 400;
  color: black;
  text-align: center;
}
.test-kit .positive-section .positive-title.positive-title-inner {
  font-size: 24px;
}
.test-kit .positive-section .positive-title.positive-title-inner .positive-word {
  font-size: 40px;
  font-family: "Medium";
  color: #e57ca1;
  text-align: center;
  margin-top: -120px;
  margin-bottom: 20px;
}
.test-kit .positive-section .positive-card {
  max-width: 650px;
  background: white;
  border-radius: 20px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  padding: 30px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  margin: 0 auto;
  width: 90%;
}
.test-kit .positive-section .positive-card .positive-image {
  max-width: 559px;
  width: 100%;
}
.test-kit .positive-section .positive-card .positive-description {
  font-size: 16px;
  font-weight: 400;
  color: #2e2f30;
  text-align: center;
}
.test-kit .voices-section {
  padding: 60px 0;
  background-color: #F3FCFF;
  padding-top: 40px;
}
.test-kit .voices-section .testimonials {
  display: flex;
  flex-direction: column;
  gap: 60px;
}
.test-kit .voices-section .testimonials .testimonial {
  display: flex;
  align-items: flex-end;
  gap: 20px;
  position: relative;
  max-width: 630px;
  margin: 0 auto;
  width: 95%;
}
.test-kit .voices-section .testimonials .testimonial .testimonial-image {
  width: 150px;
  z-index: 2;
}
.test-kit .voices-section .testimonials .testimonial .testimonial-image img {
  width: 100%;
}
.test-kit .voices-section .testimonials .testimonial .testimonial-card {
  background: white;
  border-radius: 16px;
  padding: 20px;
  box-shadow: 0 4px 14px rgba(103, 169, 255, 0.25);
  flex: 1;
  position: relative;
  margin-left: -30px;
}
.test-kit .voices-section .testimonials .testimonial .testimonial-card .decorative-circles {
  position: absolute;
  left: 45px;
  top: 20px;
}
.test-kit .voices-section .testimonials .testimonial .testimonial-card .decorative-circles .circle {
  background: white;
  border-radius: 50%;
  position: absolute;
}
.test-kit .voices-section .testimonials .testimonial .testimonial-card .decorative-circles .circle.circle-small {
  width: 18px;
  height: 18px;
  left: -100px;
  top: 19px;
  box-shadow: 0 2px 8px rgba(103, 169, 255, 0.15);
}
.test-kit .voices-section .testimonials .testimonial .testimonial-card .decorative-circles .circle.circle-large {
  width: 30px;
  height: 30px;
  left: -70px;
  top: 0;
  box-shadow: 0 2px 10px rgba(103, 169, 255, 0.2);
}
.test-kit .voices-section .testimonials .testimonial .testimonial-card .testimonial-content {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.test-kit .voices-section .testimonials .testimonial .testimonial-card .testimonial-content .testimonial-title {
  font-size: 16px;
  color: #016b72;
  font-family: "Medium";
  letter-spacing: 2.88px;
  line-height: 1.2;
}
.test-kit .voices-section .testimonials .testimonial .testimonial-card .testimonial-content .testimonial-subtitle {
  font-size: 12px;
  font-weight: 400;
}
.test-kit .voices-section .testimonials .testimonial .testimonial-card .testimonial-content .testimonial-text {
  font-size: 12px;
  color: #000;
  font-weight: 300;
  line-height: 1.7;
  letter-spacing: 2px;
}
.test-kit .qa-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
  background: url(../img/menu/test-kit/faq-bg.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 60px 0;
  padding-top: 40px;
}
.test-kit .qa-section .qa-header {
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.test-kit .qa-section .qa-header .qa-title-en {
  font-size: 32px;
  background: linear-gradient(to right, #ff9dbd, #e2759b);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-family: "Medium";
  letter-spacing: 2px;
}
.test-kit .qa-section .qa-header .qa-title-ja {
  font-size: 16px;
  color: #3b413d;
  font-family: "Medium";
  line-height: 1.27;
}
.test-kit .qa-section .qa-container {
  background: white;
  border-radius: 20px;
  padding: 30px 20px;
  box-shadow: 0 4px 14px rgba(103, 169, 255, 0.25);
  width: 90%;
  max-width: 700px;
}
.test-kit .qa-section .qa-container .qa-item {
  margin-bottom: 35px;
}
.test-kit .qa-section .qa-container .qa-item:last-child {
  margin-bottom: 0;
}
.test-kit .qa-section .qa-container .qa-item .question {
  display: flex;
  align-items: center;
  gap: 0px;
  margin-bottom: 10px;
}
.test-kit .qa-section .qa-container .qa-item .question .q-icon {
  font-size: 20px;
  color: #d9747c;
  font-weight: 600;
  flex-shrink: 0;
  width: 28px;
}
.test-kit .qa-section .qa-container .qa-item .question .q-text {
  font-size: 18px;
  color: #d9747c;
  font-family: "Medium";
  line-height: 1.5;
  letter-spacing: 1px;
}
.test-kit .qa-section .qa-container .qa-item .question .q-text.mini {
  font-size: 18px;
  line-height: 1.5;
}
.test-kit .qa-section .qa-container .qa-item .divider {
  height: 1px;
  background-color: #d9747c;
  margin: 10px 0;
}
.test-kit .qa-section .qa-container .qa-item .answer {
  display: flex;
  align-items: flex-start;
  gap: 0px;
  margin-top: 10px;
}
.test-kit .qa-section .qa-container .qa-item .answer .a-icon {
  font-size: 20px;
  color: #3b413d;
  font-weight: 600;
  flex-shrink: 0;
  width: 30px;
}
.test-kit .qa-section .qa-container .qa-item .answer .a-text {
  font-size: 16px;
  color: #000;
  font-weight: 300;
  line-height: 1.75;
  letter-spacing: 0.5px;
}
.test-kit .section-1 {
  background-color: #fdfeff;
  width: 100%;
  padding: 61px 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.test-kit .section-1 .card-wrapper {
  width: 100%;
  max-width: 691px;
}
.test-kit .section-1 .card-wrapper .card {
  background-color: white;
  border-radius: 19px;
  box-shadow: 0px 4px 14px 0px rgba(103, 169, 255, 0.25);
  padding: 28px 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.test-kit .section-1 .card-wrapper .card .card-content {
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
  width: 100%;
  max-width: 587px;
}
.test-kit .section-1 .card-wrapper .card .card-content .title-text {
  text-align: center;
  width: 100%;
  max-width: 565px;
  line-height: 1.35;
}
.test-kit .section-1 .card-wrapper .card .card-content .title-text p {
  margin-bottom: 0;
}
.test-kit .section-1 .card-wrapper .card .card-content .title-text p .text-red-large {
  font-family: "Noto Serif JP", serif;
  font-family: "Medium";
  font-size: 24px;
  color: #ee3455;
  letter-spacing: 2.16px;
}
.test-kit .section-1 .card-wrapper .card .card-content .title-text p .text-black-medium {
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-size: 16px;
  color: black;
  letter-spacing: 1.44px;
}
.test-kit .section-1 .card-wrapper .card .card-content .title-text p.text-black-medium {
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-size: 16px;
  color: black;
  letter-spacing: 1.44px;
}
.test-kit .section-1 .card-wrapper .card .card-content .image-container {
  width: 100%;
  max-width: 531px;
  position: relative;
  overflow: hidden;
  border-radius: 8px;
}
.test-kit .section-1 .card-wrapper .card .card-content .image-container .main-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  border-radius: 8px;
}
.test-kit .section-1 .card-wrapper .card .card-content .description-text {
  font-family: "Noto Serif JP", serif;
  font-weight: 300;
  font-size: 16px;
  color: black;
  text-align: center;
  line-height: 1.67;
  letter-spacing: 2.64px;
  width: 100%;
}
.test-kit .section-1 .card-wrapper .card .card-content .description-text p {
  margin-bottom: 0;
}
.test-kit .section-2 {
  width: 100%;
  background: url(../img/menu/test-kit/last-cta-bg.webp);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.test-kit .section-2 .cta-wrapper {
  padding: 40px 20px 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
}
.test-kit .section-2 .cta-wrapper .cta-content {
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  width: 100%;
  max-width: 650px;
}
.test-kit .section-2 .cta-wrapper .cta-content .cta-text-section {
  display: flex;
  flex-direction: column;
  gap: 20px;
  align-items: center;
  width: 100%;
}
.test-kit .section-2 .cta-wrapper .cta-content .cta-text-section .intro-text {
  font-family: "Noto Serif JP", serif;
  font-weight: 300;
  font-size: 24px;
  color: black;
  text-align: center;
  line-height: 1.7;
  max-width: 602px;
}
.test-kit .section-2 .cta-wrapper .cta-content .cta-text-section .text-light {
  font-family: "Noto Serif JP", serif;
  font-weight: 300;
  font-size: 15px;
}
.test-kit .section-2 .cta-wrapper .cta-content .cta-text-section .text-cyan-bold {
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  font-size: 20px;
  color: #00a4af;
}
.test-kit .section-2 .cta-wrapper .cta-content .cta-text-section .text-pink-large {
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  font-size: 23px;
  color: #e2769c;
}
.test-kit .section-2 .cta-wrapper .cta-content .cta-text-section .privacy-banner {
  width: 100%;
  background: linear-gradient(to right, #ff9fc0, #e2759b);
  padding: 10px 5px;
}
.test-kit .section-2 .cta-wrapper .cta-content .cta-text-section .privacy-banner p {
  font-family: "Noto Serif JP", serif;
  font-family: "Medium";
  font-size: 20px;
  color: white;
  text-align: center;
  line-height: 1;
}
.test-kit .section-2 .cta-wrapper .cta-content .cta-text-section .solution-text {
  font-family: "Noto Serif JP", serif;
  font-weight: 300;
  font-size: 24px;
  color: black;
  text-align: center;
  line-height: 1.75;
  max-width: 532px;
}
.test-kit .section-2 .cta-wrapper .cta-content .cta-text-section .solution-text p {
  margin-bottom: 0;
}
.test-kit .section-2 .cta-wrapper .cta-content .cta-text-section .solution-text .text-solution {
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  font-size: 23px;
  color: #e2759b;
}
.test-kit .section-2 .cta-wrapper .cta-content .button-section {
  display: flex;
  flex-direction: column;
  gap: 4px;
  align-items: center;
  width: 100%;
  max-width: 468px;
}
.test-kit .section-2 .cta-wrapper .cta-content .button-section .button-label {
  font-family: "Noto Serif JP", serif;
  font-family: "Medium";
  font-size: 20px;
  color: #eb0c6f;
  text-align: center;
  width: 100%;
}
.test-kit .section-2 .cta-wrapper .cta-content .button-section .cta-button {
  width: 100%;
  height: auto;
  background: linear-gradient(to bottom, #e5005c, #ff4957);
  border: 1px solid white;
  border-radius: 100px;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25), 0px 4px 4px 0px rgba(255, 0, 0, 0.25);
  font-family: "Noto Serif JP", serif;
  font-family: "Bold";
  font-size: 24px;
  color: white;
  cursor: pointer;
  text-align: center;
  transition: transform 0.2s, box-shadow 0.2s;
  position: relative;
  overflow: hidden;
  padding: 20px 0;
}
.test-kit .section-2 .cta-wrapper .cta-content .button-section .cta-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="307" height="307"><circle cx="50" cy="50" r="30" fill="white" opacity="0.1"/><circle cx="257" cy="257" r="30" fill="white" opacity="0.1"/></svg>');
  background-size: 307.2px 307.2px;
  background-repeat: repeat;
  opacity: 0.4;
  pointer-events: none;
}
.test-kit .section-2 .cta-wrapper .cta-content .button-section .cta-button:hover {
  transform: translateY(-2px);
  box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.3), 0px 6px 6px 0px rgba(255, 0, 0, 0.3);
}
.test-kit .section-2 .cta-wrapper .cta-content .button-section .cta-button:active {
  transform: translateY(0);
  box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(255, 0, 0, 0.2);
}
.test-kit .fixed__btn {
  position: fixed;
  background: rgba(125, 255, 244, 0.1);
  width: 100%;
  right: 50%;
  bottom: 0;
  z-index: 998;
  padding: 25px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  max-width: 750px;
  transform: translateX(50%);
  backdrop-filter: blur(4px);
}
.test-kit .fixed__btn a {
  display: block;
  width: 630px;
  text-decoration: none;
  text-align: center;
}
.test-kit .fixed__btn a.cta-btn {
  background: linear-gradient(to bottom, #E5005C 0%, #FF4957 100%);
  border: none;
  border-radius: 64px;
  padding: 20px 0;
  font-family: "Noto Serif JP", Helvetica;
  font-weight: 900;
  font-size: 25px;
  color: #ffffff;
  cursor: pointer;
  display: block;
  box-shadow: 0 4px 14px rgba(103, 169, 255, 0.25);
}
.test-kit .fixed__btn a.cta-btn:hover {
  opacity: 0.9;
}

.doxypep {
  color: #3b3978;
  line-height: 1.6;
}
.doxypep section {
  padding: 70px 0;
}
.doxypep h2.section-title {
  font-family: "Bold";
  font-size: 24px;
  color: #3b3978;
  text-align: center;
  margin-bottom: 50px;
  position: relative;
}
@media screen and (max-width:320px) {
  .doxypep h2.section-title {
    font-size: 20px;
  }
}
.doxypep h2.section-title::after {
  position: absolute;
  content: "";
  width: 45px;
  bottom: -15px;
  left: 50%;
  transform: translateX(-50%);
  border-bottom: solid 2px #3B3978;
}
.doxypep .hero-section {
  height: 878px;
  position: relative;
  margin: 90px auto 0;
  background: url(../img/menu/doxypep/hero-section_sp.png) no-repeat center/cover;
  overflow: hidden;
}
.doxypep .hero-section .hero-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.doxypep .hero-section .hero-mask {
  position: absolute;
  top: 238px;
  left: 0;
  width: 100%;
  height: 347px;
}
.doxypep .hero-section .concern-bubbles {
  position: absolute;
  top: 234px;
  left: 7px;
  width: 432px;
  height: 115px;
}
.doxypep .hero-section .concern-bubbles img {
  position: absolute;
  top: 0;
  left: 0;
  width: 426px;
  height: 115px;
}
.doxypep .hero-section .bubble {
  position: absolute;
  font-family: "Medium";
  color: #3b3978;
  font-size: 14px;
  text-align: center;
  white-space: pre-line;
}
.doxypep .hero-section .bubble-1 {
  top: 33px;
  left: 17px;
}
.doxypep .hero-section .bubble-2 {
  top: 17px;
  left: 186px;
}
.doxypep .hero-section .bubble-3 {
  top: 34px;
  left: 319px;
}
.doxypep .hero-section .hero-content {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
  gap: 385px;
  position: absolute;
  top: 35px;
  left: 50%;
  transform: translateX(-50%);
}
.doxypep .hero-section .hero-content .hero-bg-accent {
  position: absolute;
  top: 50px;
  left: 50%;
  transform: translateX(-50%);
  width: 369px;
  height: 51px;
  background: #3b3978;
}
.doxypep .hero-section .hero-content .hero-title {
  position: relative;
  font-family: "Bold";
  font-size: 30px;
  text-align: center;
  line-height: 50px;
}
.doxypep .hero-section .hero-content .hero-title .white-text {
  color: white;
  font-size: 35px;
  line-height: 48.1px;
}
.doxypep .hero-section .hero-content .time-box {
  position: absolute;
  top: 380px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 109px;
}
.doxypep .hero-section .hero-content .time-box .time-box-bg {
  display: flex;
  flex-direction: column;
  width: 85%;
  height: auto;
  align-items: center;
  gap: 20.56px;
  padding: 48.46px 38.76px;
  position: absolute;
  top: 24px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(255, 255, 255, 0.7);
  border-radius: 12.11px;
  border: 1.21px solid #e2e1ed;
  backdrop-filter: blur(6.06px);
}
.doxypep .hero-section .hero-content .time-box .time-text {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  line-height: 1.2;
  font-family: "Bold";
  font-size: 26.2px;
  text-align: center;
}
.doxypep .hero-section .hero-content .time-box .time-text .time-number {
  color: #e06a3f;
  font-size: 62px;
}
.doxypep .hero-section .hero-content .badges {
  display: flex;
  width: 250px;
  justify-content: space-between;
  align-items: center;
  position: absolute;
  top: 520px;
  left: 50%;
  transform: translateX(-50%);
  height: 25px;
}
.doxypep .hero-section .hero-content .badges .badge {
  height: 26.52px;
  background: #3b3978;
  border-radius: 21.21px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  font-family: "Bold";
  color: #f5f4f3;
  font-size: 14.8px;
  text-align: center;
}
.doxypep .hero-section .hero-content .badges > div {
  position: absolute;
  top: 0;
  width: 379px;
  height: 25px;
}
.doxypep .hero-section .hero-content .badges > div:first-child {
  left: 0;
}
.doxypep .hero-section .hero-content .badges > div:last-child {
  left: 121px;
}
.doxypep .hero-section .hero-content .badges .badge-1 {
  left: 146px;
  width: 86px;
}
.doxypep .hero-section .hero-content .badges .badge-2 {
  left: 117px;
  width: 147px;
}
.doxypep .hero-section .hero-content .badges .badge-text-1,
.doxypep .hero-section .hero-content .badges .badge-text-2 {
  position: absolute;
  top: 4px;
  left: 0;
  width: 379px;
  font-family: "Bold";
  color: #f5f4f3;
  font-size: 14px;
  text-align: center;
}
.doxypep .hero-section .hero-content .card {
  background: white;
  border-radius: 20px;
  box-shadow: 0px 4px 4px #d9d9d9;
  padding: 30px 10px;
  width: 100%;
  max-width: 350px;
}
.doxypep .hero-section .hero-content .card .card-content .card-title {
  font-family: "Bold";
  color: #3b3978;
  font-size: 14px;
  margin-bottom: 10px;
}
.doxypep .hero-section .hero-content .card .card-content .drug-info .drug-image {
  background: #d9d9d9;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Bold";
  color: black;
  font-size: 24px;
}
.doxypep .hero-section .hero-content .card .card-content .drug-info .drug-name {
  width: 100%;
}
.doxypep .hero-section .hero-content .card .card-content .drug-info .drug-name p {
  text-align: center;
  font-family: "Bold";
  color: #3b3978;
}
.doxypep .hero-section .hero-content .card .card-content .drug-info .drug-name-title {
  font-family: "Bold";
  color: #3b3978;
  font-size: 30px;
  line-height: 1;
  text-align: center;
}
.doxypep .hero-section .hero-content .card .card-content .drug-info .drug-name-subtitle {
  font-family: "Medium";
  color: #3b3978;
  font-size: 14px;
  text-align: center;
  line-height: 3;
}
.doxypep .hero-section .hero-content .card .card-content .price-section {
  line-height: 1.7;
  margin-top: -10px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.doxypep .hero-section .hero-content .card .card-content .price-section .price {
  font-family: "Bold";
  font-size: 30px;
  text-align: center;
}
.doxypep .hero-section .hero-content .card .card-content .price-section .price .price-number {
  color: #e06a3f;
}
.doxypep .hero-section .hero-content .card .card-content .price-section .price .price-unit {
  color: #3b3978;
  font-size: 23px;
}
.doxypep .hero-section .hero-content .card .card-content .price-section .price-quantity {
  font-family: "Bold";
  color: #3b3978;
  font-size: 18px;
  text-align: center;
}
.doxypep .hero-section .hero-content .card .card-content .line-button {
  display: flex;
  width: 246px;
  height: 58px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 6px 10px;
  background: #06c755;
  border-radius: 24px;
  margin: auto;
  box-shadow: 0px 3px 4.6px rgba(0, 0, 0, 0.25), 0px 0px 4px rgba(0, 0, 0, 0.25);
  cursor: pointer;
  border: none;
}
.doxypep .hero-section .hero-content .card .card-content .line-button:hover {
  background: #05b34c;
}
.doxypep .hero-section .hero-content .card .card-content .line-button .line-icon {
  display: flex;
  width: 32px;
  height: 32px;
  align-items: center;
  justify-content: center;
  background: white;
  border-radius: 16px;
  font-weight: 900;
  color: #06c755;
  font-size: 11px;
}
.doxypep .hero-section .hero-content .card .card-content .line-button .line-button-text {
  font-family: "Bold";
  color: white;
  font-size: 16px;
  white-space: nowrap;
}
.doxypep .info-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  padding: 50px 18px;
}
.doxypep .info-section .section-title {
  font-size: 36px;
  font-family: "Bold";
  color: #3b3978;
  text-align: center;
}
.doxypep .info-section .separator {
  width: 43px;
  height: 1px;
  background: #3b3978;
}
.doxypep .info-section .info-text {
  max-width: 382px;
  font-size: 16px;
  color: #3b3978;
  text-align: center;
  line-height: 1.5;
}
.doxypep .info-section .section-subtitle {
  font-size: 20px;
  font-family: "Bold";
  color: #3b3978;
  white-space: nowrap;
}
.doxypep .info-section .infection-cards {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: center;
}
.doxypep .info-section .infection-cards .infection-card {
  width: 31.25%;
  height: 202px;
  background: white;
  border-radius: 10px;
  border: 1px solid #e2e1ed;
  backdrop-filter: blur(5px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 40px 0 24px;
}
.doxypep .info-section .infection-cards .infection-card .infection-card-img-container {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 99px;
}
.doxypep .info-section .infection-cards .infection-card img {
  height: 122px;
  -o-object-fit: contain;
     object-fit: contain;
}
.doxypep .info-section .infection-cards .infection-card img.img-1 {
  width: 105px;
  height: 86px;
}
.doxypep .info-section .infection-cards .infection-card img.img-2 {
  width: 84px;
  height: 99px;
}
.doxypep .info-section .infection-cards .infection-card img.img-3 {
  width: 102px;
  height: 74px;
}
.doxypep .info-section .infection-cards .infection-card .infection-name {
  font-size: 20px;
  font-family: "Bold";
  color: #3b3978;
}
.doxypep .info-section .footnote {
  font-size: 12px;
  font-weight: normal;
  color: #3b3978;
  text-align: center;
}
.doxypep .usage-section {
  padding: 50px 16px;
  background: #f5f4f3;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
.doxypep .usage-section .section-title-medium {
  font-family: "Bold";
  color: #3b3978;
  font-size: 32px;
  text-align: center;
}
.doxypep .usage-section .usage-card {
  width: 100%;
  max-width: 349px;
  background: rgba(255, 255, 255, 0.7);
  border-radius: 10px;
  border: 1px solid #e2e1ed;
  backdrop-filter: blur(5px);
  position: relative;
  height: 199px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.doxypep .usage-section .usage-card .usage-title {
  position: absolute;
  top: 30px;
  font-family: "Bold";
  color: #3b3978;
  font-size: 24px;
  text-align: center;
}
.doxypep .usage-section .usage-card .usage-time {
  position: absolute;
  top: 54px;
  font-family: "Bold";
  font-size: 48px;
  text-align: center;
}
.doxypep .usage-section .usage-card .usage-time .time-highlight {
  color: #e06a3f;
}
.doxypep .usage-section .usage-card .usage-time .time-unit {
  color: #3b3978;
  font-size: 24px;
}
.doxypep .usage-section .usage-card .usage-badge {
  position: absolute;
  top: 129px;
  background: #3b3978;
  border-radius: 20px;
  height: 36px;
  padding: 0 13px;
  display: flex;
  align-items: center;
  font-family: "Bold";
  color: white;
  font-size: 24px;
}
.doxypep .usage-section .usage-footnote {
  font-weight: normal;
  color: #3b3978;
  font-size: 12px;
  text-align: center;
}
.doxypep .eligibility-section {
  background: white;
  padding: 50px 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0px;
}
.doxypep .eligibility-section .eligibility-card {
  width: 100%;
  max-width: 355px;
  background: white;
  border-radius: 10px;
  border: 1px solid #e2e1ed;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(5px);
  padding: 20px;
}
.doxypep .eligibility-section .eligibility-card .criterion {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 9px 0;
}
.doxypep .eligibility-section .eligibility-card .criterion .check-icon {
  width: 22px;
  height: 22px;
  color: #E06A3F;
  flex-shrink: 0;
  margin-top: 2px;
}
.doxypep .eligibility-section .eligibility-card .criterion .criterion-text {
  font-size: 15px;
  color: #3b3978;
  line-height: 26px;
}
.doxypep .eligibility-section .eligibility-card .criterion-separator {
  width: 100%;
  height: 1px;
  margin: 0px 0px;
  background: #e2e1ed;
}
.doxypep .eligibility-section .eligibility-card .final-criterion {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0;
  padding-top: 50px;
  margin-top: 0px;
}
.doxypep .eligibility-section .eligibility-card .final-criterion .circle-mark {
  color: #3b3978;
  font-size: 15px;
  font-family: "Bold";
}
.doxypep .eligibility-section .eligibility-card .final-criterion .final-text {
  color: #3b3978;
  font-size: 15px;
  font-family: "Bold";
  line-height: 26px;
}
.doxypep .features-section {
  background: white;
  padding: 50px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0px;
}
.doxypep .features-section .features-grid {
  width: 100%;
  max-width: 400px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.doxypep .features-section .features-grid .feature-card {
  background: white;
  border-radius: 10px;
  border: 1px solid #e2e1ed;
  backdrop-filter: blur(5px);
  box-shadow: 2px 1px 0px #dedde9;
  display: block;
  height: auto;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
  gap: 12px;
}
.doxypep .features-section .features-grid .feature-card img {
  max-width: 60px;
  max-height: 60px;
  margin: auto;
}
.doxypep .features-section .features-grid .feature-card .feature-text {
  font-weight: normal;
  color: #3b3978;
  font-size: 15px;
  text-align: center;
  line-height: 1.5;
  white-space: pre-line;
}
.doxypep .pricing-section {
  display: block;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  padding: 50px 16px;
  background: #f5f4f3;
}
.doxypep .pricing-section .pricing-footnote {
  font-weight: normal;
  color: #3b3978;
  font-size: 12px;
  text-align: center;
}
.doxypep .pricing-section .pricing-table {
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
  border: 0.94px solid #e2e1ee;
  margin-top: 32px;
}
.doxypep .pricing-section .pricing-table thead {
  background: #3b3978;
}
.doxypep .pricing-section .pricing-table th {
  color: white;
  height: 61px;
  padding: 12px;
  text-align: center;
  font-family: "Medium";
}
.doxypep .pricing-section .pricing-table th:first-child {
  border-right: 1px solid rgba(255, 255, 255, 0.2);
}
.doxypep .pricing-section .pricing-table td {
  height: 61px;
  padding: 12px;
  background: white;
  border-top: 0.94px solid #e2e1ee;
}
.doxypep .pricing-section .pricing-table td:first-child {
  border-right: 1px solid #e2e1ee;
}
.doxypep .strategy-section {
  width: 100%;
  padding: 50px 35px 80px;
  background: white;
}
.doxypep .strategy-section .strategy-container {
  max-width: 440px;
  margin: 0 auto;
}
.doxypep .strategy-section .strategy-cards {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
  max-width: 787px;
  margin: 0 auto;
  margin-top: 48px;
}
.doxypep .strategy-section .strategy-cards .strategy-card-wrapper {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 353px;
  gap: 12px;
}
.doxypep .strategy-section .strategy-cards .strategy-card-wrapper .strategy-card {
  box-shadow: 2px 1px 0px #dedde9;
  border-radius: 10px;
  overflow: hidden;
}
.doxypep .strategy-section .strategy-cards .strategy-card-wrapper .strategy-card .strategy-card-header {
  background: #3b3978;
  border-radius: 10px 10px 0 0;
  padding: 24px 20px;
}
.doxypep .strategy-section .strategy-cards .strategy-card-wrapper .strategy-card .strategy-card-header .strategy-card-title {
  color: white;
  text-align: center;
  font-family: "Medium";
  font-size: 15px;
}
.doxypep .strategy-section .strategy-cards .strategy-card-wrapper .strategy-card .strategy-card-content {
  background: white;
  border-radius: 0 0 10px 10px;
  border-bottom: 1px solid #e2e1ed;
  padding: 25px 20px;
}
.doxypep .strategy-section .strategy-cards .strategy-card-wrapper .strategy-card .strategy-card-content .strategy-text {
  font-weight: normal;
  color: #3b3978;
  font-size: 15px;
  line-height: 26px;
}
.doxypep .strategy-section .strategy-cards .strategy-card-wrapper .card-footnote {
  font-weight: normal;
  color: black;
  font-size: 12px;
  text-align: center;
  line-height: 19px;
}
.doxypep .service-section {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.doxypep .service-section h2 {
  margin-bottom: 100px;
}
.doxypep .service-section p.subtitle {
  color: #3B3978;
  border: 1px solid #3B3978;
  padding: 5px 20px;
  text-align: center;
  border-radius: 100px;
  font-family: "Bold";
  margin-bottom: 10px;
}
.doxypep .service-section .steps-grid {
  display: flex;
  gap: 1.5rem;
  width: 100%;
  display: table-column;
}
.doxypep .service-section .steps-grid .step-card {
  flex: 1;
  background-color: rgba(255, 255, 255, 0.7);
  border: 1px solid #d9d9d9;
  border-radius: 20px;
  backdrop-filter: blur(5px);
  padding: 2.5rem 2rem;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  min-height: auto;
  margin-bottom: 70px;
}
.doxypep .service-section .steps-grid .step-card:last-child {
  margin-bottom: 0;
}
.doxypep .service-section .steps-grid .step-card .step-number {
  position: absolute;
  top: -2.5rem;
  left: 50%;
  transform: translateX(-50%);
  width: 80px;
  height: 80px;
  background-color: #3b3978;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0rem;
}
.doxypep .service-section .steps-grid .step-card .step-number .step-label {
  font-family: "Medium";
  font-size: 1rem;
  color: white;
  border-bottom: 1px dotted white;
  line-height: 1.2;
}
.doxypep .service-section .steps-grid .step-card .step-number .step-num {
  font-family: "Bold";
  font-size: 1.375rem;
  color: white;
  line-height: 1.3;
}
.doxypep .service-section .steps-grid .step-content {
  margin-top: 1rem;
}
.doxypep .service-section .steps-grid .step-content img {
  width: 100%;
  display: block;
  margin-bottom: 20px;
}
.doxypep .service-section .steps-grid .step-content h3.step-title {
  font-size: 15px;
  color: #3b3978;
  margin-bottom: 1rem;
}
.doxypep .service-section .steps-grid .step-content p.step-description {
  font-size: 15px;
  color: #3b3978;
  line-height: 1.7;
}
.doxypep .notice-section {
  width: 100%;
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  padding-top: 0;
}
.doxypep .notice-section .notice-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.doxypep .notice-section .notice-list .notice-item {
  display: block;
}
.doxypep .notice-section .notice-list .notice-item p.notice-category {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem 2rem;
  background-color: #e2e1ed;
  border-radius: 30px 0 0 0;
  font-size: 15px;
  color: #3b3978;
  text-align: center;
  font-family: "Bold";
}
.doxypep .notice-section .notice-list .notice-item p.notice-content {
  flex: 1;
  display: flex;
  align-items: center;
  padding: 30px 15px;
  background-color: white;
  border-radius: 0 0 30px 0;
  border-bottom: 2px solid #e2e1ed;
  border-right: 2px solid #e2e1ed;
  font-size: 15px;
  color: #3b3978;
  line-height: 1.7;
}

.beauty-drip .menu-plan {
  position: relative;
  margin-bottom: 50px;
}
.beauty-drip .menu-plan::after {
  position: absolute;
  content: "";
  bottom: 0;
  right: 50%;
  transform: translateX(50%) rotate(180deg);
  width: 100%;
  height: 494px;
  background: url(../img/common/green-bg.png);
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: contain;
}
.beauty-drip .menu-plan .grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px 15px;
  width: 100%;
  max-width: 340px;
  margin-bottom: 40px;
  position: relative;
  z-index: 2;
}
.beauty-drip .menu-plan .grid .card {
  border-radius: 5px;
  border: 1px solid var(--base-gray);
  background-color: var(--base-white);
  overflow: hidden;
  min-height: 160px;
  color: var(--base-black);
  cursor: pointer;
  transition: 0.4s;
}
.beauty-drip .menu-plan .grid .card:hover {
  opacity: 0.8;
  transform: scale(1.04);
}
.beauty-drip .menu-plan .grid .card .card-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
  padding: 8px 0px 15px;
}
.beauty-drip .menu-plan .grid .card .card-content .card-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  height: 100%;
}
.beauty-drip .menu-plan .grid .card .card-content .card-inner .image-area {
  margin-top: 3px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  flex: 1;
  width: 100%;
}
.beauty-drip .menu-plan .grid .card .card-content .card-inner .image-area .image-wrapper {
  width: 84px;
  height: 84px;
}
.beauty-drip .menu-plan .grid .card .card-content .card-inner .image-area .title-area {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  width: 100%;
}
.beauty-drip .menu-plan .grid .card .card-content .card-inner .image-area .title-area .card-title {
  font-size: 15px;
  font-family: "Bold";
  letter-spacing: 0;
  text-align: center;
}
@media screen and (max-width:320px) {
  .beauty-drip .menu-plan .grid .card .card-content .card-inner .image-area .title-area .card-title {
    font-size: 13px;
  }
}
.beauty-drip .menu-plan .grid .card .card-content .card-inner .image-area .title-area .card-desc {
  font-size: 15px;
  font-family: "Bold";
  letter-spacing: 0;
  text-align: center;
}
@media screen and (max-width:320px) {
  .beauty-drip .menu-plan .grid .card .card-content .card-inner .image-area .title-area .card-desc {
    font-size: 13px;
  }
}
.beauty-drip .menu-plan .grid .card .card-content .card-inner .image-area .title-area .card-desc span {
  font-size: 12px;
  font-weight: normal;
  background: var(--green-blight);
  border-radius: 100px;
  padding: 3px 10px;
}
.beauty-drip .variation {
  margin-top: 50px;
}
.beauty-drip .variation::before {
  content: none;
}
.beauty-drip .variation h2 {
  font-size: 23px;
  margin-bottom: 5px;
}
@media screen and (max-width:320px) {
  .beauty-drip .variation h2 {
    font-size: 20px;
  }
}
.beauty-drip .variation .card-list .card .card-image.beauty-drip01 {
  background-image: url("../img/menu/beauty-drip/beauty-drip-var01.png");
}
.beauty-drip .variation .card-list .card .card-image.beauty-drip02 {
  background-image: url("../img/menu/beauty-drip/beauty-drip-var02.png");
}
.beauty-drip .variation .card-list .card .card-image.beauty-drip03 {
  background-image: url("../img/menu/beauty-drip/beauty-drip-var03.png");
}
.beauty-drip .variation .card-list .card .card-image.beauty-drip04 {
  background-image: url("../img/menu/beauty-drip/beauty-drip-var04.png");
}
.beauty-drip .variation .card-list .card .card-image.beauty-drip05 {
  background-image: url("../img/menu/beauty-drip/beauty-drip-var05.png");
}
.beauty-drip .variation .card-list .card .card-image.beauty-drip06 {
  background-image: url("../img/menu/beauty-drip/beauty-drip-var06.png");
}
.beauty-drip .variation .card-list .card .card-image.beauty-drip07 {
  background-image: url("../img/menu/beauty-drip/beauty-drip-var07.png");
}
.beauty-drip .value-section {
  background: url(../img/common/point-grade.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 90px 0 55px;
}
.beauty-drip .value-section .value-inner {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 70px;
  width: 100%;
}
.beauty-drip .value-section .value-inner .reasons-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 50px;
  width: 100%;
}
.beauty-drip .value-section .value-inner .reasons-block .reasons-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
  width: 100%;
}
.beauty-drip .value-section .value-inner .reasons-block .reasons-header .section-heading {
  font-size: 23px;
  font-family: "Bold";
  line-height: 1.83;
  text-align: center;
}
.beauty-drip .value-section .value-inner .reasons-block .reasons-header .reason-cards {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.beauty-drip .value-section .value-inner .reasons-block .reasons-header .reason-cards .reason-card {
  background: var(--base-white);
  border-radius: 12px;
  padding: 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.beauty-drip .value-section .value-inner .reasons-block .reasons-header .reason-cards .reason-card ul li {
  color: var(--base-darkgray);
  font-size: 15px;
  list-style: none;
  position: relative;
  padding-left: 15px;
  margin-bottom: 5px;
}
.beauty-drip .value-section .value-inner .reasons-block .reasons-header .reason-cards .reason-card ul li:last-child {
  margin-bottom: 0;
}
.beauty-drip .value-section .value-inner .reasons-block .reasons-header .reason-cards .reason-card ul li::before {
  position: absolute;
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 100%;
  background-color: var(--base-darkgray);
  top: 10px;
  left: 0px;
}
.beauty-drip .value-section .cards-container {
  display: flex;
  flex-direction: column;
  gap: 22px;
  width: 100%;
}
.beauty-drip .value-section .cards-container .guide-card {
  width: 100%;
  background: var(--base-white);
  border-radius: 12px;
  border: 1px solid;
  overflow: hidden;
}
.beauty-drip .value-section .cards-container .guide-card .card-header {
  padding: 24px 20px 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  position: relative;
  background-size: cover;
  background-position: center;
}
.beauty-drip .value-section .cards-container .guide-card .card-header::before {
  content: "";
  position: absolute;
  inset: 0;
  background: inherit;
  opacity: 0.6;
}
.beauty-drip .value-section .cards-container .guide-card .card-header > * {
  position: relative;
}
.beauty-drip .value-section .cards-container .guide-card .card-header .card-title-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}
.beauty-drip .value-section .cards-container .guide-card .card-header .card-title-row h3 {
  font-size: 20px;
  font-family: "Bold";
  color: var(--base-white);
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.beauty-drip .value-section .cards-container .guide-card .card-header .card-title-row .badge {
  display: inline-flex;
  align-items: center;
  padding: 3px 8px;
  border-radius: 100px;
  font-size: 12px;
  font-family: "Medium";
  color: var(--base-white);
}
.beauty-drip .value-section .cards-container .guide-card .card-header .card-title-row .badge.green {
  background: var(--green-main);
}
.beauty-drip .value-section .cards-container .guide-card .card-header .card-title-row .badge.sky {
  background: var(--sky-dark);
}
.beauty-drip .value-section .cards-container .guide-card .card-header .card-title-row .badge.blue {
  background: var(--blue-main);
}
.beauty-drip .value-section .cards-container .guide-card .card-header .card-description {
  font-family: "Medium";
  line-height: 1.4;
  color: var(--base-white);
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.beauty-drip .value-section .cards-container .guide-card .card-header .card-description.sm {
  font-size: 14px;
}
.beauty-drip .value-section .cards-container .guide-card .card-header .card-description.xs {
  font-size: 13px;
}
.beauty-drip .value-section .cards-container .guide-card .card-divider {
  height: 2px;
  width: 100%;
}
.beauty-drip .value-section .cards-container .guide-card .card-body {
  background: var(--base-white);
  padding: 20px 20px 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.beauty-drip .value-section .cards-container .guide-card .card-body .step-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.beauty-drip .value-section .cards-container .guide-card .card-body .step-row .step-number {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.beauty-drip .value-section .cards-container .guide-card .card-body .step-row .step-number span {
  font-size: 11px;
  font-family: "Bold";
  color: var(--base-white);
}
.beauty-drip .value-section .cards-container .guide-card .card-body .step-row .step-content {
  flex: 1;
}
.beauty-drip .value-section .cards-container .guide-card .card-body .step-row .step-content h4 {
  font-size: 15px;
  font-family: "Bold";
  line-height: 1.4;
  margin-bottom: 2px;
}
.beauty-drip .value-section .cards-container .guide-card .card-body .step-row .step-content p {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--base-darkgray);
}
.beauty-drip .value-section .cards-container .guide-card .card-body .card-note {
  font-size: 11px;
  font-weight: 400;
  line-height: 1.4;
  color: var(--base-darkgray);
}
.beauty-drip .value-section .cards-container .guide-card.green {
  border-color: var(--green-main);
}
.beauty-drip .value-section .cards-container .guide-card.green .card-header {
  background-color: rgba(18, 114, 44, 0.8);
  background-blend-mode: multiply;
  background-image: url("../img/info/card-header_chat.png");
}
.beauty-drip .value-section .cards-container .guide-card.green .card-divider {
  background: var(--green-main);
}
.beauty-drip .value-section .cards-container .guide-card.green .step-number {
  background: var(--green-dark);
}
.beauty-drip .value-section .cards-container .guide-card.sky {
  border-color: var(--sky-main);
}
.beauty-drip .value-section .cards-container .guide-card.sky .card-header {
  background-color: rgba(25, 159, 180, 0.95);
  background-blend-mode: multiply;
  background-image: url("../img/menu/beauty-drip/card-header_tenteki.png");
}
.beauty-drip .value-section .cards-container .guide-card.sky .card-divider {
  background: var(--sky-main);
}
.beauty-drip .value-section .cards-container .guide-card.sky .step-number {
  background: var(--sky-dark);
}
.beauty-drip .value-section .cards-container .guide-card.blue {
  border-color: var(--blue-main);
}
.beauty-drip .value-section .cards-container .guide-card.blue .card-header {
  background-color: rgba(96, 104, 213, 0.95);
  background-blend-mode: multiply;
  background-image: url("../img/menu/beauty-drip/card-header_chusha.png");
}
.beauty-drip .value-section .cards-container .guide-card.blue .card-divider {
  background: var(--blue-main);
}
.beauty-drip .value-section .cards-container .guide-card.blue .step-number {
  background: var(--blue-dark);
}
.beauty-drip .value-section .cards-container .info-box {
  width: 100%;
  background: var(--base-white);
  border-radius: 8px;
  padding: 12px 16px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.beauty-drip .value-section .cards-container .info-box svg {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  color: var(--base-black);
}
.beauty-drip .value-section .cards-container .info-box span {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--base-black);
}
.beauty-drip .other-menu.sky-bg {
  padding-bottom: 150px;
}

.drip-care .negative .list-box .title-box img.lady02 {
  width: 107px;
}
.drip-care .negative .list-box .title-box img.lady03 {
  width: 107px;
}

.beauty-medicine .section-price h2.wh {
  color: white;
}
.beauty-medicine .section-price .price-content .price-table-card .price-table-head {
  background-color: var(--sky-dark);
  grid-template-columns: 100px 1fr 96px;
}
.beauty-medicine .section-price .price-content .price-table-card .price-table-row {
  grid-template-columns: 100px 1fr 96px;
}
.beauty-medicine .section-price .price-content .price-table-card .price-table-row .col-type {
  color: var(--sky-dark);
  font-family: "Bold";
}
.beauty-medicine .section-price .price-content .price-table-card .price-table-row .col-medicine {
  color: var(--base-darkgray);
  font-weight: normal;
}
.beauty-medicine .section-price .price-content .price-table-card .price-table-row .col-price {
  color: var(--sky-dark);
}
.beauty-medicine .section-price.green-bg {
  margin-top: 50px;
}
.beauty-medicine .section-price.green-bg .price-content .price-table-card .price-table-head {
  display: grid;
  grid-template-columns: 88px 75px 1fr 1fr;
  background-color: var(--green-dark);
}
.beauty-medicine .section-price.green-bg .price-content .price-table-card .price-table-row {
  display: grid;
  grid-template-columns: 88px 75px 1fr 1fr;
}
.beauty-medicine .section-price.green-bg .price-content .price-table-card .price-table-row .col-type {
  color: var(--green-dark);
  font-family: "Bold";
}
.beauty-medicine .section-price.green-bg .price-content .price-table-card .price-table-row .col-medicine {
  color: var(--base-darkgray);
  font-weight: normal;
  text-align: right;
}
.beauty-medicine .section-price.green-bg .price-content .price-table-card .price-table-row .col-price {
  color: var(--green-dark);
  text-align: right;
}
.beauty-medicine .section-price.green-bg .price-content .price-table-card .price-table-row .col-day1 {
  color: var(--base-darkgray);
  font-weight: normal;
  text-align: right;
  font-size: 12px;
}
.beauty-medicine .section-price .simulator {
  margin-top: 40px;
  background-color: var(--sky-blight);
  border-radius: 8px;
  padding: 30px 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.beauty-medicine .section-price .simulator .flex {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
}
.beauty-medicine .section-price .simulator .flex img.icon {
  width: 56px;
}
.beauty-medicine .section-price .simulator .flex p.title {
  font-size: 16px;
  font-family: "Bold";
}
.beauty-medicine .section-price .simulator a.btn-sky {
  background: var(--sky-moredark);
}
.beauty-medicine .experience-showcase {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 35px;
}
.beauty-medicine .experience-showcase h2 {
  font-size: 23px;
  font-family: "Bold";
  line-height: 2.5rem;
  color: var(--base-white);
  text-align: center;
  margin-bottom: 30px;
}
@media screen and (max-width:320px) {
  .beauty-medicine .experience-showcase h2 {
    font-size: 20px;
  }
}
.beauty-medicine .experience-showcase .exp-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}
.beauty-medicine .experience-showcase .exp-list .exp-item {
  position: relative;
  padding-left: 45px;
}
.beauty-medicine .experience-showcase .exp-list .exp-item .exp-card {
  min-height: 92px;
  background: var(--base-white);
  border-radius: 8px;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
  padding: 22px 0 22px 60px;
  display: flex;
  align-items: center;
}
.beauty-medicine .experience-showcase .exp-list .exp-item .exp-card .exp-card-inner {
  display: flex;
  flex-direction: column;
  gap: 9px;
}
.beauty-medicine .experience-showcase .exp-list .exp-item .exp-card .exp-card-inner h3 {
  font-size: 16px;
  font-family: "Bold";
  line-height: 1.25;
}
.beauty-medicine .experience-showcase .exp-list .exp-item .exp-card .exp-card-inner p {
  font-size: 12px;
  font-family: "Medium";
  line-height: 1.5;
  color: var(--base-darkgray);
}
.beauty-medicine .experience-showcase .exp-list .exp-item .exp-icon {
  position: absolute;
  left: 0px;
  top: 50%;
  transform: translateY(-50%);
  width: 92px;
  height: 92px;
  background: var(--green-blight);
  border: 2px solid var(--base-white);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
}
.beauty-medicine .experience-showcase .example {
  margin: 30px auto;
  border: 1px solid var(--green-dark);
  border-radius: 8px;
}
.beauty-medicine .experience-showcase .example p {
  font-size: 18px;
}
.beauty-medicine .experience-showcase .example p.title {
  color: var(--base-white);
  background-color: var(--green-dark);
  border-radius: 8px 8px 0 0;
  padding: 10px 0;
  padding-left: 15px;
  font-size: 15px;
  font-family: "Bold";
}
.beauty-medicine .experience-showcase .example p.mini {
  font-size: 12px;
  color: var(--base-darkgray);
  margin-top: 5px;
}
.beauty-medicine .experience-showcase .example .text {
  padding: 20px;
}
.beauty-medicine .gradation-title p.title {
  line-height: 1.5;
}
.beauty-medicine .infections-section {
  background-color: var(--green-blight);
  padding: 60px 0;
  border-bottom: 3px solid var(--base-white);
}
.beauty-medicine .infections-section h2.infections-heading {
  font-size: 23px;
  color: var(--green-dark);
  text-align: center;
  margin-bottom: 30px;
}
@media screen and (max-width:320px) {
  .beauty-medicine .infections-section h2.infections-heading {
    font-size: 20px;
  }
}
.beauty-medicine .infections-section .infections-list {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.beauty-medicine .infections-section .infections-list .infection-article {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.beauty-medicine .infections-section .infections-list .infection-article .infection-sections {
  display: flex;
  flex-direction: column;
  gap: 11px;
}
.beauty-medicine .infections-section .infections-list .infection-article .infection-sections .info-card {
  background: var(--base-white);
  border-radius: 8px;
  padding: 10px 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.beauty-medicine .infections-section .infections-list .infection-article .infection-sections .info-card .info-card-title {
  font-size: 16px;
  font-family: "Bold";
  line-height: 1.13;
}
.beauty-medicine .infections-section .infections-list .infection-article .infection-sections .info-card .info-card-rows {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.beauty-medicine .infections-section .infections-list .infection-article .infection-sections .info-card .info-card-rows.gap-none {
  gap: 0;
}
.beauty-medicine .infections-section .infections-list .infection-article .infection-sections .info-card .info-card-rows .info-row {
  display: flex;
  gap: 15px;
  align-items: flex-start;
}
.beauty-medicine .infections-section .infections-list .infection-article .infection-sections .info-card .info-card-rows .info-row .info-row-label {
  min-width: 65px;
  font-size: 13px;
  font-family: "Bold";
  line-height: 1.69;
  color: var(--green-dark);
  flex-shrink: 0;
}
.beauty-medicine .infections-section .infections-list .infection-article .infection-sections .info-card .info-card-rows .info-row .info-row-content {
  flex: 1;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.69;
  color: var(--base-darkgray);
}
.beauty-medicine .infections-section .infections-list .infection-article .infection-sections .info-card .info-card-rows .info-row .info-row-content-full {
  width: 100%;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.69;
  color: var(--base-darkgray);
}
.beauty-medicine .infections-section .action-buttons {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 40px;
}
.beauty-medicine .guides-section {
  background: var(--accent-light-gradation);
  padding: 60px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
}
.beauty-medicine .guides-section .guides-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
.beauty-medicine .guides-section .guides-header .logo {
  height: 28px;
  max-width: 314px;
  -o-object-fit: contain;
     object-fit: contain;
}
.beauty-medicine .guides-section .guides-header h2 {
  font-size: 25px;
  font-family: "Bold";
  line-height: 1;
  color: var(--sky-moredark);
  text-shadow: 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff;
  text-align: center;
}
@media screen and (max-width:320px) {
  .beauty-medicine .guides-section .guides-header h2 {
    font-size: 20px;
  }
}
.beauty-medicine .guides-section .cards-container {
  padding: 0 20px;
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.beauty-medicine .guides-section .cards-container .guide-card {
  width: 100%;
  background: var(--base-white);
  border-radius: 12px;
  border: 1px solid;
  overflow: hidden;
}
.beauty-medicine .guides-section .cards-container .guide-card .card-header {
  padding: 24px 20px 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  position: relative;
  background-size: cover;
  background-position: center;
}
.beauty-medicine .guides-section .cards-container .guide-card .card-header::before {
  content: "";
  position: absolute;
  inset: 0;
  background: inherit;
  opacity: 0.6;
}
.beauty-medicine .guides-section .cards-container .guide-card .card-header > * {
  position: relative;
}
.beauty-medicine .guides-section .cards-container .guide-card .card-header .card-title-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}
.beauty-medicine .guides-section .cards-container .guide-card .card-header .card-title-row h3 {
  font-size: 20px;
  font-family: "Bold";
  color: var(--base-white);
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.beauty-medicine .guides-section .cards-container .guide-card .card-header .card-title-row .badge {
  display: inline-flex;
  align-items: center;
  padding: 3px 8px;
  border-radius: 100px;
  font-size: 12px;
  font-family: "Medium";
  color: var(--base-white);
}
.beauty-medicine .guides-section .cards-container .guide-card .card-header .card-title-row .badge.green {
  background: var(--green-main);
}
.beauty-medicine .guides-section .cards-container .guide-card .card-header .card-title-row .badge.sky {
  background: var(--sky-dark);
}
.beauty-medicine .guides-section .cards-container .guide-card .card-header .card-title-row .badge.blue {
  background: var(--blue-main);
}
.beauty-medicine .guides-section .cards-container .guide-card .card-header .card-description {
  font-family: "Medium";
  line-height: 1.4;
  color: var(--base-white);
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.beauty-medicine .guides-section .cards-container .guide-card .card-header .card-description.sm {
  font-size: 14px;
}
.beauty-medicine .guides-section .cards-container .guide-card .card-header .card-description.xs {
  font-size: 13px;
}
.beauty-medicine .guides-section .cards-container .guide-card .card-divider {
  height: 2px;
  width: 100%;
}
.beauty-medicine .guides-section .cards-container .guide-card .card-body {
  background: var(--base-white);
  padding: 20px 20px 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.beauty-medicine .guides-section .cards-container .guide-card .card-body .step-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.beauty-medicine .guides-section .cards-container .guide-card .card-body .step-row .step-number {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.beauty-medicine .guides-section .cards-container .guide-card .card-body .step-row .step-number span {
  font-size: 11px;
  font-family: "Bold";
  color: var(--base-white);
}
.beauty-medicine .guides-section .cards-container .guide-card .card-body .step-row .step-content {
  flex: 1;
}
.beauty-medicine .guides-section .cards-container .guide-card .card-body .step-row .step-content h4 {
  font-size: 15px;
  font-family: "Bold";
  line-height: 1.4;
  margin-bottom: 2px;
}
.beauty-medicine .guides-section .cards-container .guide-card .card-body .step-row .step-content p {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--base-darkgray);
}
.beauty-medicine .guides-section .cards-container .guide-card .card-body .card-note {
  font-size: 11px;
  font-weight: 400;
  line-height: 1.4;
  color: var(--base-darkgray);
}
.beauty-medicine .guides-section .cards-container .guide-card.green {
  border-color: var(--green-main);
}
.beauty-medicine .guides-section .cards-container .guide-card.green .card-header {
  background-color: rgba(18, 114, 44, 0.8);
  background-blend-mode: multiply;
  background-image: url("../img/info/card-header_chat.png");
}
.beauty-medicine .guides-section .cards-container .guide-card.green .card-divider {
  background: var(--green-main);
}
.beauty-medicine .guides-section .cards-container .guide-card.green .step-number {
  background: var(--green-dark);
}
.beauty-medicine .guides-section .cards-container .guide-card.sky {
  border-color: var(--sky-main);
}
.beauty-medicine .guides-section .cards-container .guide-card.sky .card-header {
  background-color: rgba(25, 159, 180, 0.8);
  background-blend-mode: multiply;
  background-image: url("../img/info/card-header_online.png");
}
.beauty-medicine .guides-section .cards-container .guide-card.sky .card-divider {
  background: var(--sky-main);
}
.beauty-medicine .guides-section .cards-container .guide-card.sky .step-number {
  background: var(--sky-dark);
}
.beauty-medicine .guides-section .cards-container .guide-card.blue {
  border-color: var(--blue-main);
}
.beauty-medicine .guides-section .cards-container .guide-card.blue .card-header {
  background-color: rgba(96, 104, 213, 0.8);
  background-blend-mode: multiply;
  background-image: url("../img/info/card-header_clinic.png");
}
.beauty-medicine .guides-section .cards-container .guide-card.blue .card-divider {
  background: var(--blue-main);
}
.beauty-medicine .guides-section .cards-container .guide-card.blue .step-number {
  background: var(--blue-dark);
}
.beauty-medicine .guides-section .cards-container .info-box {
  width: 100%;
  background: var(--base-white);
  border-radius: 8px;
  padding: 12px 16px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.beauty-medicine .guides-section .cards-container .info-box svg {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  color: var(--base-black);
}
.beauty-medicine .guides-section .cards-container .info-box span {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--base-black);
}
.beauty-medicine button.btn-cta {
  display: block;
  width: 100%;
  padding: 18px 24px;
  border: 1px solid var(--base-white);
  border-radius: 8px;
  font-family: "Noto Sans JP", Helvetica, sans-serif;
  font-size: 15px;
  font-family: "Bold";
  line-height: normal;
  color: var(--base-white);
  text-align: center;
  cursor: pointer;
  text-decoration: none;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
  transition: opacity 0.2s;
}
.beauty-medicine button.btn-cta.btn-sky {
  background: var(--sky-moredark);
}
.beauty-medicine button.btn-cta:hover {
  opacity: 0.88;
}

.medical-diet .top-title .point {
  padding: 0 12px 35px;
}
.medical-diet .top-title .point p.main-text {
  margin-bottom: 20px;
}
.medical-diet .section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table thead th:first-child {
  width: 100px;
}
.medical-diet .section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table thead th:nth-child(2) {
  width: 110px;
}
.medical-diet .section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table tbody td:first-child {
  width: 100px;
}
.medical-diet .section-price-detail .content-blocks .ingredient-table-wrap .ingredient-table tbody td:nth-child(2) {
  width: 110px;
}
.medical-diet .three-type-medicine .inner {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.medical-diet .three-type-medicine .inner .hero {
  text-align: center;
  padding: 32px 16px 24px;
  border-radius: 12px;
}
.medical-diet .three-type-medicine .inner .hero h2 {
  font-size: 25px;
  font-family: "Bold";
  color: white;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
  margin-bottom: 16px;
}
@media screen and (max-width:320px) {
  .medical-diet .three-type-medicine .inner .hero h2 {
    font-size: 20px;
  }
}
.medical-diet .three-type-medicine .inner .hero p {
  font-size: 14px;
  font-family: "Medium";
  color: white;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
}
.medical-diet .three-type-medicine .card {
  background: white;
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}
.medical-diet .three-type-medicine .card img.card-image {
  width: 100%;
  height: 140px;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.medical-diet .three-type-medicine .card .card-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 26px;
  padding: 20px 0 30px;
}
.medical-diet .three-type-medicine .card .card-header .card-title-block {
  width: 100%;
  max-width: 300px;
}
.medical-diet .three-type-medicine .card .card-header .card-title-block h2 {
  font-size: 20px;
  font-family: "Bold";
  line-height: 1.4;
  color: var(--base-black);
  margin-bottom: 6px;
}
.medical-diet .three-type-medicine .card .card-header .card-title-block p {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--base-black);
}
.medical-diet .three-type-medicine .card .card-header .info-rows {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  padding: 0 20px;
}
.medical-diet .three-type-medicine .card .card-header .info-rows .info-row {
  display: flex;
  width: 100%;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
  border-radius: 8px;
  overflow: hidden;
}
.medical-diet .three-type-medicine .card .card-header .info-rows .info-row .info-label {
  width: 85px;
  min-width: 85px;
  display: flex;
  align-items: center;
  padding: 12px 0 12px 11px;
  border-radius: 8px 0 0 8px;
}
.medical-diet .three-type-medicine .card .card-header .info-rows .info-row .info-label span {
  font-size: 14px;
  font-family: "Medium";
  color: white;
  white-space: nowrap;
}
.medical-diet .three-type-medicine .card .card-header .info-rows .info-row .info-value {
  flex: 1;
  display: flex;
  align-items: center;
  padding: 12px 11px;
  background: white;
  border-radius: 0 8px 8px 0;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.47;
  color: var(--base-black);
}
.medical-diet .three-type-medicine .rec-note {
  width: 100%;
  max-width: 342px;
  font-size: 13px;
  line-height: 1.69;
  color: var(--base-black);
  padding: 0 20px;
}
.medical-diet .three-type-medicine .btn-detail {
  padding: 5px 30px;
  background: var(--base-black);
  color: white;
  border: none;
  border-radius: 100px;
  font-family: "Noto Sans JP", Helvetica, sans-serif;
  font-size: 15px;
  font-family: "Bold";
  line-height: 1.6;
  cursor: pointer;
  text-decoration: none;
  transition: opacity 0.15s;
  position: relative;
}
.medical-diet .three-type-medicine .btn-detail::before {
  position: absolute;
  content: "";
  width: 10px;
  height: 2px;
  background: var(--base-white);
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
}
.medical-diet .three-type-medicine .btn-detail::after {
  position: absolute;
  content: "";
  width: 10px;
  height: 2px;
  background: var(--base-white);
  top: 50%;
  right: 10px;
  transform: translateY(-50%) rotate(90deg);
}
.medical-diet .three-type-medicine .btn-detail:hover {
  opacity: 0.85;
}
.medical-diet .three-type-medicine .medical-type {
  background: white;
  padding: 20px 24px 40px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.medical-diet .three-type-medicine .medical-type .detail-title {
  font-size: 18px;
  font-family: "Bold";
  color: var(--base-black);
  margin-bottom: 4px;
}
.medical-diet .three-type-medicine .medical-type .detail-label {
  font-size: 12px;
  font-weight: 400;
}
.medical-diet .three-type-medicine .medical-type .description {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.71;
  color: var(--base-black);
}
.medical-diet .three-type-medicine .medical-type .effects-title {
  font-size: 13px;
  font-family: "Bold";
  color: var(--base-black);
  margin-bottom: 8px;
}
.medical-diet .three-type-medicine .medical-type .effects-list {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.69;
  color: var(--base-darkgray);
}
.medical-diet .three-type-medicine .medical-type .callout {
  border-radius: 8px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  background: var(--green-blight);
}
.medical-diet .three-type-medicine .medical-type .callout-title {
  font-size: 13px;
  font-family: "Bold";
}
.medical-diet .three-type-medicine .medical-type .callout-text {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.69;
  color: var(--base-black);
}
.medical-diet .three-type-medicine .medical-type .pricing-title {
  font-size: 14px;
  font-family: "Bold";
  color: var(--base-black);
  margin-bottom: 12px;
}
.medical-diet .three-type-medicine .medical-type .scroll-wrapper {
  width: 100%;
  max-width: 285px;
  overflow-x: auto;
  border-radius: 8px;
}
.medical-diet .three-type-medicine .medical-type .pricing-table {
  width: 100%;
  min-width: 340px;
  border-collapse: collapse;
  border-radius: 8px;
  overflow: hidden;
}
.medical-diet .three-type-medicine .medical-type .pricing-table-full {
  width: 100%;
  border-collapse: collapse;
  border-radius: 8px;
  overflow: hidden;
}
.medical-diet .three-type-medicine .medical-type .pricing-table th, .medical-diet .three-type-medicine .medical-type .pricing-table-full th {
  padding: 10px 4px;
  text-align: center;
  font-size: 12px;
  font-family: "Bold";
  color: white;
}
.medical-diet .three-type-medicine .medical-type .pricing-table td, .medical-diet .three-type-medicine .medical-type .pricing-table-full td {
  padding: 10px 4px;
  text-align: center;
  font-size: 12px;
  font-weight: 400;
  color: var(--base-black);
  border-bottom: 1px solid #eaeaea;
}
.medical-diet .three-type-medicine .medical-type .pricing-table-full td {
  font-size: 13px;
  padding: 10px 12px;
  text-align: left;
}
.medical-diet .three-type-medicine .medical-type .pricing-table-full td:last-child {
  white-space: nowrap;
}
.medical-diet .three-type-medicine .medical-type .row-highlight {
  background: var(--green-blight);
}
.medical-diet .three-type-medicine .medical-type .row-normal {
  background: white;
}
.medical-diet .three-type-medicine .highlighted-price {
  display: flex;
  align-items: center;
  gap: 8px;
  border-radius: 8px;
  padding: 16px;
  height: 50px;
  background: var(--blue-blight);
}
.medical-diet .three-type-medicine .highlighted-price .left {
  font-size: 13px;
  font-weight: 400;
  color: var(--base-black);
  width: 150px;
}
.medical-diet .three-type-medicine .highlighted-price .right {
  font-size: 15px;
  font-family: "Bold";
  color: var(--base-black);
  white-space: nowrap;
}
.medical-diet .three-type-medicine .footer-link {
  font-size: 13px;
  font-family: "Bold";
  line-height: 1.69;
  text-decoration: underline;
  color: var(--green-dark);
}
.medical-diet .three-type-medicine .footer-note {
  font-size: 12px;
  font-weight: 400;
  color: var(--base-darkgray);
}
.medical-diet .three-type-medicine .accent-green {
  background: var(--green-dark);
}
.medical-diet .three-type-medicine .accent-sky {
  background: var(--sky-dark);
}
.medical-diet .three-type-medicine .accent-blue {
  background: var(--blue-dark);
}
.medical-diet .three-type-medicine .text-green {
  color: var(--green-dark);
}
.medical-diet .three-type-medicine .text-sky {
  color: var(--sky-moredark);
}
.medical-diet .three-type-medicine .text-blue {
  color: var(--blue-dark);
}
.medical-diet .type .service-section .section-header img.character.char-lg {
  width: 124px;
}
.medical-diet .type .service-section .section-header img.character.char-sm {
  width: 103px;
}
.medical-diet .other-menu {
  margin-top: 50px;
  padding-bottom: 250px;
}
.medical-diet .other-menu .btn-box {
  gap: 20px;
}
.medical-diet .other-menu .btn-box a.menu-btn {
  gap: 10px;
}
.medical-diet .other-menu .btn-box a.menu-btn img {
  width: 185px;
}
.medical-diet .other-menu .btn-box a.menu-btn .text p.name {
  font-size: 18px;
}

.manjaro .top-title .point {
  padding: 0 12px 35px;
}
.manjaro .top-title .point p.main-text {
  margin-bottom: 20px;
}
.manjaro .reason-section {
  padding: 120px 0 60px;
  background: url(../img/common/hero-titlebg.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
}
.manjaro .reason-section .section-title {
  margin-bottom: 35px;
}
.manjaro .reason-section .section-title img {
  width: 300px;
  margin: 0 auto 15px;
}
.manjaro .reason-section .exp-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}
.manjaro .reason-section .exp-list .exp-item {
  position: relative;
  padding-left: 45px;
}
.manjaro .reason-section .exp-list .exp-item .exp-card {
  min-height: 92px;
  background: var(--base-white);
  border-radius: 8px;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
  padding: 22px 0 22px 60px;
  display: flex;
  align-items: center;
}
.manjaro .reason-section .exp-list .exp-item .exp-card .exp-card-inner {
  display: flex;
  flex-direction: column;
  gap: 9px;
}
.manjaro .reason-section .exp-list .exp-item .exp-card .exp-card-inner h3 {
  font-size: 16px;
  font-family: "Bold";
  line-height: 1.25;
}
.manjaro .reason-section .exp-list .exp-item .exp-card .exp-card-inner p {
  font-size: 12px;
  font-family: "Medium";
  line-height: 1.5;
  color: var(--base-darkgray);
}
.manjaro .reason-section .exp-list .exp-item .exp-icon {
  position: absolute;
  left: 0px;
  top: 50%;
  transform: translateY(-50%);
  width: 92px;
  height: 92px;
  background: var(--blue-blight);
  border: 2px solid var(--base-white);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
}
.manjaro .about-manjaro {
  width: 100%;
  padding: 60px 0;
  background: url(../img/menu/medical-diet/manjaro/about-manjaro-bg.png);
  background-position: top;
  background-size: cover;
  background-repeat: no-repeat;
}
.manjaro .about-manjaro .section-inner {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
}
.manjaro .about-manjaro .section-inner .section-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  text-align: center;
}
.manjaro .about-manjaro .section-inner .section-header .badge {
  display: inline-block;
  background-color: var(--green-dark);
  color: var(--base-white);
  font-size: 16px;
  font-family: "Bold";
  line-height: 30px;
  padding: 3px 20px;
  border-radius: 100px;
}
.manjaro .about-manjaro .section-inner .section-header .section-title {
  font-size: 25px;
  font-family: "Bold";
  line-height: 1.3;
  color: var(--green-dark);
}
.manjaro .about-manjaro .section-inner .content-group {
  display: flex;
  flex-direction: column;
  gap: 40px;
  width: 100%;
}
.manjaro .about-manjaro .section-inner .content-group .content-block {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}
.manjaro .about-manjaro .section-inner .content-group .content-block .block-header {
  border-bottom: 1px solid var(--green-dark);
  padding-bottom: 10px;
}
.manjaro .about-manjaro .section-inner .content-group .content-block .block-header .block-title {
  font-size: 20px;
  font-family: "Bold";
  line-height: 1.3;
}
.manjaro .about-manjaro .section-inner .content-group .content-block .block-text {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7;
}
.manjaro .about-manjaro .section-inner .content-group .content-block table.green-table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid var(--green-dark);
  border-radius: 8px;
  overflow: hidden;
}
.manjaro .about-manjaro .section-inner .content-group .content-block table.green-table thead tr {
  background-color: var(--green-dark);
}
.manjaro .about-manjaro .section-inner .content-group .content-block table.green-table thead th {
  color: var(--base-white);
  font-size: 12px;
  font-family: "Bold";
  line-height: 1.5;
  padding: 10px 12px;
  text-align: left;
  vertical-align: top;
}
.manjaro .about-manjaro .section-inner .content-group .content-block table.green-table tbody tr {
  border-bottom: 1px solid var(--green-dark);
}
.manjaro .about-manjaro .section-inner .content-group .content-block table.green-table tbody tr:last-child {
  border-bottom: none;
}
.manjaro .about-manjaro .section-inner .content-group .content-block table.green-table tbody td {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  padding: 10px 12px;
  background-color: var(--base-white);
  vertical-align: top;
}
.manjaro .about-manjaro .section-inner .content-group .content-block table.green-table tbody td.label-col {
  font-family: "Medium";
}
.manjaro .about-manjaro .section-inner .content-group .content-block ul.bullet-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.manjaro .about-manjaro .section-inner .content-group .content-block ul.bullet-list li {
  display: flex;
  align-items: flex-start;
  font-size: 13px;
  line-height: 1.55;
}
.manjaro .about-manjaro .section-inner .content-group .content-block ul.bullet-list li::before {
  content: "・";
  color: var(--green-dark);
  flex-shrink: 0;
  margin-right: 2px;
}
.manjaro .section-compare {
  width: 100%;
  padding: 60px 0;
}
.manjaro .section-compare .compare-inner {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 28px;
}
.manjaro .section-compare .compare-inner .compare-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.manjaro .section-compare .compare-inner .compare-header .gradient-badge {
  display: inline-block;
  background: var(--accent-gradation);
  color: var(--base-white);
  font-size: 16px;
  font-family: "Bold";
  line-height: 30px;
  padding: 3px 20px;
  border-radius: 100px;
}
.manjaro .section-compare .compare-inner .compare-header .compare-title {
  font-size: 25px;
  font-family: "Bold";
  line-height: 1.3;
  text-align: center;
}
.manjaro .section-compare .compare-inner .compare-table-wrapper {
  width: 100%;
}
.manjaro .section-compare .compare-inner .compare-table-wrapper table.compare-table {
  width: 100%;
  border-collapse: collapse;
}
.manjaro .section-compare .compare-inner .compare-table-wrapper table.compare-table thead tr.col-header-row td {
  height: 53px;
  text-align: center;
  font-size: 13px;
  font-family: "Bold";
  line-height: 1.3;
  color: var(--base-white);
  padding: 10px 12px;
  vertical-align: middle;
}
.manjaro .section-compare .compare-inner .compare-table-wrapper table.compare-table thead tr.col-header-row td.td-empty {
  width: 80px;
  background: transparent;
}
.manjaro .section-compare .compare-inner .compare-table-wrapper table.compare-table thead tr.col-header-row td.td-femuse {
  background: linear-gradient(126deg, #95ef80 0%, #5bcadb 50%, #9097f0 100%);
  border-radius: 8px 0 0 0;
}
.manjaro .section-compare .compare-inner .compare-table-wrapper table.compare-table thead tr.col-header-row td.td-market {
  background-color: var(--base-darkgray);
  border-radius: 0 8px 0 0;
}
.manjaro .section-compare .compare-inner .compare-table-wrapper table.compare-table tbody tr td {
  vertical-align: middle;
  padding: 10px 8px;
  min-height: 59px;
  text-align: center;
  font-size: 12px;
  line-height: 1.4;
  border-bottom: 1px solid var(--base-darkgray);
}
.manjaro .section-compare .compare-inner .compare-table-wrapper table.compare-table tbody tr td.td-label {
  width: 80px;
  background-color: var(--base-black);
  color: var(--base-white);
  font-size: 12px;
  font-family: "Bold";
}
.manjaro .section-compare .compare-inner .compare-table-wrapper table.compare-table tbody tr td.td-femuse-val {
  background-color: var(--green-blight);
  color: var(--base-black);
  font-family: "Bold";
}
.manjaro .section-compare .compare-inner .compare-table-wrapper table.compare-table tbody tr td.td-market-val {
  background-color: var(--base-blightgray);
  color: var(--base-black);
  font-weight: 400;
}
.manjaro .section-compare .compare-inner .compare-table-wrapper table.compare-table tbody tr td.td-market-val.text-sm {
  font-size: 14px;
}
.manjaro .section-compare .compare-inner .compare-table-wrapper table.compare-table tbody tr:last-child td {
  border-bottom: none;
}
.manjaro .price-section.green-bg h2.header-title {
  margin-bottom: 40px;
}
.manjaro .price-section.green-bg .price-inner {
  display: flex;
  flex-direction: column;
  gap: 25px;
  margin-bottom: 30px;
}
.manjaro .price-section.green-bg .price-inner .other-money {
  background-color: var(--green-blight);
  border-radius: 8px;
  padding: 20px;
}
.manjaro .price-section.green-bg .price-inner .other-money p.title {
  font-family: "Bold";
  color: var(--green-dark);
  margin-bottom: 10px;
}
.manjaro .price-section.green-bg .price-inner .other-money ul li {
  margin-bottom: 5px;
  margin-left: 10px;
  font-size: 14px;
}
.manjaro .price-section.green-bg .price-inner table.green-table {
  width: 100%;
  border-collapse: collapse;
  border-radius: 8px 8px 0 0;
  overflow: hidden;
}
.manjaro .price-section.green-bg .price-inner table.green-table thead {
  border: 1px solid var(--green-dark);
}
.manjaro .price-section.green-bg .price-inner table.green-table thead tr {
  background-color: var(--green-dark);
}
.manjaro .price-section.green-bg .price-inner table.green-table thead th {
  color: var(--base-white);
  font-size: 12px;
  font-family: "Bold";
  line-height: 1.5;
  padding: 10px 11px;
  text-align: left;
  vertical-align: top;
}
.manjaro .price-section.green-bg .price-inner table.green-table tbody {
  border: 1px solid var(--green-dark);
}
.manjaro .price-section.green-bg .price-inner table.green-table tbody tr {
  border: 1px solid var(--green-dark);
  border-bottom: 1px solid var(--green-dark);
}
.manjaro .price-section.green-bg .price-inner table.green-table tbody td {
  border: 1px solid var(--green-dark);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  padding: 10px 12px;
  background-color: var(--base-white);
  vertical-align: top;
}
.manjaro .price-section.green-bg .price-inner table.green-table tbody td.label-col {
  font-family: "Medium";
}
.manjaro .price-section.green-bg .price-inner .first-price h3 {
  font-size: 16px;
  font-family: "Bold";
  margin-bottom: 15px;
}
.manjaro .price-section.green-bg p.ano {
  font-size: 12px;
  color: var(--base-darkgray);
}
.manjaro .two-flow .to-first {
  border: 1px solid var(--base-darkgray);
  border-radius: 8px;
  padding: 30px 20px;
  margin-top: 25px;
}
.manjaro .two-flow .to-first h3 {
  text-align: center;
  color: var(--base-darkgray);
  margin-bottom: 10px;
  font-family: "Bold";
  font-size: 18px;
}
.manjaro .other-menu {
  margin-top: 50px;
  padding-bottom: 0;
}
.manjaro .other-menu .btn-box a.menu-btn {
  gap: 15px;
}
.manjaro .other-menu .btn-box a.menu-btn img {
  width: 165px;
}
.manjaro .other-menu .btn-box a.menu-btn .text p.name {
  font-size: 18px;
  margin-bottom: 5px;
}
.manjaro .other-menu .btn-box a.menu-btn .text p.desc {
  font-size: 12px;
  color: var(--base-darkgray);
}

.botox .top-title .text h1 {
  font-size: 25px;
}
.botox .set-plan {
  background: var(--accent-light-gradation);
}
.botox .set-plan .plan-top {
  display: flex;
  flex-direction: column;
  gap: 25px;
}
.botox .set-plan .plan-top .header-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
.botox .set-plan .plan-top .header-inner .badge {
  display: inline-flex;
  overflow: hidden;
  border-radius: 100px;
  background: var(--sky-dark);
  padding: 8px 20px;
}
.botox .set-plan .plan-top .header-inner .badge span {
  font-size: 15px;
  font-family: "Bold";
  line-height: 1;
  color: var(--base-white);
  white-space: nowrap;
}
.botox .set-plan .plan-top .header-inner h2 {
  width: 100%;
  font-size: 32px;
  font-family: "Bold";
  line-height: 1.25;
  letter-spacing: 0;
  color: var(--sky-dark);
  text-align: center;
  text-shadow: 0 0 10px var(--base-white);
}
.botox .set-plan .plan-top p.header-desc {
  width: 100%;
  font-size: 13px;
  font-weight: 400;
  line-height: 22px;
  text-align: center;
  margin-bottom: 40px;
}
.botox .set-plan .plan-top p.header-desc .highlight {
  font-family: "Bold";
  color: var(--sky-moredark);
}
.botox .set-plan .plan-list {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.botox .set-plan .card {
  overflow: hidden;
  border-radius: 8px;
  border: 0;
  background: var(--base-white);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.botox .set-plan .card .card-image {
  position: relative;
  height: 140px;
  width: 100%;
  display: flex;
  align-items: flex-start;
}
.botox .set-plan .card .card-image.plan1 {
  background: url("../img/menu/botox/botox-var01.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.botox .set-plan .card .card-image.plan2 {
  background: url("../img/menu/botox/botox-var02.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.botox .set-plan .card .card-image.plan3 {
  background: url("../img/menu/botox/botox-var03.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.botox .set-plan .card .card-image .savings-badge {
  margin-left: 9px;
  margin-top: 12px;
  display: inline-flex;
  height: 27px;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  background: var(--accent-gradation);
  padding: 5px 10px 6px;
  white-space: nowrap;
  z-index: 1;
}
.botox .set-plan .card .card-image .savings-badge span {
  font-size: 12px;
  font-family: "Bold";
  line-height: 1;
  color: var(--base-white);
}
.botox .set-plan .card-body {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 20px;
}
.botox .set-plan .card-body .card-header-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.botox .set-plan .card-body .card-header-row .plan-title-wrap {
  min-width: 0;
  flex: 1;
  font-family: "Bold";
  color: var(--base-black);
}
.botox .set-plan .card-body .card-header-row .plan-title-wrap h2.plan-title {
  font-size: 20px;
  line-height: 1.5;
  text-align: left;
}
.botox .set-plan .card-body .card-header-row .plan-title-wrap .plan-subtitle {
  display: block;
  font-size: 14px;
  line-height: 1.4;
}
.botox .set-plan .card-body .card-header-row .price-wrap {
  flex-shrink: 0;
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 3px;
  text-align: right;
}
.botox .set-plan .card-body .card-header-row .price-wrap .price {
  font-size: 22px;
  font-family: "Bold";
  line-height: 30px;
  color: var(--sky-dark);
  white-space: nowrap;
}
.botox .set-plan .card-body .card-header-row .price-wrap .regular-price {
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
  color: var(--basedarkgray);
  white-space: nowrap;
}
.botox .set-plan .card-body .plan-desc {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--baseblack);
}
.botox .negative .list-box img.lady.lady02 {
  top: 23%;
  right: 2px;
}
.botox .flow-section h2.header-title {
  margin-bottom: 30px;
}
.botox .other-menu {
  margin-top: 50px;
}
.botox .first-fee h2.header-title {
  margin-bottom: 30px;
}
.botox .first-fee .first-fee-inner {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.botox .first-fee .first-fee-inner .price {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.botox .first-fee .first-fee-inner .price .box {
  background: var(--base-white);
  border-radius: 8px;
  padding: 10px 20px;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.2);
}
.botox .first-fee .first-fee-inner .price .box p {
  font-family: "Bold";
}
.botox .first-fee .first-fee-inner .price .box p.ano {
  color: var(--base-darkgray);
  font-size: 13px;
  margin-top: 5px;
  font-weight: normal;
}
.botox .first-fee .first-fee-inner .price .box p.ano a {
  display: inline;
  text-decoration: underline;
  color: var(--blue-dark);
  font-family: "Bold";
}
.botox .first-fee .first-fee-inner .about-neuronox {
  margin-top: 30px;
  border: 1px solid var(--blue-dark);
  border-radius: 8px;
  padding: 30px 20px;
  display: flex;
  flex-direction: column;
  background-color: var(--base-white);
  gap: 20px;
}
.botox .first-fee .first-fee-inner .about-neuronox h3 {
  text-align: center;
  font-size: 20px;
  font-family: "Bold";
}
.botox .first-fee .first-fee-inner .about-neuronox .content p.title {
  font-size: 16px;
  color: var(--blue-dark);
  font-family: "Bold";
  margin-bottom: 10px;
}
.botox .first-fee .first-fee-inner .about-neuronox .content p.ano {
  font-size: 12px;
  color: var(--base-darkgray);
}
.botox .botox-menu .card {
  background: var(--base-white);
  border-radius: 8px;
  padding: 0;
  margin-bottom: 30px;
}
.botox .botox-menu .card:last-child {
  margin-bottom: 0;
}
.botox .botox-menu .card .card-content {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 32px 24px 30px;
}
.botox .botox-menu .card .card-content .section-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  text-align: center;
}
.botox .botox-menu .card .card-content .section-header .section-title {
  font-size: 26px;
  font-family: "Bold";
  line-height: 2.5rem;
}
.botox .botox-menu .card .card-content .section-header .badge {
  display: inline-block;
  border-radius: 100px;
  padding: 5px 20px;
  font-size: 14px;
  font-family: "Bold";
  line-height: 1;
}
.botox .botox-menu .card .card-content img.face-image {
  width: 100%;
  height: auto;
  display: block;
  padding-top: 8px;
}
.botox .botox-menu .card .card-content .treatment-list {
  display: flex;
  flex-direction: column;
}
.botox .botox-menu .card .card-content .treatment-list .treatment-item {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 16px 0;
}
.botox .botox-menu .card .card-content .treatment-list .treatment-item .treatment-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.botox .botox-menu .card .card-content .treatment-list .treatment-item .treatment-row .treatment-name {
  font-size: 18px;
  font-family: "Bold";
  line-height: 1.5;
}
.botox .botox-menu .card .card-content .treatment-list .treatment-item .treatment-row .treatment-price {
  font-size: 16px;
  font-family: "Bold";
  line-height: 1.5;
  white-space: nowrap;
}
.botox .botox-menu .card .card-content .treatment-list .treatment-item .treatment-desc {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.67;
  color: var(--base-black);
}
.botox .botox-menu .card .card-content .treatment-list .treatment-item .treatment-note {
  font-size: 11px;
  font-weight: 400;
  line-height: 1.45;
  color: var(--base-darkgray);
}
.botox .botox-menu .card .card-content .treatment-list .separator {
  height: 1px;
  background: var(--base-gray);
  border: none;
}
.botox .botox-menu .card.face-card {
  border: 1px solid var(--green-main);
}
.botox .botox-menu .card.face-card .card-content .section-header h2.section-title {
  color: var(--green-dark);
}
.botox .botox-menu .card.face-card .card-content .section-header span.badge {
  background: var(--green-light);
  color: var(--green-dark);
}
.botox .botox-menu .card.face-card .card-content .treatment-list .treatment-item .treatment-row p.treatment-price {
  color: var(--green-dark);
}
.botox .botox-menu .card.masseter-card {
  border: 1px solid var(--sky-main);
}
.botox .botox-menu .card.masseter-card .card-content .section-header h2.section-title {
  color: var(--sky-moredark);
}
.botox .botox-menu .card.masseter-card .card-content .section-header span.badge {
  background: var(--sky-light);
  color: var(--sky-moredark);
}
.botox .botox-menu .card.masseter-card .card-content .treatment-list .treatment-item .treatment-row p.treatment-price {
  color: var(--sky-moredark);
}
.botox .botox-menu .card.body-card {
  border: 1px solid var(--blue-main);
}
.botox .botox-menu .card.body-card .card-content .section-header h2.section-title {
  color: var(--blue-dark);
}
.botox .botox-menu .card.body-card .card-content .section-header span.badge {
  background: var(--blue-light);
  color: var(--blue-dark);
}
.botox .botox-menu .card.body-card .card-content .treatment-list .treatment-item .treatment-row p.treatment-price {
  color: var(--blue-dark);
}

.xolair {
  margin-top: 90px;
}
.xolair section {
  padding: 50px 0;
}
.xolair h2.section-title {
  font-family: "Bold";
  font-size: 32px;
  color: #3b3978;
  text-align: center;
  margin-bottom: 60px;
  position: relative;
}
.xolair .symptom h2.section-title, .xolair h2.section-title {
  font-size: 23px;
}
.xolair h2.section-title::after {
  position: absolute;
  content: "";
  width: 45px;
  bottom: -25px;
  left: 50%;
  transform: translateX(-50%);
  border-bottom: solid 2px #3B3978;
}
.xolair a {
  text-decoration: none;
}
.xolair a.btn {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.5rem 1rem;
  padding-left: 1.5rem;
  border: none;
  border-start-start-radius: 1.5rem;
  border-end-start-radius: 1.5rem;
  font-family: "Noto Sans JP", sans-serif;
  font-family: "Medium";
  font-size: 14px;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s;
  position: relative;
}
.xolair a.btn::before {
  display: none;
}
.xolair a.btn:hover {
  opacity: 0.9;
}
.xolair a.btn.btn-line {
  background-color: #E06A3F;
  margin-bottom: 3px;
}
.xolair a.btn.btn-orange {
  background-color: #e0693e;
  margin-bottom: 3px;
}
.xolair a.btn.btn-purple {
  background-color: #3b3978;
}
.xolair a.btn img {
  flex-shrink: 0;
  width: 32px;
}
.xolair .hero {
  position: relative;
  height: 901px;
  background: url(../img/menu/xolair/hero-section.png) no-repeat center/cover;
  overflow: hidden;
  margin-top: -40px;
}
.xolair .hero-bg {
  position: absolute;
  top: 25px;
  left: 0;
  width: 100%;
  height: 905px;
  -o-object-fit: cover;
     object-fit: cover;
}
.xolair .hero-mask {
  position: absolute;
  top: 148px;
  left: 0;
  width: 100%;
  height: 472px;
  -o-object-fit: cover;
     object-fit: cover;
}
.xolair .hero-title-1 {
  position: absolute;
  top: 74px;
  left: 0;
  right: 0;
  padding: 0 10px;
  font-family: "Bold";
  font-size: 32px;
  line-height: 1.4;
}
.xolair .hero-title-blue {
  color: #64abd9;
}
.xolair .hero-title-normal {
  color: #3b3978;
  font-size: 21px;
  display: block;
}
.xolair .hero-highlight-bg {
  position: relative;
  top: 105px;
  left: 0;
  right: 0;
  margin: 0 10px;
  background: #64abd9;
  width: 245px;
  height: 57px;
}
.xolair .hero-title-2 {
  position: absolute;
  left: 6px;
  right: 0;
  padding: 0;
  font-family: "Bold";
  color: white;
  line-height: 1.2;
  font-size: 38px;
  top: 4px;
}
.xolair .hero-title-3 {
  position: absolute;
  top: 13px;
  font-family: "Bold";
  color: #3b3978;
  right: -88px;
  font-size: 28px;
}
.xolair .hero-card {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  width: 90%;
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(7px);
  border: 1.42px solid #e2e1ed;
  border-radius: 14px;
  padding: 30px 20px;
  top: 320px;
}
.xolair .hero-card-product {
  width: 75px;
  height: 64px;
  margin-bottom: 10px;
}
.xolair .hero-card-title {
  font-size: 52px;
  font-family: "Bold";
  color: #3b3978;
  margin-bottom: 5px;
}
.xolair .hero-card-title-sub {
  font-size: 24px;
  font-family: "Bold";
  color: #3b3978;
  margin-left: 10px;
}
.xolair .hero-card-subtitle {
  font-size: 20px;
  font-family: "Medium";
  color: #3b3978;
  margin-bottom: 30px;
}
.xolair .xolair-brand-title {
  text-align: center;
  margin-bottom: 10px;
  line-height: 1;
  padding-left: 40px;
  position: relative;
}
.xolair .xolair-brand-title::before {
  position: absolute;
  content: "";
  width: 74px;
  height: 64px;
  top: 55%;
  transform: translateY(-50%);
  left: -10px;
  background: url(../img/menu/xolair/injection-image.png) no-repeat center/100%;
}
.xolair .xolair-brand-name {
  font-family: "Bold";
  font-size: 45px;
  color: #3b3978;
}
.xolair .xolair-brand-suffix {
  font-size: 24px;
  font-family: "Bold";
  color: #3b3978;
}
.xolair .xolair-brand-subtitle {
  text-align: center;
  font-size: 20px;
  line-height: 1.2;
  font-family: "Medium";
  color: #3b3978;
  margin-bottom: 25px;
}
.xolair .feature-list {
  list-style: none;
  margin-bottom: 30px;
}
.xolair .feature-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-bottom: 5px;
}
.xolair .check-icon {
  width: 24px;
  height: 24px;
  color: #e06a3f;
  flex-shrink: 0;
  margin-top: 5px;
}
.xolair .feature-text-highlight {
  color: #e06a3f;
  font-size: 20px;
  font-family: "Medium";
}
.xolair .feature-text-normal {
  color: #3b3978;
  font-size: 16px;
  font-family: "Medium";
}
.xolair .hero-note {
  text-align: center;
  color: #3b3978;
  font-size: 16px;
  font-family: "Medium";
  margin-bottom: 5px;
}
.xolair .cta-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 246px;
  height: 58px;
  gap: 10px;
  padding-left: 15px;
  background: #e06a3f;
  color: white;
  border: none;
  border-radius: 50px;
  font-size: 16px;
  font-family: "Bold";
  cursor: pointer;
  box-shadow: 0 3px 4.6px rgba(0, 0, 0, 0.25), 0 0 4px rgba(0, 0, 0, 0.25);
  margin: 0 auto 10px;
}
.xolair .cta-button:hover {
  background: #c85a35;
}
.xolair .disclaimer {
  text-align: center;
  font-size: 15px;
  color: #3b3978;
}
.xolair .section {
  padding: 50px 21px;
}
.xolair .section-bg-gray {
  background: #f5f4f3;
}
.xolair .section-title {
  font-size: 32px;
  font-family: "Bold";
  color: #3b3978;
  text-align: center;
  margin-bottom: 8px;
}
.xolair .section-title-small {
  font-size: 24px;
}
.xolair .section-line {
  width: 43px;
  height: 1px;
  background: #3b3978;
  margin: 0 auto 24px;
}
.xolair .section-description {
  color: #3b3978;
  text-align: center;
  margin-bottom: 24px;
  line-height: 1.8;
  font-size: 14px;
}
.xolair .symptom-card {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 18px;
  background: #f5f4f3;
  border: 1px solid #e2e1ed;
  border-radius: 14px;
  margin-bottom: 18px;
}
.xolair .symptom-icon {
  width: 28px;
  height: 28px;
  color: #3b3978;
  flex-shrink: 0;
}
.xolair .symptom-text {
  font-size: 16px;
  font-family: "Medium";
  color: #3b3978;
  line-height: 1.4;
}
.xolair .emphasis-box {
  background: #3b3978;
  color: white;
  padding: 11px;
  border-radius: 14px;
  text-align: center;
  font-family: "Medium";
  line-height: 1.7;
  margin-top: 18px;
  font-size: 15px;
}
.xolair .treatment-box {
  background: #f7f7f7;
  border-radius: 20px;
  padding: 20px;
  margin-bottom: 48px;
}
.xolair .treatment-box-title {
  font-size: 22px;
  font-family: "Bold";
  color: #3b3978;
  text-align: center;
  margin-bottom: 24px;
}
.xolair .treatment-card {
  background: white;
  border: 1px solid #e2e1ed;
  border-radius: 14px;
  padding: 19px;
  margin-bottom: 20px;
}
.xolair .treatment-card:last-child {
  margin-bottom: 0;
}
.xolair .treatment-title {
  font-family: "Bold";
  color: #3b3978;
  line-height: 1;
  margin-bottom: 12px;
  font-size: 16px;
}
.xolair .treatment-category {
  font-size: 14px;
  font-family: "Medium";
  color: #63abd7;
  margin-bottom: 12px;
}
.xolair .treatment-detail {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
}
.xolair .badge {
  display: inline-block;
  padding: 2px 12px;
  border-radius: 12px;
  font-size: 13px;
  color: white;
  font-weight: 400;
  min-width: 50px;
}
.xolair .badge-effect {
  background: #3b3978;
}
.xolair .badge-caution {
  background: #e06a3f;
}
.xolair .detail-text {
  font-size: 14px;
  color: #3b3978;
}
.xolair .detail-text-gray {
  color: #918fa4;
}
.xolair .new-treatment {
  text-align: center;
  margin-top: 48px;
}
.xolair .new-treatment img {
  margin: 35px auto 35px;
  width: 215px;
  height: auto;
  background-repeat: no-repeat;
}
.xolair .new-badge {
  display: inline-block;
  background: #ff6b6b;
  color: white;
  padding: 12px 56px;
  border-radius: 8px;
  font-size: 20px;
  font-family: "Bold";
  margin-bottom: 48px;
}
.xolair .xolair-card {
  background: #3b3978;
  border-radius: 24px;
  padding: 40px 30px;
  color: white;
  margin-top: -75px;
  box-shadow: 0 4.73px 4.73px #d9d9d9;
}
.xolair .xolair-title {
  font-family: "Bold";
  line-height: 1.2;
  margin-bottom: 8px;
  font-size: 18px;
}
.xolair .xolair-title-large {
  font-size: 40px;
}
.xolair .xolair-generic {
  font-size: 11px;
  line-height: 1;
  text-align: right;
  padding-right: 13px;
  margin-bottom: 25px;
}
.xolair .xolair-description {
  font-size: 16px;
  line-height: 1.65;
  margin-bottom: 12px;
  text-align: left;
}
.xolair .xolair-note {
  font-size: 12px;
  color: #d9ecf9;
  text-align: center;
}
.xolair .flow-step {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 15px;
  margin-bottom: 40px;
}
.xolair .flow-step:last-child {
  margin-bottom: 0;
}
.xolair .step-number {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 70px;
  height: 70px;
  background: #3b3978;
  border-radius: 50%;
  color: white;
  font-size: 23px;
  font-family: "Bold";
  flex-shrink: 0;
}
.xolair .step-content {
  flex: 1;
  background: white;
  border: 1px solid #e2e1ed;
  border-radius: 14px;
  padding: 23px;
  min-height: 70px;
  display: flex;
  align-items: center;
}
.xolair .step-text {
  font-size: 16px;
  font-family: "Bold";
  color: #3b3978;
}
.xolair .arrow-down {
  position: absolute;
  left: 60%;
  transform: translateX(-60%);
  bottom: -28px;
  width: 0;
  height: 0;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-top: 14px solid #3b3978;
}
.xolair .time-card {
  background: #d9ecf9;
  border: 1px solid #e2e1ed;
  border-radius: 16px;
  padding: 22px;
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 32px 0;
}
.xolair .time-label {
  color: #3b3978;
}
.xolair .clock-icon {
  width: 24px;
  height: 24px;
  color: #3b3978;
  flex-shrink: 0;
}
.xolair .time-text {
  font-size: 18px;
  font-family: "Bold";
  line-height: 1.5;
}
.xolair .time-highlight {
  color: #e06a3f;
}
.xolair .time-temp {
  color: #ff0000;
}
.xolair .note-list {
  list-style: none;
}
.xolair .note-item {
  font-size: 14px;
  color: #3b3978;
  margin-bottom: 8px;
}
.xolair .flow-section-inner {
  margin-top: 30px;
}
.xolair .price-card {
  background: #f5f4f3;
  border: 1px solid #e2e1ed;
  border-radius: 23px;
  padding: 40px 26px 32px;
  text-align: center;
  margin-bottom: 56px;
}
.xolair .price-label {
  font-size: 32px;
  font-family: "Bold";
  color: #3b3978;
  margin-bottom: 10px;
}
.xolair .price-amount {
  font-size: 48px;
  font-family: "Bold";
  color: #e06a3f;
  line-height: 1;
}
.xolair .price-currency {
  font-size: 32px;
  color: #3b3978;
}
.xolair .price-tax {
  font-size: 32px;
  font-family: "Bold";
  color: #3b3978;
  margin: 10px 0 28px;
}
.xolair .price-notes {
  text-align: left;
}
.xolair .price-note {
  font-size: 15px;
  color: #3b3978;
  margin-bottom: 10px;
}
.xolair .safety-card {
  background: #f5f4f3;
  border: 1px solid #e2e1ed;
  border-radius: 14px;
  padding: 28px;
  margin-bottom: 56px;
}
.xolair .safety-subtitle {
  font-size: 16px;
  font-family: "Bold";
  color: #3b3978;
  margin-bottom: 20px;
}
.xolair .safety-text {
  font-size: 16px;
  color: #3b3978;
  line-height: 1.65;
  margin-bottom: 15px;
}
.xolair .safety-text:last-child {
  margin-bottom: 0;
}
.xolair .notice-item {
  display: flex;
  align-items: center;
  gap: 14px;
  background: #f5f4f3;
  border: 1px solid #e2e1ed;
  border-radius: 14px;
  padding: 18px 20px;
  margin-bottom: 14px;
}
.xolair .notice-dot {
  width: 7px;
  height: 7px;
  background: #3b3978;
  border-radius: 50%;
  flex-shrink: 0;
}
.xolair .notice-text {
  font-size: 16px;
  color: #3b3978;
  line-height: 1.55;
}
.xolair .cta-section {
  background: #f5f4f3;
  padding: 56px 20px;
  text-align: center;
}
.xolair .cta-title {
  font-size: 28px;
  font-family: "Bold";
  color: #3b3978;
  margin-bottom: 32px;
}
.xolair .cta-description {
  color: #3b3978;
  line-height: 1.8;
  font-size: 14px;
  margin-bottom: 32px;
}
.xolair .cta-button-large {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 250px;
  padding: 6px 16px;
  padding-left: 35px;
  height: 58px;
  background: #e06a3f;
  color: white;
  border: none;
  border-radius: 50px;
  font-size: 16px;
  font-family: "Bold";
  cursor: pointer;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.25), 0 4px 4px rgba(0, 0, 0, 0.25);
}
.xolair .cta-button-large:hover {
  background: #d05a2f;
}
.xolair .cta-arrow {
  font-weight: 900;
}

.urso {
  margin-top: 90px;
}
.urso section {
  padding: 60px 15px;
}
.urso h2.section-title {
  font-family: "Bold";
  font-size: 32px;
  color: #3b3978;
  text-align: center;
  margin-bottom: 60px;
  position: relative;
}
.urso .symptom h2.section-title, .urso h2.section-title {
  font-size: 23px;
}
.urso h2.section-title::after {
  position: absolute;
  content: "";
  width: 45px;
  bottom: -25px;
  left: 50%;
  transform: translateX(-50%);
  border-bottom: solid 2px #3B3978;
}
.urso .hero-section {
  text-align: center;
  font-family: "Bold";
  background: url(../img/menu/urso/mask-group.png) no-repeat center/cover;
  padding: 40px 20px 30px;
  position: relative;
}
.urso .hero-section p {
  font-size: 24px;
  padding: 0 10px;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: 10px;
}
.urso .hero-section h1 {
  line-height: 1.2;
  font-size: 40px;
  text-align: left;
  margin-bottom: 10px;
}
.urso .hero-section h1 span.bold {
  font-size: 48px;
}
.urso .hero-section h1 span.Sky {
  color: #64ABD9;
  padding: 0 5px;
  margin: 0 5px;
  background: linear-gradient(transparent 65%, #FFFCAA 65%);
}
.urso .hero-section .flex {
  display: flex;
  gap: 5px;
  margin: 10px 0;
}
.urso .hero-section .flex p {
  font-size: 14px;
  padding: 0px 10px;
  color: white;
  width: 85px;
  text-align: center;
  background: #3B3978;
  border-radius: 20px;
}
.urso .hero-section img {
  border-radius: 50%;
  width: 165px;
  height: 100%;
  margin: 10px 0;
}
.urso .hero-section .container {
  max-width: 700px;
  width: 100%;
  margin: auto;
}
.urso .hero-section .container .sub {
  color: white;
  font-size: 21px;
  line-height: 1.6;
  margin: 15px auto;
  background: none;
}
.urso .hero-section .container .sub span {
  background: #3B3978;
  padding: 0 5px;
}
.urso .hero-section .container .point {
  font-size: 24px;
  margin: 15px auto;
  padding: 20px 20px;
  background: white;
  border-radius: 10px;
  text-align: left;
  line-height: 1.8;
  border: solid 1px #E2E1EE;
}
@media screen and (max-width:320px) {
  .urso .hero-section .container .point {
    font-size: 18px;
  }
}
.urso .hero-section .container .point span {
  font-size: 18px;
}
.urso .hero-section .container .point span.manage {
  color: #64ABD9;
  font-size: 24px;
}
@media screen and (max-width:320px) {
  .urso .hero-section .container .point span.manage {
    font-size: 20px;
  }
}
.urso .hero-section .container .point span.orange {
  color: #E26E3F;
  line-height: 1.3;
  font-size: 30px;
}
@media screen and (max-width:320px) {
  .urso .hero-section .container .point span.orange {
    font-size: 25px;
  }
}
.urso .hero-section .container .box {
  background: white;
  border-radius: 22px;
  padding: 25px 12px;
  box-shadow: 0 5px 5px #D9D9D9;
  margin-bottom: 35px;
}
.urso .hero-section .container .box .flex {
  gap: 10px;
  width: -moz-fit-content;
  width: fit-content;
  margin: auto;
  display: flex;
  align-items: center;
}
.urso .hero-section .container .box .flex img {
  height: auto;
  width: 130px;
  border-radius: 0;
}
@media screen and (max-width:320px) {
  .urso .hero-section .container .box .flex img {
    width: 110px;
  }
}
.urso .hero-section .container .box .flex p {
  line-height: 0.5;
  font-size: 50px;
  background: none;
  color: var(--base-black);
  width: 100%;
  border-radius: 0px;
  padding: 0;
}
@media screen and (max-width:320px) {
  .urso .hero-section .container .box .flex p {
    font-size: 45px;
  }
}
.urso .hero-section .container .box .flex p span {
  font-size: 12px;
}
.urso .hero-section .container .box .service {
  gap: 8px;
  display: flex;
  width: -moz-fit-content;
  width: fit-content;
  align-items: center;
  margin: 15px auto;
}
@media screen and (max-width:320px) {
  .urso .hero-section .container .box .service {
    margin: 10px auto;
  }
}
.urso .hero-section .container .box .service p {
  color: white;
  background: #3B3978;
  border-radius: 3px;
  font-size: 14px;
  padding: 3px 5px;
}
.urso .hero-section .container .box .price {
  line-height: 1;
  background: none;
  margin: 0px auto 25px;
  font-size: 24px;
}
@media screen and (max-width:320px) {
  .urso .hero-section .container .box .price {
    line-height: 1.3;
    font-size: 22px;
  }
}
.urso .hero-section .container .box .price .orange {
  color: #E06A3F;
  margin-left: 10px;
  font-size: 48px;
}
@media screen and (max-width:320px) {
  .urso .hero-section .container .box .price .orange {
    font-size: 38px;
  }
}
.urso .hero-section .container .box .price .yen {
  font-size: 32px;
}
@media screen and (max-width:320px) {
  .urso .hero-section .container .box .price .yen {
    font-size: 25px;
  }
}
.urso .hero-section .container .as {
  display: block;
  font-size: 12px;
  font-weight: normal;
  text-align: left;
  margin: auto;
  margin-top: 15px;
  width: 85%;
}
.urso a.cta {
  display: block;
  margin: auto;
  margin-top: 5px;
  text-align: center;
  padding: 15px 20px;
  border-radius: 50px;
  background: #06C755;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.25);
  position: relative;
  font-size: 18px;
  color: white;
  width: 250px;
  font-family: "Bold";
}
.urso .trouble p {
  text-align: center;
  line-height: 1.8;
  font-size: 18px;
  margin-bottom: 20px;
}
.urso .trouble p span {
  font-size: 24px;
}
.urso .trouble p span.blue {
  padding-left: 25px;
  color: white;
  background: #3B3978;
}
.urso .trouble p span.at {
  font-size: 18px;
}
.urso .trouble .flex {
  display: flex;
  width: -moz-fit-content;
  width: fit-content;
  justify-content: center;
  flex-wrap: wrap;
  margin: auto;
  gap: 20px;
  margin-bottom: 25px;
}
.urso .trouble .flex div {
  display: flex;
  align-items: center;
  justify-content: center;
  background: url(../img/menu/urso/flex-back.png) no-repeat center/cover;
  width: 157px;
  height: 134px;
}
.urso .trouble .flex div p {
  line-height: 1.3;
  color: white;
  font-family: "Bold";
  margin-bottom: 0;
  font-size: 20px;
}
.urso .trouble .flex div p span {
  font-size: 18px;
}
.urso .trouble .arrow {
  width: 0;
  height: 0;
  margin: auto;
  border-style: solid;
  border-color: #3B3978 transparent transparent transparent;
  border-width: 22px 21px 0 21px;
}
.urso .benefit {
  padding-top: 0;
}
.urso .benefit .gray {
  background: #F5F4F3;
  padding: 30px 0;
  margin-bottom: 30px;
}
.urso .benefit h2 {
  text-align: center;
  font-size: 17px;
  line-height: 1.8;
  margin-bottom: 25px;
}
.urso .benefit h2 span {
  color: white;
  margin: 0 4px;
}
.urso .benefit h2 span.blue {
  background: #3B3978;
  font-size: 24px;
}
.urso .benefit h2 span.orange {
  background: #E06A3F;
  padding: 0 10px;
  font-size: 24px;
}
.urso .benefit .flex {
  display: flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  justify-content: center;
  margin: auto;
  flex-wrap: wrap;
  gap: 20px;
}
.urso .benefit .flex .box {
  border-radius: 12px;
  border: solid 2px #A8A8A8;
  background: #E3E3E3;
  text-align: center;
  padding: 15px;
}
.urso .benefit .flex .box img {
  margin: auto;
  width: 85px;
}
.urso .benefit .flex .box p {
  font-size: 11px;
}
.urso .benefit .flex .box p.title {
  font-size: 16px;
}
.urso .benefit .flex .box.posi {
  background: white;
  border: solid 2px #E06A3F;
  color: #E06A3F;
  position: relative;
}
.urso .benefit .flex .box.posi::before {
  position: absolute;
  content: "ウルソ服用";
  padding: 2px 5px;
  top: -15px;
  right: -15px;
  color: white;
  background: #E06A3F;
  border-radius: 50px;
  font-size: 12px;
}
.urso .benefit h3 {
  text-align: center;
  font-size: 20px;
  margin-bottom: 50px;
}
.urso .benefit h3 span {
  font-size: 32px;
  color: #64ABD9;
  background: linear-gradient(transparent 65%, #FFFCAA 65%);
}
.urso .benefit .flex.pt {
  max-width: 940px;
  width: 90%;
  gap: 35px;
}
.urso .benefit .flex .point {
  border-radius: 12px;
  border: solid 2px #E2E1EE;
  position: relative;
  padding: 25px 20px;
}
.urso .benefit .flex .point .title {
  position: absolute;
  font-family: "Bold";
  color: white;
  padding: 3px;
  top: -20px;
  left: 50%;
  line-height: 1.3;
  text-align: center;
  transform: translateX(-50%);
  background: #3B3978;
  border-radius: 10px;
  font-size: 20px;
  width: 150px;
}
.urso .benefit .flex .point .item {
  display: flex;
  align-items: center;
  gap: 20px;
}
.urso .benefit .flex .point .item img {
  height: 100%;
  width: 52px;
}
.urso .benefit .flex .point .item p {
  font-size: 14px;
}
.urso .benefit .flex .point .item p.sub {
  margin-bottom: 5px;
  line-height: 2;
  font-size: 20px;
}
.urso .worry {
  background: #E2E1EE;
}
.urso .worry p {
  line-height: 1.8;
  color: white;
  font-family: "Bold";
  text-align: center;
  font-size: 24px;
}
.urso .worry p span {
  background: #3B3978;
  padding: 0 5px;
}
.urso .worry img {
  max-width: 900px;
  width: 100%;
  height: auto;
  margin: auto;
  justify-content: center;
  margin-bottom: 40px;
  flex-wrap: wrap;
}
.urso .case h2 {
  font-size: 32px;
  margin-bottom: 60px;
}
.urso .case .flex {
  display: flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  justify-content: center;
  flex-wrap: wrap;
  gap: 25px;
  margin: 0 auto 45px;
}
.urso .case .flex img {
  width: 175px;
  height: 175px;
  margin-bottom: 25px;
}
.urso .case .flex p {
  text-align: center;
  line-height: 1.3;
  margin-bottom: 0;
  font-size: 14px;
}
.urso .case p {
  margin-bottom: 30px;
  text-align: center;
  font-size: 18px;
  line-height: 1.8;
}
.urso .case p span {
  color: white;
  font-size: 24px;
}
.urso .case p .blue {
  background: #3B3978;
  padding: 0 5px;
}
.urso .case p .orange {
  background: #E06A3F;
  padding: 0 5px;
}
.urso .case .arrow {
  width: 0;
  height: 0;
  margin: auto;
  border-style: solid;
  border-color: #3B3978 transparent transparent transparent;
  border-width: 22px 21px 0 21px;
}
.urso .price {
  background: #F5F4F3;
}
.urso .price h2 {
  font-size: 32px;
}
.urso .price p.center {
  text-align: center;
  margin-top: 10px;
  font-size: 14px;
}
.urso .price .flex {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  max-width: 900px;
  margin: auto;
  width: 90%;
  gap: 30px;
}
.urso .price .left {
  flex: auto;
}
.urso .price .left p {
  text-align: center;
  font-size: 18px;
}
.urso .price .left p span {
  font-size: 14px;
  display: inline-block;
  margin-top: 20px;
}
.urso .price .right {
  flex: 1;
  padding: 25px;
  background: white;
  border-radius: 10px;
  border: solid 2px #E2E1EE;
}
.urso .price .right p {
  font-size: 24px;
  line-height: 1;
  text-align: center;
  font-family: "Bold";
}
.urso .price .right p.cost {
  font-size: 48px;
  margin: 15px 0 25px;
  color: #E06A3F;
}
.urso .price .right p.cost span {
  color: #3B3978;
  font-size: 36px;
}
.urso .price .right .service {
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: center;
  margin: 0 auto 20px;
}
.urso .price .right .service p {
  background: #3B3978;
  padding: 5px;
  font-size: 14px;
  border-radius: 5px;
  font-family: "Bold";
  color: white;
}
.urso .service-section {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 90%;
}
.urso .service-section h2 {
  margin-bottom: 100px;
}
.urso .service-section p.subtitle {
  color: #3B3978;
  border: 1px solid #3B3978;
  padding: 5px 20px;
  text-align: center;
  border-radius: 100px;
  font-family: "Bold";
  margin-bottom: 10px;
}
.urso .service-section .steps-grid {
  display: flex;
  gap: 1.5rem;
  width: 100%;
  max-width: 1200px;
  display: table-column;
}
.urso .service-section .steps-grid .step-card {
  flex: 1;
  background-color: rgba(255, 255, 255, 0.7);
  border: 1px solid #d9d9d9;
  border-radius: 20px;
  backdrop-filter: blur(5px);
  padding: 2.5rem 2rem;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 70px;
}
.urso .service-section .steps-grid .step-card:last-child {
  margin-bottom: 0;
}
.urso .service-section .steps-grid .step-card .step-number {
  position: absolute;
  top: -2.5rem;
  left: 50%;
  transform: translateX(-50%);
  width: 80px;
  height: 80px;
  background-color: #3b3978;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0rem;
}
.urso .service-section .steps-grid .step-card .step-number .step-label {
  font-family: "Medium";
  font-size: 1rem;
  color: white;
  border-bottom: 1px dotted white;
  line-height: 1.2;
}
.urso .service-section .steps-grid .step-card .step-number .step-num {
  font-family: "Bold";
  font-size: 1.375rem;
  color: white;
  line-height: 1.3;
}
.urso .service-section .steps-grid .step-content {
  margin-top: 1rem;
}
.urso .service-section .steps-grid .step-content img {
  width: 100%;
  display: block;
  margin-bottom: 20px;
}
.urso .service-section .steps-grid .step-content h3.step-title {
  font-size: 15px;
  color: #3b3978;
  margin-bottom: 1rem;
}
.urso .service-section .steps-grid .step-content p.step-description {
  font-size: 15px;
  color: #3b3978;
  line-height: 1.7;
}
.urso .qa-section {
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  width: 90%;
}
.urso .qa-section .qa-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.urso .qa-section .qa-list .qa-item {
  background-color: #f5f4f3;
  cursor: pointer;
  transition: background-color 0.2s;
  position: relative;
  padding-right: 60px;
}
.urso .qa-section .qa-list .qa-item::after {
  position: absolute;
  content: "";
  width: 32px;
  height: 32px;
  background: url(../img/menu/urso/qa-gz.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  right: 20px;
  transition: 0.5s;
  top: 36px;
}
.urso .qa-section .qa-list .qa-item:hover {
  background-color: #f0efec;
}
.urso .qa-section .qa-list .qa-item p.question {
  display: flex;
  align-items: center;
  font-size: 15px;
  color: #3b3978;
  gap: 1rem;
  padding: 30px 15px;
}
.urso .qa-section .qa-list .qa-item p.question span.q-label {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  background-color: #3b3978;
  color: white;
  font-family: "Bold";
  font-size: 1.25rem;
  padding: 0 16px;
}
.urso .qa-section .qa-list .qa-item p.answer {
  margin-top: 0rem;
  font-size: 15px;
  color: #3b3978;
  line-height: 0;
  opacity: 0;
  height: 0;
  transition: 0.3s;
}
.urso .qa-section .qa-list .qa-item.active::after {
  transform: rotate(45deg);
}
.urso .qa-section .qa-list .qa-item.active .answer {
  margin-top: 1rem;
  opacity: 1;
  height: auto;
  line-height: 1.7;
  margin-top: 0;
  padding: 0 15px 30px 30px;
  padding-left: 20px;
}
.urso .notice-section {
  max-width: 1200px;
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  padding-top: 0;
  width: 90%;
}
.urso .notice-section .notice-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.urso .notice-section .notice-list .notice-item {
  display: block;
}
.urso .notice-section .notice-list .notice-item p.notice-category {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem 2rem;
  background-color: #e2e1ed;
  border-radius: 30px 0 0 0;
  font-size: 15px;
  color: #3b3978;
  text-align: center;
  font-family: "Bold";
  width: 100%;
}
.urso .notice-section .notice-list .notice-item p.notice-content {
  flex: 1;
  display: flex;
  align-items: center;
  background-color: white;
  border-radius: 0 0 30px 0;
  border-bottom: 2px solid #e2e1ed;
  border-right: 2px solid #e2e1ed;
  font-size: 15px;
  color: #3b3978;
  line-height: 1.7;
  padding: 30px 15px;
}/*# sourceMappingURL=style.css.map */