@charset "UTF-8";
/*---------------------*/
/* PC base: 1440px */
/* SP base: 375px */
/* max-width: 767px = SP */
/*---------------------*/

/* ========== COMMON ========== */

body {
  overflow-x: clip;
}

#page-body {
  overflow-x: clip;
  overflow-y: visible;
  width: 100%;
}

@media (max-width: 979px) {
  #page-body {
    width: 100vw;
    margin: 0 -10px;
  }
}
@media (max-width: 767px) {
  #page-body {
    width: 100vw;
    margin: 0 -5px;
  }
}

/* ========== MAIN ========== */

.lp_main_wrap {
  --lp-red: #b3193b;
  --lp-navy: #1b3057;
  --lp-navy-deep: #0e2841;
  --lp-blue: #283f6a;
  --lp-blue-muted: #6b7fa3;
  --lp-green: #095747;
  --lp-green-mid: #276e5b;
  --lp-green-light: #35806c;
  --lp-gold: #e2b67a;
  --lp-gold-mid: #d1aa75;
  --lp-gold-deep: #bc9767;
  --lp-cream: #eee9e2;
  --lp-card-btn: #d0dae8;
  --lp-card-btn2: #ccd4e0;
  --lp-white: #fff;
  --lp-side: 5.139vw;
  --lp-content: calc(100% - var(--lp-side) - var(--lp-side));
  --lp-floating-pc-height: 285px; /* 2025_xmasgift floating_banner_pc display height */
  width: 100%;
  margin: 0 auto;
  word-wrap: break-word;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(14px, 0.972vw, 14px);
  line-height: 1;
  letter-spacing: 0;
  color: var(--lp-cream);
  background-color: #dfe8dc;
  position: relative;
}
.lp_main_wrap * {
  box-sizing: border-box;
}

/* ========== SIDE CHECK ========== */

.lp_main_wrap .lp_check {
  position: absolute;
  top: 0;
  bottom: 0;
  width: var(--lp-side);
  z-index: 1;
  pointer-events: none;
}
.lp_main_wrap .lp_check--left {
  left: 0;
}
.lp_main_wrap .lp_check--right {
  right: 0;
}
.lp_main_wrap .lp_check__sticky {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  isolation: isolate;
  overflow: hidden;
}
.lp_main_wrap .lp_check.is-fixed .lp_check__sticky {
  position: fixed;
  top: 0;
  height: 100vh;
  width: var(--lp-side);
}
.lp_main_wrap .lp_check.is-bottom .lp_check__sticky {
  position: absolute;
  top: auto;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100vh;
}
.lp_main_wrap .lp_check__base,
.lp_main_wrap .lp_check__hue,
.lp_main_wrap .lp_check__lighten {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
}
.lp_main_wrap .lp_check__base {
  background-image: url("//ds-assets.store-image.jp/e-look.jp/2026/elook/2026_xmasgift/bg_plaid.png");
  background-size: 16.792vw 16.792vw;
  background-position: top left;
  background-repeat: repeat;
}
.lp_main_wrap .lp_check__hue {
  background: rgba(99, 220, 90, 0.48);
  mix-blend-mode: hue;
}
.lp_main_wrap .lp_check__lighten {
  background: rgba(184, 240, 230, 0.19);
  mix-blend-mode: lighten;
}
@media (max-width: 767px) {
  .lp_main_wrap {
    --lp-side: 2.667vw;
  }
  .lp_main_wrap .lp_check {
    width: calc(var(--lp-side) + 1px);
  }
  .lp_main_wrap .lp_check.is-fixed .lp_check__sticky {
    width: calc(var(--lp-side) + 1px);
  }
  .lp_main_wrap .lp_check--right {
    right: -1px;
  }
  .lp_main_wrap .lp_check__base {
    background-size: 32vw 32vw;
  }
}
.lp_main_wrap ul,
.lp_main_wrap ol {
  list-style: none;
  margin: 0;
  padding: 0;
}
.lp_main_wrap li {
  list-style: none;
}
.lp_main_wrap li,
.lp_main_wrap dt,
.lp_main_wrap dd,
.lp_main_wrap img {
  line-height: 1;
}
.lp_main_wrap p {
  margin-bottom: 0;
}
.lp_main_wrap a {
  transition: all 0.5s ease 0s;
  color: inherit;
  opacity: 1;
  text-decoration: none;
}
.lp_main_wrap img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

/* ========== HEADER / MV ========== */

.lp_main_wrap .lp_mv {
  position: relative;
  z-index: 2;
  width: 100%;
  margin: 0;
}
.lp_main_wrap .lp_mv img {
  width: 100%;
  display: block;
}
.lp_main_wrap .lp_mv__pc {
  width: 100%;
  margin: 0;
}
.lp_main_wrap .lp_mv__smp {
  display: none;
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_mv__pc {
    display: none;
  }
  .lp_main_wrap .lp_mv__smp {
    display: block;
    width: 100%;
    margin: 0;
  }
}

/* ========== RIBBON ========== */

.lp_main_wrap .lp_ribbon {
  position: relative;
  z-index: 2;
  width: 100%;
  height: 1.042vw;
  margin: 0;
  overflow: hidden;
  background-color: var(--lp-cream);
  background-image:
    repeating-linear-gradient(
      -50deg,
      var(--lp-gold-deep) 0,
      var(--lp-gold-deep) 1.75vw,
      var(--lp-cream) 1.75vw,
      var(--lp-cream) 3.5vw
    );
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_ribbon {
    height: 3.733vw;
    background-image:
      repeating-linear-gradient(
        -50deg,
        var(--lp-gold-deep) 0,
        var(--lp-gold-deep) 6.25vw,
        var(--lp-cream) 6.25vw,
        var(--lp-cream) 12.5vw
      );
  }
}

/* ========== ARTICLE ========== */

.lp_main_wrap .lp_main {
  position: relative;
  z-index: 2;
  width: 100%;
  margin: 0;
}

/* ========== ELEMENT ========== */

.lp_main_wrap .lp_img-auto-fade {
  display: block;
  position: relative;
}
.lp_main_wrap .lp_img-auto-fade img {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
}
.lp_main_wrap .lp_img-auto-fade img:nth-child(2) {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: auto-fade 14s ease 0s infinite;
}
@keyframes auto-fade {
  0% { opacity: 0; }
  20% { opacity: 0; }
  26% { opacity: 1; }
  70% { opacity: 1; }
  76% { opacity: 0; }
}

/* ========== OVERLAY ========== */

