@charset "UTF-8";
/* //////////////////////////////////////////////////

Title : style.scss
For   : Page/feature/brand/KEEN/250403_keen/

Created       : 2025-03-31
Last Modified : 2025-04-03

==========================================

Content

////////////////////////////////////////////////// */
/**
 * variables, layouts
 */

html {
  font-size: 62.5%;
}

#em250403KEEN {
  --color-black: #000000;
  --color-purple: #693382;
  --color-white: #ffffff;
  --color-green: #337482;
  --font-hiragino: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝", "Yu Mincho", "MS PMincho", "MS Mincho", serif;
  --font-yu-mincho: "游明朝", "YuMincho", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  --font-gothic: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  --font-pragmatica: "pragmatica", sans-serif;
  --font-kudryashev: "kudryashev-d-contrast", sans-serif;
  --fw-light: 300;
  --fw-regular: 400;
  overflow: clip;
  --sticky-background-height: calc(var(--sticky-background-width) * (760 / 570));
}

#em250403KEEN {
  width: 100%;
  margin-inline: auto;
}

.main-area {
  overflow: visible;
}

/* --- for small viewport --- */
@media screen and (max-width: 767px) {
  #em250403KEEN {
    --rate: 100vw / 750;
  }
  #em250403KEEN .hidden-sml {
    display: none !important;
  }
  .archive {
    border-top: none !important;
  }
}
/* --- for large viewport --- */
@media screen and (min-width: 768px) {
  #em250403KEEN {
    --rate: 100vw/1400;
  }
  #em250403KEEN .hidden-lrg {
    display: none !important;
  }
}

/* --- for middle viewport --- */
@media screen and (min-width: 768px) and (max-width: 1400px) {
  html {
    font-size: 0.7142857143vw;
  }
}
/**
 * common
 */
.lpemmiID img,
.lpemmiID picture {
  display: var(--display, block);
}
.lpemmiID img {
  width: 100%;
  height: auto;
}
.lpemmiID a {
  display: var(--display, block);
}
.lpemmiID .credit-tate a {
  display: var(--display, block);
}
.lpemmiID a:has(img) {
  --display: block;
}
.lpemmiID * {
  font-feature-settings: "palt" 1;
  font-family: var(--font-family, var(--font-gothic));
  font-weight: var(--font-weight, 400);
  color: var(--font-color, var(--color-black));
  box-sizing: border-box;
  text-align: var(--text-align, initial);
}
.lpemmiID .en {
  --font-family: var(--font-en);
}
.lpemmiID .ja {
  --font-family: var(--font-ja);
}
.lpemmiID__section {
  width: 100%;
  margin-inline: auto;
  position: relative;
}
/* --- for small viewport --- */
@media screen and (max-width: 767px) {
  .lpemmiID {
    overflow-x: hidden;
  }
  .lpemmiID a {
    display: var(--display, inline-block);
  }
  .main-inner .archive {
    padding-bottom: 12.9333333333vw !important;
  }
}
/**
 * firstview
 */
.firstview__lead {
  position: relative;
  margin-inline: auto;
}

.firstview__heading {
  line-height: 1;
}
.firstview__heading > span {
  --font-weight: 600;
  display: block;
}
/* --- for large viewport --- */
@media screen and (min-width: 768px) {
  .firstview__heading > span {
    font-family: var(--font-yu-mincho);
  }
  .firstview__lead {
    width: min(1000*(100vw / 1400), 1000px);
  }

  .text_anim p {
    font-family: var(--font-en);
    font-size: min(54 * (100vw/1400), 54px);
    letter-spacing: 0.06em;
    line-height: 1.1;
    margin: 0;
    text-align: left;
    color: #9a3a49;
  }
  .text_anim span {
    opacity: 0;
    display: inline-block;
    transform: translateY(min(5 * (100vw/1400), 5px));
    transition: opacity 0.5s ease, transform 0.5s ease;
    font-family: var(--font-en);
    font-weight: 400;
    font-style: normal;
    position: relative;
    z-index: 10;
    color: #9a3a49;
  }
  .text_anim p:nth-child(4) {
    padding-top: min(13 * (100vw/1400), 13px);
  }
  
  .text_anim p:nth-child(n+4) {
    font-size: min(21 * (100vw/1400), 21px);
    letter-spacing: 0.06em;
    margin-top: min(1 * (100vw/1400), 1px);
    line-height: 1.32;
    padding-left: min(2 * (100vw/1400), 2px);
  }
  .lpemmiID .credit-tate a::after {
    display: none;
  }
}
/* --- for small viewport --- */
@media screen and (max-width: 767px) {
  .firstview__heading--secondary {
    font-size: min(27 * var(--rate),27px);
    letter-spacing: 0.14em;
  }
  .firstview__heading--primary {
    -webkit-margin-before: min(30 * var(--rate),30px);
            margin-block-start: min(30 * var(--rate),30px);
    font-size: min(36 * var(--rate),36px);
    letter-spacing: 0.14em;
  }
}
/**
 * main contents: common
 */
