@charset "UTF-8";
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Remove default padding */
ul,
ol {
  padding: 0;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
h5,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core root defaults */
html {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul,
ol {
  list-style: none;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img {
  max-width: 100%;
  display: block;
  width: 100%;
}

/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Blur images when they have no alt attribute */
img:not([alt]) {
  filter: blur(10px);
}

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

body {
  font-family: "M PLUS Rounded 1c", sans-serif;
  color: #3c3c3c;
  position: relative;
}

body::before {
  content: "";
  position: fixed;
  z-index: -1000;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  aspect-ratio: 1920/1500;
  background-image: url(../images/bg.webp?v=20250905?v=250722);
  background-repeat: repeat-y;
  background-position: center;
  background-size: cover;
}

@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Noto_Sans_JP_Regular.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/Noto_Sans_JP_Medium.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Noto_Sans_JP_Bold.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-family: "RobotoCondensed";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/RobotoCondensed-Regular.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-family: "RobotoCondensed";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/RobotoCondensed-Bold.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-family: "Robot";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Roboto-Regular.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Roboto-Bold.woff2") format("woff2");
  font-display: swap;
}
.pc {
  display: none;
}
@media screen and (min-width: 768px) {
  .pc {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .sp {
    display: none !important;
  }
}

.inner {
  width: 100%;
  padding-right: 0;
  padding-left: 0;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .inner {
    max-width: 768px;
    padding-right: 0;
    padding-left: 0;
  }
}

.header {
  width: 100%;
  height: 18.2291666667vw;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
}

@media screen and (min-width: 768px) {
  .header {
    height: min(11.0416666667vw, 159px);
  }
}
.header__inner {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  padding: 0 20px;
}

.header__logo {
  width: 52.8645833333vw;
  height: auto;
  aspect-ratio: 406/100;
}

@media screen and (min-width: 768px) {
  .header__logo {
    width: min(37.1527777778vw, 535px);
    aspect-ratio: 535/172;
  }
}
.header__logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  filter: drop-shadow(0px 0px 10px white);
}

.mv__wrap {
  position: relative;
  z-index: 1;
  overflow-x: hidden;
}

.mv {
  width: 100%;
  height: auto;
  aspect-ratio: 768/1200;
  position: relative;
  z-index: 5;
  background-image: url(../images/mv__img--sp.webp?v=20250905?v=20250905);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .mv {
    background-image: url(../images/mv__img.webp?v=20250905?v=20250905);
    aspect-ratio: 1920/800;
  }
}
.mv__title {
  position: absolute;
  bottom: 14.84375vw;
  left: 50%;
  transform: translateX(-50%);
  width: 52.34375vw;
  height: auto;
  aspect-ratio: 402/373;
  z-index: 6;
}

@media screen and (min-width: 768px) {
  .mv__title {
    width: 26.6145833333vw;
    bottom: initial;
    transform: initial;
    top: 2.34375vw;
    left: 57.5520833333vw;
  }
}
.mv__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.mv__stecker {
  position: absolute;
  z-index: 6;
  bottom: 3.7760416667vw;
  left: 72.1354166667vw;
  width: 27.34375vw;
  height: auto;
  aspect-ratio: 178/180;
}

@media screen and (min-width: 768px) {
  .mv__stecker {
    bottom: initial;
    width: 16.4583333333vw;
    top: 9.8958333333vw;
    left: 83.3333333333vw;
  }
}
.mv__stecker img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.footer {
  margin-top: min(10.4166666667vw, 80px);
  height: min(7.2916666667vw, 56px);
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #0e1417;
  font-size: min(2.6041666667vw, 20px);
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #fefefe;
}

.toTop-btn {
  position: fixed;
  z-index: 100;
  bottom: min(3.90625vw, 30px);
  right: min(3.90625vw, 30px);
}

.toTop-btn a {
  display: block;
  width: min(12.3697916667vw, 95px);
  height: auto;
  aspect-ratio: 95/109;
}

.toTop-btn a img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.js-toTop-btn {
  opacity: 0; /* 初期状態で非表示 */
  visibility: hidden; /* 初期状態で非表示 */
  transition: opacity 0.3s ease, visibility 0.3s ease; /* フェードイン・フェードアウトのアニメーション */
}

/* ------------------------
    共通パーツ
---------------------------*/
section:not(.nav) .inner {
  -webkit-clip-path: polygon(3.90625vw 0%, calc(100% - 3.90625vw) 0%, 100% 3.90625vw, 100% calc(100% - 3.90625vw), calc(100% - 3.90625vw) 100%, 3.90625vw 100%, 0% calc(100% - 3.90625vw), 0% 3.90625vw);
          clip-path: polygon(3.90625vw 0%, calc(100% - 3.90625vw) 0%, 100% 3.90625vw, 100% calc(100% - 3.90625vw), calc(100% - 3.90625vw) 100%, 3.90625vw 100%, 0% calc(100% - 3.90625vw), 0% 3.90625vw);
  position: relative;
}

@media screen and (min-width: 768px) {
  section:not(.nav) .inner {
    -webkit-clip-path: polygon(30px 0%, calc(100% - 30px) 0%, 100% 30px, 100% calc(100% - 30px), calc(100% - 30px) 100%, 30px 100%, 0% calc(100% - 30px), 0% 30px);
            clip-path: polygon(30px 0%, calc(100% - 30px) 0%, 100% 30px, 100% calc(100% - 30px), calc(100% - 30px) 100%, 30px 100%, 0% calc(100% - 30px), 0% 30px);
  }
}
.section-inner-bg {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: url(../images/section-bg.webp?v=20250905?v=20250905);
  background-repeat: repeat-y;
  background-position: center;
  background-size: 100% min(95.9635416667vw, 737px);
}

@media screen and (min-width: 768px) {
  .section {
    width: initial;
  }
}
.section__title {
  width: 100vw;
  height: auto;
  aspect-ratio: 768/179;
}

@media screen and (min-width: 768px) {
  .section__title {
    width: 768px;
    transform: translateY(-24px);
  }
}
.section__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.first__sub-title {
  width: min(92.3177083333vw, 709px);
  height: auto;
  aspect-ratio: 709/224;
  margin-inline: auto;
  margin-top: min(2.0833333333vw, 16px);
}

.first__sub-title img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.first-item__title {
  width: min(99.609375vw, 765px);
  height: auto;
  aspect-ratio: 765/69;
  margin-inline: auto;
}


.first-item__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.first-item__title--plus img {
  object-fit: contain;
}
.second__sub-title {
  width: min(92.3177083333vw, 709px);
  height: auto;
  aspect-ratio: 709/239;
  margin-inline: auto;
}
.second__sub-title03 {
  width: min(calc(709/768*100vw),709px);
  height: auto;
  aspect-ratio: 709/236;
  margin-inline: auto;
}

.second__sub-title03 img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.second__sub-title img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.coming-soon {
  width: min(63.4114583333vw, 487px);
  height: auto;
  aspect-ratio: 487/117;
  margin-top: min(8.4635416667vw, 65px);
  margin-inline: auto;
}

.coming-soon img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.second__attention li {
  font-size: min(2.34375vw, 18px);
  font-weight: 700;
  line-height: 1.6666666667;
  letter-spacing: -0.05em;
  padding-left: min(2.34375vw, 18px);
  position: relative;
}

.second__attention li::before {
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}

.btn a {
  display: block;
  width: min(95.3125vw, 732px);
  height: auto;
  margin-inline: auto;
  aspect-ratio: 732/129;
}

.btn a img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.text-bold {
  font-weight: 700;
}

/* ------------------------
    ナビセクション
---------------------------*/
.nav {
  padding: min(5.2083333333vw, 40px) 0;
  width: initial;
  position: relative;
  background-image: url(../images/nav__bg.webp?v=20250905?v=20250905);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.nav__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: 1fr 1fr max-content;
  grid-template-areas: "a b c" "d e f" "g g g";
}

.nav__item--cal3 {
  grid-area: g;
  height: auto;
}

.nav__item a {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 258/215;
}

.nav__item--cal3 a {
  aspect-ratio: 747/143;
}

.nav__item a.not-work {
  pointer-events: none;
}

.nav__item a img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

/* ------------------------
    news セクション
---------------------------*/
.news {
  padding-top: min(5.2083333333vw, 40px);
  padding-bottom: min(11.4583333333vw, 88px);
}

.news__title {
  width: 57.6822916667vw;
  height: auto;
  aspect-ratio: 433/224;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .news__title {
    width: 443px;
  }
}
.news__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.news-list__wrap {
  position: relative;
}

.news-list__bar {
  position: absolute;
  width: min(7.1614583333vw, 55px);
  height: auto;
  aspect-ratio: 55/44;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.news-list-bar {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: min(7.1614583333vw, 55px);
  height: calc(100% - min(11.4583333333vw, 88px));
  background-repeat: repeat-y;
  background-position: center;
  background-size: min(7.1614583333vw, 55px) min(70.703125vw, 543px);
}

.news-list-bar--left {
  left: 2.6041666667vw;
  background-image: url(../images/bar-left.webp?v=20250905?v=20250905);
}

@media screen and (min-width: 768px) {
  .news-list-bar--left {
    left: 0;
  }
}
.news-list-bar--right {
  right: 2.6041666667vw;
  background-image: url(../images/bar-right.webp?v=20250905?v=20250905);
}

@media screen and (min-width: 768px) {
  .news-list-bar--right {
    right: 0;
  }
}
.news-list__bar--top-left {
  background-image: url(../images/top-left.webp?v=20250905);
  top: 0;
  left: 2.6041666667vw;
}

@media screen and (min-width: 768px) {
  .news-list__bar--top-left {
    left: 0;
  }
}
.news-list__bar--top-right {
  background-image: url(../images/top-right.webp?v=20250905?v=20250905);
  top: 0;
  right: 2.6041666667vw;
}

@media screen and (min-width: 768px) {
  .news-list__bar--top-right {
    right: 0;
  }
}
.news-list__bar--bottom-left {
  background-image: url(../images/bottom-left.webp?v=20250905?v=20250905);
  bottom: 0;
  left: 2.6041666667vw;
}

@media screen and (min-width: 768px) {
  .news-list__bar--bottom-left {
    left: 0;
  }
}
.news-list__bar--bottom-right {
  background-image: url(../images/bottom-right.webp?v=20250905?v=20250905);
  bottom: 0;
  right: 2.6041666667vw;
}

@media screen and (min-width: 768px) {
  .news-list__bar--bottom-right {
    right: 0;
  }
}
.news__list {
  margin-top: max(-3.125vw, -24px);
  width: 100%;
  padding: min(3.90625vw, 30px);
}

.news__item {
  padding: min(3.90625vw, 30px) 0;
}

.news__item + .news__item {
  position: relative;
}

.news__item + .news__item::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: auto;
  aspect-ratio: 680/2;
  background-image: url(../images/news__border.webp?v=20250905?v=20250905);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.news__item a {
  text-decoration: none;
}

.news__item a.no-work {
  pointer-events: none;
}

.news-item__date {
  display: block;
  font-size: min(3.3854166667vw, 26px);
  font-weight: 900;
  letter-spacing: 0.08em;
  color: #5b5eea;
  text-align: center;
}

.news-item__title {
  display: block;
  text-decoration: underline;
  text-underline-offset: 4px;
  font-size: min(3.90625vw, 30px);
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.02em;
  color: #3c3c3c;
  text-align: center;
}

/* ------------------------
    コラボ限定商品が登場！
---------------------------*/
.collaboration .inner {
  position: relative;
  z-index: 1;
}

.collaboration .inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  background-image: url(../images/collaboration-bg.webp?v=20250905?v=20250905);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.collaboration-first {
  position: relative;
  padding-bottom: min(7.8125vw, 60px);
}

.collaboration-first__list {
  margin-top: min(4.1666666667vw, 32px);
}

.collaboration-first__item + .collaboration-first__item {
  margin-top: min(13.0208333333vw, 100px);
}

.first-item__size {
  font-size: min(2.6041666667vw, 20px);
  font-weight: 700;
  letter-spacing: 0.02em;
  margin-top: min(1.0416666667vw, 8px);
  width: min(93.0989583333vw, 715px);
  margin-inline: auto;
}

.first-item__size.mt-80 {
  margin-top: min(calc(80/768*100vw),80px);
}

.collaboration-first-item__img {
  width: 100%;
  height: auto;
  margin-top: min(calc(20/768*100vw),20px);
}

.collaboration-first-item__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.collaboration-first-item__img01 {
  width: min(90.7552083333vw, 697px);
  margin-inline: auto;
  aspect-ratio: 697/326;
}

.collaboration-first-item__img01-2 {
  width: min(93.2291666667vw, 716px);
  margin-inline: auto;
  aspect-ratio: 716/257;
}

.collaboration-first-item__img02 {
  width: min(92.4479166667vw, 710px);
  margin-inline: auto;
  aspect-ratio: 710/601;
}

.collaboration-first-item__img03 {
  width: min(91.5364583333vw, 703px);
  margin-inline: auto;
  aspect-ratio: 703/614;
}

.collaboration-first-item__img04 {
  width: min(87.890625vw, 675px);
  margin-inline: auto;
  aspect-ratio: 675/469;
}

.collaboration-first-item__img05 {
  width: min(83.984375vw, 645px);
  margin-inline: auto;
  aspect-ratio: 645/378;
}

.collaboration-first-item__img06 {
  width: min(90.234375vw, 693px);
  margin-inline: auto;
  aspect-ratio: 693/329;
}

.collaboration-first-item__img07 {
  width: min(93.359375vw, 717px);
  margin-inline: auto;
  aspect-ratio: 717/658;
}

.collaboration-first-item__img08 {
  width: min(calc(710/768*100vw),710px);
  margin-inline: auto;
  aspect-ratio: 710/383;
}

.collaboration-first-item__img08-2 {
  width: min(calc(707/768*100vw),707px);
  margin-inline: auto;
  aspect-ratio: 707/278;
}

.collaboration-first-item__img09 {
  width: min(calc(711/768*100vw),711px);
  margin-inline: auto;
  aspect-ratio: 711/600;
}

.collaboration-first-item__img10 {
  width: min(calc(711/768*100vw),711px);
  margin-inline: auto;
  aspect-ratio: 711/605;
}

.collaboration-first-item__img11 {
  width: min(calc(673/768*100vw),673px);
  margin-inline: auto;
  aspect-ratio: 673/469;
}

.collaboration-first-item__img12 {
  width: min(calc(664/768*100vw),664px);
  margin-inline: auto;
  aspect-ratio: 664/354;
}

.collaboration-first-item__img13 {
  width: min(calc(690/768*100vw),690px);
  margin-inline: auto;
  aspect-ratio: 690/330;
}

.collaboration-first-item__img14 {
  width: min(calc(720/768*100vw),720px);
  margin-inline: auto;
  aspect-ratio: 720/661;
}

.collaboration-first-item__attention {
  width: min(32.2916666667vw, 248px);
  height: auto;
  aspect-ratio: 248/17;
  margin: min(3.2552083333vw, 25px);
  margin-top: min(4.1666666667vw, 32px);
}

.collaboration-first-item__attention img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.collaboration-second {
  padding-top: min(10.4166666667vw, 80px);
  padding-bottom: min(11.4583333333vw, 88px);
  position: relative;
}

.wave {
  display: block;
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  position: relative;
  height: 20px;
  background-image: url(../images/wave-bottom.webp?v=20250905?v=20250905);
  opacity: 0.9;
  background-color: rgb(254, 246, 200);
  background-repeat: repeat;
  background-position: center;
  background-size: 768px 20px;
}

.collaboration-second__attention {
  width: min(85.2864583333vw, 655px);
  height: auto;
  aspect-ratio: 655/55;
  margin: min(3.2552083333vw, 25px);
  margin-top: min(10.4166666667vw, 80px);
}

.collaboration-second__attention img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.collaboration-btn a {
  width: min(95.3125vw, 732px);
  height: auto;
  margin-inline: auto;
  aspect-ratio: 732/129;
  margin-top: min(8.3333333333vw, 64px);
}

.collaboration-btn a img {
  -o-object-fit: contain;
     object-fit: contain;
}

/* ------------------------
    カプトレ限定
---------------------------*/
.captre {
  margin-top: min(10.4166666667vw, 80px);
}

.captre .inner {
  position: relative;
  overflow-x: hidden;
}

.captre .inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  background-image: url(../images/captre-bg.webp?v=20250905);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.captre-first {
  position: relative;
  padding-bottom: min(15.625vw, 120px);
}

.captre-first__list {
  margin-top: min(4.1666666667vw, 32px);
  padding-bottom: min(calc(44/768*100vw),44px);
}

.captre-first-item__img {
  width: min(92.578125vw, 711px);
  height: auto;
  aspect-ratio: 711/306;
  margin-inline: auto;
  margin-top: min(1.953125vw, 15px);
}

.captre-first-item__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.captre-first-item__img01 {
  aspect-ratio: 701/329;
}

.captre-first-item__img02 {
  aspect-ratio: 710/305;
}

.captre-second {
  padding-top: min(4.1666666667vw, 32px);
  position: relative;
  transform: translateY(max(-11.4583333333vw, -88px));
}

.captre-second__attention {
  width: min(75.5208333333vw, 580px);
  width: min(calc(655/768*100vw),655px);
  height: auto;
  aspect-ratio: 655/55;
  margin: 0 min(3.2552083333vw, 25px);
  margin-top: min(calc(20/768*100vw),20px);
}

.captre-second__attention img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.captre-btn {
  margin-top: min(8.3333333333vw, 64px);
}

/* ------------------------
    オリジナルグッズがもらえる！
---------------------------*/
.originalgoods {
  margin-top: min(10.4166666667vw, 80px);
}

.originalgoods .inner {
  position: relative;
  overflow-x: hidden;
}

.originalgoods .inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  background-image: url(../images/originalgoods-bg.webp?v=20250905?v=20250905);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.originalgoods-first {
  position: relative;
  padding-bottom: min(17.1875vw, 132px);
}

.originalgoods-first__list {
  margin-top: min(4.1666666667vw, 32px);
  margin-bottom: min(7.8125vw, 60px);
}

.originalgoods-first__item + .originalgoods-first__item {
  margin-top: min(10.4166666667vw, 80px);
}

.collaboration-first-item__img01 + .first-item__size {
  margin-top: min(12.5vw, 96px);
}

.originalgoods-first-item__img {
  width: 89.4366197183%;
  height: auto;
  margin-inline: auto;
  margin-top: min(5.46875vw, 42px);
}

.originalgoods-first-item__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.originalgoods-first-item__img01 {
  width: min(82.6822916667vw, 635px);
  height: auto;
  margin-inline: auto;
  aspect-ratio: 653/352;
}

.originalgoods-first-item__img02 {
  width: min(92.96875vw, 714px);
  height: auto;
  margin-inline: auto;
  aspect-ratio: 714/258;
}

.originalgoods-first-item__img03 {
  width: min(calc(653/768*100vw),653px);
  height: auto;
  margin-inline: auto;
  aspect-ratio: 653/351;
}

.originalgoods-first-item__img04 {
  width: min(calc(710/768*100vw),710px);
  height: auto;
  margin-inline: auto;
  aspect-ratio: 710/259;
}

.originalgoods-second {
  transform: translateY(max(-15.625vw, -120px));
  padding-top: min(13.0208333333vw, 100px);
  position: relative;
}

.originalgoods-second__attention {
  width: min(84.8958333333vw, 652px);
  height: auto;
  aspect-ratio: 652/175;
  margin: 0 min(3.2552083333vw, 25px);
  margin-top: min(8.3333333333vw, 64px);
}

.originalgoods-second__attention img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

/* ------------------------
    スペシャルコラボ店舗
---------------------------*/
.collaboshop {
  margin-top: min(10.4166666667vw, 80px);
}

.collaboshop .inner {
  position: relative;
}

.collaboshop .inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  background-image: url(../images/collaboshop-bg.webp?v=20250905?v=20250905);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.collaboshop-first {
  padding-bottom: min(11.4583333333vw, 88px);
  position: relative;
}

.collaboshop-first__sub-title {
  width: min(92.3177083333vw, 709px);
  height: auto;
  margin-inline: auto;
  aspect-ratio: 709/254;
}

.collaboshop-first__list {
  margin-top: min(6.25vw, 48px);
}

.collaboshop-first__item {
  width: min(92.4479166667vw, 710px);
  height: auto;
  margin-inline: auto;
  aspect-ratio: 710/400;
}

.collaboshop-first__item01 {
  aspect-ratio: 1280/720;
}

.collaboshop-first__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.collaboshop-first__item + .collaboshop-first__item {
  margin-top: min(3.90625vw, 30px);
}

.collaboshop-btn {
  margin-top: min(3.125vw, 24px);
}

.collaboshop-first__sub-title {
  margin-top: max(-2.0833333333vw, -16px);
}

.collaboshop-first__present {
  width: min(92.4479166667vw, 710px);
  height: auto;
  margin-inline: auto;
  aspect-ratio: 710/400;
}

.collaboshop-first__present img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.collaboshop-first__present-info {
  width: min(90.8854166667vw, 698px);
  height: auto;
  margin-inline: auto;
  aspect-ratio: 698/226;
  margin-top: min(5.2083333333vw, 40px);
}

.collaboshop-first__present-info img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.collaboshop-first__present-attention {
  width: min(48.9583333333vw, 376px);
  height: auto;
  margin: 0 min(3.2552083333vw, 25px);
  aspect-ratio: 376/49;
  margin-top: min(5.2083333333vw, 40px);
}

.collaboshop-first__present-attention img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.collaboshop-first__present-way {
  width: min(92.4479166667vw, 710px);
  height: auto;
  margin-inline: auto;
  aspect-ratio: 710/305;
  margin-top: min(7.8125vw, 60px);
}

.collaboshop-first__present-way img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.collaboshop-first__present-btn {
  margin-top: min(10.4166666667vw, 80px);
}

/* ------------------------
    Follow&Repostキャンペーン
---------------------------*/
.followRepost {
  margin-top: min(10.4166666667vw, 80px);
  overflow-x: hidden;
}

.followRepost .inner {
  position: relative;
  overflow-x: hidden;
}

.followRepost .inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  background-image: url(../images/followRepost-bg.webp?v=20250905?v=20250905);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.followRepost-first {
  padding-bottom: min(4.1666666667vw, 32px);
  margin-bottom: min(20.8333333333vw, 160px);
  position: relative;
}

.followRepost-first__img-list {
  margin-top: min(4.1666666667vw, 32px);
}

.followRepost-first__img-item {
  width: min(92.4479166667vw, 710px);
  height: auto;
  margin-inline: auto;
  aspect-ratio: 710/400;
}

.followRepost-first__img-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.followRepost-first__list {
  margin: min(6.25vw, 48px);
  margin-top: min(3.125vw, 24px);
  margin-bottom: min(3.125vw, 24px);
}

.followRepost-first__item {
  font-size: min(4.1666666667vw, 32px);
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.02em;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
}

.followRepost-first__item .dots {
  position: relative;
  z-index: 1;
  height: 10px;
  flex-grow: 1;
}

.followRepost-first__item .dots::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 100%;
  height: 20px;
  background-image: radial-gradient(circle, #3c3c3c 1.5px, transparent 1.5px);
  background-position: left center;
  background-repeat: repeat-x;
  background-size: 11px 3px;
}

.followRepost-first__item span {
  background-color: #98c7fa;
}

.followRepost-first__item span.bg-orange {
  background-color: #f1b98e;
}

.followRepost-first__item .title {
  padding-left: min(5.2083333333vw, 40px);
  padding-right: min(2.0833333333vw, 16px);
  position: relative;
}

.followRepost-first__item .title::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  left: 0;
  width: min(3.125vw, 24px);
  height: auto;
  aspect-ratio: 1/1;
}

.followRepost-first__item:nth-child(odd) .title::before {
  background-color: #b23db7;
}

.followRepost-first__item:nth-child(even) .title::before {
  background-color: #6657ae;
}

.followRepost-first__item .amount {
  padding-left: min(2.0833333333vw, 16px);
  color: #b23db7;
}

.followRepost-first__text {
  margin: 0 min(3.2552083333vw, 25px);
  margin-top: min(6.25vw, 48px);
  font-size: min(3.125vw, 24px);
  font-weight: 500;
  line-height: 1.7857142857;
  letter-spacing: 0.02em;
}

.followRepost-btn {
  margin-top: min(8.3333333333vw, 64px);
}

.followRepost-first__list-title {
  margin-top: min(4.6875vw, 36px);
  width: min(92.4479166667vw, 710px);
  height: auto;
  margin-inline: auto;
  aspect-ratio: 710/60;
}

.followRepost-first__list-title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.followRepost-first__list-sub-title {
  font-size: min(4.6875vw, 36px);
  font-weight: 800;
  line-height: 1.5555555556;
  letter-spacing: -0.05em;
  text-align: center;
  margin-top: min(5.2083333333vw, 40px);
  margin-left: -10px;
  white-space: nowrap;
  color: #b23db7;
}

.followRepost-first__list-sub-title02 {
  margin-top: min(4.1666666667vw, 32px);
  font-size: min(4.4270833333vw, 34px);
  font-weight: 700;
  line-height: 1.4705882353;
  letter-spacing: 0.02em;
  text-align: center;
}

.followRepost-first__attention {
  width: min(89.9739583333vw, 691px);
  height: auto;
  aspect-ratio: 691/24;
  margin: 0 min(3.2552083333vw, 25px);
  margin-top: 0;
}

.followRepost-first__attention img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.followRepost-second {
  transform: translateY(max(-11.4583333333vw, -88px));
  padding-top: min(17.1875vw, 132px);
  position: relative;
  z-index: 1;
}

.followRepost__sub-title {
  width: min(92.3177083333vw, 709px);
  height: auto;
  aspect-ratio: 709/239;
  margin-inline: auto;
}

.followRepost-btn {
  width: min(95.3125vw, 732px);
  height: auto;
  aspect-ratio: 732/129;
  margin-inline: auto;
}

.cafe {
  margin-top: min(10.4166666667vw, 80px);
  overflow-x: hidden;
}

.cafe .inner {
  position: relative;
  overflow-x: hidden;
}

.cafe .inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  background-image: url(../images/cafe-bg.webp?v=20250905?v=20250905);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.cafe-first {
  padding-bottom: min(11.4583333333vw, 88px);
}

.cafe-first__list {
  margin-top: min(2.6041666667vw, 20px);
}

.cafe-first__item {
  width: min(92.4479166667vw, 710px);
  height: auto;
  margin-inline: auto;
  aspect-ratio: 710/400;
}

.cafe-first__item01 {
  aspect-ratio: 1191/842;
}

.cafe-first__item02 {
  aspect-ratio: 710/473;
}

.cafe-first__item03 {
  aspect-ratio: 710/710;
}

.cafe-first__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.cafe-first__item + .cafe-first__item {
  margin-top: min(5.2083333333vw, 40px);
}

.cafe__attention {
  width: min(50.6510416667vw, 389px);
  height: auto;
  aspect-ratio: 389/23;
  margin: 0 min(3.2552083333vw, 25px);
  margin-top: min(7.8125vw, 60px);
}

.cafe__attention img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.cafe-btn--ikebukuro {
  margin-top: min(5.2083333333vw, 40px);
}

.cafe-btn--umeda {
  margin-top: min(3.90625vw, 30px);
}