.lp_main_wrap .lp_overlay {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 3.681vw;
  height: 100%;
  color: inherit;
  text-decoration: none;
}
.lp_main_wrap .lp_overlay__img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}
.lp_main_wrap .lp_overlay__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.lp_main_wrap .lp_overlay__btn {
  position: absolute;
  z-index: 3;
  bottom: 1.25vw;
  right: 1.25vw;
  width: 2.361vw;
  height: 2.361vw;
}
.lp_main_wrap .lp_overlay__text {
  position: absolute;
  z-index: 4;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  width: 100%;
  margin: 0;
  padding: 1.528vw 1.319vw;
  flex-direction: column;
  gap: 0.208vw;
  background: rgba(53, 53, 53, 0.79);
  border-radius: 0;
  opacity: 0;
  transform: translateY(100%);
  transition: opacity .6s, transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.lp_main_wrap .lp_overlay__text.open {
  opacity: 1;
  transform: none;
}
@media (hover: hover) and (pointer: fine) {
  .lp_main_wrap .lp_overlay:hover .lp_overlay__text {
    opacity: 1;
    transform: none;
  }
}
.lp_main_wrap .lp_overlay__text,
.lp_main_wrap .lp_overlay__text a,
.lp_main_wrap .lp_overlay__text span {
  color: var(--lp-white);
  font-size: clamp(13px, 1.024vw, 14.75px);
  line-height: 1.54;
  letter-spacing: 0.05em;
}
.lp_main_wrap .lp_overlay__credit {
  display: flex;
  align-items: baseline;
  flex-direction: column;
  gap: 0.833vw;
}
.lp_main_wrap .lp_overlay__name,
.lp_main_wrap .lp_overlay__price,
.lp_main_wrap .lp_overlay__osize {
  margin: 0;
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_overlay {
    border-radius: 9.5vw;
  }
  .lp_main_wrap .lp_overlay__btn {
    bottom: 3.2vw;
    right: 3.2vw;
    width: 6.4vw;
    height: 6.4vw;
  }
  .lp_main_wrap .lp_overlay__text {
    padding: 4vw 5.333vw;
  }
  .lp_main_wrap .lp_overlay__text,
  .lp_main_wrap .lp_overlay__text a,
  .lp_main_wrap .lp_overlay__text span {
    font-size: clamp(12px, 3.2vw, 12px);
  }
}

/* ========== FLOATING ========== */

.lp_main_wrap .lp_floating {
  position: fixed;
  top: auto;
  right: 0;
  bottom: calc(50vh - var(--lp-floating-pc-height));
  z-index: 10;
  transform: none;
}
.lp_main_wrap .lp_floating.is-end {
  display: none;
}
.lp_main_wrap .lp_floating__link {
  display: block;
  width: 4.583vw;
}
.lp_main_wrap .lp_floating__pc {
  display: block;
  width: 100%;
  height: auto;
}
.lp_main_wrap .lp_floating__smp {
  display: none;
}
.lp_main_wrap .lp_floating__smp-img {
  display: block;
  width: 100%;
  height: auto;
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_floating {
    top: auto;
    bottom: 0;
    left: 0;
    right: 0;
    transform: none;
  }
  .lp_main_wrap .lp_floating__link {
    display: none;
  }
  .lp_main_wrap .lp_floating__smp {
    display: block;
    width: 100%;
  }
}

/* ========== LEAD ========== */

.lp_main_wrap .lp_lead {
  width: var(--lp-content);
  margin: 0 auto;
  min-height: 27.431vw;
  padding: 8.25vw 0 0;
  background: var(--lp-navy);
  text-align: center;
  position: relative;
  z-index: 2;
}
.lp_main_wrap .lp_lead__inner {
  width: 100%;
  margin: 0 auto;
  position: relative;
  padding-bottom: 5.556vw;
}
.lp_main_wrap .lp_lead__break {
  display: none;
}
.lp_main_wrap .lp_lead__card {
  width: 54.514vw;
  margin: 0 auto;
  padding: 3.5vw 2.778vw;
  background: var(--lp-cream);
  border-radius: 1.667vw;
  color: var(--lp-navy);
}
.lp_main_wrap .lp_lead__card p {
  font-weight: 500;
  font-size: clamp(15px, 1.111vw, 16px);
  line-height: 2;
  letter-spacing: 0.06em;
}
.lp_main_wrap .lp_lead__deco {
  position: absolute;
  pointer-events: none;
}
.lp_main_wrap .lp_lead__deco img {
  width: 100%;
  display: block;
}
.lp_main_wrap .lp_lead__deco--squirrel {
  width: 21.528vw;
  right: 16.042vw;
  top: -2.5vw;
  z-index: 2;
}
.lp_main_wrap .lp_lead__deco--holly {
  width: 7.778vw;
  left: 12.986vw;
  bottom: 3.333vw;
  z-index: 2;
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_lead {
    width: var(--lp-content);
    padding: 20vw 4vw 0;
  }
  .lp_main_wrap .lp_lead__inner {
    padding-bottom: 16vw;
  }
  .lp_main_wrap .lp_lead__card {
    width: 100%;
    padding: 11vw 5.333vw;
    border-radius: 6.4vw;
  }
  .lp_main_wrap .lp_lead__card p {
    font-size: 12px;
    line-height: 1.7;
  }
  .lp_main_wrap .lp_lead__break {
    display: block;
    height: 1.7em;
  }
  .lp_main_wrap .lp_lead__deco--squirrel {
    width: 50vw;
    right: -2vw;
    top: -3vw;
  }
  .lp_main_wrap .lp_lead__deco--holly {
    width: 16vw;
    left: -4.5vw;
    bottom: 6.5vw;
  }
}

/* ========== COUPON ========== */

.lp_main_wrap .lp_coupon {
  width: var(--lp-content);
  margin: 0 auto;
  padding: 0 0 6.5vw;
  background: var(--lp-navy);
  text-align: center;
  position: relative;
  z-index: 2;
}
.lp_main_wrap .lp_coupon__inner {
  width: 100%;
  position: relative;
}
.lp_main_wrap .lp_coupon__card {
  width: 53.5vw;
  margin: 0 auto;
  padding: 2.5vw 0 2.85vw;
  background: var(--lp-cream);
  border-radius: 5vw;
  color: var(--lp-navy);
  position: relative;
}
.lp_main_wrap .lp_coupon__sparkle {
  width: 45.139vw;
  margin: 0 auto 2.3vw;
}
.lp_main_wrap .lp_coupon__present {
  width: 11.319vw;
  margin: 0 auto 0.694vw;
}
.lp_main_wrap .lp_coupon__title {
  margin: 0 0 2.75vw;
  font-family: "Libre Baskerville", serif;
  font-weight: 700;
  font-size: clamp(28px, 3.841vw, 55.307px);
  line-height: 0.92;
  color: var(--lp-gold-deep);
}
.lp_main_wrap .lp_coupon__ticket {
  position: relative;
  width: 41.25vw;
  margin: 0 auto;
  padding: 2.45vw 2.778vw 1.15vw;
  background: var(--lp-white);
  border: 0.764vw solid var(--lp-gold-deep);
}
.lp_main_wrap .lp_coupon__label {
  position: absolute;
  top: -0.694vw;
  left: 2.083vw;
  width: 5.278vw;
}
.lp_main_wrap .lp_coupon__label img {
  width: 100%;
  display: block;
}
.lp_main_wrap .lp_coupon__label span {
  position: absolute;
  top: 1.111vw;
  left: 0;
  width: 100%;
  color: var(--lp-white);
  font-weight: 500;
  font-size: clamp(12px, 1.111vw, 16px);
  line-height: 1.4;
  letter-spacing: 0.1em;
}
.lp_main_wrap .lp_coupon__label span b {
  font-size: clamp(14px, 1.728vw, 24.882px);
  letter-spacing: 0.15em;
}
.lp_main_wrap .lp_coupon__condition {
  margin: 0 0 0.694vw;
  font-weight: 500;
  font-size: clamp(14px, 1.319vw, 19px);
  line-height: 0.92;
}
.lp_main_wrap .lp_coupon__off {
  display: inline-block;
  max-width: 100%;
  margin: 0 auto 1.389vw;
  font-family: "Libre Baskerville", serif;
  font-weight: 700;
  font-size: clamp(28px, 4.842vw, 69.72px);
  line-height: 0.92;
  letter-spacing: -0.02em;
  color: var(--lp-navy);
  transform: scaleX(0.86);
  transform-origin: center;
}
.lp_main_wrap .lp_coupon__off-yen,
.lp_main_wrap .lp_coupon__off-unit {
  font-size: 0.87em;
}
.lp_main_wrap .lp_coupon__code {
  width: 27.639vw;
  max-width: 100%;
  margin: 0 auto 0.833vw;
  padding: 0.556vw;
  background: var(--lp-red);
  color: var(--lp-white);
  font-weight: 500;
  font-size: clamp(14px, 1.186vw, 17.076px);
  line-height: 1.6;
  letter-spacing: 0.1em;
}
.lp_main_wrap .lp_coupon__code-success {
  display: none;
  font-size: clamp(12px, 0.833vw, 12px);
}
.lp_main_wrap .lp_noscript {
  margin: 0.833vw 0 0;
  font-size: clamp(12px, 0.833vw, 12px);
  line-height: 1.6;
  color: var(--lp-navy);
}
.lp_main_wrap .lp_coupon__date {
  font-size: clamp(12px, 0.903vw, 13px);
  line-height: 1.6;
  letter-spacing: 0.04em;
}
.lp_main_wrap .lp_coupon__terms {
  margin: 2.5vw auto 0;
  font-weight: 500;
  font-size: clamp(12px, 0.833vw, 12px);
  line-height: 1.72;
  color: var(--lp-navy);
}
.lp_main_wrap .lp_coupon__deco {
  position: absolute;
  width: 18.056vw;
  right: 13.5vw;
  top: -4.4vw;
  pointer-events: none;
  z-index: 2;
}
.lp_main_wrap .lp_coupon__deco img {
  width: 100%;
  display: block;
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_coupon {
    width: var(--lp-content);
    padding: 8vw 0;
  }
  .lp_main_wrap .lp_coupon__card {
    width: 89.333vw; /* 335px */
    margin: 0 auto;
    padding: 8vw 2.667vw 10.667vw;
    border-radius: 5.333vw;
  }
  .lp_main_wrap .lp_coupon__sparkle {
    width: 64.949vw;
    margin: 0 auto 5.333vw;
  }
  .lp_main_wrap .lp_coupon__present {
    width: 23.733vw; /* 89x26 */
    height: 6.933vw;
    margin: 0 auto 0.8vw;
  }
  .lp_main_wrap .lp_coupon__present img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  .lp_main_wrap .lp_coupon__title {
    font-size: 37.209px;
    margin: 0 0 5.333vw;
  }
  .lp_main_wrap .lp_coupon__ticket {
    width: 100%; /* 315px (=335-10*2) */
    margin: 0 auto;
    padding: 9.6vw 5.333vw 9.5vw; 
    border-width: 2.667vw; /* 10px gold */
  }
  .lp_main_wrap .lp_coupon__label {
    width: 12.8vw; /* 48px */
    height: 17.067vw; /* 64px */
    left: -1vw; /* 6px */
    top: -2.5vw;
  }
  .lp_main_wrap .lp_coupon__label img {
    width: 100%;
    height: 100%;
    object-fit: fill;
  }
  .lp_main_wrap .lp_coupon__label span {
    top: 2.467vw;
    font-size: 11px;
    line-height: 1.4;
  }
  .lp_main_wrap .lp_coupon__label span b {
    font-size: 16px;
    letter-spacing: 0.15em;
  }
  .lp_main_wrap .lp_coupon__condition {
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 2.667vw;
  }
  .lp_main_wrap .lp_coupon__off {
    font-size: 43.497px;
    margin-bottom: 2.267vw;
    transform: scaleX(0.9);
  }
  .lp_main_wrap .lp_coupon__off-yen,
  .lp_main_wrap .lp_coupon__off-unit {
    font-size: 0.75em;
  }
  .lp_main_wrap .lp_coupon__code {
    width: 100%;
    padding: 2.667vw;
    margin-bottom: 4.267vw;
    font-size: 12px;
    line-height: 0.92;
    letter-spacing: 0.02em;
  }
  .lp_main_wrap .lp_coupon__date {
    font-size: 11px;
    letter-spacing: 0.05em;
    line-height: 0.92;
  }
  .lp_main_wrap .lp_coupon__terms {
    margin-top: 5.333vw;
    padding: 0 3.733vw;
    font-size: 11px;
    line-height: 1.9;
  }
  .lp_main_wrap .lp_coupon__deco {
    width: 29.333vw;
    right: -7vw;
    top: -4vw;
  }
}

/* ========== NAV ========== */

.lp_main_wrap .lp_nav__sentinel {
  height: 0;
  margin: 0;
  pointer-events: none;
}
.lp_main_wrap .lp_nav__placeholder {
  display: none;
  width: var(--lp-content);
  margin: 0 auto;
  pointer-events: none;
}
.lp_main_wrap .lp_nav {
  position: sticky;
  top: 0;
  z-index: 100;
  width: var(--lp-content);
  margin: 0 auto;
  background: var(--lp-red);
}
.lp_main_wrap .lp_nav.is-stuck {
  position: fixed !important;
  top: 0;
  left: 0;
  right: auto;
  margin: 0;
  z-index: 1000;
}
.lp_main_wrap .lp_nav__inner {
  width: 100%;
  margin: 0;
  padding: 4.4vw 3%;
  text-align: center;
  background: var(--lp-red);
  transition: padding 0.2s ease, box-shadow 0.2s ease;
}
.lp_main_wrap .lp_nav__heading {
  margin: 0 0 2.222vw;
  font-weight: 700;
  font-size: clamp(16px, 2.014vw, 29px);
  line-height: 0.92;
  letter-spacing: 0.1em;
  color: var(--lp-gold);
}
.lp_main_wrap .lp_nav ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.806vw;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  color: var(--lp-gold);
}
.lp_main_wrap .lp_nav a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.556vw;
  position: relative;
  padding: 0.347vw 0.694vw;
  font-weight: 700;
  font-size: clamp(14px, 1.319vw, 19px);
  line-height: 0.92;
  letter-spacing: 0.02em;
  color: var(--lp-gold);
}
.lp_main_wrap .lp_nav a::after {
  content: "";
  display: block;
  width: 0.417vw;
  height: 0.417vw;
  border-right: 0.104vw solid currentColor;
  border-bottom: 0.104vw solid currentColor;
  transform: rotate(45deg);
  flex-shrink: 0;
}
.lp_main_wrap .lp_nav.is-stuck .lp_nav__inner {
  padding: 0.833vw 3%;
  box-shadow: 0 0 1.042vw 0 rgba(0, 0, 0, 0.35);
}
.lp_main_wrap .lp_nav.is-stuck .lp_nav__heading {
  display: none;
}
.lp_main_wrap .lp_nav.is-stuck a {
  font-size: clamp(12px, 0.972vw, 14px);
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_nav {
    width: var(--lp-content);
    background: var(--lp-navy);
  }
  .lp_main_wrap .lp_nav__inner {
    padding: 8vw 0;
    background: var(--lp-navy);
  }
  .lp_main_wrap .lp_nav__heading {
    margin-bottom: 5.333vw; /* 20px */
    font-size: clamp(16px, 5.949vw, 22px); /* 22.31px */
    letter-spacing: 0.1em;
  }
  .lp_main_wrap .lp_nav ul {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1px;
    background: var(--lp-navy);
  }
  .lp_main_wrap .lp_nav li {
    width: calc((100% - 2px) / 3);
    background: var(--lp-red);
  }
  .lp_main_wrap .lp_nav li:nth-child(n + 4) {
    width: calc((100% - 1px) / 2);
  }
  .lp_main_wrap .lp_nav a {
    width: 100%;
    min-height: 11.467vw; /* ~43px */
    padding: 0 1.333vw;
    font-weight: 500;
    font-size: clamp(12px, 3.2vw, 12px);
    justify-content: center;
    gap: 2.667vw;
  }
  .lp_main_wrap .lp_nav a::after {
    width: 1.067vw;
    height: 1.067vw;
    border-right-width: 0.267vw;
    border-bottom-width: 0.267vw;
  }
  .lp_main_wrap .lp_nav.is-stuck {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: none;
    background: var(--lp-red);
  }
  .lp_main_wrap .lp_nav.is-stuck .lp_nav__inner {
    padding: 0;
    background: var(--lp-red);
  }
  .lp_main_wrap .lp_nav.is-stuck ul {
    gap: 1px;
    background: rgba(0, 0, 0, 0.12);
  }
  .lp_main_wrap .lp_nav.is-stuck li {
    width: calc((100% - 2px) / 3);
    background: var(--lp-red);
  }
  .lp_main_wrap .lp_nav.is-stuck li:nth-child(n + 4) {
    width: calc((100% - 1px) / 2);
  }
  .lp_main_wrap .lp_nav.is-stuck a {
    min-height: 0;
    padding: 3.2vw 2.667vw;
  }
}

