@charset "UTF-8";
:root {
  scroll-behavior: smooth;
  --goldfanH: 160px;
  --notecolor: #f974a2;
}

.absolute {
  position: absolute;
}

.relative {
  position: relative;
}

.flex-col {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.items-end {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.items-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.justify-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.inline-flex {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.font-black {
  font-weight: 900;
}

.text-right {
  text-align: right;
}

.text-sm {
  font-size: 0.875rem;
}

.text-xl {
  font-size: 1.25rem;
}

.text-2xl {
  font-size: 1.5rem;
}

.text-3xl {
  font-size: 1.875rem;
}

.text-4xl {
  font-size: 2.25rem;
}

.text-5xl {
  font-size: 3rem;
}

.text-6xl {
  font-size: 4rem;
}
@media (min-width: 768px) {
  .text-6xl {
    font-size: 3.75rem;
  }
}

.line-through {
  text-decoration: line-through;
}

.leading-none {
  line-height: 1;
}

.pc-show {
  display: none;
}
@media (min-width: 768px) {
  .pc-show {
    display: block;
  }
}

@media (min-width: 768px) {
  .mobile-show {
    display: none;
  }
}

.grid-1-64 {
  grid-template-columns: 1fr;
}
@media (min-width: 768px) {
  .grid-1-64 {
    grid-template-columns: 60% 40%;
  }
}

.grid-1-2-3 {
  grid-template-columns: 1fr;
}
@media (min-width: 768px) {
  .grid-1-2-3 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 992px) {
  .grid-1-2-3 {
    grid-template-columns: repeat(3, 1fr);
  }
}

.grid-1-2-4 {
  grid-template-columns: 1fr;
}
@media (min-width: 768px) {
  .grid-1-2-4 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 992px) {
  .grid-1-2-4 {
    grid-template-columns: repeat(4, 1fr);
  }
}

.gap-05rem {
  gap: 0.5rem;
}

.grid-2-4 {
  grid-template-columns: 1fr 1fr;
}
@media (min-width: 992px) {
  .grid-2-4 {
    grid-template-columns: repeat(4, 1fr);
  }
}

.grid-4 {
  grid-template-columns: repeat(4, 1fr);
}

.pc-show {
  display: none;
}
@media (min-width: 768px) {
  .pc-show {
    display: block;
  }
}

.mo-show {
  display: block;
}
@media (min-width: 768px) {
  .mo-show {
    display: none;
  }
}

.m-bottom-1rem {
  margin-bottom: 1rem;
}

.m-bottom-05 {
  margin-bottom: 0.5rem;
}

.m-cut-20 {
  margin-top: -30px;
}
@media (min-width: 768px) {
  .m-cut-20 {
    margin-top: -20px;
  }
}

main {
  padding-top: 0;
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(255, 213, 229)), color-stop(10%, rgb(255, 213, 229)), color-stop(20%, rgba(255, 213, 229, 0))), url(/images/event/2026luckybox/gold-floor-BG.gif) repeat;
  background: linear-gradient(to top, rgb(255, 213, 229) 0%, rgb(255, 213, 229) 10%, rgba(255, 213, 229, 0) 20%), url(/images/event/2026luckybox/gold-floor-BG.gif) repeat;
}
@media (min-width: 768px) {
  main {
    background: -webkit-gradient(linear, left bottom, left top, from(rgb(255, 213, 229)), color-stop(20%, rgb(255, 213, 229)), color-stop(20%, rgba(255, 213, 229, 0))), url(/images/event/2026luckybox/gold-floor-BG.gif) repeat;
    background: linear-gradient(to top, rgb(255, 213, 229) 0%, rgb(255, 213, 229) 20%, rgba(255, 213, 229, 0) 20%), url(/images/event/2026luckybox/gold-floor-BG.gif) repeat;
  }
}

section.top {
  height: 490px;
  -webkit-animation: rotate-bg-color 10s infinite;
          animation: rotate-bg-color 10s infinite;
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(220, 190, 76)), color-stop(10%, rgba(220, 190, 76, 0)), to(rgba(220, 190, 76, 0))), url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 70px center/150px, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom/70px, url(/images/event/2026luckybox/2026luckybox_02.png) no-repeat bottom center/140%, url(/images/event/2026luckybox/fireworks-BG-mo.png) repeat-x top left 100%/80%;
  background: linear-gradient(to top, rgb(220, 190, 76) 0%, rgba(220, 190, 76, 0) 10%, rgba(220, 190, 76, 0) 100%), url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 70px center/150px, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom/70px, url(/images/event/2026luckybox/2026luckybox_02.png) no-repeat bottom center/140%, url(/images/event/2026luckybox/fireworks-BG-mo.png) repeat-x top left 100%/80%;
}
@media (min-width: 768px) {
  section.top {
    height: 870px;
    background: -webkit-gradient(linear, left bottom, left top, from(rgb(220, 190, 76)), color-stop(10%, rgba(220, 190, 76, 0)), to(rgba(220, 190, 76, 0))), url(/images/event/2026luckybox/color-ribbon.png) no-repeat left bottom, url(/images/event/2026luckybox/color-ribbon-R.png) no-repeat right bottom, url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 82px center, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom, url(/images/event/2026luckybox/2026luckybox_02.png) no-repeat center bottom, url(/images/event/2026luckybox/fireworks-BG-aph.png) repeat-x top 50px left -100px;
    background: linear-gradient(to top, rgb(220, 190, 76) 0%, rgba(220, 190, 76, 0) 10%, rgba(220, 190, 76, 0) 100%), url(/images/event/2026luckybox/color-ribbon.png) no-repeat left bottom, url(/images/event/2026luckybox/color-ribbon-R.png) no-repeat right bottom, url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 82px center, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom, url(/images/event/2026luckybox/2026luckybox_02.png) no-repeat center bottom, url(/images/event/2026luckybox/fireworks-BG-aph.png) repeat-x top 50px left -100px;
  }
}
section.top.allgone {
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(220, 190, 76)), color-stop(10%, rgba(220, 190, 76, 0)), to(rgba(220, 190, 76, 0))), url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 70px center/150px, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom/70px, url(/images/event/2026luckybox/2026luckybox_02-02.png) no-repeat bottom center/140%, url(/images/event/2026luckybox/fireworks-BG-mo.png) repeat-x top left 100%/80%;
  background: linear-gradient(to top, rgb(220, 190, 76) 0%, rgba(220, 190, 76, 0) 10%, rgba(220, 190, 76, 0) 100%), url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 70px center/150px, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom/70px, url(/images/event/2026luckybox/2026luckybox_02-02.png) no-repeat bottom center/140%, url(/images/event/2026luckybox/fireworks-BG-mo.png) repeat-x top left 100%/80%;
}
@media (min-width: 768px) {
  section.top.allgone {
    background: -webkit-gradient(linear, left bottom, left top, from(rgb(220, 190, 76)), color-stop(10%, rgba(220, 190, 76, 0)), to(rgba(220, 190, 76, 0))), url(/images/event/2026luckybox/color-ribbon.png) no-repeat left bottom, url(/images/event/2026luckybox/color-ribbon-R.png) no-repeat right bottom, url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 82px center, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom, url(/images/event/2026luckybox/2026luckybox_02-02.png) no-repeat center bottom, url(/images/event/2026luckybox/fireworks-BG-aph.png) repeat-x top 50px left -100px;
    background: linear-gradient(to top, rgb(220, 190, 76) 0%, rgba(220, 190, 76, 0) 10%, rgba(220, 190, 76, 0) 100%), url(/images/event/2026luckybox/color-ribbon.png) no-repeat left bottom, url(/images/event/2026luckybox/color-ribbon-R.png) no-repeat right bottom, url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 82px center, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom, url(/images/event/2026luckybox/2026luckybox_02-02.png) no-repeat center bottom, url(/images/event/2026luckybox/fireworks-BG-aph.png) repeat-x top 50px left -100px;
  }
}
section.top.extend {
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(220, 190, 76)), color-stop(10%, rgba(220, 190, 76, 0)), to(rgba(220, 190, 76, 0))), url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 70px center/150px, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom/70px, url(/images/event/2026luckybox/2026luckybox_02-03.png) no-repeat bottom center/140%, url(/images/event/2026luckybox/fireworks-BG-mo.png) repeat-x top left 100%/80%;
  background: linear-gradient(to top, rgb(220, 190, 76) 0%, rgba(220, 190, 76, 0) 10%, rgba(220, 190, 76, 0) 100%), url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 70px center/150px, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom/70px, url(/images/event/2026luckybox/2026luckybox_02-03.png) no-repeat bottom center/140%, url(/images/event/2026luckybox/fireworks-BG-mo.png) repeat-x top left 100%/80%;
}
@media (min-width: 768px) {
  section.top.extend {
    background: -webkit-gradient(linear, left bottom, left top, from(rgb(220, 190, 76)), color-stop(10%, rgba(220, 190, 76, 0)), to(rgba(220, 190, 76, 0))), url(/images/event/2026luckybox/color-ribbon.png) no-repeat left bottom, url(/images/event/2026luckybox/color-ribbon-R.png) no-repeat right bottom, url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 82px center, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom, url(/images/event/2026luckybox/2026luckybox_02-03.png) no-repeat center bottom, url(/images/event/2026luckybox/fireworks-BG-aph.png) repeat-x top 50px left -100px;
    background: linear-gradient(to top, rgb(220, 190, 76) 0%, rgba(220, 190, 76, 0) 10%, rgba(220, 190, 76, 0) 100%), url(/images/event/2026luckybox/color-ribbon.png) no-repeat left bottom, url(/images/event/2026luckybox/color-ribbon-R.png) no-repeat right bottom, url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 82px center, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom, url(/images/event/2026luckybox/2026luckybox_02-03.png) no-repeat center bottom, url(/images/event/2026luckybox/fireworks-BG-aph.png) repeat-x top 50px left -100px;
  }
}