.mainContents__section, .mainContents__shell, .mainContents__block {
  position: relative;
}
.mainContents__section--footer {
  --font-family: var(--font-en);
  --text-align: center;
}
.mainContents__block {
  display: grid;
}
.mainContents__cell--decoration {
  position: absolute;
  pointer-events: none;
}
.mainContents__styling {
  position: relative;
}
.mainContents__styling::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  z-index: -1;
}
.mainContents__heading--body {
  display: inline-block;
}
.mainContents__description {
  --text-align: justify;
  line-height: 2;
  line-break: strict;
}
.mainContents__prices {
  --font-color: var(--color-black);
  --font-family: var(--font-pragmatica);
  position: relative;
}
/* .mainContents__prices .right_space {
  margin-right: min(2*(100vw / 1400), 2px);
}
.mainContents__prices > a:not(:last-child)::after {
  content: ",";
} */
.mainContents__button {
  display: block;
  margin-inline: auto;
}
.mainContents__staff-credit {
  --font-color: var(--color-gray);
  line-height: 1.75;
}
.mainContents__details {
  position: absolute;
  z-index: 3;
  pointer-events: none;
  /* transform: rotate(90deg); */
}
.mainContents__heading {
  position: var(--position, relative);
}
.mainContents__img_title {
  color: var(--color-blue);
  font-family: var(--font-en);
  font-weight: var(--fw-regular);
  letter-spacing: 0.06em;
  white-space: nowrap;
}
/* --- for large viewport --- */
@media screen and (min-width: 768px) {
  .mainContents__section--footer {
    letter-spacing: 0.075em;
  }
  .mainContents__description {
    font-size: min(13 * var(--rate),13px);
    letter-spacing: 0.16em;
    font-family: var(--font-yu-mincho);
  }
  .mainContents__heading {
    --headig-spacer: min(7* var(--rate),7px);
}
  .mainContents__prices {
    font-size: min(14 * var(--rate),14px);
    line-height: 1.8571428571;
    letter-spacing: 0.05em;
  }
  .mainContents__prices > * {
    --prices-spacer: .05em;
  }
}
/* --- for small viewport --- */
@media screen and (max-width: 767px) {
  .mainContents__heading {
    font-size: min(30 * var(--rate),30px);
    --headig-spacer: min(15* var(--rate),15px);
  }
  .mainContents__description {
    font-size: min(24 * var(--rate),24px);
    letter-spacing: 0.14em;
  }
  .mainContents__prices {
    font-size: 11px;
    line-height: 1.8181818182;
    letter-spacing: 0.05em;
  }
  .mainContents__prices > * {
    --prices-spacer: .06em;
  }
  .mainContents__prices > .colon_none::after {
    display: none;
  }
}
.mainContents__shell {
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
}
/**
 * main contents: each contents
 */