/* ========== SECTION TITLE ========== */

.lp_main_wrap .lp_item__title,
.lp_main_wrap .lp_person__title,
.lp_main_wrap .lp_brand__title,
.lp_main_wrap .lp_price__title,
.lp_main_wrap .lp_category__title,
.lp_main_wrap .lp_gift__title,
.lp_main_wrap .lp_feature__title {
  text-align: center;
  color: var(--lp-gold);
}
.lp_main_wrap .lp_item__title h3,
.lp_main_wrap .lp_person__title h3,
.lp_main_wrap .lp_brand__title h3,
.lp_main_wrap .lp_price__title h3,
.lp_main_wrap .lp_category__title h3,
.lp_main_wrap .lp_gift__title h3,
.lp_main_wrap .lp_feature__title h3 {
  margin: 0;
  font-family: "Libre Baskerville", serif;
  font-weight: 700;
  font-size: clamp(28px, 5.069vw, 62px);
  line-height: 0.92;
}
.lp_main_wrap .lp_item__title p,
.lp_main_wrap .lp_person__title p,
.lp_main_wrap .lp_brand__title p,
.lp_main_wrap .lp_price__title p,
.lp_main_wrap .lp_category__title p,
.lp_main_wrap .lp_gift__title p,
.lp_main_wrap .lp_feature__title p {
  margin-top: 1.181vw;
  font-weight: 700;
  font-size: clamp(14px, 1.319vw, 19px);
  line-height: 0.92;
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_item__title h3,
  .lp_main_wrap .lp_person__title h3,
  .lp_main_wrap .lp_brand__title h3,
  .lp_main_wrap .lp_price__title h3,
  .lp_main_wrap .lp_category__title h3,
  .lp_main_wrap .lp_gift__title h3,
  .lp_main_wrap .lp_feature__title h3 {
    font-size: clamp(24px, 10.667vw, 40px);
  }
  .lp_main_wrap .lp_item__title p,
  .lp_main_wrap .lp_person__title p,
  .lp_main_wrap .lp_brand__title p,
  .lp_main_wrap .lp_price__title p,
  .lp_main_wrap .lp_category__title p,
  .lp_main_wrap .lp_gift__title p,
  .lp_main_wrap .lp_feature__title p {
    margin-top: 6vw;
    font-size: clamp(12px, 3.733vw, 14px);
  }
}