section.top-2 {
  height: 490px;
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(220, 190, 76)), color-stop(10%, rgba(220, 190, 76, 0)), to(rgba(220, 190, 76, 0))), url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 70px center/150px, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom/70px, url(/images/event/2026luckybox/2026luckybox_02.png) no-repeat bottom center/140%, url(/images/event/2026luckybox/fireworks-BG-mo.png) repeat-x top left 100%/80%;
  background: linear-gradient(to top, rgb(220, 190, 76) 0%, rgba(220, 190, 76, 0) 10%, rgba(220, 190, 76, 0) 100%), url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 70px center/150px, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom/70px, url(/images/event/2026luckybox/2026luckybox_02.png) no-repeat bottom center/140%, url(/images/event/2026luckybox/fireworks-BG-mo.png) repeat-x top left 100%/80%;
}
@media (min-width: 768px) {
  section.top-2 {
    height: 870px;
    background: -webkit-gradient(linear, left bottom, left top, from(rgb(220, 190, 76)), color-stop(10%, rgba(220, 190, 76, 0)), to(rgba(220, 190, 76, 0))), url(/images/event/2026luckybox/color-ribbon.png) no-repeat left bottom, url(/images/event/2026luckybox/color-ribbon-R.png) no-repeat right bottom, url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 82px center, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom, url(/images/event/2026luckybox/2026luckybox_02.png) no-repeat center bottom, url(/images/event/2026luckybox/fireworks-BG-aph.png) repeat-x top 50px left -100px;
    background: linear-gradient(to top, rgb(220, 190, 76) 0%, rgba(220, 190, 76, 0) 10%, rgba(220, 190, 76, 0) 100%), url(/images/event/2026luckybox/color-ribbon.png) no-repeat left bottom, url(/images/event/2026luckybox/color-ribbon-R.png) no-repeat right bottom, url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 82px center, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom, url(/images/event/2026luckybox/2026luckybox_02.png) no-repeat center bottom, url(/images/event/2026luckybox/fireworks-BG-aph.png) repeat-x top 50px left -100px;
  }
}
section.top-2.allgone {
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(220, 190, 76)), color-stop(10%, rgba(220, 190, 76, 0)), to(rgba(220, 190, 76, 0))), url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 70px center/150px, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom/70px, url(/images/event/2026luckybox/2026luckybox_02-02.png) no-repeat bottom center/140%, url(/images/event/2026luckybox/fireworks-BG-mo.png) repeat-x top left 100%/80%;
  background: linear-gradient(to top, rgb(220, 190, 76) 0%, rgba(220, 190, 76, 0) 10%, rgba(220, 190, 76, 0) 100%), url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 70px center/150px, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom/70px, url(/images/event/2026luckybox/2026luckybox_02-02.png) no-repeat bottom center/140%, url(/images/event/2026luckybox/fireworks-BG-mo.png) repeat-x top left 100%/80%;
}
@media (min-width: 768px) {
  section.top-2.allgone {
    background: -webkit-gradient(linear, left bottom, left top, from(rgb(220, 190, 76)), color-stop(10%, rgba(220, 190, 76, 0)), to(rgba(220, 190, 76, 0))), url(/images/event/2026luckybox/color-ribbon.png) no-repeat left bottom, url(/images/event/2026luckybox/color-ribbon-R.png) no-repeat right bottom, url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 82px center, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom, url(/images/event/2026luckybox/2026luckybox_02-02.png) no-repeat center bottom, url(/images/event/2026luckybox/fireworks-BG-aph.png) repeat-x top 50px left -100px;
    background: linear-gradient(to top, rgb(220, 190, 76) 0%, rgba(220, 190, 76, 0) 10%, rgba(220, 190, 76, 0) 100%), url(/images/event/2026luckybox/color-ribbon.png) no-repeat left bottom, url(/images/event/2026luckybox/color-ribbon-R.png) no-repeat right bottom, url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 82px center, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom, url(/images/event/2026luckybox/2026luckybox_02-02.png) no-repeat center bottom, url(/images/event/2026luckybox/fireworks-BG-aph.png) repeat-x top 50px left -100px;
  }
}
section.top-2.extend {
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(220, 190, 76)), color-stop(10%, rgba(220, 190, 76, 0)), to(rgba(220, 190, 76, 0))), url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 70px center/150px, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom/70px, url(/images/event/2026luckybox/2026luckybox_02-03.png) no-repeat bottom center/140%, url(/images/event/2026luckybox/fireworks-BG-mo.png) repeat-x top left 100%/80%;
  background: linear-gradient(to top, rgb(220, 190, 76) 0%, rgba(220, 190, 76, 0) 10%, rgba(220, 190, 76, 0) 100%), url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 70px center/150px, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom/70px, url(/images/event/2026luckybox/2026luckybox_02-03.png) no-repeat bottom center/140%, url(/images/event/2026luckybox/fireworks-BG-mo.png) repeat-x top left 100%/80%;
}
@media (min-width: 768px) {
  section.top-2.extend {
    background: -webkit-gradient(linear, left bottom, left top, from(rgb(220, 190, 76)), color-stop(10%, rgba(220, 190, 76, 0)), to(rgba(220, 190, 76, 0))), url(/images/event/2026luckybox/color-ribbon.png) no-repeat left bottom, url(/images/event/2026luckybox/color-ribbon-R.png) no-repeat right bottom, url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 82px center, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom, url(/images/event/2026luckybox/2026luckybox_02-03.png) no-repeat center bottom, url(/images/event/2026luckybox/fireworks-BG-aph.png) repeat-x top 50px left -100px;
    background: linear-gradient(to top, rgb(220, 190, 76) 0%, rgba(220, 190, 76, 0) 10%, rgba(220, 190, 76, 0) 100%), url(/images/event/2026luckybox/color-ribbon.png) no-repeat left bottom, url(/images/event/2026luckybox/color-ribbon-R.png) no-repeat right bottom, url(/images/event/2026luckybox/zebra-crossing.png) no-repeat bottom center, url(/images/event/2026luckybox/gold-grass.png) repeat-x bottom 82px center, url(/images/event/2026luckybox/gold-BG.gif) repeat-x bottom, url(/images/event/2026luckybox/2026luckybox_02-03.png) no-repeat center bottom, url(/images/event/2026luckybox/fireworks-BG-aph.png) repeat-x top 50px left -100px;
  }
}