/* --- for large viewport --- */
@media screen and (min-width: 768px) {
  .mainContents__shell {
    display: flex;
    justify-content: space-between;
  }
  .mainContents__shell01 {
    margin-top: min(100*(100vw / 1400), 100px);
  }
  .mainContents__block01 {
    width: min(1400*(100vw / 1400), 1400px);
    margin: 0 auto;
  }
  .mainContents__block01 .mainContents__cell01 {
    width: min(440*(100vw / 1400), 440px);
    margin: 0 auto;
    position: relative;
    margin-top: min(40*(100vw / 1400), 40px);
  }
  .mainContents__block01 .mainContents__cell01 .styleview__txt01 {
    width: min(220*(100vw / 1400), 220px);
    position: absolute;
    left: max(-277*(100vw / 1400), -277px);
    top: min(123*(100vw / 1400), 123px);
    z-index: 5;
  }
  .mainContents__block01 .mainContents__cell01 .styleview__txt02 {
    width: min(140*(100vw / 1400), 140px);
    position: absolute;
    right: max(-181*(100vw / 1400), -181px);
    top: min(428*(100vw / 1400), 428px);
    z-index: 5;
  }
  .mainContents__block01 .mainContents__cell02 {
    width: min(650*(100vw / 1400), 650px);
    margin-top: min(100*(100vw / 1400), 100px);
    margin-left: min(370*(100vw / 1400), 370px);
    display: flex;
    justify-content: space-between;
    row-gap: min(20*(100vw / 1400), 20px);
    position: relative;
  }
  .mainContents__block01 .mainContents__cell02 .mainContents__styling01 {
    width: min(330*(100vw / 1400), 330px);
  }
  .mainContents__block01 .mainContents__cell02 .mainContents__styling02 {
    width: min(300*(100vw / 1400), 300px);
    margin-top: min(80*(100vw / 1400), 80px);
  }
  .mainContents__block01 .mainContents__prices {
    position: absolute;
    right: max(-164*(100vw / 1400), -164px);
    bottom: max(-7*(100vw / 1400), -7px);
  }

  .mainContents__shell02 {
    margin-top: min(180*(100vw / 1400), 180px);
    width: min(1400*(100vw / 1400), 1400px);
  }
  .mainContents__block02 {
    width: min(1240*(100vw / 1400), 1240px);
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    row-gap: min(190*(100vw / 1400), 190px);
  }
  .mainContents__block02 .mainContents__cell01 {
    width: min(440*(100vw / 1400), 440px);
  }
  .mainContents__block02 .mainContents__cell02 {
    width: min(610*(100vw / 1400), 610px);
    display: flex;
    justify-content: space-between;
    row-gap: min(20*(100vw / 1400), 20px);
    position: relative;
    margin-top: min(65*(100vw / 1400), 65px);
  }
  .mainContents__block02 .mainContents__cell02 .mainContents__styling01 {
    width: min(300*(100vw / 1400), 300px);
  }
  .mainContents__block02 .mainContents__cell02 .mainContents__styling02 {
    width: min(290*(100vw / 1400), 290px);
    margin-top: min(80*(100vw / 1400), 80px);
  }
  .mainContents__block02 .mainContents__prices {
    position: absolute;
    left: 0;
    bottom: min(2*(100vw / 1400), 2px);
  }

  .mainContents__shell03 {
    margin-top: min(180*(100vw / 1400), 180px);
    width: min(1400*(100vw / 1400), 1400px);
  }
  .mainContents__block03 {
    width: min(350*(100vw / 1400), 350px);
    margin-left: min(530*(100vw / 1400), 530px);
  }
  .mainContents__block03 .mainContents__prices {
    margin-top: min(15*(100vw / 1400), 15px);
  }

  .mainContents__shell04 {
    margin-top: min(173*(100vw / 1400), 173px);
    width: min(1400*(100vw / 1400), 1400px);
  }
  .mainContents__block04 {
    width: min(933*(100vw / 1400), 933px);
    margin-left: min(280*(100vw / 1400), 280px);
    position: relative;
  }
  .mainContents__block04 .styleview__txt01 {
    width: min(270*(100vw / 1400), 270px);
    position: absolute;
    right: min(61*(100vw / 1400), 61px);
    top: min(219*(100vw / 1400), 219px);
    z-index: 5;
  }
  .mainContents__block04 .styleview__txt02 {
    width: min(270*(100vw / 1400), 270px);
    position: absolute;
    right: min(1*(100vw / 1400), 1px);
    top: min(275*(100vw / 1400), 275px);
    z-index: 5;
  }
  .mainContents__block04 .mainContents__cell01 {
    width: min(400*(100vw / 1400), 400px);
    position: relative;
  }
  .mainContents__block04 .mainContents__prices {
    position: absolute;
    right: max(-266*(100vw / 1400), -266px);
    bottom: max(-7*(100vw / 1400), -7px);
  }

  .mainContents__shell05 {
    margin-top: min(180*(100vw / 1400), 180px);
    width: min(1400*(100vw / 1400), 1400px);
  }
  .mainContents__block05 {
    width: min(846*(100vw / 1400), 846px);
    margin-left: min(370*(100vw / 1400), 370px);
    position: relative;
  }
  .mainContents__block05 .mainContents__cell01 {
    width: min(660*(100vw / 1400), 660px);
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: min(20*(100vw / 1400), 20px);
  }
  .mainContents__block05 .mainContents__cell01 .mainContents__styling {
    width: min(320*(100vw / 1400), 320px);
  }
  .mainContents__block05 .mainContents__prices {
    position: absolute;
    right: min(3*(100vw / 1400), 3px);
    bottom: max(-7*(100vw / 1400), -7px);
  }

  .mainContents__shell06 {
    margin-top: min(180*(100vw / 1400), 180px);
    width: min(1400*(100vw / 1400), 1400px);
  }
  .mainContents__block06 {
    width: min(385*(100vw / 1400), 385px);
    margin-left: min(510*(100vw / 1400), 510px);
    position: relative;
  }
  .mainContents__block06 .styleview__txt01 {
    width: min(167*(100vw / 1400), 167px);
    position: absolute;
    left: max(-308*(100vw / 1400), -308px);
    top: min(156*(100vw / 1400), 156px);
    z-index: 5;
  }
  .mainContents__block06 .styleview__txt02 {
    width: min(195*(100vw / 1400), 195px);
    position: absolute;
    left: max(-171*(100vw / 1400), -171px);
    top: min(304*(100vw / 1400), 304px);
    z-index: 5;
  }
  .mainContents__block06 .mainContents__cell01 {
    width: min(380*(100vw / 1400), 380px);
    margin-left: min(5*(100vw / 1400), 5px);
  }
  .mainContents__block06 .mainContents__prices {
    margin-top: min(25*(100vw / 1400), 25px);
  }

  .mainContents__shell07 {
    margin-top: min(173*(100vw / 1400), 173px);
    width: min(1400*(100vw / 1400), 1400px);
  }
  .mainContents__block07 {
    width: min(805*(100vw / 1400), 805px);
    margin-left: min(300*(100vw / 1400), 300px);
    display: flex;
    justify-content: space-between;
    row-gap: min(85*(100vw / 1400), 85px);
  }
  .mainContents__block07 .mainContents__cell01 {
    width: min(410*(100vw / 1400), 410px);
    position: relative;
  }
  .mainContents__block07 .mainContents__cell01 .styleview__txt01 {
    width: min(276*(100vw / 1400), 276px);
    position: absolute;
    right: max(-247*(100vw / 1400), -247px);
    top: min(104*(100vw / 1400), 104px);
    z-index: 5;
  }

  .mainContents__block07 .mainContents__cell02 {
    width: min(310*(100vw / 1400), 310px);
    margin-top: min(287*(100vw / 1400), 287px);
    position: relative;
  }
  .mainContents__block07 .mainContents__cell02 .styleview__txt02 {
    width: min(153*(100vw / 1400), 153px);
    position: absolute;
    right: max(-76*(100vw / 1400), -76px);
    top: max(-31*(100vw / 1400), -31px);
    z-index: 5;
  }
  .mainContents__block07 .mainContents__prices {
    margin-top: min(25*(100vw / 1400), 25px);
  }
  .mainContents__block07 .mainContents__prices .right_space {
    margin-right: min(6*(100vw / 1400), 6px);
  }
  .mainContents__block07 .mainContents__prices a {
    display: inline-block;
  }

  .mainContents__shell08 {
    margin-top: min(179*(100vw / 1400), 179px);
  }
  .mainContents__block08 {
    width: min(1400*(100vw / 1400), 1400px);
    margin: 0 auto;
  }
  .mainContents__block08 .sticky_box {
    position: relative;
  }
  .mainContents__block08 .mainContents__cell01 {
    width: min(600*(100vw / 1400), 600px);
    margin: 0 auto;
    position: relative;
  }
  .mainContents__block08 .mainContents__cell01 .styleview__title {
    width: min(498*(100vw / 1400), 498px);
    margin: 0 auto;
  }
  .mainContents__block08 .mainContents__cell01 .mainContents__styling {
    width: min(450*(100vw / 1400), 450px);
    margin: 0 auto;
    margin-top: min(59*(100vw / 1400), 59px);
  }

  .mainContents__block08 .mainContents__cell02 {
    width: min(600*(100vw / 1400), 600px);
    margin: 0 auto;
    position: relative;
    z-index: 5;
  }
  .mainContents__block08 .mainContents__cell02 .mainContents__styling {
    width: min(360*(100vw / 1400), 360px);
    margin: 0 auto;
  }
  .mainContents__block08 .mainContents__cell02 p {
    text-align: center;
    font-size: min(14*(100vw / 1400), 14px);
    line-height: 2;
    letter-spacing: 0.05em;
    font-family: var(--font-gothic);
    font-weight: 500;
    margin-top: min(137*(100vw / 1400), 137px);
  }
  .mainContents__block08 .mainContents__cell03 {
    width: min(600*(100vw / 1400), 600px);
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    row-gap: min(20*(100vw / 1400), 20px);
    position: relative;
    margin-top: min(398*(100vw / 1400), 398px);
  }
  .mainContents__block08 .mainContents__cell03 .styleview__flex01 {
    width: min(290*(100vw / 1400), 290px);
    position: relative;
  }
  .mainContents__block08 .mainContents__cell03 .styleview__txt01 {
    width: min(248*(100vw / 1400), 248px);
    position: absolute;
    left: max(-65*(100vw / 1400), -65px);
    bottom: max(-33*(100vw / 1400), -33px);
    z-index: 5;
  }
  .mainContents__block08 .mainContents__cell03 .styleview__txt02 {
    width: min(282*(100vw / 1400), 282px);
    position: absolute;
    left: max(0*(100vw / 1400), 0px);
    bottom: max(-103*(100vw / 1400), -103px);
    z-index: 5;
  }
  .mainContents__block08 .mainContents__cell03 .styleview__flex02 {
    width: min(290*(100vw / 1400), 290px);
    margin-top: min(40*(100vw / 1400), 40px);
    position: relative;
  }
  .mainContents__block08 .mainContents__prices {
    position: absolute;
    right: max(-267*(100vw / 1400), -267px);
    bottom: max(-7*(100vw / 1400), -7px);
  }
  .mainContents__block08 .js-sticky {
    position: sticky;
    top: 0;
    z-index: 1;
  }
  .mainContents__block08 .js-overlay {
    position: relative;
    z-index: 5;
    top: min(326*(100vw / 1400), 326px);
    transform: translateZ(1px);
  }

  .mainContents__shell09 {
    margin-top: min(245*(100vw / 1400), 245px);
    width: min(1400*(100vw / 1400), 1400px);
  }
  .mainContents__block09 {
    width: min(280*(100vw / 1400), 280px);
    margin: 0 auto;
  }
  .mainContents__block09 .mainContents__prices {
    margin-top: min(25*(100vw / 1400), 25px);
  }
  .mainContents__block09 .mainContents__prices .right_space {
    margin-right: min(6*(100vw / 1400), 6px);
  }
  .mainContents__block09 .mainContents__prices a {
    display: inline-block;
  }

  .mainContents__section10 {
    width: min(1400*(100vw / 1400), 1400px);
    margin: 0 auto;
    margin-top: min(133*(100vw / 1400), 133px);
  }
  .mainContents__shell10 {
    width: min(849*(100vw / 1400), 849px);
    height: min(388*(100vw / 1400), 388px);
    margin-left: min(280*(100vw / 1400), 280px);
    background-image: url(../img/item_bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
  }
  .mainContents__block10 {
    width: min(750*(100vw / 1400), 750px);
    margin-left: min(45*(100vw / 1400), 45px);
    display: flex;
    justify-content: space-between;
    padding-top: min(20*(100vw / 1400), 20px);
  }
  .mainContents__block10 .mainContents__cell01 {
    width: min(340*(100vw / 1400), 340px);
  }
  .mainContents__block10 .mainContents__cell02 {
    width: min(180*(100vw / 1400), 180px);
    margin-left: min(30*(100vw / 1400), 30px);
  }
  .mainContents__block10 .mainContents__cell03 {
    width: min(160*(100vw / 1400), 160px);
    margin-left: min(40*(100vw / 1400), 40px);
    padding-top: min(40*(100vw / 1400), 40px);
  }
  .mainContents__block10 .item__prices {
    margin-top: min(7*(100vw / 1400), 7px);
  }
  .mainContents__block10 .mainContents__cell03 .item__prices {
    margin-top: min(18*(100vw / 1400), 18px);
  }
  .mainContents__block10 .item__prices p {
    font-weight: var(--fw-regular);
    color: var(--color-purple);
    font-size: min(18*(100vw / 1400), 18px);
    line-height: 1.6;
    text-align: center;
    font-weight: 600;
    letter-spacing: 0.25px;
    font-family: var(--font-kudryashev);
  }
  .mainContents__block10 .item__prices span {
    font-size: min(20*(100vw / 1400), 20px);
    text-align: center;
    font-family: var(--font-kudryashev);
    color: var(--color-purple);
    font-weight: 500;
  }
  .mainContents__block10 .item__prices a {
    color: var(--color-black);
    font-size: min(14*(100vw / 1400), 14px);
    font-weight: var(--fw-light);
    letter-spacing: 0.025em;
    line-height: 0;
    text-decoration: underline;
    text-align: center;
    font-family: var(--font-kudryashev);
  }

  .mainContents__section--footer {
    width: min(1400*(100vw / 1400),1400px);
    margin: 0 auto;
    --section-spacer: min(175 * var(--rate),175px);
    -webkit-margin-before: 0;
    margin-block-start: 0;
    background-color: var(--color-light-gray);
    padding-top: min(5* var(--rate), 5px);
  }
  .mainContents__day {
    width: min(170 * var(--rate),170px);
    font-family: var(--font-gothic);
    font-size: min(14*(100vw / 1400), 14px);
    line-height: 2;
    letter-spacing: 0.05em;
    text-align: center;
    margin: 0 auto;
  }
  .mainContents__day:nth-of-type(1) {
    margin-top: min(60*(100vw / 1400), 60px);
  }
  .mainContents__day.__02 {
    margin-top: min(28*(100vw / 1400), 28px);
  }
  .c-text_btn {
    margin-left: min(544*(100vw / 1400), 544px);
    -webkit-margin-before: min(92* var(--rate), 92px);
    margin-block-start: min(92* var(--rate), 92px);
    width: min(306*(100vw / 1400), 306px);
  }
}
/* --- for small viewport --- */
@media screen and (max-width: 767px) {
  .mainContents__shell {
    max-width: 750px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
  }

  .mainContents__shell01 {
    margin-top: 60px;
  }

  .mainContents__block01 {
    width: 100%;
    margin: 0 auto;
  }
  .mainContents__block01 .mainContents__cell01 {
    width: 310px;
    height: fit-content;
    margin: 0 auto;
    position: relative;
    margin-top: 28px;
  }
  .mainContents__block01 .mainContents__cell01 .styleview__txt01 {
    width: 164.5px;
    position: absolute;
    left: -24px;
    top: -18px;
    z-index: 5;
  }
  .mainContents__block01 .mainContents__cell01 .styleview__txt02 {
    width: 103.5px;
    position: absolute;
    right: -23px;
    top: initial;
    bottom: -18px;
    z-index: 5;
  }
  .mainContents__block01 .mainContents__cell02 {
    width: 225px;
    margin: 0 auto;
    margin-top: 50px;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    position: relative;
  }
  .mainContents__block01 .mainContents__cell02 .mainContents__styling01 {
    width: 100%;
  }
  .mainContents__block01 .mainContents__cell02 .mainContents__styling02 {
    width: 100%;
    margin-top: 10px;
  }
  .mainContents__block01 .mainContents__prices {
    position: static;
    margin-top: 16px;
  }
  .mainContents__block01 .mainContents__prices .right_space {
    margin-right: 6px;
  }

  .mainContents__shell02 {
    margin-top: 75px;
    width: 100%;
  }
  .mainContents__block02 {
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    row-gap: 0;
  }
  .mainContents__block02 .mainContents__cell01 {
    width: 100%;
  }
  .mainContents__block02 .mainContents__cell02 {
    width: 347.5px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    row-gap: 0;
    position: relative;
    margin-top: 40px;
  }
  .mainContents__block02 .mainContents__cell02 .mainContents__styling01 {
    width: 250px;
  }
  .mainContents__block02 .mainContents__cell02 .mainContents__styling02 {
    width: 220px;
    margin-top: 10px;
    margin-left: 130px;
  }
  .mainContents__block02 .mainContents__prices {
    position: absolute;
    left: 6px;
    bottom: -5px;
  }
  .mainContents__block02 .mainContents__prices a {
    display: var(--display, block);
}

.mainContents__shell03 {
  margin-top: 80px;
  width: 100%;
}
.mainContents__block03 {
  width: 286px;
  margin-left: 47.5px;
}
.mainContents__block03 .mainContents__prices {
  margin-top: 10px;
}
.mainContents__block03 .mainContents__prices .right_space {
  margin-right: 2px;
}

.mainContents__shell04 {
  margin-top: 167px;
  width: 100%;
}
.mainContents__block04 {
  width: 100%;
  margin: 0 auto;
  position: relative;
}
.mainContents__block04 .styleview__txt01 {
  width: 200.5px;
  position: absolute;
  right: initial;
  left: 14px;
  top: -92px;
  z-index: 5;
}
.mainContents__block04 .styleview__txt02 {
  width: 200.5px;
  position: absolute;
  right: 13px;
  top: -52px;
  z-index: 5;
}
.mainContents__block04 .mainContents__cell01 {
  width: 320px;
  margin: 0 auto;
  position: relative;
}
.mainContents__block04 .mainContents__prices {
  position: static;
  width: 220px;
  margin-top: 16px;
}
.mainContents__block04 .mainContents__prices .right_space {
  margin-right: 4px;
}
.mainContents__block04 .mainContents__prices a {
  display: inline-block;
}

.mainContents__shell05 {
  margin-top: 75px;
  width: 100%;
}
.mainContents__block05 {
  width: 100%;
  margin: 0 auto;
  position: relative;
}
.mainContents__block05 .mainContents__cell01 {
  width: min(750*(100vw / 750), 750px);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: min(14*(100vw / 750), 14px);
}
.mainContents__block05 .mainContents__cell01 .mainContents__styling {
  width: min(368*(100vw / 750), 368px);
}
.mainContents__block05 .mainContents__prices {
  position: static;
  margin: 0 auto;
  margin-top: 16px;
}
.mainContents__block05 .mainContents__prices .right_space {
  margin-right: 4px;
}

.mainContents__shell06 {
  margin-top: 92px;
  width: 100%;
}
.mainContents__block06 {
  width: 281px;
  margin-left: 50px;
  position: relative;
}
.mainContents__block06 .styleview__txt01 {
  width: 144px;
  position: absolute;
  left: -54px;
  top: -43px;
  z-index: 5;
}
.mainContents__block06 .styleview__txt02 {
  width: 161px;
  position: absolute;
  left: -31px;
  top: 20px;
  z-index: 5;
}
.mainContents__block06 .mainContents__cell01 {
  width: 281px;
  margin-left: 0;
}
.mainContents__block06 .mainContents__prices {
  margin-top: 17px;
}

.mainContents__shell07 {
  margin-top: 94px;
  width: 100%;
}
.mainContents__block07 {
  width: 330px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  row-gap: 0;
}
.mainContents__block07 .mainContents__cell01 {
  width: 330px;
  position: relative;
}
.mainContents__block07 .mainContents__cell01 .styleview__txt01 {
  width: 212.5px;
  position: absolute;
  right: -14px;
  top: initial;
  bottom: -9px;
  z-index: 5;
}

.mainContents__block07 .mainContents__cell02 {
  width: 240px;
  margin: 0 auto;
  margin-top: 50px;
  position: relative;
}
.mainContents__block07 .mainContents__cell02 .styleview__txt02 {
  width: 117.5px;
  position: absolute;
  right: initial;
  left: -55px;
  top: 9px;
  z-index: 5;
}
.mainContents__block07 .mainContents__prices {
  margin-top: 17px;
}
.mainContents__block07 .mainContents__prices .right_space {
  margin-right: 5px;
}
.mainContents__block07 .mainContents__prices a {
  display: inline-block;
}


.mainContents__shell08 {
  margin-top: 65px;
}
.mainContents__block08 {
  width: 100%;
  margin: 0 auto;
}
.mainContents__block08 .sticky_box {
  position: relative;
  z-index: 0;
}
.mainContents__block08 .mainContents__cell01 {
  width: 100%;
  margin: 0 auto;
  position: relative;
}
.mainContents__block08 .mainContents__cell01 .styleview__title {
  width: 322px;
  margin-left: 34px;
}
.mainContents__block08 .mainContents__cell01 .mainContents__styling {
  width: 100%;
  margin: 0 auto;
  margin-top: 31px;
  z-index: 0;
}
.mainContents__block08 .mainContents__cell02 {
  width: 325px;
  margin: 0 auto;
  position: relative;
  z-index: 5;
}
.mainContents__block08 .mainContents__cell02 .mainContents__styling {
  width: 295px;
  margin: 0 auto;
}
.mainContents__block08 .mainContents__cell02 p {
  text-align: center;
  font-size: 11.5px;
  line-height: 2;
  letter-spacing: 0.075em;
  font-family: var(--font-gothic);
  font-weight: 500;
  margin-top: 90px;
}
.mainContents__block08 .mainContents__cell03 {
  width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  row-gap: 0;
  flex-direction: column;
  position: relative;
  margin-top: 399px;
}
.mainContents__block08 .mainContents__cell03 .styleview__flex01 {
  width: 100%;
  position: relative;
}
.mainContents__block08 .mainContents__cell03 .mainContents__styling01 {
  width: 240px;
  margin: 0 auto;
  margin-top: 40px;
}
.mainContents__block08 .mainContents__cell03 .styleview__txt01 {
  width: 248px;
  position: static;
  margin-left: 33px;
}
.mainContents__block08 .mainContents__cell03 .styleview__txt02 {
  width: 281.5px;
  position: static;
  margin-top: 13px;
  margin-left: 68px;
}
.mainContents__block08 .mainContents__cell03 .styleview__flex02 {
  width: 100%;
  margin-top: 10px;
  position: relative;
}
.mainContents__block08 .mainContents__cell03 .mainContents__styling02 {
  width: 240px;
  margin: 0 auto;
}
.mainContents__block08 .mainContents__prices {
  width: 248px;
  margin: 0 auto;
  position: static;
  margin-top: 17px;
  padding-left: 4px;
}
.mainContents__block08 .mainContents__prices .right_space {
  margin-right: 4px;
}
.mainContents__block08 .mainContents__prices a {
  display: inline-block;
}
.mainContents__block08 .js-sticky {
  position: sticky;
  top: 0;
  z-index: 0;
}
.mainContents__block08 .js-overlay {
  position: relative;
  z-index: 5;
  top: 355px;
  transform: translateZ(1px);
}

.mainContents__shell09 {
  margin-top: 75px;
  width: 100%;
}
.mainContents__block09 {
  width: 280px;
  margin: 0 auto;
}
.mainContents__block09 .mainContents__prices {
  margin-top: 16px;
}
.mainContents__block09 .mainContents__prices .right_space {
  margin-right: 6px;
}
.mainContents__block09 .mainContents__prices a {
  display: inline-block;
}

  .mainContents__section10 {
    margin-top: 75px;
    width: 100%;
  }
  .mainContents__shell10 {
    width: min(730*(100vw / 750), 730px);
    height: fit-content;
    margin-left: min(15*(100vw / 750), 15px);
    background-image: url(../img/sp/item_bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding-bottom: 38px;
  }
  .mainContents__block10 {
    width: 285px;
    margin-left: 40px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding-top: 10px;
  }
  .mainContents__block10 .mainContents__cell01 {
    width: 280px;
  }
  .mainContents__block10 .mainContents__cell02 {
    width: 145px;
    margin-top: 10px;
  }
  .mainContents__block10 .mainContents__cell02 .mainContents__styling {
    width: 135px;
  }
  .mainContents__block10 .mainContents__cell03 {
    width: 120px;
    display: grid;
    align-items: end;
  }
  .mainContents__block10 .mainContents__cell03 .mainContents__styling {
    width: 120px;
    padding-top: 40px;
    /* padding-bottom: 25px; */
    margin-left: -13px;
  }
  .mainContents__block10 .item__prices {
    margin-top: 6px;
    margin-left: -10px;
  }
  .mainContents__block10 .mainContents__cell03 .item__prices {
    margin-top: 0;
    margin-left: -24px;
}
  .mainContents__block10 .item__prices p {
    font-weight: var(--fw-regular);
    color: var(--color-purple);
    font-size: 15px;
    line-height: 1.4;
    text-align: center;
    font-weight: 600;
    font-family: var(--font-kudryashev);
  }
  .mainContents__block10 .item__prices span {
    font-size: 16px;
    text-align: center;
    font-family: var(--font-kudryashev);
    color: var(--color-purple);
    font-weight: 500;
  }
  .mainContents__block10 .item__prices a {
    color: var(--color-black);
    font-size: 11.5px;
    font-weight: var(--fw-light);
    letter-spacing: 0.025em;
    line-height: 0.5;
    text-decoration: underline;
    text-align: center;
    font-family: var(--font-kudryashev);
    display: block;
  }

  .mainContents__section--footer {
    --section-spacer: 100px;
    -webkit-margin-before: 0;
    margin-block-start: 0;
    background-color: var(--color-light-gray);
    padding-top: 5px;
  }
  .mainContents__day {
    width: 150px;
    font-family: var(--font-gothic);
    font-size: 12px;
    line-height: 2;
    letter-spacing: 0.05em;
    text-align: center;
    margin: 0 auto;
  }
  .mainContents__day:nth-of-type(1) {
    margin-top: 33px;
  }
  .mainContents__day.__02 {
    margin-top: 24px;
  }
  .c-text_btn {
    margin-left: 58px;
    -webkit-margin-before: 59px;
    margin-block-start: 59px;
    width: 255px;
  }
}
/**
 * animation
 */
.js-animation-trigger.anim-zoom-in {
  overflow: hidden;
}
.js-animation-trigger.anim-zoom-in img {
  opacity: 0;
  transform: scale(1.1);
  transition: all 1.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.js-animation-trigger.anim-zoom-in.is-active img {
  opacity: 1;
  transform: scale(1);
}
.js-animation-trigger.anim-fade-toLeft {
  opacity: 0;
  transform: translateX(5%);
}
.js-animation-trigger.anim-fade-toLeft.is-active {
  opacity: 1;
  transform: translateX(0);
  transition: all 1.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.js-animation-trigger.anim-fade-toRight {
  opacity: 0;
  transform: translateX(-5%);
}
.js-animation-trigger.anim-fade-toRight.is-active {
  opacity: 1;
  transform: translateX(0);
  transition: all 1.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.js-animation-trigger.anim-fade-toTop {
  opacity: 0;
  transform: translateY(5%);
}
.js-animation-trigger.anim-fade-toTop.is-active {
  opacity: 1;
  transform: translateY(0);
  transition: all 1.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.js-animation-trigger.anim-fade-toBottom {
  opacity: 0;
  transform: translateY(-5%);
}
.js-animation-trigger.anim-fade-toBottom.is-active {
  opacity: 1;
  transform: translateY(0);
  transition: all 1.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.js-animation-trigger.anim-fade-in {
  opacity: 0;
}
.js-animation-trigger.anim-fade-in.is-active {
  opacity: 1;
  transition: all 1.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.js-l-fade {
  opacity: 0;
  transition: all 1s;
}

.scroll {
  opacity: 1;
}

@media screen and (min-width: 768px) {
  .js-animation-trigger.anim-fade-toTop-pc {
    opacity: 0;
    transform: translateY(5%);
  }
  .js-animation-trigger.anim-fade-toTop-pc.is-active {
    opacity: 1;
    transform: translateY(0);
    transition: all 1.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }
  .js-animation-trigger.anim-fade-toBottom-pc {
    opacity: 0;
    transform: translateY(-5%);
  }
  .js-animation-trigger.anim-fade-toBottom-pc.is-active {
    opacity: 1;
    transform: translateY(0);
    transition: all 1.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }
}

@media screen and (max-width: 767px) {
  .js-animation-trigger.anim-fade-toLeft-sp {
    opacity: 0;
    transform: translateX(5%);
  }
  .js-animation-trigger.anim-fade-toLeft-sp.is-active {
    opacity: 1;
    transform: translateX(0);
    transition: all 1.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }
  .js-animation-trigger.anim-fade-toRight-sp {
    opacity: 0;
    transform: translateX(-5%);
  }
  .js-animation-trigger.anim-fade-toRight-sp.is-active {
    opacity: 1;
    transform: translateX(0);
    transition: all 1.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }
}