/* ========== CTA BUTTON ========== */

.lp_main_wrap .lp_item__btn a,
.lp_main_wrap .lp_person__btn a,
.lp_main_wrap .lp_btn__btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 42.778vw;
  max-width: 100%;
  margin: 0 auto;
  padding: 1.667vw 3.472vw;
  border-radius: 0.764vw;
  background: var(--lp-red);
  color: var(--lp-gold);
  font-weight: 700;
  font-size: clamp(14px, 1.319vw, 19px);
  line-height: 1.2;
  letter-spacing: 0.06em;
  text-align: center;
}
.lp_main_wrap .lp_person__btn a {
  background: var(--lp-navy);
}
.lp_main_wrap .lp_item__btn a::after,
.lp_main_wrap .lp_person__btn a::after,
.lp_main_wrap .lp_btn__btn a::after {
  content: "";
  position: absolute;
  right: 1.389vw;
  top: 50%;
  width: 0.486vw;
  height: 0.486vw;
  border-right: 0.139vw solid currentColor;
  border-bottom: 0.139vw solid currentColor;
  transform: translateY(-50%) rotate(-45deg);
}
.lp_main_wrap .lp_item__btn a:hover,
.lp_main_wrap .lp_btn__btn a:hover {
  background: var(--lp-gold);
  color: var(--lp-red);
}
.lp_main_wrap .lp_person__btn a:hover {
  background: var(--lp-gold);
  color: var(--lp-navy);
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_item__btn a,
  .lp_main_wrap .lp_person__btn a,
  .lp_main_wrap .lp_btn__btn a {
    width: 85.333vw;
    padding: 5.333vw 8vw;
    border-radius: 2.133vw;
    font-size: clamp(13px, 4vw, 15px);
  }
  .lp_main_wrap .lp_item__btn a::after,
  .lp_main_wrap .lp_person__btn a::after,
  .lp_main_wrap .lp_btn__btn a::after {
    right: 4vw;
    width: 1.6vw;
    height: 1.6vw;
    border-right-width: 0.4vw;
    border-bottom-width: 0.4vw;
  }
  .lp_main_wrap .lp_person__btn {
    position: relative;
    z-index: 2;
  }
}

/* ========== PICK UP ITEMS ========== */

.lp_main_wrap .lp_item {
  width: var(--lp-content);
  margin: 0 auto;
  padding: 4.3vw 0 4vw;
  background: var(--lp-navy);
  color: var(--lp-gold);
  text-align: center;
  position: relative;
  z-index: 2;
}
.lp_main_wrap .lp_item__inner {
  width: 94%;
  max-width: 72.222vw;
  margin: 0 auto;
  position: relative;
  z-index: 3;
}
.lp_main_wrap .lp_item__title {
  margin-bottom: 4.236vw;
}
.lp_main_wrap .lp_item__list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.458vw;
  margin: 0 0 4.236vw;
  text-align: left;
}
.lp_main_wrap .lp_item__list > li {
  width: calc((100% - 4.375vw) / 4);
  aspect-ratio: 250 / 271;
  background: transparent;
}
.lp_main_wrap .lp_item__deco {
  position: absolute;
  width: 11.111vw;
  right: -12.3vw;
  top: -3.4vw;
  pointer-events: none;
  z-index: 1;
}
.lp_main_wrap .lp_item__deco img {
  width: 100%;
  display: block;
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_item {
    width: var(--lp-content);
    padding: 26.5vw 0 16vw;
  }
  .lp_main_wrap .lp_item__inner {
    width: 92%;
    max-width: none;
  }
  .lp_main_wrap .lp_item__title {
    margin-bottom: 10vw;
  }
  .lp_main_wrap .lp_item__list {
    gap: 2.667vw;
    margin-bottom: 10vw;
  }
  .lp_main_wrap .lp_item__list > li {
    width: calc((100% - 2.667vw) / 2);
  }
  .lp_main_wrap .lp_item__deco {
    width: 28.667vw;
    right: -11vw;
    top: -18vw;
  }
}

/* ========== PERSON ========== */