section.two.gold-bg {
  background: url(/images/event/2026luckybox/repeat-ribbon_01.webp) repeat-y top left, url(/images/event/2026luckybox/repeat-ribbon_03.webp) repeat-y top right, linear-gradient(to bottom, rgb(220, 190, 76) 0%, rgba(220, 190, 76, 0) 50px, rgba(220, 190, 76, 0) 100%);
}
@media (min-width: 768px) {
  section.two.gold-bg {
    background: url(/images/event/2026luckybox/repeat-ribbon_01.webp) repeat-y top left, url(/images/event/2026luckybox/repeat-ribbon_03.webp) repeat-y top right, -webkit-gradient(linear, left top, left bottom, from(rgb(220, 190, 76)), color-stop(10%, rgba(220, 190, 76, 0)), to(rgba(220, 190, 76, 0)));
    background: url(/images/event/2026luckybox/repeat-ribbon_01.webp) repeat-y top left, url(/images/event/2026luckybox/repeat-ribbon_03.webp) repeat-y top right, linear-gradient(to bottom, rgb(220, 190, 76) 0%, rgba(220, 190, 76, 0) 10%, rgba(220, 190, 76, 0) 100%);
  }
}

.w855 {
  width: min(95%, 880px);
}

.w209 {
  max-width: 209px;
}

