.p-benefits {
  background: var(--color-light-pink);
}
@media only screen and (max-width: 768px) {
  .p-benefits {
    margin-bottom: 20vw;
    padding: 9.7333333333vw 4vw 17.3333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits {
    margin-bottom: min(205px, 16.015625vw);
    padding-block: min(115px, 8.984375vw) min(174px, 13.59375vw);
  }
}

@media only screen and (max-width: 768px) {
  .p-benefits-sec + .p-benefits-sec {
    margin-top: 13.3333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-sec + .p-benefits-sec {
    margin-top: min(94px, 7.34375vw);
  }
}

.p-benefits-title-sub {
  display: grid;
  font-family: var(--ff-ss);
  letter-spacing: 0.09em;
  margin-inline: auto;
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
}
@media only screen and (max-width: 768px) {
  .p-benefits-title-sub {
    font-size: 2.6666666667vw;
    line-height: 1.5;
    place-content: center;
    margin-bottom: 3.3333333333vw;
    text-align: center;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-title-sub {
    font-size: min(17px, 1.328125vw);
    height: min(33px, 2.578125vw);
    margin-bottom: min(15px, 1.171875vw);
  }
}
.p-benefits-title-sub::before, .p-benefits-title-sub::after {
  background: #707070;
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  transform-origin: center;
  width: 1px;
}
@media only screen and (max-width: 768px) {
  .p-benefits-title-sub::before, .p-benefits-title-sub::after {
    height: 10.2666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-title-sub::before, .p-benefits-title-sub::after {
    height: min(37px, 2.890625vw);
  }
}
.p-benefits-title-sub::before {
  rotate: -23deg;
}
@media only screen and (max-width: 768px) {
  .p-benefits-title-sub::before {
    left: -5.0666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-title-sub::before {
    left: max(-24px, -1.875vw);
  }
}
.p-benefits-title-sub::after {
  rotate: 23deg;
}
@media only screen and (max-width: 768px) {
  .p-benefits-title-sub::after {
    right: -5.0666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-title-sub::after {
    right: max(-24px, -1.875vw);
  }
}

.p-benefits-title {
  display: grid;
  letter-spacing: 0.11em;
  place-content: center;
}
@media only screen and (max-width: 768px) {
  .p-benefits-title {
    background: url("../img/bg-heading_sp.svg") no-repeat left top/cover;
    font-size: 3.6vw;
    height: 8.4vw;
    margin-bottom: 7.6vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-title {
    background: url("../img/bg-heading.svg") no-repeat left top/cover;
    font-size: min(25px, 1.953125vw);
    height: min(63px, 4.921875vw);
    margin-bottom: min(57px, 4.453125vw);
  }
}

.p-benefits-items {
  display: grid;
  font-family: var(--ff-ss);
  grid-template-columns: repeat(2, 1fr);
}
@media only screen and (max-width: 768px) {
  .p-benefits-items {
    gap: 8vw 6.4vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-items {
    gap: min(70px, 5.46875vw) min(66px, 5.15625vw);
    margin-inline: auto;
    width: min(708px, 55.3125vw);
  }
}

@media only screen and (max-width: 768px) {
  .p-benefits-image {
    margin-bottom: 3.0666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-image {
    margin-bottom: min(15px, 1.171875vw);
  }
}
.p-benefits-image img {
  height: auto;
  width: 100%;
}

.p-benefits-heading {
  display: grid;
  place-content: center start;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .p-benefits-heading {
    font-size: 3.0666666667vw;
    line-height: 1.478;
    margin-bottom: 1.0666666667vw;
    padding-bottom: 1.3333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-heading {
    font-size: min(20px, 1.5625vw);
    height: min(52px, 4.0625vw);
    letter-spacing: 0.11em;
    line-height: 1.5;
    margin-bottom: min(13px, 1.015625vw);
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-heading.-l2 {
    line-height: 1.15;
  }
}
@media only screen and (max-width: 768px) {
  .p-benefits-heading br {
    display: none;
  }
}
.p-benefits-heading::after {
  background: var(--color-pink);
  bottom: 0;
  content: "";
  display: block;
  height: 1px;
  left: 0;
  position: absolute;
}
@media only screen and (max-width: 768px) {
  .p-benefits-heading::after {
    width: 35.0666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-heading::after {
    width: min(263px, 20.546875vw);
  }
}
.p-benefits-heading i {
  position: absolute;
  right: 0;
  top: 50%;
  translate: 0 -50%;
}

@media only screen and (max-width: 768px) {
  .p-benefits-text {
    font-size: 2.5333333333vw;
    line-height: 1.473;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-text {
    font-size: min(15px, 1.171875vw);
    line-height: 1.6;
  }
}
@media only screen and (max-width: 768px) {
  .p-benefits-text br {
    display: none;
  }
}

.p-benefits-offer li {
  font-weight: 300;
  margin-left: 1em;
  text-indent: -1em;
}
@media only screen and (max-width: 768px) {
  .p-benefits-offer li {
    font-size: 2.5333333333vw;
    line-height: 1.473;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-offer li {
    font-size: min(15px, 1.171875vw);
    line-height: 1.6;
  }
}

.p-benefits-icon01 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-benefits-icon01 {
    width: 5.4666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-icon01 {
    width: min(41px, 3.203125vw);
  }
}

.p-benefits-icon02 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-benefits-icon02 {
    width: 4.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-icon02 {
    width: min(35px, 2.734375vw);
  }
}

.p-benefits-icon03 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-benefits-icon03 {
    width: 6.1333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-icon03 {
    width: min(46px, 3.59375vw);
  }
}

.p-benefits-icon04 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-benefits-icon04 {
    width: 6vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-icon04 {
    width: min(45px, 3.515625vw);
  }
}

.p-benefits-icon05 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-benefits-icon05 {
    width: 6.9333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-icon05 {
    width: min(52px, 4.0625vw);
  }
}

.p-benefits-icon06 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-benefits-icon06 {
    width: 4.1333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-icon06 {
    width: min(31px, 2.421875vw);
  }
}

.p-benefits-icon07 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-benefits-icon07 {
    width: 5.7333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-icon07 {
    width: min(43px, 3.359375vw);
  }
}

.p-benefits-icon08 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-benefits-icon08 {
    width: 5.6vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-icon08 {
    width: min(42px, 3.28125vw);
  }
}

.p-benefits-icon09 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-benefits-icon09 {
    width: 7.2vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-icon09 {
    width: min(54px, 4.21875vw);
  }
}

.p-benefits-icon10 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-benefits-icon10 {
    display: none;
  }
}
@media print, screen and (min-width: 769px) {
  .p-benefits-icon10 {
    width: min(77px, 6.015625vw);
  }
}

@media only screen and (max-width: 768px) {
  .p-detail {
    margin-bottom: 13.3333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail {
    margin-bottom: min(177px, 13.828125vw);
  }
}

.p-detail-items {
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (max-width: 768px) {
  .p-detail-items {
    gap: 9.0666666667vw 5.8666666667vw;
    padding-inline: 4vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-items {
    justify-content: center;
    gap: min(33px, 2.578125vw) min(36px, 2.8125vw);
  }
}

.p-detail-item {
  position: relative;
}
@media only screen and (max-width: 768px) {
  .p-detail-item {
    height: 43.0666666667vw;
    padding-top: 8.5333333333vw;
    width: 43.0666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-item {
    height: min(276px, 21.5625vw);
    padding-top: min(54px, 4.21875vw);
    width: min(276px, 21.5625vw);
  }
}
.p-detail-item::before {
  background: var(--color-light-pink);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .p-detail-item::before {
    border-radius: 21.6vw 21.6vw 0 0;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-item::before {
    border-radius: min(138px, 10.78125vw) min(138px, 10.78125vw) 0 0;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-item:last-child {
    padding-top: min(74px, 5.78125vw);
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-item:last-child .p-detail-icon {
    height: min(50px, 3.90625vw);
    margin-bottom: min(15px, 1.171875vw);
  }
}

.p-detail-count {
  align-items: center;
  display: flex;
  flex-direction: column;
  position: absolute;
}
@media only screen and (max-width: 768px) {
  .p-detail-count {
    left: 1.6vw;
    top: 1.6vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-count {
    left: min(10px, 0.78125vw);
    top: min(10px, 0.78125vw);
  }
}

@media only screen and (max-width: 768px) {
  .p-detail-count-text {
    font-size: 2.6666666667vw;
    line-height: 1.5;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-count-text {
    font-size: min(17px, 1.328125vw);
    line-height: 1.47;
  }
}

.p-detail-count-num {
  line-height: 1;
}
@media only screen and (max-width: 768px) {
  .p-detail-count-num {
    font-size: 5.0666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-count-num {
    font-size: min(33px, 2.578125vw);
  }
}

.p-detail-icon {
  display: grid;
  place-content: center;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .p-detail-icon {
    height: 13.3333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-icon {
    height: min(85px, 6.640625vw);
    margin-bottom: min(25px, 1.953125vw);
  }
}

.p-detail-title {
  font-family: var(--ff-ss);
  position: relative;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .p-detail-title {
    display: grid;
    font-size: 3.3333333333vw;
    height: 8.5333333333vw;
    line-height: 1.291;
    margin-bottom: 1.0666666667vw;
    place-content: center;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-title {
    font-size: min(19px, 1.484375vw);
    line-height: 1.421;
    margin-bottom: min(12px, 0.9375vw);
  }
}

.p-detail-text {
  color: #6F6D6D;
  font-family: var(--ff-ss);
  font-weight: 300;
  position: relative;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .p-detail-text {
    font-size: 2.5333333333vw;
    line-height: 1.473;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-text {
    font-size: min(14px, 1.09375vw);
    line-height: 1.64;
  }
}

.p-detail-icon01 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-detail-icon01 {
    width: 10.4vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-icon01 {
    width: min(64px, 5vw);
  }
}

.p-detail-icon02 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-detail-icon02 {
    width: 9.8666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-icon02 {
    width: min(64px, 5vw);
  }
}

.p-detail-icon03 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-detail-icon03 {
    width: 12.8vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-icon03 {
    width: min(82px, 6.40625vw);
  }
}

.p-detail-icon04 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-detail-icon04 {
    width: 12.9333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-icon04 {
    width: min(83px, 6.484375vw);
  }
}

.p-detail-icon05 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-detail-icon05 {
    width: 12.8vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-icon05 {
    width: min(82px, 6.40625vw);
  }
}

.p-detail-icon06 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-detail-icon06 {
    width: 8.5333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-icon06 {
    width: min(55px, 4.296875vw);
  }
}

.p-detail-icon07 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-detail-icon07 {
    width: 11.2vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-icon07 {
    width: min(73px, 5.703125vw);
  }
}

.p-detail-icon08 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-detail-icon08 {
    width: 10vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-icon08 {
    width: min(64px, 5vw);
  }
}

.p-detail-icon09 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-detail-icon09 {
    width: 13.0666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-icon09 {
    width: min(84px, 6.5625vw);
  }
}

.p-detail-icon10 {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-detail-icon10 {
    width: 19.2vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-detail-icon10 {
    width: min(125px, 9.765625vw);
  }
}

@media only screen and (max-width: 768px) {
  .p-system {
    margin-bottom: 17.3333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-system {
    margin-bottom: min(130px, 10.15625vw);
  }
}

.p-system-title {
  font-weight: 300;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .p-system-title {
    font-size: 4.5333333333vw;
    line-height: 1.47;
    margin-bottom: 6.6666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-system-title {
    font-size: min(38px, 2.96875vw);
    line-height: 1.44;
    margin-bottom: min(40px, 3.125vw);
  }
}

.p-system-lead {
  font-weight: 300;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .p-system-lead {
    font-size: 3.6vw;
    line-height: 2.59;
  }
}
@media print, screen and (min-width: 769px) {
  .p-system-lead {
    font-size: min(21px, 1.640625vw);
    line-height: 2.714;
  }
}

@media only screen and (max-width: 768px) {
  .p-banner {
    margin: 0 auto 17.3333333333vw;
    width: 92.1333333333vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-banner {
    margin: 0 auto min(140px, 10.9375vw);
    width: min(771px, 60.234375vw);
  }
}

.p-banner-title {
  background: url("../img/bg-x-title.svg") no-repeat left top/100% auto;
  display: grid;
  place-content: start center;
}
@media only screen and (max-width: 768px) {
  .p-banner-title {
    font-size: 2.6666666667vw;
    height: 4.4vw;
    line-height: 1.5;
    margin: 0 auto 2.2666666667vw;
    width: 62.2666666667vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-banner-title {
    font-size: min(19px, 1.484375vw);
    height: min(33px, 2.578125vw);
    letter-spacing: 0.09em;
    line-height: 1.421;
    margin: 0 auto min(17px, 1.328125vw);
    width: min(467px, 36.484375vw);
  }
}

.p-banner-body a {
  aspect-ratio: 771/263;
  background: url("../img/bnr-x.jpg") no-repeat left top/cover;
  display: grid;
  place-content: end end;
  transition: 0.3s ease-in-out;
}
@media print, screen and (min-width: 769px) {
  .p-banner-body a {
    padding-bottom: min(21px, 1.640625vw);
    padding-right: min(26px, 2.03125vw);
  }
}
@media print, screen and (min-width: 769px) {
  .p-banner-body a:hover {
    opacity: 0.8;
  }
}
@media only screen and (max-width: 768px) {
  .p-banner-body a .c-btn01 {
    height: 8.8vw;
    width: 33.6vw;
  }
}
.p-banner-body a .c-btn01:hover {
  opacity: 1;
}/*# sourceMappingURL=index.css.map */