.lp_main_wrap .lp_person {
  width: var(--lp-content);
  margin: 0 auto;
  padding: 5.556vw 0 5.3vw;
  background: var(--lp-blue-muted);
  color: var(--lp-gold);
  text-align: center;
  position: relative;
  z-index: 2;
  overflow: visible;
}
.lp_main_wrap .lp_person__inner {
  width: 94%;
  max-width: 67.5vw;
  margin: 0 auto;
  position: relative;
  z-index: 3;
}
.lp_main_wrap .lp_person__title {
  margin-bottom: 4.236vw;
}
.lp_main_wrap .lp_person__list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.544vw;
  margin: 0 0 4.236vw;
}
.lp_main_wrap .lp_person__list > li {
  width: calc((100% - 1.544vw) / 2);
}
.lp_main_wrap .lp_person__card {
  display: block;
  position: relative;
  width: 100%;
  min-height: 21.962vw;
  padding: 2.361vw 2.083vw 2.778vw;
  background: var(--lp-cream);
  border-radius: 4.28vw;
  color: var(--lp-blue);
  text-align: center;
}
.lp_main_wrap .lp_person__name {
  margin: 0 0 1.181vw;
  font-family: "Libre Baskerville", serif;
  font-weight: 700;
  font-size: clamp(28px, 3.583vw, 51.59px);
  line-height: 1.1;
  letter-spacing: 0.02em;
}
.lp_main_wrap .lp_person__name span {
  font-size: 0.785em;
  margin-right: 0.3em;
}
.lp_main_wrap .lp_person__body {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 1.389vw;
  text-align: left;
}
.lp_main_wrap .lp_person__img {
  width: 9.051vw;
  flex-shrink: 0;
}
.lp_main_wrap .lp_person__img img {
  width: 100%;
  display: block;
}
.lp_main_wrap .lp_person__right {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 14.384vw;
  max-width: 48%;
  flex-shrink: 0;
  padding-top: 0.278vw;
}
.lp_main_wrap .lp_person__text {
  width: 100%;
  margin: 0 0 1.389vw;
  font-size: clamp(13px, 0.93vw, 13.39px);
  line-height: 1.51;
  letter-spacing: 0.16em;
}
.lp_main_wrap .lp_person__more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.694vw;
  position: relative;
  width: 13.472vw;
  min-height: 2.569vw;
  padding: 0.556vw 1.736vw 0.556vw 0.972vw;
  background: var(--lp-card-btn);
  border-radius: 0.347vw;
  font-weight: 500;
  font-size: clamp(12px, 0.947vw, 13.64px);
  letter-spacing: 0.06em;
  color: var(--lp-blue);
  text-decoration: none;
}
.lp_main_wrap .lp_person__more::after {
  content: "";
  position: absolute;
  right: 0.833vw;
  top: 50%;
  width: 0.347vw;
  height: 0.347vw;
  border-right: 0.104vw solid currentColor;
  border-bottom: 0.104vw solid currentColor;
  transform: translateY(-50%) rotate(-45deg);
}
.lp_main_wrap .lp_person__deco {
  position: absolute;
  pointer-events: none;
  z-index: 1;
}
.lp_main_wrap .lp_person__deco img {
  width: 100%;
  display: block;
}
.lp_main_wrap .lp_person__deco--tree {
  width: 24vw;
  left: calc(50% - 50vw);
  bottom: -11vw;
  z-index: 0;
}
.lp_main_wrap .lp_person__deco--stocking {
  width: 9.722vw;
  right: -5vw;
  top: -10.4vw;
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_person {
    width: var(--lp-content);
    padding: 16vw 0;
    overflow: visible;
  }
  .lp_main_wrap .lp_person__inner {
    width: 89.333vw;
    max-width: none;
  }
  .lp_main_wrap .lp_person__title {
    margin-bottom: 10.133vw;
  }
  .lp_main_wrap .lp_person__list {
    flex-direction: column;
    gap: 5.333vw; /* 20px */
    margin-bottom: 10.133vw;
  }
  .lp_main_wrap .lp_person__list > li {
    width: 100%;
  }
  .lp_main_wrap .lp_person__card {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 0;
    padding: 8vw 5.333vw; /* py30 px20 */
    border-radius: 9.6vw; /* 36px */
    gap: 5.333vw;
  }
  .lp_main_wrap .lp_person__name {
    font-size: clamp(24px, 9.6vw, 36px);
    margin-bottom: 0;
  }
  .lp_main_wrap .lp_person__body {
    gap: 4vw; /* 15px */
    width: 100%;
  }
  .lp_main_wrap .lp_person__img {
    width: 34.667vw; /* 130px */
  }
  .lp_main_wrap .lp_person__right {
    width: auto;
    max-width: none;
    flex: 1;
    align-items: stretch;
    justify-content: space-between;
    align-self: stretch;
    padding-top: 0;
  }
  .lp_main_wrap .lp_person__text {
    font-size: clamp(12px, 3.2vw, 12px);
    letter-spacing: 0.05em;
    line-height: 1.8;
    margin-bottom: 4vw;
  }
  .lp_main_wrap .lp_person__more {
    width: 100%;
    min-height: 0;
    padding: 2.667vw 5.333vw 2.667vw 2.4vw; /* py10 */
    font-size: clamp(12px, 3.2vw, 12px);
  }
  .lp_main_wrap .lp_person__more::after {
    right: 2.667vw;
    width: 1.067vw;
    height: 1.067vw;
    border-right-width: 0.267vw;
    border-bottom-width: 0.267vw;
  }
  .lp_main_wrap .lp_person__deco--tree {
    width: 37vw;
    left: -11vw;
    bottom: -21.5vw;
    opacity: 0.9;
    z-index: 0;
  }
  .lp_main_wrap .lp_person__deco--stocking {
    width: 16.5vw;
    right: -6vw;
    top: -28.5vw;
  }
}

/* ========== BRAND ========== */

.lp_main_wrap .lp_brand {
  width: var(--lp-content);
  margin: 0 auto;
  padding: 6.15vw 0 5.556vw;
  background: var(--lp-green-mid);
  color: var(--lp-gold);
  text-align: center;
  position: relative;
  z-index: 2;
  overflow: visible;
}
.lp_main_wrap .lp_brand__deco {
  position: absolute;
  width: 17.569vw;
  right: -1.46vw;
  top: 0;
  pointer-events: none;
  z-index: 2;
}
.lp_main_wrap .lp_brand__deco img {
  width: 100%;
  display: block;
}
.lp_main_wrap .lp_brand__inner {
  width: 94%;
  max-width: 73.681vw;
  margin: 0 auto;
  position: relative;
  z-index: 3;
}
.lp_main_wrap .lp_brand__title {
  margin-bottom: 4.236vw;
}
.lp_main_wrap .lp_brand__list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 2.55vw 1.2vw;
}
.lp_main_wrap .lp_brand__list li {
  width: calc((100% - 4.8vw) / 5);
}
.lp_main_wrap .lp_brand__list a {
  display: block;
}
.lp_main_wrap .lp_brand__img {
  display: block;
  width: 100%;
  aspect-ratio: 397 / 246;
  overflow: hidden;
  background: #aeadad;
}
.lp_main_wrap .lp_brand__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.lp_main_wrap .lp_brand__logo {
  display: block;
  width: 100%;
  margin-top: 0;
}
.lp_main_wrap .lp_brand__logo--look {
  width: 70%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1.049vw; /* 15.117px */
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_brand {
    width: var(--lp-content);
    padding: 17.5vw 0;
  }
  .lp_main_wrap .lp_brand__inner {
    width: 92%;
    max-width: none;
  }
  .lp_main_wrap .lp_brand__title {
    margin-bottom: 10vw;
  }
  .lp_main_wrap .lp_brand__list {
    gap: 4.5vw 2.667vw;
  }
  .lp_main_wrap .lp_brand__list li {
    width: calc((100% - 5.333vw) / 3);
  }
  .lp_main_wrap .lp_brand__deco {
    width: 26vw;
    right: -2vw;
    top: 0;
  }
  .lp_main_wrap .lp_brand__logo {
    margin-top: 0;
  }
  .lp_main_wrap .lp_brand__logo--look {
    margin-top: 2.667vw;
  }
}
@media (max-width: 425px) {
  .lp_main_wrap .lp_brand__list li {
    width: calc((100% - 2.667vw) / 2);
  }
}