.w213 {
  max-width: 213px;
}

.w1100 {
  width: min(90%, 1100px);
}

.w963 {
  max-width: 963px;
}

.w588 {
  max-width: 588px;
}

.mo-w280 {
  max-width: 260px;
}

.w900 {
  max-width: 900px;
}

.w969 {
  max-width: 969px;
}

.w578 {
  max-width: 578px;
}

.w1160 {
  width: min(90%, 1160px);
}

.w1160, .w578, .w969, .w900, .mo-w280, .w588, .w963, .w855, .w1100, .max-w-1250 {
  margin-left: auto;
  margin-right: auto;
}

.max-w-1250 {
  width: 90%;
}
@media (min-width: 768px) {
  .max-w-1250 {
    width: min(80%, 1250px);
  }
}

.txt-pink {
  color: #f1898d;
}

.txt-orange {
  color: #f28d5b;
}

.earth-color {
  padding: 25px 0;
  margin-bottom: 1rem;
  background: #e7e1b8;
  border-radius: 8%;
}
@media (min-width: 768px) {
  .earth-color {
    margin-bottom: 0;
    border-radius: 0;
  }
}

@media (min-width: 768px) {
  .earth-color02 {
    background-color: #ecce5a;
  }
}
@media (min-width: 768px) {
  .earth-color02 .product-list__item {
    max-width: 319px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 1.5rem;
    margin-bottom: 0;
  }
}

