@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&family=Outfit:wght@100..900&display=swap");
.contents {
  font-family: "Noto Sans JP", sans-serif;
  color: #231815;
}
.contents a {
  color: inherit;
  text-decoration: none;
}
.contents img {
  width: 100%;
  max-width: 100%;
  height: auto;
}
.contents .l-inner {
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .contents .l-inner {
    max-width: 92vw;
  }
}
.contents .u-min {
  font-family: "Noto Serif JP", serif;
}
.contents .c-bg-grad {
  background: linear-gradient(to bottom, #e8ddf1, #f8f1f3);
}
.contents .c-title {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contents .c-title {
    margin-bottom: min(48px, 4.3636363636vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .c-title {
    margin-bottom: 10.6666666667vw;
  }
}
.contents .c-title-en {
  display: inline-block;
  background: linear-gradient(to right, #bab0e1 0%, #f7d5df 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (min-width: 768px) {
  .contents .c-title-en {
    font-size: clamp(17.5px, 3.1818181818vw, 35px);
    line-height: 1;
    letter-spacing: 0.1em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .c-title-en {
    font-size: calc(59.2 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.1em;
    font-weight: 500;
  }
}
.contents .c-title-jp {
  display: block;
  color: #999999;
}
@media screen and (min-width: 768px) {
  .contents .c-title-jp {
    font-size: clamp(8.5px, 1.5454545455vw, 17px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .c-title-jp {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .c-title-jp {
    margin-top: min(16px, 1.4545454545vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .c-title-jp {
    margin-top: 3.2vw;
  }
}
.contents .c-note {
  color: #666666;
  text-indent: -1em;
  padding-left: 1em;
}
@media screen and (min-width: 768px) {
  .contents .c-note {
    font-size: clamp(5px, 0.9090909091vw, 10px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .c-note {
    font-size: calc(20 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.contents .c-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
@media screen and (min-width: 768px) {
  .contents .c-btn {
    font-size: clamp(7.5px, 1.3636363636vw, 15px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .c-btn {
    font-size: calc(30 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .c-btn {
    width: min(250px, 22.7272727273vw);
    height: min(55px, 5vw);
    border-radius: min(27.5px, 2.5vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .c-btn {
    width: 66.6666666667vw;
    height: 14.6666666667vw;
    border-radius: 7.3333333333vw;
  }
}
.contents .c-btn::after {
  position: absolute;
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/ic-arrow-right.png);
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .contents .c-btn::after {
    width: min(8px, 0.7272727273vw);
    height: min(13px, 1.1818181818vw);
    right: min(20px, 1.8181818182vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .c-btn::after {
    width: 2vw;
    height: 3.4666666667vw;
    right: 5.3333333333vw;
  }
}
.contents .c-btn.-grad {
  background: linear-gradient(to right, #e2d5ee 0%, #fef0f4 100%);
}
.contents .c-btn.-pink {
  border: 1px solid #dec5cc;
  background-color: #fcf2f5;
}
@media screen and (max-width: 767px) {
  .contents .c-sp-swiper .swiper-slide {
    width: 92vw;
    margin: 0 4vw;
  }
}
.contents .c-sp-swiper .swiper-pagination-progressbar {
  position: static;
  margin: 6.6666666667vw auto 0;
  width: 92vw;
  height: 4px;
  background-color: #cecece;
}
.contents .c-sp-swiper .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background-color: #333;
}
@media screen and (min-width: 768px) {
  .contents .p-kv {
    margin-bottom: min(60px, 5.4545454545vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-kv {
    margin-bottom: 4vw;
  }
}
.contents .p-kv__slider .swiper-pagination {
  position: static;
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .contents .p-kv__slider .swiper-pagination {
    margin-top: min(30px, 2.7272727273vw);
    column-gap: min(20px, 1.8181818182vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-kv__slider .swiper-pagination {
    margin-top: 4vw;
    column-gap: 3.7333333333vw;
  }
}
.contents .p-kv__slider .swiper-pagination .swiper-pagination-bullet {
  margin: 0;
}
.contents .p-kv__slider .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #000;
}
@media screen and (min-width: 768px) {
  .contents .p-anchor__bg,
  .contents .p-anchor-fixed__bg {
    padding: min(12px, 1.0909090909vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-anchor__bg,
  .contents .p-anchor-fixed__bg {
    padding: 4vw;
  }
}
.contents .p-anchor__list,
.contents .p-anchor-fixed__list {
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .contents .p-anchor__list,
  .contents .p-anchor-fixed__list {
    column-gap: min(2px, 0.1818181818vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-anchor__list,
  .contents .p-anchor-fixed__list {
    flex-wrap: wrap;
    row-gap: 0.5333333333vw;
    column-gap: 0.5333333333vw;
  }
}
.contents .p-anchor__list-item a,
.contents .p-anchor-fixed__list-item a {
  display: block;
  text-align: center;
  position: relative;
  background: rgba(255, 255, 255, 0.8);
  color: #cb86b7;
}
@media screen and (min-width: 768px) {
  .contents .p-anchor__list-item a,
  .contents .p-anchor-fixed__list-item a {
    font-size: clamp(6.6px, 1.2vw, 13.2px);
    line-height: 1;
    letter-spacing: 0.08em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-anchor__list-item a,
  .contents .p-anchor-fixed__list-item a {
    font-size: calc(22 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.08em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-anchor__list-item a,
  .contents .p-anchor-fixed__list-item a {
    width: min(160px, 11.4285714286vw);
    height: min(60px, 5.4545454545vw);
    padding-top: min(16.8px, 1.5272727273vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-anchor__list-item a,
  .contents .p-anchor-fixed__list-item a {
    width: 22.5333333333vw;
    height: 13.3333333333vw;
    padding-top: 3.7333333333vw;
  }
}
.contents .p-anchor__list-item a::after,
.contents .p-anchor-fixed__list-item a::after {
  position: absolute;
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/ic-arrow-grad.png);
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .contents .p-anchor__list-item a::after,
  .contents .p-anchor-fixed__list-item a::after {
    width: min(12px, 1.0909090909vw);
    height: min(7px, 0.6363636364vw);
    bottom: min(10px, 0.9090909091vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-anchor__list-item a::after,
  .contents .p-anchor-fixed__list-item a::after {
    width: 3.2vw;
    height: 1.8666666667vw;
    bottom: 2.6666666667vw;
  }
}
.contents .p-anchor-fixed {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 100;
  opacity: 0;
  transform: translateY(100%);
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.contents .p-anchor-fixed.is-show {
  pointer-events: auto;
  opacity: 1;
  transform: translateY(0);
}
@media screen and (min-width: 768px) {
  .contents .p-anchor-fixed .p-anchor__list-item a {
    height: min(50px, 4.5454545455vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-anchor-fixed .p-anchor__list-item a {
    height: 10.4vw;
  }
}
.contents .p-anchor-fixed .p-anchor__list-item a::after {
  display: none;
}
@media screen and (min-width: 768px) {
  .contents .p-intro {
    margin-top: min(80px, 7.2727272727vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-intro {
    margin-top: 13.3333333333vw;
  }
}
.contents .p-intro__title {
  text-align: center;
  color: #707070;
}
@media screen and (min-width: 768px) {
  .contents .p-intro__title {
    font-size: clamp(17.5px, 3.1818181818vw, 35px);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-intro__title {
    font-size: calc(59.2 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-intro__title {
    margin-bottom: min(30px, 2.7272727273vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-intro__title {
    margin-bottom: 8vw;
  }
}
.contents .p-intro__lead {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contents .p-intro__lead {
    font-size: clamp(8px, 1.4545454545vw, 16px);
    line-height: 2.1375;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-intro__lead {
    font-size: calc(26 / 750 * 100vw);
    line-height: 2.4;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-intro__award {
    margin-top: min(64px, 5.8181818182vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-intro__award {
    margin-top: 6.4vw;
  }
}
.contents .p-intro__award-img {
  display: flex;
  align-items: flex-start;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .contents .p-intro__award-img {
    column-gap: min(24px, 2.1818181818vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-intro__award-img {
    column-gap: 8vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-intro__award-img01 {
    width: min(100px, 9.0909090909vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-intro__award-img01 {
    width: 23.7333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-intro__award-img02 {
    width: min(122px, 11.0909090909vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-intro__award-img02 {
    width: 24.8vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-intro__award-notes {
    width: max-content;
    margin-left: auto;
    margin-right: auto;
    margin-top: min(12px, 1.0909090909vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-intro__award-notes {
    margin-top: 4vw;
  }
}
.contents .p-intro__award-notes li {
  padding-left: 1em;
  text-indent: -1em;
  color: #666;
}
@media screen and (min-width: 768px) {
  .contents .p-intro__award-notes li {
    font-size: clamp(6px, 1.0909090909vw, 12px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-intro__award-notes li {
    font-size: calc(20 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-topics {
    padding-top: min(90px, 8.1818181818vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-topics {
    padding-top: 14.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-topics__wrap {
    margin: 0 auto;
    position: relative;
    max-width: min(848px, 77.0909090909vw);
  }
}
@media screen and (min-width: 768px) {
  .contents .p-topics__slider {
    margin: 0 auto;
    max-width: min(772px, 70.1818181818vw);
  }
}
@media screen and (min-width: 768px) {
  .contents .p-topics__slider-item {
    width: min(375px, 34.0909090909vw);
    margin-right: min(22px, 2vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-topics__slider-item {
    margin: 0 1.3333333333vw;
    width: 87.4666666667vw;
  }
}
.contents .p-topics__slider .swiper-pagination {
  position: static;
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .contents .p-topics__slider .swiper-pagination {
    margin-top: min(30px, 2.7272727273vw);
    column-gap: min(20px, 1.8181818182vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-topics__slider .swiper-pagination {
    margin-top: 4vw;
    column-gap: 3.7333333333vw;
  }
}
.contents .p-topics__slider .swiper-pagination .swiper-pagination-bullet {
  margin: 0;
}
.contents .p-topics__slider .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #000;
}
@media screen and (min-width: 768px) {
  .contents .p-topics__prev, .contents .p-topics__next {
    cursor: pointer;
    position: absolute;
    width: min(15px, 1.3636363636vw);
    height: min(30px, 2.7272727273vw);
    top: min(60px, 5.4545454545vw);
    background: center/contain no-repeat url(../img/ic-next.png);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-topics__prev, .contents .p-topics__next {
    display: none;
  }
}
.contents .p-topics__prev {
  left: 0;
  transform: scale(-1, 1);
}
.contents .p-topics__next {
  right: 0;
}
@media screen and (min-width: 768px) {
  .contents .p-lineup {
    padding-top: min(100px, 9.0909090909vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup {
    padding-top: 16vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__listwrap {
    margin: min(50px, 4.5454545455vw) 0 min(55px, 5vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__listwrap {
    overflow-x: scroll;
    margin: 13.3333333333vw 0 16vw;
    padding-left: 4vw;
  }
}
.contents .p-lineup__list {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__list {
    justify-content: center;
    column-gap: min(25px, 2.2727272727vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__list {
    column-gap: 6.6666666667vw;
    padding-bottom: 4vw;
  }
  .contents .p-lineup__list::after {
    display: block;
    content: "";
    width: 1px;
    height: 1px;
    flex-shrink: 0;
  }
}
.contents .p-lineup__list-item {
  flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__list-item.normal {
    width: min(70px, 6.3636363636vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__list-item.normal {
    width: 18.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__list-item.mini {
    width: min(62px, 5.6363636364vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__list-item.mini {
    width: 16.5333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__bg {
    padding: min(50px, 4.5454545455vw) 0 min(70px, 6.3636363636vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__bg {
    padding: 13.3333333333vw 0 16vw;
  }
}
.contents .p-lineup__inner {
  margin: 0 auto;
  position: relative;
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__inner {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    width: min(900px, 81.8181818182vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__inner {
    display: flex;
    flex-wrap: wrap;
    width: 92vw;
  }
}
.contents .p-lineup__tab {
  cursor: pointer;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__tab {
    grid-row: 1;
    padding-top: min(30px, 2.7272727273vw);
    height: min(200px, 18.1818181818vw);
    border-top-left-radius: min(20px, 1.8181818182vw);
    border-top-right-radius: min(20px, 1.8181818182vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__tab {
    width: 46vw;
    height: 51.2vw;
    padding-top: 8vw;
    border-top-left-radius: 2.6666666667vw;
    border-top-right-radius: 2.6666666667vw;
  }
  .contents .p-lineup__tab[data-index="0"] {
    order: 1;
  }
  .contents .p-lineup__tab[data-index="1"] {
    order: 2;
  }
  .contents .p-lineup__tab[data-index="2"] {
    order: 4;
  }
  .contents .p-lineup__tab[data-index="3"] {
    order: 5;
  }
}
.contents .p-lineup__tab.is-active {
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__tab-img {
    display: flex;
    align-items: center;
    justify-content: center;
    height: min(87px, 7.9090909091vw);
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__tab-imgnormal {
    width: min(70px, 6.3636363636vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__tab-imgnormal {
    width: 22.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__tab-imgmini {
    width: min(62px, 5.6363636364vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__tab-imgmini {
    width: 20vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__tab-txt {
    font-size: clamp(8px, 1.4545454545vw, 16px);
    line-height: 1.375;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__tab-txt {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__tab-txt {
    margin-top: min(12px, 1.0909090909vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__tab-txt {
    margin-top: 3.2vw;
  }
}
.contents .p-lineup__panel {
  background-color: #fff;
  display: none;
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__panel {
    border-radius: min(20px, 1.8181818182vw);
    padding: min(65px, 5.9090909091vw) min(50px, 4.5454545455vw) min(50px, 4.5454545455vw) min(35px, 3.1818181818vw);
    margin-top: max(-15px, -1.3636363636vw);
    grid-row: 2;
    grid-column: 1/5;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__panel {
    width: 100%;
    padding: 8vw 4vw 9.3333333333vw;
    border-radius: 2.6666666667vw;
    margin-top: -2.6666666667vw;
  }
  .contents .p-lineup__panel[data-index="0"], .contents .p-lineup__panel[data-index="1"] {
    order: 3;
  }
  .contents .p-lineup__panel[data-index="2"], .contents .p-lineup__panel[data-index="3"] {
    order: 6;
  }
}
.contents .p-lineup__panel.is-active {
  display: block;
}
.contents .p-lineup__wrap {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__wrap {
    column-gap: min(40px, 3.6363636364vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__wrap {
    flex-direction: column;
    row-gap: 6.4vw;
  }
}
.contents .p-lineup__slider {
  position: relative;
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__slider {
    width: min(396px, 36vw);
    padding: 0 min(15px, 1.3636363636vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__slider {
    width: 100%;
    padding: 0 4vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__slider .swiper-slide {
    width: min(366px, 33.2727272727vw);
    margin-right: min(30px, 2.7272727273vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__slider .swiper-slide {
    width: 76vw;
    margin-right: 4vw;
  }
}
.contents .p-lineup__next, .contents .p-lineup__prev {
  cursor: pointer;
  position: absolute;
  z-index: 10;
  top: 50%;
  background: center/contain no-repeat url(../img/ic-lineup-next.png);
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__next, .contents .p-lineup__prev {
    width: min(30px, 2.7272727273vw);
    height: min(30px, 2.7272727273vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__next, .contents .p-lineup__prev {
    width: 8vw;
    height: 8vw;
  }
}
.contents .p-lineup__next {
  transform: translateY(-50%);
  right: 0;
}
.contents .p-lineup__prev {
  transform: translateY(-50%) scale(-1, 1);
  left: 0;
}
.contents .p-lineup__text {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__text {
    flex: 1;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__text {
    width: 100%;
    padding: 0 4vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__text-lead {
    font-size: clamp(8px, 1.4545454545vw, 16px);
    line-height: 1.9;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__text-lead {
    font-size: calc(25 / 750 * 100vw);
    line-height: 1.872;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__text-lead {
    margin-bottom: min(20px, 1.8181818182vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__text-lead {
    margin-bottom: 4vw;
  }
}
.contents .p-lineup__text-award {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__text-award {
    width: min(250px, 22.7272727273vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__text-award {
    width: 53.3333333333vw;
  }
}
.contents .p-lineup__text-note {
  color: #231815;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__text-note {
    width: max-content;
    margin: min(12px, 1.0909090909vw) auto 0;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__text-note {
    margin-top: 2.6666666667vw;
  }
}
.contents .p-lineup__text-box {
  border: 1px solid #ccc;
  display: flex;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__text-box {
    align-items: center;
    width: min(356px, 32.3636363636vw);
    padding: min(8px, 0.7272727273vw) min(12px, 1.0909090909vw);
    column-gap: min(12px, 1.0909090909vw);
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__text-box {
    align-items: flex-start;
    padding: 4vw;
    column-gap: 3.2vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__text-box img {
    width: min(64px, 5.8181818182vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__text-box img {
    width: 24vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__text-box .text-title {
    font-size: clamp(6px, 1.0909090909vw, 12px);
    line-height: 1.4166666667;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__text-box .text-title {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.4375;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__text-box .text-title {
    margin-bottom: min(3px, 0.2727272727vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__text-box .text-title {
    margin-bottom: 0.8vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__text-box .text-txt {
    font-size: clamp(5.75px, 1.0454545455vw, 11.5px);
    line-height: 1.4782608696;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__text-box .text-txt {
    font-size: calc(23 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__text-name {
    font-size: clamp(11px, 2vw, 22px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__text-name {
    font-size: calc(32 / 750 * 100vw);
    line-height: 1.4;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__text-name {
    margin-top: min(20px, 1.8181818182vw);
    margin-bottom: min(10px, 0.9090909091vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__text-name {
    margin-top: 5.3333333333vw;
    margin-bottom: 2.6666666667vw;
  }
}
.contents .p-lineup__text-name .small {
  display: block;
  font-size: 87.5%;
}
.contents .p-lineup__text-price {
  color: #666;
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__text-price {
    font-size: clamp(10.5px, 1.9090909091vw, 21px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__text-price {
    font-size: calc(30 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__text-price {
    margin-bottom: min(26px, 2.3636363636vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__text-price {
    margin-bottom: 6.4vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lineup__text-price .tax {
    font-size: clamp(7.5px, 1.3636363636vw, 15px);
    line-height: 1.4;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lineup__text-price .tax {
    font-size: calc(22 / 750 * 100vw);
    line-height: 1.3636363636;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.contents .p-lineup__text .c-btn {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .contents .p-recommend {
    padding-top: min(110px, 10vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-recommend {
    padding-top: 16vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-recommend__bg {
    padding: min(42px, 3.8181818182vw) 0 min(48px, 4.3636363636vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-recommend__bg {
    padding: 13.3333333333vw 0;
  }
}
.contents .p-recommend__box {
  margin-left: auto;
  margin-right: auto;
  background: rgba(255, 255, 255, 0.2);
  border: 1px solid #fff;
}
@media screen and (min-width: 768px) {
  .contents .p-recommend__box {
    width: min(380px, 34.5454545455vw);
    padding: min(25px, 2.2727272727vw) 0 min(25px, 2.2727272727vw) min(32px, 2.9090909091vw);
    margin-bottom: min(30px, 2.7272727273vw);
    border-radius: min(10px, 0.9090909091vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-recommend__box {
    width: 92vw;
    padding: 6.6666666667vw 0 6.6666666667vw 8.6666666667vw;
    border-radius: 2.6666666667vw;
    margin-bottom: 8vw;
  }
}
.contents .p-recommend__checklist-item {
  display: flex;
  align-items: center;
  color: #444;
}
@media screen and (min-width: 768px) {
  .contents .p-recommend__checklist-item {
    font-size: clamp(8px, 1.4545454545vw, 16px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-recommend__checklist-item {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-recommend__checklist-item {
    column-gap: min(10px, 0.9090909091vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-recommend__checklist-item {
    column-gap: 2.6666666667vw;
  }
}
.contents .p-recommend__checklist-item::before {
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/ic-check.png);
  flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .contents .p-recommend__checklist-item::before {
    width: min(19px, 1.7272727273vw);
    height: min(19px, 1.7272727273vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-recommend__checklist-item::before {
    width: 5.0666666667vw;
    height: 5.0666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-recommend__checklist-item:not(:last-of-type) {
    margin-bottom: min(15px, 1.3636363636vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-recommend__checklist-item:not(:last-of-type) {
    margin-bottom: 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-recommend__items .swiper-wrapper {
    justify-content: center;
    column-gap: min(15px, 1.3636363636vw);
  }
}
.contents .p-recommend__item {
  background-color: #fff;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contents .p-recommend__item {
    width: min(255px, 23.1818181818vw);
    padding: min(18px, 1.6363636364vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-recommend__item {
    padding: 6.6666666667vw;
  }
}
.contents .p-recommend__item-txt {
  white-space: nowrap;
  letter-spacing: -0.02em;
}
@media screen and (min-width: 768px) {
  .contents .p-recommend__item-txt {
    margin-top: min(12px, 1.0909090909vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-recommend__item-txt {
    margin-top: 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-feature {
    padding-top: min(100px, 9.0909090909vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-feature {
    padding-top: 16vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-feature__bg {
    padding: min(54px, 4.9090909091vw) 0 min(50px, 4.5454545455vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-feature__bg {
    padding: 13.3333333333vw 0;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-feature__items .swiper-wrapper {
    justify-content: center;
    column-gap: min(15px, 1.3636363636vw);
  }
}
.contents .p-feature__item {
  text-align: center;
  background-color: #fff;
  height: auto;
}
@media screen and (min-width: 768px) {
  .contents .p-feature__item {
    width: min(345px, 31.3636363636vw);
    padding: min(20px, 1.8181818182vw) min(25px, 2.2727272727vw) min(30px, 2.7272727273vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-feature__item {
    padding: 5.3333333333vw 6.6666666667vw 7.2vw;
  }
}
.contents .p-feature__item-title {
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 1px solid #666666;
}
@media screen and (min-width: 768px) {
  .contents .p-feature__item-title {
    font-size: clamp(7px, 1.2727272727vw, 14px);
    line-height: 1.8;
    letter-spacing: 0.08em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-feature__item-title {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.8;
    letter-spacing: 0.08em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-feature__item-title {
    padding-bottom: min(16px, 1.4545454545vw);
    margin-bottom: min(10px, 0.9090909091vw);
    height: min(67px, 6.0909090909vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-feature__item-title {
    padding-bottom: 4.2666666667vw;
    margin-bottom: 2.6666666667vw;
    height: 17.7333333333vw;
  }
}
.contents .p-feature__item-subtitle {
  width: max-content;
  margin-left: auto;
  margin-right: auto;
  border-bottom: 1px solid #666666;
}
@media screen and (min-width: 768px) {
  .contents .p-feature__item-subtitle {
    font-size: clamp(7px, 1.2727272727vw, 14px);
    line-height: 1;
    letter-spacing: 0.08em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-feature__item-subtitle {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.08em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-feature__item-subtitle {
    padding-bottom: min(16px, 1.4545454545vw);
    margin-top: min(15px, 1.3636363636vw);
    margin-bottom: min(12px, 1.0909090909vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-feature__item-subtitle {
    padding-bottom: 4.2666666667vw;
    margin-top: 4vw;
    margin-bottom: 3.2vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-feature__item-txt {
    font-size: clamp(6.5px, 1.1818181818vw, 13px);
    line-height: 1.8;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-feature__item-txt {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1.8;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-feature__item-txt {
    margin-bottom: min(12px, 1.0909090909vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-feature__item-txt {
    margin-bottom: 3.2vw;
  }
}
.contents .p-feature__item-txt:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .contents .p-feature__note {
    margin: min(15px, 1.3636363636vw) auto 0;
    text-align: right;
    width: min(1065px, 96.8181818182vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-feature__note {
    text-align: center;
    margin-top: 3.2vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-gift {
    padding-top: min(100px, 9.0909090909vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gift {
    padding-top: 16vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-gift__bg {
    padding: min(55px, 5vw) 0;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gift__bg {
    padding: 10.6666666667vw 0;
  }
}
.contents .p-gift__inner {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .contents .p-gift__inner {
    width: min(694px, 63.0909090909vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gift__inner {
    width: 92vw;
  }
}
.contents .p-gift__top {
  display: flex;
  align-items: center;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contents .p-gift__top {
    margin-bottom: min(48px, 4.3636363636vw);
    column-gap: min(35px, 3.1818181818vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gift__top {
    flex-direction: column-reverse;
    row-gap: 6.4vw;
    margin-bottom: 8vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-gift__top-img {
    width: min(345px, 31.3636363636vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gift__top-img {
    width: 92vw;
  }
}
.contents .p-gift__top-text {
  font-family: "Noto Serif JP", serif;
}
.contents .p-gift__top-title {
  position: relative;
}
@media screen and (min-width: 768px) {
  .contents .p-gift__top-title {
    font-size: clamp(9px, 1.6363636364vw, 18px);
    line-height: 1.6;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gift__top-title {
    font-size: calc(36 / 750 * 100vw);
    line-height: 1.6;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-gift__top-title {
    padding-bottom: min(20px, 1.8181818182vw);
    margin-bottom: min(20px, 1.8181818182vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gift__top-title {
    padding-bottom: 5.3333333333vw;
    margin-bottom: 5.3333333333vw;
  }
}
.contents .p-gift__top-title::after {
  position: absolute;
  content: "";
  display: block;
  background-color: #231815;
  height: 1px;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .contents .p-gift__top-title::after {
    width: min(30px, 2.7272727273vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gift__top-title::after {
    width: 8vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-gift__top-txt {
    font-size: clamp(6.5px, 1.1818181818vw, 13px);
    line-height: 1.8;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gift__top-txt {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1.8;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.contents .p-gift__wrap {
  position: relative;
}
.contents .p-gift__items .swiper-pagination-progressbar {
  position: static;
  margin: 6.6666666667vw auto 0;
  width: 92vw;
  height: 4px;
  background-color: #cecece;
}
.contents .p-gift__items .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background-color: #333;
}
.contents .p-gift__items .swiper-pagination {
  position: static;
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .contents .p-gift__items .swiper-pagination {
    margin-top: min(30px, 2.7272727273vw);
    column-gap: min(20px, 1.8181818182vw);
  }
}
.contents .p-gift__items .swiper-pagination .swiper-pagination-bullet {
  margin: 0;
}
.contents .p-gift__items .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #000;
}
@media screen and (min-width: 768px) {
  .contents .p-gift__prev, .contents .p-gift__next {
    cursor: pointer;
    position: absolute;
    top: 50%;
    width: min(15px, 1.3636363636vw);
    height: min(30px, 2.7272727273vw);
    background: center/contain no-repeat url(../img/ic-next.png);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gift__prev, .contents .p-gift__next {
    display: none;
  }
}
.contents .p-gift__prev {
  transform: scale(-1, 1) translateY(-50%);
}
@media screen and (min-width: 768px) {
  .contents .p-gift__prev {
    left: max(-40px, -3.6363636364vw);
  }
}
.contents .p-gift__next {
  transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .contents .p-gift__next {
    right: max(-40px, -3.6363636364vw);
  }
}
@media screen and (min-width: 768px) {
  .contents .p-gift__itemwrap {
    width: min(166px, 15.0909090909vw);
    margin-right: min(10px, 0.9090909091vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gift__itemwrap {
    width: 44.2666666667vw;
    margin-right: 3.4666666667vw;
  }
}
.contents .p-gift__item {
  display: block;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contents .p-gift__item:not(:last-of-type) {
    margin-bottom: min(30px, 2.7272727273vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gift__item:not(:last-of-type) {
    margin-bottom: 8vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-gift__item-name {
    font-size: clamp(6px, 1.0909090909vw, 12px);
    line-height: 1.4;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gift__item-name {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.4;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-gift__item-name {
    margin: min(12px, 1.0909090909vw) 0;
    min-height: min(84px, 7.6363636364vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gift__item-name {
    margin: 3.2vw 0;
    min-height: 22.4vw;
  }
}
.contents .p-gift__item-price {
  color: #888888;
}
@media screen and (min-width: 768px) {
  .contents .p-gift__item-price {
    font-size: clamp(6px, 1.0909090909vw, 12px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gift__item-price {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-size {
    padding-top: min(100px, 9.0909090909vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-size {
    padding-top: 16vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-size__bg {
    padding: min(46px, 4.1818181818vw) 0;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-size__bg {
    padding: 13.3333333333vw 0 12vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-size__items {
    display: grid;
    grid-template-columns: 1fr 1fr;
    justify-content: center;
    row-gap: min(43px, 3.9090909091vw);
    column-gap: min(30px, 2.7272727273vw);
  }
}
@media screen and (min-width: 768px) {
  .contents .p-size__top {
    grid-column: span 2;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-size__top {
    width: 92vw;
    margin: 0 auto 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-size__top img {
    width: min(415px, 37.7272727273vw);
  }
}
@media screen and (min-width: 768px) {
  .contents .p-size__item {
    text-align: center;
    width: min(350px, 31.8181818182vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-size__item {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-size__item.-pc-end {
    justify-self: end;
  }
}
.contents .p-size__item-img {
  display: flex;
}
@media screen and (min-width: 768px) {
  .contents .p-size__item-img {
    flex-direction: column;
    align-items: center;
    row-gap: min(8px, 0.7272727273vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-size__item-img {
    align-items: flex-end;
    column-gap: 2.6666666667vw;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-size__item-img.-reverse {
    flex-direction: row-reverse;
    justify-content: flex-start;
    margin-top: 7.2vw;
  }
  .contents .p-size__item-img.-reverse .p-size__item-note {
    text-align: right;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-size__item-img img {
    width: 56vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-size__item-text {
    margin-top: min(20px, 1.8181818182vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-size__item-text {
    width: 92vw;
    margin: 4.2666666667vw auto 0;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-size__item-txt {
    font-size: clamp(6.5px, 1.1818181818vw, 13px);
    line-height: 1.8;
    letter-spacing: -0.02em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-size__item-txt {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1.8;
    letter-spacing: -0.02em;
    font-weight: 400;
  }
}
.contents .p-size__item-note {
  text-indent: 0;
  padding-left: 0;
}
@media screen and (min-width: 768px) {
  .contents .p-ranking {
    margin-bottom: min(90px, 8.1818181818vw);
    padding-top: min(100px, 9.0909090909vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking {
    margin-bottom: 13.3333333333vw;
    padding-top: 16vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__bg {
    padding: min(32px, 2.9090909091vw) 0 min(62px, 5.6363636364vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__bg {
    padding: 13.3333333333vw 0;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__items .swiper-wrapper {
    justify-content: center;
    column-gap: min(15px, 1.3636363636vw);
  }
}
.contents .p-ranking__item {
  background-color: #fff;
  height: auto;
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__item {
    width: min(345px, 31.3636363636vw);
    padding: min(20px, 1.8181818182vw) min(25px, 2.2727272727vw) min(30px, 2.7272727273vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__item {
    padding: 5.3333333333vw 6.6666666667vw 8vw;
  }
}
.contents .p-ranking__item-title {
  text-align: center;
}
.contents .p-ranking__item-title .sub {
  display: inline-block;
  background: linear-gradient(to right, #bab0e1 0%, #f7d5df 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__item-title .sub {
    font-size: clamp(7.5px, 1.3636363636vw, 15px);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__item-title .sub {
    font-size: calc(30 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
.contents .p-ranking__item-title .main {
  display: block;
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__item-title .main {
    font-size: clamp(6.5px, 1.1818181818vw, 13px);
    line-height: 1;
    letter-spacing: 0.08em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__item-title .main {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.08em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__item-title .main {
    margin-top: min(15px, 1.3636363636vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__item-title .main {
    margin-top: 4vw;
  }
}
.contents .p-ranking__item-lead {
  text-align: center;
  color: #666666;
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__item-lead {
    font-size: clamp(5.5px, 1vw, 11px);
    line-height: 1;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__item-lead {
    font-size: calc(22 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__item-lead {
    margin: min(30px, 2.7272727273vw) 0 min(25px, 2.2727272727vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__item-lead {
    margin: 8vw 0 6.6666666667vw;
  }
}
.contents .p-ranking__item-arrow {
  margin-left: auto;
  margin-right: auto;
  background: linear-gradient(to right, #f7d5df 0%, #bab0e1 100%);
  opacity: 0.5;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__item-arrow {
    width: min(75px, 6.8181818182vw);
    height: min(20px, 1.8181818182vw);
    margin-bottom: min(25px, 2.2727272727vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__item-arrow {
    width: 20vw;
    height: 5.3333333333vw;
    margin-bottom: 6.6666666667vw;
  }
}
.contents .p-ranking__item .c-btn {
  margin-top: auto;
  margin-left: auto;
  margin-right: auto;
}
.contents .p-ranking__heartbrush {
  display: flex;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__heartbrush {
    padding: min(30px, 2.7272727273vw) 0 min(32px, 2.9090909091vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__heartbrush {
    padding: 8vw 0 8.5333333333vw;
  }
}
.contents .p-ranking__heartbrush-item {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__heartbrush-item {
    width: min(80px, 7.2727272727vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__heartbrush-item {
    width: 21.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__heartbrush-text {
    margin-top: min(5px, 0.4545454545vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__heartbrush-text {
    margin-top: 1.3333333333vw;
  }
}
.contents .p-ranking__heartbrush-text img {
  display: block;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__heartbrush-text img {
    width: min(30px, 2.7272727273vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__heartbrush-text img {
    width: 8.1333333333vw;
  }
}
.contents .p-ranking__heartbrush-text .color {
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__heartbrush-text .color {
    font-size: clamp(4.5px, 0.8181818182vw, 9px);
    line-height: 1;
    letter-spacing: -0.02em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__heartbrush-text .color {
    font-size: calc(18 / 750 * 100vw);
    line-height: 1;
    letter-spacing: -0.02em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__heartbrush-text .color {
    margin-top: min(8px, 0.7272727273vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__heartbrush-text .color {
    margin-top: 2.1333333333vw;
  }
}
.contents .p-ranking__recommend {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__recommend {
    column-gap: min(18px, 1.6363636364vw);
    margin-top: min(30px, 2.7272727273vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__recommend {
    column-gap: 4.8vw;
    margin-top: 8vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__recommend img {
    width: min(62px, 5.6363636364vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__recommend img {
    width: 16.5333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__recommend-ttl {
    font-size: clamp(5.5px, 1vw, 11px);
    line-height: 1.6;
    letter-spacing: 0.08em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__recommend-ttl {
    font-size: calc(22 / 750 * 100vw);
    line-height: 1.6;
    letter-spacing: 0.08em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__recommend-color {
    font-size: clamp(5px, 0.9090909091vw, 10px);
    line-height: 1.76;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__recommend-color {
    font-size: calc(20 / 750 * 100vw);
    line-height: 1.76;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
.contents .p-ranking__gift {
  border-top: 1px solid #ddd;
}
.contents .p-ranking__gift-item {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #ddd;
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__gift-item {
    padding: min(10px, 0.9090909091vw) 0;
    column-gap: min(15px, 1.3636363636vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__gift-item {
    padding: 2.6666666667vw 0;
    column-gap: 4vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__gift-icon {
    width: min(30px, 2.7272727273vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__gift-icon {
    width: 8.1333333333vw;
  }
}
.contents .p-ranking__gift-title {
  flex: 1;
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__gift-title {
    font-size: clamp(5.5px, 1vw, 11px);
    line-height: 1.2272727273;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__gift-title {
    font-size: calc(22 / 750 * 100vw);
    line-height: 1.2272727273;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__gift-product {
    width: min(105px, 9.5454545455vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__gift-product {
    width: 28vw;
  }
}
.contents .p-ranking__img {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__img {
    margin-top: min(15px, 1.3636363636vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__img {
    margin-top: 4vw;
  }
}
.contents .p-ranking__img-txt {
  color: #666;
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__img-txt {
    font-size: clamp(6px, 1.0909090909vw, 12px);
    line-height: 1.25;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__img-txt {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.25;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__img-txt {
    margin-top: min(12px, 1.0909090909vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__img-txt {
    margin-top: 3.2vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__voice {
    margin-top: min(14px, 1.2727272727vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__voice {
    margin-top: 3.7333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-ranking__note {
    margin: min(12px, 1.0909090909vw) 0 min(20px, 1.8181818182vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-ranking__note {
    margin: 3.2vw 0 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-gallery__bg {
    padding: min(50px, 4.5454545455vw) 0 min(12px, 1.0909090909vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gallery__bg {
    background: none;
    position: relative;
  }
  .contents .p-gallery__bg::after {
    position: absolute;
    z-index: -1;
    content: "";
    display: block;
    background: linear-gradient(to bottom, #e8ddf1, #f8f1f3);
    height: 249.2vw;
    top: 34.6666666667vw;
    width: 100%;
    left: 0;
  }
}
.contents .p-gallery__title {
  color: #707070;
}
@media screen and (min-width: 768px) {
  .contents .p-gallery__title {
    font-size: clamp(17.5px, 3.1818181818vw, 35px);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gallery__title {
    font-size: calc(50 / 750 * 100vw);
    line-height: 1.2;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-gallery__title {
    text-align: center;
    margin-bottom: min(30px, 2.7272727273vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gallery__title {
    position: absolute;
    left: 11.2vw;
    top: 94.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-gallery__inner {
    margin: 0 auto;
    width: 95.4285714286vw;
    max-width: 1336px;
  }
}
.contents .p-gallery__list {
  display: flex;
}
@media screen and (min-width: 768px) {
  .contents .p-gallery__list {
    justify-content: center;
    column-gap: min(15px, 1.071429vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gallery__list {
    flex-direction: column;
    row-gap: 4vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-gallery__list-item {
    width: min(247px, 17.64286vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gallery__list-item.item01, .contents .p-gallery__list-item.item05 {
    width: 72vw;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gallery__list-item.item02, .contents .p-gallery__list-item.item04 {
    width: 53.3333333333vw;
    margin-left: auto;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gallery__list-item.item03 {
    width: 53.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-gallery__note {
    text-align: right;
    margin-top: min(40px, 3.6363636364vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-gallery__note {
    position: absolute;
    right: 4vw;
    bottom: 38.6666666667vw;
  }
}
.contents .p-comparisonsec {
  overflow: visible;
}
@media screen and (min-width: 768px) {
  .contents .p-comparisonsec {
    padding-top: min(110px, 10vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-comparisonsec {
    padding-top: 16vw;
  }
}
.contents .p-comparisonsec .p-comparison {
  margin-top: 0;
}
.contents .p-comparisonsec .p-comparison__ttl {
  display: none;
}
.contents .p-comparisonsec__btn {
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .contents .p-comparisonsec__btn {
    column-gap: min(38px, 3.4545454545vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-comparisonsec__btn {
    flex-direction: column;
    align-items: center;
    row-gap: 7.6vw;
  }
}
@media screen and (max-width: 767px) {
  .contents .is-pc {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .contents .is-sp {
    display: none;
  }
}