/* ========== PRICE ========== */

.lp_main_wrap .lp_price {
  width: var(--lp-content);
  margin: 0 auto;
  padding: 6.8vw 0 6.25vw;
  background: var(--lp-red);
  color: var(--lp-gold);
  text-align: center;
  position: relative;
  z-index: 2;
  overflow: visible;
}
.lp_main_wrap .lp_price__inner {
  width: 94%;
  max-width: 67.57vw;
  margin: 0 auto;
  position: relative;
  z-index: 3;
}
.lp_main_wrap .lp_price__title {
  margin-bottom: 4.236vw;
}
.lp_main_wrap .lp_price__list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.547vw;
  margin: 0 0 4vw;
}
.lp_main_wrap .lp_price__list > li {
  width: calc((100% - 1.547vw) / 2);
}
.lp_main_wrap .lp_price__card {
  display: block;
  position: relative;
  width: 100%;
  min-height: 22.007vw;
  padding: 2.361vw 2.083vw 2.778vw;
  background: var(--lp-cream);
  border-radius: 4.289vw;
  color: var(--lp-blue);
  text-align: center;
}
.lp_main_wrap .lp_price__name {
  margin: 0 0 1.181vw;
  font-family: "Libre Baskerville", serif;
  font-weight: 700;
  font-size: clamp(28px, 3.656vw, 52.649px);
  line-height: 1.1;
}
.lp_main_wrap .lp_price__tilde {
  font-size: 0.85em;
}
.lp_main_wrap .lp_price__jp {
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  font-size: 0.52em;
  margin-left: 0.15em;
}
.lp_main_wrap .lp_price__body {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 1.389vw;
  text-align: left;
}
.lp_main_wrap .lp_price__img {
  width: 9.07vw;
  flex-shrink: 0;
}
.lp_main_wrap .lp_price__img img {
  width: 100%;
  display: block;
}
.lp_main_wrap .lp_price__right {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 14.414vw;
  max-width: 48%;
  flex-shrink: 0;
  padding-top: 0.278vw;
}
.lp_main_wrap .lp_price__text {
  width: 100%;
  margin: 0 0 1.389vw;
  font-size: clamp(13px, 0.932vw, 13.42px);
  line-height: 1.51;
  letter-spacing: 0.16em;
}
.lp_main_wrap .lp_price__more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.694vw;
  position: relative;
  width: 13.472vw;
  min-height: 2.569vw;
  padding: 0.556vw 1.736vw 0.556vw 0.972vw;
  background: var(--lp-card-btn2);
  border-radius: 0.347vw;
  font-weight: 500;
  font-size: clamp(12px, 0.949vw, 13.67px);
  letter-spacing: 0.06em;
  color: var(--lp-blue);
  text-decoration: none;
}
.lp_main_wrap .lp_price__more::after {
  content: "";
  position: absolute;
  right: 0.833vw;
  top: 50%;
  width: 0.347vw;
  height: 0.347vw;
  border-right: 0.104vw solid currentColor;
  border-bottom: 0.104vw solid currentColor;
  transform: translateY(-50%) rotate(-45deg);
}
.lp_main_wrap .lp_price__coupon,
.lp_main_wrap .lp_btn__coupon {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 0.556vw 0.972vw;
}
.lp_main_wrap .lp_price__coupon-badge,
.lp_main_wrap .lp_btn__coupon-badge {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 4.444vw; /* 64px */
  height: 2.573vw; /* 37.05px */
  flex-shrink: 0;
}
.lp_main_wrap .lp_price__coupon-badge::before,
.lp_main_wrap .lp_btn__coupon-badge::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 50%;
  background: var(--lp-gold);
}
.lp_main_wrap .lp_price__coupon-badge::after,
.lp_main_wrap .lp_btn__coupon-badge::after {
  content: "";
  position: absolute;
  top: 0.141vw;
  left: 0.139vw;
  width: 4.167vw; /* 60px */
  height: 2.292vw; /* 33px */
  border-radius: 50%;
  background: var(--lp-white);
}
.lp_main_wrap .lp_price__coupon-badge-text,
.lp_main_wrap .lp_btn__coupon-badge-text {
  position: relative;
  z-index: 1;
  font-family: "Libre Baskerville", serif;
  font-weight: 700;
  font-size: clamp(11px, 0.968vw, 13.946px);
  color: var(--lp-blue);
  line-height: 0.92;
}
.lp_main_wrap .lp_price__coupon-text,
.lp_main_wrap .lp_btn__coupon-text {
  font-weight: 500;
  font-size: clamp(14px, 1.111vw, 16px);
  line-height: 1;
  letter-spacing: 0.04em;
  color: var(--lp-white);
}
.lp_main_wrap .lp_price__coupon-link,
.lp_main_wrap .lp_btn__coupon-link {
  display: inline-block;
  padding-bottom: 0.278vw;
  border-bottom: 1px solid var(--lp-white);
  font-weight: 500;
  font-size: clamp(12px, 0.833vw, 12px);
  line-height: 1;
  letter-spacing: 0.06em;
  color: var(--lp-white);
}
.lp_main_wrap .lp_price__deco {
  position: absolute;
  pointer-events: none;
  z-index: 1;
}
.lp_main_wrap .lp_price__deco img {
  width: 100%;
  display: block;
}
.lp_main_wrap .lp_price__deco--box {
  width: 11.944vw;
  top: 2.5vw;
  right: -6.7vw;
}
.lp_main_wrap .lp_price__deco--box-b {
  width: 14.3vw;
  left: -14.5vw;
  bottom: -5vw;
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_price {
    width: var(--lp-content);
    padding: 16vw 0;
  }
  .lp_main_wrap .lp_price__inner {
    width: 89.333vw;
    max-width: none;
  }
  .lp_main_wrap .lp_price__title {
    margin-bottom: 10.133vw;
  }
  .lp_main_wrap .lp_price__list {
    flex-direction: column;
    gap: 5.333vw;
    margin-bottom: 10.133vw;
  }
  .lp_main_wrap .lp_price__list > li {
    width: 100%;
  }
  .lp_main_wrap .lp_price__card {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 0;
    padding: 8vw 5.333vw;
    border-radius: 9.6vw;
    gap: 5.333vw;
  }
  .lp_main_wrap .lp_price__name {
    font-size: clamp(24px, 9.6vw, 36px);
    margin-bottom: 0;
  }
  .lp_main_wrap .lp_price__body {
    gap: 4vw;
    width: 100%;
  }
  .lp_main_wrap .lp_price__img {
    width: 34.667vw; /* 130px */
  }
  .lp_main_wrap .lp_price__right {
    width: auto;
    max-width: none;
    flex: 1;
    align-items: stretch;
    justify-content: space-between;
    align-self: stretch;
    padding-top: 0;
  }
  .lp_main_wrap .lp_price__text {
    font-size: clamp(12px, 3.2vw, 12px);
    letter-spacing: 0.05em;
    line-height: 1.8;
    margin-bottom: 4vw;
  }
  .lp_main_wrap .lp_price__more {
    width: 100%;
    min-height: 0;
    padding: 2.667vw 5.333vw 2.667vw 2.4vw;
    font-size: clamp(12px, 3.2vw, 12px);
  }
  .lp_main_wrap .lp_price__more::after {
    right: 2.667vw;
    width: 1.067vw;
    height: 1.067vw;
    border-right-width: 0.267vw;
    border-bottom-width: 0.267vw;
  }
  .lp_main_wrap .lp_price__coupon,
  .lp_main_wrap .lp_btn__coupon {
    flex-direction: column;
    gap: 4vw;
  }
  .lp_main_wrap .lp_price__coupon-badge,
  .lp_main_wrap .lp_btn__coupon-badge {
    width: 20.267vw; /* 76px */
    height: 11.733vw; /* 44px */
  }
  .lp_main_wrap .lp_price__coupon-badge::after,
  .lp_main_wrap .lp_btn__coupon-badge::after {
    top: 0.8vw;
    left: 0.8vw;
    width: 18.667vw; /* 70px */
    height: 10.133vw; /* 38px */
  }
  .lp_main_wrap .lp_price__coupon-badge-text,
  .lp_main_wrap .lp_btn__coupon-badge-text {
    font-size: clamp(12px, 4.416vw, 16.5px); /* 16.561px */
  }
  .lp_main_wrap .lp_price__coupon-text,
  .lp_main_wrap .lp_btn__coupon-text {
    font-size: clamp(14px, 4.267vw, 16px);
    line-height: 1.7;
    letter-spacing: 0.02em;
  }
  .lp_main_wrap .lp_price__deco--box {
    width: 24vw;
    right: -3vw;
    top: 15.5vw;
  }
  .lp_main_wrap .lp_price__deco--box-b {
    width: 29vw;
    bottom: -20vw;
    left: -6vw;
  }
}