.btn-group {
  padding-top: 1.5rem;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .btn-group {
    margin-bottom: 5rem;
  }
}

.box-style {
  margin-top: -3rem;
  margin-bottom: 1.5rem;
  padding: 3.5rem 10px 10px 10px;
  background-color: #fffcf7;
  -webkit-box-shadow: 0 0 40px 0 #bf6a00;
          box-shadow: 0 0 40px 0 #bf6a00;
  border: 5px solid #dec890;
}
@media (min-width: 768px) {
  .box-style {
    padding: 3.5rem 20px 20px 20px;
    margin-bottom: 3rem;
  }
}

.p-title {
  padding-bottom: 1rem;
  position: relative;
  z-index: 5;
  aspect-ratio: 2.5/1;
  background: url(/images/event/2026luckybox/p-title-BG.png) no-repeat center/115%;
}
@media (min-width: 768px) {
  .p-title {
    aspect-ratio: 2.95/1;
    background: url(/images/event/2026luckybox/p-title-BG.png) no-repeat center/contain;
  }
}

.img-p-name {
  width: min(90%, 400px);
}

.item-style {
  position: relative;
  margin-bottom: 0.8rem;
  padding: 1rem;
  background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(20%, #f5f4ed), color-stop(33%, #f4ecbd), color-stop(36%, #e8dd97), color-stop(47%, #f3ecc1), color-stop(80%, #fffbe0), color-stop(88%, #ffffff));
  background: linear-gradient(to bottom, #ffffff 0%, #f5f4ed 20%, #f4ecbd 33%, #e8dd97 36%, #f3ecc1 47%, #fffbe0 80%, #ffffff 88%);
  border: 1px solid #e7d096;
  border-radius: 2rem;
}
@media (min-width: 768px) {
  .item-style {
    padding: 2rem 1rem 1rem 1rem;
  }
}
.item-style::before {
  position: absolute;
  left: -15px;
  top: 20px;
  padding: 0 32px;
  content: attr(data-txt);
  font-size: 1.2rem;
  color: #592006;
  font-weight: 600;
  background: linear-gradient(45deg, rgb(186, 154, 74) 57%, rgb(232, 227, 180) 73%, rgb(232, 227, 180) 73%, rgb(186, 154, 74) 89%, rgb(186, 154, 74) 89%);
  line-height: 2;
  letter-spacing: 0;
  -webkit-box-shadow: 0 3px 0px 0 #e6dfb1;
          box-shadow: 0 3px 0px 0 #e6dfb1;
}
@media (min-width: 992px) {
  .item-style::before {
    left: -10px;
    top: 12px;
    font-size: 1.1rem;
  }
}

.gold-circle {
  position: absolute;
  right: 8%;
  z-index: 5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 58px;
  width: 58px;
  border-radius: 58px;
  text-align: center;
  background-color: #e6582b;
  color: #ffffff;
}

.number-befor::before {
  content: "x";
  font-size: 0.8em;
  padding-right: 2px;
}

.margin-t25 {
  margin-top: 25px;
}

.original-P {
  line-height: 1;
}
.original-P::before {
  content: "原價$";
  font-size: 0.5em;
}

.sale-p {
  line-height: 1;
}
.sale-p::before {
  content: "必囤優惠價";
  padding-right: 5px;
  font-size: 0.4em;
}

.average {
  font-size: 0.8em;
}

.comment-txt {
  color: #777066;
  font-size: 0.85em;
  letter-spacing: 0;
}

.directions-BG {
  padding: 25px 0;
  margin-bottom: 1rem;
  background: #d4edf7;
  border-radius: 8%;
}
@media (min-width: 768px) {
  .directions-BG {
    background: -webkit-gradient(linear, left top, right top, from(rgba(212, 237, 247, 0)), color-stop(10%, #d4edf7), color-stop(90%, #d4edf7), to(rgba(212, 237, 247, 0)));
    background: linear-gradient(to right, rgba(212, 237, 247, 0) 0%, #d4edf7 10%, #d4edf7 90%, rgba(212, 237, 247, 0) 100%);
    border-radius: 0;
  }
}
.directions-BG.s-color {
  background: #ffe0e1;
}
@media (min-width: 768px) {
  .directions-BG.s-color {
    background: -webkit-gradient(linear, left top, right top, from(rgba(255, 231, 218, 0)), color-stop(10%, #ffe7da), color-stop(90%, #ffe7da), to(rgba(255, 231, 218, 0)));
    background: linear-gradient(to right, rgba(255, 231, 218, 0) 0%, #ffe7da 10%, #ffe7da 90%, rgba(255, 231, 218, 0) 100%);
  }
}
.directions-BG.pink-color {
  background: #ffe0e1;
}
@media (min-width: 768px) {
  .directions-BG.pink-color {
    background: -webkit-gradient(linear, left top, right top, from(rgba(255, 224, 225, 0)), color-stop(10%, #ffe0e1), color-stop(90%, #ffe0e1), to(rgba(255, 224, 225, 0)));
    background: linear-gradient(to right, rgba(255, 224, 225, 0) 0%, #ffe0e1 10%, #ffe0e1 90%, rgba(255, 224, 225, 0) 100%);
  }
}

.product-list__item {
  margin-bottom: 1.5rem;
  padding-bottom: 1.5rem;
  border-bottom: 2px dotted #978a4b;
}
.product-list__item:last-child {
  border: 0;
}
@media (min-width: 768px) {
  .product-list__item {
    margin-bottom: 1rem;
    border-bottom: 0;
  }
}

.border-style {
  margin-top: 5px;
  padding: 6px;
  border: 1px solid #cccccc;
  border-radius: 8px;
}

.radius-100 {
  border-radius: 50em;
}

.taste-style {
  padding: 1px 18px;
  color: #ffffff;
}
.taste-style.blue {
  color: #0c78a1;
  background-color: #b8eeff;
}
.taste-style.green {
  color: #327504;
  background-color: #c9f3aa;
}

.red-btn {
  --redbtn-color:#e75921;
  padding: 12px 0;
  width: 80%;
  color: #ffffff;
  font-size: 1.2rem;
  background-color: var(--redbtn-color);
  border: 0;
}
.red-btn:hover {
  color: #fff7a3;
}

.minus-btn, .plus-btn {
  --Wsize: 20px;
  position: relative;
  width: var(--Wsize);
  aspect-ratio: 1/1;
  background-color: #dfdcd5;
  border-radius: 5px;
  border: 0;
  padding-inline: 0px;
}
.minus-btn::after, .plus-btn::after {
  --masksize: 15px;
  content: "";
  position: absolute;
  width: var(--masksize);
  aspect-ratio: 1/1;
  top: 3px;
  right: 3px;
  background-color: #333333;
}

.minus-btn {
  margin-right: 12px;
}

.plus-btn {
  margin: 0 8px 0 12px;
}

.minus-btn::after {
  -webkit-mask: url(/images/common/minus-solid.svg) no-repeat center center/contain;
          mask: url(/images/common/minus-solid.svg) no-repeat center center/contain;
}

.plus-btn::after {
  -webkit-mask: url(/images/common/plus-solid.svg) no-repeat center center/contain;
          mask: url(/images/common/plus-solid.svg) no-repeat center center/contain;
}

.s-o-btn, .s-k-btn {
  padding: 2px 15px;
  font-size: 1rem;
  font-weight: 600;
  border-radius: 5px;
}
.s-o-btn.select, .s-k-btn.select {
  border: 2px dotted #ad3712;
}

.s-o-btn {
  color: #fb995d;
  background-color: #ffeadf;
  border: 1px dotted #fd833d;
}
.s-o-btn.select {
  color: #ffffff;
  background-color: #fc8245;
}

.s-k-btn {
  color: #d19a00;
  background-color: #fdf7e3;
  border: 1px dotted #ebb225;
}
.s-k-btn.select {
  color: #ffffff;
  background-color: #ebb225;
}

.red-btn, .minus-btn, .plus-btn, .s-o-btn, .s-k-btn {
  cursor: pointer;
}
.red-btn:active, .minus-btn:active, .plus-btn:active, .s-o-btn:active, .s-k-btn:active {
  -webkit-filter: brightness(85%);
          filter: brightness(85%);
}

.pink-BG {
  --hight:93px;
  background: url(/images/event/2026luckybox/pink-grass.png) repeat-x top left/150px, -webkit-gradient(linear, left top, left bottom, from(rgba(255, 122, 167, 0)), color-stop(rgb(255, 122, 167)), color-stop(50%, rgb(255, 213, 229)));
  background: url(/images/event/2026luckybox/pink-grass.png) repeat-x top left/150px, linear-gradient(to bottom, rgba(255, 122, 167, 0) var(--hight), rgb(255, 122, 167) var(--hight), rgb(255, 213, 229) 50%);
}
@media (min-width: 768px) {
  .pink-BG {
    --hight:240px;
    background: url(/images/event/2026luckybox/fireworks-red-BG.png) repeat-x top 22% center, url(/images/event/2026luckybox/pink-grass.png) repeat-x top center/400px, -webkit-gradient(linear, left top, left bottom, from(rgba(255, 122, 167, 0)), color-stop(rgb(255, 122, 167)), color-stop(70%, rgb(255, 213, 229)));
    background: url(/images/event/2026luckybox/fireworks-red-BG.png) repeat-x top 22% center, url(/images/event/2026luckybox/pink-grass.png) repeat-x top center/400px, linear-gradient(to bottom, rgba(255, 122, 167, 0) var(--hight), rgb(255, 122, 167) var(--hight), rgb(255, 213, 229) 70%);
  }
}

.four-encelope-part {
  width: 100%;
  height: 100%;
  padding-top: 120px;
}
@media (min-width: 768px) {
  .four-encelope-part {
    padding-top: 8%;
  }
}

.red-unber-BG {
  display: inline-block;
  width: min(80%, 600px);
  margin-bottom: 1rem;
  padding: 1rem 0;
  color: #613204;
  background: -webkit-gradient(linear, left top, right top, from(#eae3b2), color-stop(10%, #ffffeb), color-stop(90%, #ffffeb), to(#eae3b2));
  background: linear-gradient(to right, #eae3b2 0%, #ffffeb 10%, #ffffeb 90%, #eae3b2 100%);
  -webkit-box-shadow: 0px 0px 5px rgba(255, 214, 103, 0.7882352941);
          box-shadow: 0px 0px 5px rgba(255, 214, 103, 0.7882352941);
}
@media (min-width: 992px) {
  .red-unber-BG {
    margin-bottom: 2rem;
    -webkit-box-shadow: 0px 0px 5px rgba(255, 214, 103, 0.7882352941);
            box-shadow: 0px 0px 5px rgba(255, 214, 103, 0.7882352941);
  }
}

.change-BG {
  width: min(100%, 1440px);
  margin-left: auto;
  margin-right: auto;
  aspect-ratio: 416/927;
}
@media (min-width: 768px) {
  .change-BG {
    aspect-ratio: 1440/1003;
  }
}

.change-ani {
  -webkit-animation: change-img 0.4s infinite;
          animation: change-img 0.4s infinite;
}

.red-e-befor, .red-e-after {
  top: 0;
  left: 0;
}

.red-e-befor {
  z-index: 5;
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
  transition: -webkit-transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}
.red-e-befor:hover {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.red-envelope {
  width: min(100%, 256px);
  aspect-ratio: 256/455;
  cursor: pointer;
}
.red-envelope.is-gray {
  -webkit-filter: grayscale(0.5);
          filter: grayscale(0.5);
  scale: 0.9;
}
.red-envelope.BGimg01, .red-envelope.BGimg02, .red-envelope.BGimg03, .red-envelope.BGimg04 {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
@media (min-width: 992px) {
  .red-envelope.BGimg01:hover, .red-envelope.BGimg02:hover, .red-envelope.BGimg03:hover, .red-envelope.BGimg04:hover {
    -webkit-animation: red-e-scale 2s linear infinite;
            animation: red-e-scale 2s linear infinite;
  }
}
.red-envelope.BGimg01.is-open, .red-envelope.BGimg02.is-open, .red-envelope.BGimg03.is-open, .red-envelope.BGimg04.is-open {
  -webkit-animation: scale-open 0.2s ease-in-out 1;
          animation: scale-open 0.2s ease-in-out 1;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
.red-envelope.BGimg01.is-open .red-envelope-txt, .red-envelope.BGimg02.is-open .red-envelope-txt, .red-envelope.BGimg03.is-open .red-envelope-txt, .red-envelope.BGimg04.is-open .red-envelope-txt {
  display: block;
}
.red-envelope.BGimg01 {
  background-image: url(/images/event/2026luckybox/red-envelope01-h.png);
}
@media (min-width: 992px) {
  .red-envelope.BGimg01:hover {
    background-image: url(/images/event/2026luckybox/red-envelope01-h.png);
  }
}
.red-envelope.BGimg01.is-open {
  background-image: url(/images/event/2026luckybox/red-envelope01-open.png);
}
.red-envelope.BGimg02 {
  background-image: url(/images/event/2026luckybox/red-envelope02-h.png);
}
@media (min-width: 992px) {
  .red-envelope.BGimg02:hover {
    background-image: url(/images/event/2026luckybox/red-envelope02-h.png);
  }
}
.red-envelope.BGimg02.is-open {
  background-image: url(/images/event/2026luckybox/red-envelope02-open.png);
}
.red-envelope.BGimg03 {
  background-image: url(/images/event/2026luckybox/red-envelope03-h.png);
}
@media (min-width: 992px) {
  .red-envelope.BGimg03:hover {
    background-image: url(/images/event/2026luckybox/red-envelope03-h.png);
  }
}
.red-envelope.BGimg03.is-open {
  background-image: url(/images/event/2026luckybox/red-envelope03-open.png);
}
.red-envelope.BGimg04 {
  background-image: url(/images/event/2026luckybox/red-envelope04-h.png);
}
@media (min-width: 992px) {
  .red-envelope.BGimg04:hover {
    background-image: url(/images/event/2026luckybox/red-envelope04-h.png);
  }
}
.red-envelope.BGimg04.is-open {
  background-image: url(/images/event/2026luckybox/red-envelope04-open.png);
}

.red-envelope-txt {
  display: none;
  padding-top: 30%;
  font-size: 1.3rem;
  font-weight: 600;
  color: #ffe154;
  line-height: 1.2;
}
@media (min-width: 768px) {
  .red-envelope-txt {
    font-size: 1.8rem;
  }
}
.red-envelope-txt .white {
  color: #ffffff;
  font-size: 1.8rem;
}
.red-envelope-txt .g-gold {
  font-size: 3rem;
  font-weight: 600;
  background: linear-gradient(45deg, rgb(210, 172, 114) 0%, rgb(242, 242, 174) 50%, rgb(210, 172, 114) 100%);
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
  letter-spacing: 0;
}
.red-envelope-txt .g-gold::after {
  content: "元";
  font-size: 0.5em;
  font-weight: bold;
}

.note-box {
  padding: 2rem 0rem 0 0;
  margin: 0 1rem;
  border-radius: 2em;
}
@media (min-width: 768px) {
  .note-box {
    padding: 2rem;
  }
}

.big-title {
  color: var(--notecolor);
}

.note-title {
  padding: 3px 0;
  color: #ffffff;
  background-color: var(--notecolor);
  border-radius: 8px;
}

.note-title, .note-content {
  margin-bottom: 1rem;
  padding-left: 1rem;
}

.horse-show {
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-iteration-count: 2;
          animation-iteration-count: 2;
}
.horse-show:nth-child(1n) {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s;
  -webkit-animation: horse-show-ani, horse-rotate 0.4s ease-out;
          animation: horse-show-ani, horse-rotate 0.4s ease-out;
}
.horse-show:nth-child(2n) {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
  -webkit-animation: horse-show-ani, horse-rotate 0.8s ease-out;
          animation: horse-show-ani, horse-rotate 0.8s ease-out;
}
.horse-show:nth-child(3n) {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
  -webkit-animation: horse-show-ani, horse-rotate 1.2s ease-out;
          animation: horse-show-ani, horse-rotate 1.2s ease-out;
}
.horse-show:nth-child(4n) {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
  -webkit-animation: horse-show-ani, horse-rotate 1.6s ease-out;
          animation: horse-show-ani, horse-rotate 1.6s ease-out;
}

@-webkit-keyframes horse-rotate {
  0% {
    scale: 1;
  }
  25% {
    scale: 0.8;
  }
  50% {
    scale: 1;
  }
  75% {
    scale: 0.8;
  }
  100% {
    scale: 1;
  }
}

@keyframes horse-rotate {
  0% {
    scale: 1;
  }
  25% {
    scale: 0.8;
  }
  50% {
    scale: 1;
  }
  75% {
    scale: 0.8;
  }
  100% {
    scale: 1;
  }
}
@-webkit-keyframes horse-show-ani {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes horse-show-ani {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes rotate-bg-color {
  0% {
    background-color: #ffd5e5;
  }
  25% {
    background-color: #ffa5c5;
  }
  50% {
    background-color: #e0c1f7;
  }
  75% {
    background-color: #ffb88b;
  }
  100% {
    background-color: #ffd5e5;
  }
}
@keyframes rotate-bg-color {
  0% {
    background-color: #ffd5e5;
  }
  25% {
    background-color: #ffa5c5;
  }
  50% {
    background-color: #e0c1f7;
  }
  75% {
    background-color: #ffb88b;
  }
  100% {
    background-color: #ffd5e5;
  }
}
@-webkit-keyframes change-img {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes change-img {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes red-e-scale {
  0% {
    scale: 0.95;
  }
  50% {
    scale: 1;
  }
  100% {
    scale: 0.95;
  }
}
@keyframes red-e-scale {
  0% {
    scale: 0.95;
  }
  50% {
    scale: 1;
  }
  100% {
    scale: 0.95;
  }
}
@-webkit-keyframes scale-open {
  0% {
    scale: 1;
  }
  100% {
    scale: 1.1;
  }
}
@keyframes scale-open {
  0% {
    scale: 1;
  }
  100% {
    scale: 1.1;
  }
}