/* ========== CATEGORY ========== */

.lp_main_wrap .lp_category {
  width: var(--lp-content);
  margin: 0 auto;
  padding: 6vw 0 5.556vw;
  background: var(--lp-green-light);
  color: var(--lp-gold);
  text-align: center;
  position: relative;
  z-index: 2;
  overflow: visible;
}
.lp_main_wrap .lp_category__inner {
  width: 94%;
  max-width: 54.722vw;
  margin: 0 auto;
  position: relative;
  z-index: 3;
}
.lp_main_wrap .lp_category__title {
  margin-bottom: 4.236vw;
}
.lp_main_wrap .lp_category__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.556vw;
  width: 100%;
  margin: 0 auto;
}
.lp_main_wrap .lp_category__list li {
  width: calc((100% - 1.667vw) / 4);
}
.lp_main_wrap .lp_category__list a {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 4.861vw;
  padding: 0.694vw 0.972vw;
  border-radius: 0.764vw;
  font-weight: 500;
  font-size: clamp(15px, 1.181vw, 17px);
  line-height: 0.92;
  letter-spacing: -0.02em;
  background: var(--lp-cream);
  color: var(--lp-navy-deep);
}
.lp_main_wrap .lp_category__deco {
  position: absolute;
  width: 9.722vw;
  right: -19.5vw;
  top: -3vw;
  pointer-events: none;
  z-index: 1;
}
.lp_main_wrap .lp_category__deco img {
  width: 100%;
  display: block;
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_category {
    width: var(--lp-content);
    padding: 16vw 0;
  }
  .lp_main_wrap .lp_category__inner {
    width: 89.333vw;
    max-width: none;
  }
  .lp_main_wrap .lp_category__title {
    margin-bottom: 10.133vw;
  }
  .lp_main_wrap .lp_category__list {
    gap: 2.667vw; /* 10px */
  }
  .lp_main_wrap .lp_category__list li {
    width: calc((100% - 2.667vw) / 2); /* 162px */
  }
  .lp_main_wrap .lp_category__list a {
    min-height: 16vw; /* 60px */
    padding: 0 2.133vw;
    border-radius: 2.667vw; /* 10px */
    font-size: clamp(12px, 3.733vw, 14px);
  }
  .lp_main_wrap .lp_category__deco {
    width: 19.5vw;
    right: -5.667vw;
    top: -20.4vw;
  }
}

/* ========== GIFT ========== */

.lp_main_wrap .lp_gift {
  width: var(--lp-content);
  margin: 0 auto;
  padding: 7vw 0 9vw;
  background: var(--lp-green);
  color: var(--lp-gold);
  text-align: center;
  position: relative;
  z-index: 2;
  overflow: visible;
}
.lp_main_wrap .lp_gift__inner {
  width: 94%;
  max-width: 55vw; /* ~792px frame */
  margin: 0 auto;
  position: relative;
  z-index: 3;
}
.lp_main_wrap .lp_gift__title {
  margin-bottom: 4.25vw;
}
.lp_main_wrap .lp_gift__content {
  width: 100%;
  max-width: 53.472vw; /* 770px */
  margin: 0 auto;
  padding: 3.819vw 3.472vw 2.569vw;
  background: var(--lp-cream);
  border: 0.55vw solid var(--lp-gold-deep);
  border-radius: 5vw; /* 72px */
  color: var(--lp-navy-deep);
  box-sizing: border-box;
}
.lp_main_wrap .lp_gift__img {
  width: 95%;
  margin: 0 auto 4vw;
}
.lp_main_wrap .lp_gift__img img {
  width: 100%;
}
.lp_main_wrap .lp_gift__img--pc {
  display: block;
}
.lp_main_wrap .lp_gift__img--sp {
  display: none;
}
.lp_main_wrap .lp_gift__lead {
  margin: 0 0 1.3vw;
  font-weight: 700;
  font-size: clamp(15px, 1.319vw, 19px);
  line-height: 1;
  letter-spacing: 0.08em;
  color: var(--lp-red);
}
.lp_main_wrap .lp_gift__text {
  margin: 0 0 2vw;
  font-size: clamp(15px, 1.111vw, 16px);
  line-height: 2.01;
  letter-spacing: 0.18em;
}
.lp_main_wrap .lp_gift__btn a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 13.333vw;
  margin: 0 auto;
  padding: 0.694vw 1.736vw 0.694vw 0.972vw;
  background: var(--lp-card-btn2);
  border-radius: 0.347vw;
  font-weight: 500;
  font-size: clamp(12px, 0.938vw, 13.5px);
  letter-spacing: 0.06em;
  color: var(--lp-blue);
}
.lp_main_wrap .lp_gift__btn a::after {
  content: "";
  position: absolute;
  right: 0.833vw;
  top: 50%;
  width: 0.347vw;
  height: 0.347vw;
  border-right: 0.104vw solid currentColor;
  border-bottom: 0.104vw solid currentColor;
  transform: translateY(-50%) rotate(-45deg);
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_gift {
    width: var(--lp-content);
    padding: 16vw 0;
  }
  .lp_main_wrap .lp_gift__inner {
    width: 89.333vw;
    max-width: none;
  }
  .lp_main_wrap .lp_gift__title {
    margin-bottom: 10.133vw;
  }
  .lp_main_wrap .lp_gift__content {
    max-width: none;
    padding: 8vw 5.333vw; /* white py30 px20 */
    border-width: 2.133vw; /* gold 8px */
    border-radius: 8vw; /* 30px */
  }
  .lp_main_wrap .lp_gift__img {
    width: 48.267vw; /* 181px */
    margin-bottom: 2.667vw;
  }
  .lp_main_wrap .lp_gift__img--pc {
    display: none;
  }
  .lp_main_wrap .lp_gift__img--sp {
    display: block;
  }
  .lp_main_wrap .lp_gift__lead {
    font-size: clamp(16px, 5.067vw, 19px);
    line-height: 1.5;
    letter-spacing: 0.04em;
    margin-bottom: 8vw; /* gap 30px in txt group */
  }
  .lp_main_wrap .lp_gift__text {
    width: 74.933vw; /* 281px */
    max-width: 100%;
    margin: 0 auto 8vw;
    font-size: clamp(12px, 3.733vw, 14px);
    line-height: 1.8;
    letter-spacing: 0;
  }
  .lp_main_wrap .lp_gift__btn {
    width: 100%;
  }
  .lp_main_wrap .lp_gift__btn a {
    width: 100%;
    padding: 2.667vw 4vw;
    font-size: clamp(12px, 3.2vw, 12px);
    letter-spacing: 0.06em;
  }
  .lp_main_wrap .lp_gift__btn a::after {
    right: 3.733vw;
    width: 1.333vw;
    height: 1.333vw;
  }
}

/* ========== FEATURE ========== */

.lp_main_wrap .lp_feature {
  width: var(--lp-content);
  margin: 0 auto;
  padding: 3vw 0 5.556vw;
  background: var(--lp-green-light);
  color: var(--lp-gold);
  text-align: center;
  position: relative;
  z-index: 2;
  overflow: visible;
}
.lp_main_wrap .lp_feature__deco {
  position: absolute;
  width: 15.486vw;
  left: -2.847vw;
  top: -26.181vw;
  pointer-events: none;
  z-index: 4;
}
.lp_main_wrap .lp_feature__deco img {
  width: 100%;
  display: block;
}
.lp_main_wrap .lp_feature__inner {
  width: 94%;
  max-width: 74.306vw;
  margin: 0 auto;
  position: relative;
  z-index: 3;
}
.lp_main_wrap .lp_feature__title {
  margin-bottom: 4.236vw;
}
.lp_main_wrap .lp_feature__list {
  display: flex;
  justify-content: center;
  gap: 0.776vw;
  width: 100%;
  margin: 0 auto;
}
.lp_main_wrap .lp_feature__list li {
  width: calc((100% - 2.328vw) / 4);
}
.lp_main_wrap .lp_feature__img {
  width: 100%;
  aspect-ratio: 772 / 531;
  background: #c4c4c4;
  overflow: hidden;
}
.lp_main_wrap .lp_feature__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.lp_main_wrap .lp_feature__text {
  margin-top: 1.25vw;
  font-size: clamp(12px, 0.928vw, 13.372px);
  line-height: 1.67;
  letter-spacing: 0.017em;
  color: var(--lp-white);
  text-align: left;
}
@media (max-width: 979px) {
  .lp_main_wrap .lp_feature__list {
    flex-wrap: wrap;
    gap: 2.667vw 1.667vw;
  }
  .lp_main_wrap .lp_feature__list li {
    width: calc((100% - 1.667vw) / 2);
  }
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_feature {
    width: var(--lp-content);
    padding: 16.5vw 0;
  }
  .lp_main_wrap .lp_feature__deco {
    width: 30vw;
    left: -2.5vw;
    top: -30.5vw;
  }
  .lp_main_wrap .lp_feature__inner {
    width: 92%;
    max-width: none;
  }
  .lp_main_wrap .lp_feature__title {
    margin-bottom: 10vw;
  }
  .lp_main_wrap .lp_feature__list {
    gap: 5.333vw 3.2vw;
  }
  .lp_main_wrap .lp_feature__list li {
    width: calc((100% - 3.2vw) / 2);
  }
  .lp_main_wrap .lp_feature__text {
    margin-top: 2.667vw;
    padding: 0 1.333vw;
    font-size: clamp(12px, 3.2vw, 12px);
    line-height: 1.6;
  }
}

/* ========== BTN ========== */

.lp_main_wrap .lp_btn {
  width: var(--lp-content);
  margin: 0 auto;
  padding: 6.5vw 0 9.236vw;
  background: var(--lp-green);
  color: var(--lp-gold);
  text-align: center;
  position: relative;
  z-index: 2;
}
.lp_main_wrap .lp_btn__inner {
  width: 94%;
  max-width: 72.222vw;
  margin: 0 auto;
  position: relative;
  z-index: 3;
}
.lp_main_wrap .lp_note {
  margin: 3.5vw 0 0;
  font-size: clamp(12px, 0.833vw, 12px);
  line-height: 1.6;
  letter-spacing: 0.04em;
  color: var(--lp-cream);
  text-align: center;
}
.lp_main_wrap .lp_btn__title {
  width: 13.472vw;
  margin: 0 auto 2.5vw;
}
.lp_main_wrap .lp_btn__title img {
  width: 100%;
  display: block;
}
.lp_main_wrap .lp_btn__btn {
  margin-bottom: 3.75vw;
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_btn {
    width: var(--lp-content);
    padding: 16vw 0 20vw;
  }
  .lp_main_wrap .lp_btn__inner {
    width: 92%;
    max-width: none;
  }
  .lp_main_wrap .lp_btn__title {
    width: 34.5vw;
    margin-bottom: 3vw;
  }
  .lp_main_wrap .lp_btn__btn {
    margin-bottom: 8vw;
  }
  .lp_main_wrap .lp_note {
    margin-top: 8vw;
    font-size: 11px;
    line-height: 1.7;
  }
}

/* ========== SP seam / sticky nav width ========== */

@media (max-width: 767px) {
  .lp_main_wrap .lp_lead,
  .lp_main_wrap .lp_coupon,
  .lp_main_wrap .lp_nav,
  .lp_main_wrap .lp_item,
  .lp_main_wrap .lp_person,
  .lp_main_wrap .lp_brand,
  .lp_main_wrap .lp_price,
  .lp_main_wrap .lp_category,
  .lp_main_wrap .lp_gift,
  .lp_main_wrap .lp_feature,
  .lp_main_wrap .lp_btn {
    margin-bottom: -1px;
  }
  .lp_main_wrap .lp_nav__placeholder {
    margin-bottom: -1px;
  }
  .lp_main_wrap .lp_nav.is-stuck {
    margin-bottom: 0;
  }
}

/* ========== UTILITY ========== */

.lp_main_wrap .lp_viewpc_block {
  display: block;
}
.lp_main_wrap .lp_viewpc_inline {
  display: inline;
}
.lp_main_wrap .lp_viewpc_inline-block {
  display: inline-block;
}
.lp_main_wrap .lp_viewpc_none {
  display: none;
}
.lp_main_wrap .lp_viewsmp_block,
.lp_main_wrap .lp_viewsmp_inline,
.lp_main_wrap .lp_viewsmp_inline-block {
  display: none;
}
.lp_main_wrap .lp_viewxs_block,
.lp_main_wrap .lp_viewxs_inline,
.lp_main_wrap .lp_viewxs_inline-block {
  display: none;
}
@media (max-width: 767px) {
  .lp_main_wrap .lp_viewpc_block,
  .lp_main_wrap .lp_viewpc_inline,
  .lp_main_wrap .lp_viewpc_inline-block {
    display: none;
  }
  .lp_main_wrap .lp_viewsmp_block {
    display: block;
  }
  .lp_main_wrap .lp_viewsmp_inline {
    display: inline;
  }
  .lp_main_wrap .lp_viewsmp_inline-block {
    display: inline-block;
  }
  .lp_main_wrap .lp_viewsmp_none {
    display: none;
  }
}
@media (max-width: 425px) {
  .lp_main_wrap .lp_viewxs_block {
    display: block;
  }
  .lp_main_wrap .lp_viewxs_inline {
    display: inline;
  }
  .lp_main_wrap .lp_viewxs_inline-block {
    display: inline-block;
  }
  .lp_main_wrap .lp_viewxs_none {
    display: none;
  }
}
