@charset "utf-8";
/* クリスマス2025 */

:where(.lp-daichi) {
  --bg-green: #0f4800;
  --lead-color: #fffabf;
  --charm-cake-color: #faf9ca;
  --cal-select-color: #897007;
  --date-w8-color: #c10000;
  --date-w15-color: #679c00;
  --date-w22-color: #b08134;
  --cut-bg: #fdfbe5;
  --cut-border-color: #e2dead;
  --cut-time-title: #d5f5f5;
  --cut-size-title: #dfdbab;
  --push-red: #8a0000;
  --color-item-name-hover: #8f6607;
  --color-item-name: #004d2b;
  --color-push: #faf5c8;
  --cv-point: #d82316;
  --cv-btn-shadow: #00000024;
  --cv-btn-reserve-color: #000;
  --week-here-color: var(--date-w8-color);
  --otoku-bg: #f2f2d4;
  --otoku-sum-color: #c52832;
  --otoku-num-color: #ffff00;
  --otoku-box-bg: #b92c2c;
  --circled-color: #b82626;
  --reccom-list-bg: #fcf5e2;
  --head-fuchi-color: #8e0606;
  --otoku-sum-border: var(--min4max5) solid #c71f2e;
  --period-boder: 2px;
  --white-thin-border: var(--period-boder) solid #fff;
  --blinking-anime: blinking .85s ease-in-out 0s infinite alternate;

  /* https://min-max-calculator.9elements.com/ */
  /* -------------- 767-96px幅 -------------- */
  --min190max210: clamp(11.875rem, 6.907rem + 10.36vw, 13.125rem);

  /* -------------- 479-960px幅 -------------- */
  --minM30maxM15: clamp(-1.875rem, -2.809rem + 3.12vw, -0.938rem);
  --minM55max20: clamp(-3.438rem, -8.106rem + 15.59vw, 1.25rem);
  --minM25maxM5: clamp(-1.563rem, -2.807rem + 4.16vw, -0.313rem);
  --minM20max55: clamp(-1.25rem, -5.918rem + 15.59vw, 3.438rem);
  --minM5max0: clamp(-0.313rem, -0.624rem + 1.04vw, 0rem);
  --min0max1: clamp(0rem, -0.062rem + 0.21vw, 0.063rem);
  --min0max5: clamp(0rem, -0.311rem + 1.04vw, 0.313rem);
  --min0max10: clamp(0rem, -0.622rem + 2.08vw, 0.625rem);
  --min0max20: clamp(0rem, -1.245rem + 4.16vw, 1.25rem);
  --min0max30: clamp(0rem, -1.867rem + 6.24vw, 1.875rem);
  --min2max3: clamp(0.125rem, 0.063rem + 0.21vw, 0.188rem);
  --min2max5: clamp(0.125rem, -0.062rem + 0.62vw, 0.313rem);
  --min2max4: clamp(0.125rem, 0.001rem + 0.42vw, 0.25rem);
  --min3max5: clamp(0.188rem, 0.063rem + 0.42vw, 0.313rem);
  --min3max8: clamp(0.188rem, -0.124rem + 1.04vw, 0.5rem);
  --min4max5: clamp(0.25rem, 0.188rem + 0.21vw, 0.313rem);
  --min4max6: clamp(0.25rem, 0.126rem + 0.42vw, 0.375rem);
  --min5max10: clamp(0.313rem, 0.001rem + 1.04vw, 0.625rem);
  --min5max15: clamp(0.313rem, -0.31rem + 2.08vw, 0.938rem);
  --min6max10: clamp(0.375rem, 0.126rem + 0.83vw, 0.625rem);
  --min6max15: clamp(0.375rem, -0.185rem + 1.87vw, 0.938rem);
  --min8max15: clamp(0.5rem, 0.064rem + 1.46vw, 0.938rem);
  --min8max25: clamp(0.5rem, -0.558rem + 3.53vw, 1.563rem);
  --min9max13: clamp(0.563rem, 0.314rem + 0.83vw, 0.813rem);
  --min10max12: clamp(0.625rem, 0.501rem + 0.42vw, 0.75rem);
  --min10max14: clamp(0.625rem, 0.376rem + 0.83vw, 0.875rem);
  --min10max15: clamp(0.625rem, 0.314rem + 1.04vw, 0.938rem);
  --min10max20: clamp(0.625rem, 0.003rem + 2.08vw, 1.25rem);
  --min10max30: clamp(0.625rem, -0.62rem + 4.16vw, 1.875rem);
  --min10max40: clamp(0.625rem, -1.242rem + 6.24vw, 2.5rem);
  --min13max14: clamp(0.813rem, 0.75rem + 0.21vw, 0.875rem);
  --min13max15: clamp(0.813rem, 0.688rem + 0.42vw, 0.938rem);
  --min13max16: clamp(0.813rem, 0.626rem + 0.62vw, 1rem);
  --min13max17: clamp(0.813rem, 0.564rem + 0.83vw, 1.063rem);
  --min13max19: clamp(0.813rem, 0.439rem + 1.25vw, 1.188rem);
  --min13max22: clamp(0.813rem, 0.252rem + 1.87vw, 1.375rem);
  --min14max26: clamp(0.875rem, 0.128rem + 2.49vw, 1.625rem);
  --min15max18: clamp(0.938rem, 0.751rem + 0.62vw, 1.125rem);
  --min15max20: clamp(0.938rem, 0.626rem + 1.04vw, 1.25rem);
  --min15max30: clamp(0.938rem, 0.004rem + 3.12vw, 1.875rem);
  --min15max38: clamp(0.938rem, -0.494rem + 4.78vw, 2.375rem);
  --min15max50: clamp(0.938rem, -1.241rem + 7.28vw, 3.125rem);
  --min16max18: clamp(1rem, 0.876rem + 0.42vw, 1.125rem);
  --min16max20: clamp(1rem, 0.751rem + 0.83vw, 1.25rem);
  --min16max23: clamp(1rem, 0.564rem + 1.46vw, 1.438rem);
  --min16max25: clamp(1rem, 0.44rem + 1.87vw, 1.563rem); 
  --min17max21: clamp(1.063rem, 0.814rem + 0.83vw, 1.313rem);
  --min17max24: clamp(1.063rem, 0.627rem + 1.46vw, 1.5rem);
  --min17max25: clamp(1.063rem, 0.565rem + 1.66vw, 1.563rem);
  --min18max20: clamp(1.125rem, 1.001rem + 0.42vw, 1.25rem);
  --min18max21: clamp(1.125rem, 0.938rem + 0.62vw, 1.313rem);
  --min18max22: clamp(1.125rem, 0.876rem + 0.83vw, 1.375rem);
  --min18max23: clamp(1.125rem, 0.814rem + 1.04vw, 1.438rem);
  --min18max24: clamp(1.125rem, 0.752rem + 1.25vw, 1.5rem);
  --min18max25: clamp(1.125rem, 0.689rem + 1.46vw, 1.563rem);
  --min18max28: clamp(1.125rem, 0.503rem + 2.08vw, 1.75rem);
  --min18max30: clamp(1.125rem, 0.378rem + 2.49vw, 1.875rem);
  --min18max35: clamp(1.125rem, 0.067rem + 3.53vw, 2.188rem);
  --min19max22: clamp(1.188rem, 1.001rem + 0.62vw, 1.375rem);
  --min19max24: clamp(1.188rem, 0.876rem + 1.04vw, 1.5rem);
  --min19max30: clamp(1.188rem, 0.503rem + 2.29vw, 1.875rem);
  --min20max24: clamp(1.25rem, 1.001rem + 0.83vw, 1.5rem);
  --min20max25: clamp(1.25rem, 0.939rem + 1.04vw, 1.563rem);
  --min20max28: clamp(1.25rem, 0.752rem + 1.66vw, 1.75rem);
  --min20max30: clamp(1.25rem, 0.628rem + 2.08vw, 1.875rem);
  --min20max40: clamp(1.25rem, 0.005rem + 4.16vw, 2.5rem);
  --min20max50: clamp(1.25rem, -0.617rem + 6.24vw, 3.125rem);
  --min21max26: clamp(1.313rem, 1.001rem + 1.04vw, 1.625rem);
  --min22max24: clamp(1.375rem, 1.251rem + 0.42vw, 1.5rem);
  --min22max25: clamp(1.375rem, 1.188rem + 0.62vw, 1.563rem);
  --min22max40: clamp(1.375rem, 0.255rem + 3.74vw, 2.5rem);
  --min22max55: clamp(1.375rem, -0.679rem + 6.86vw, 3.438rem);
  --min23max28: clamp(1.438rem, 1.126rem + 1.04vw, 1.75rem);
  --min25max30: clamp(1.563rem, 1.251rem + 1.04vw, 1.875rem);
  --min25max35: clamp(1.563rem, 0.94rem + 2.08vw, 2.188rem);
  --min25max40: clamp(1.563rem, 0.629rem + 3.12vw, 2.5rem);
  --min25max50: clamp(1.563rem, 0.006rem + 5.2vw, 3.125rem);
  --min26max30: clamp(1.625rem, 1.376rem + 0.83vw, 1.875rem);
  --min26max37: clamp(1.625rem, 0.94rem + 2.29vw, 2.313rem);
  --min28max39: clamp(1.75rem, 1.065rem + 2.29vw, 2.438rem);
  --min29max42: clamp(1.813rem, 1.003rem + 2.7vw, 2.625rem);
  --min30max40: clamp(1.875rem, 1.253rem + 2.08vw, 2.5rem);
  --min30max50: clamp(1.875rem, 0.63rem + 4.16vw, 3.125rem);
  --min30max52: clamp(1.875rem, 0.506rem + 4.57vw, 3.25rem);
  --min40max51: clamp(2.5rem, 1.815rem + 2.29vw, 3.188rem);
  --min40max56: clamp(2.5rem, 1.504rem + 3.33vw, 3.5rem);
  --min40max60: clamp(2.5rem, 1.255rem + 4.16vw, 3.75rem);
  --min45max60: clamp(2.813rem, 1.879rem + 3.12vw, 3.75rem);
  --min45max70: clamp(2.813rem, 1.256rem + 5.2vw, 4.375rem);
  --min45max74: clamp(2.813rem, 1.008rem + 6.03vw, 4.625rem);
  --min45max80: clamp(2.813rem, 0.634rem + 7.28vw, 5rem);
  --min47max56: clamp(2.938rem, 2.377rem + 1.87vw, 3.5rem);
  --min50max70: clamp(3.125rem, 1.88rem + 4.16vw, 4.375rem);
  --min55max70: clamp(3.438rem, 2.504rem + 3.12vw, 4.375rem);
  --min55max90: clamp(3.438rem, 1.259rem + 7.28vw, 5.625rem);
  --min55max95: clamp(3.438rem, 0.948rem + 8.32vw, 5.938rem);
  --min55max125: clamp(3.438rem, -0.919rem + 14.55vw, 7.813rem);
  --min70max140: clamp(4.375rem, 0.018rem + 14.55vw, 8.75rem);
  --min80max95: clamp(5rem, 4.066rem + 3.12vw, 5.938rem);
  --min80max110: clamp(5rem, 3.133rem + 6.24vw, 6.875rem);
  --min85max110: clamp(5.313rem, 3.756rem + 5.2vw, 6.875rem);
  --min90max108: clamp(5.625rem, 4.505rem + 3.74vw, 6.75rem);
  --min100max205: clamp(6.25rem, -0.285rem + 21.83vw, 12.813rem);
  --min110max180: clamp(6.875rem, 2.518rem + 14.55vw, 11.25rem);
  --min120max180: clamp(7.5rem, 3.766rem + 12.47vw, 11.25rem);
  --min125max200: clamp(7.813rem, 3.144rem + 15.59vw, 12.5rem);
  --min155max180: clamp(9.688rem, 8.131rem + 5.2vw, 11.25rem);
  --min195max210: clamp(12.188rem, 11.254rem + 3.12vw, 13.125rem);
  --min200max270: clamp(12.5rem, 8.143rem + 14.55vw, 16.875rem);
  --min210max250: clamp(13.125rem, 10.635rem + 8.32vw, 15.625rem);
  --min320max580: clamp(20rem, 3.818rem + 54.05vw, 36.25rem);
  --min360max840: clamp(22.5rem, -7.375rem + 99.79vw, 52.5rem);
  --min400max900: clamp(25rem, -6.12rem + 103.95vw, 56.25rem);

  overflow: hidden;
}

.content-header > .topicpath + .content-title {
  display: none;
}

#site-header {
  z-index: 3;
}
.header--ui__fix-area {
  width: 100%;
  display: none!important;
}
.content-header + .header--ui__fix-area {
  margin-top: 15px;
  display: block!important;
}
.header--ui__fix-area img {
  height: 45px;
}
.header--ui__fix-area[class*="scrolling"] {
  position: sticky!important;
}
.header--ui__fix-area.-xmas:not(:has(.is-current)) {
  display: grid!important;
  grid-template-columns: 1fr;
}
.header--ui__fix-area .is-current {
  margin: 0;
  padding: 0;
}
.header--ui__fix-area .is-current img {
  opacity: .5;
}
.header--ui__fix-area:is(.scrolling-up, .scrolling-down) {
  top: 73px;
}
.header--ui__fix-area:is(.scrolling-up, .scrolling-down) .is-current {
  padding: 0;
}
.header--ui__feature.-xmas {
  width: 100%;
}
.header--ui__feature.-xmas .swiper-slide:not(.is-current):hover {
  opacity: .7;
}
.header--ui__featurelist {
  padding-block: var(--min7max10);
  justify-content: center;
}

.lp-daichi a {
  display: block;
  text-decoration: none;
}

.lp-daichi [class]:is(.-bgTexRed,.-bgTexGreen) {
  position: relative;
}
.lp-daichi [class]:is(.-bgTexRed,.-bgTexGreen)::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  mix-blend-mode: overlay;
}
.lp-daichi [class].-bgTexRed::before {
  background-image: url(/external/category/image/2025/xmas/bg_texture_red.png);
}
.lp-daichi [class].-bgTexGreen::before {
  background-image: url(/external/category/image/2025/xmas/bg_texture_green.png);
}
.lp-daichi [class].-bgTexGray {
  background-image: url(/external/category/image/2025/xmas/bg_texture_gray.jpg);
}
.lp-daichi [class]:is(.-bgArgyleRed,.-bgArgyleGreen) {
  position: relative;
  z-index: 0;
}
.lp-daichi [class]:is(.-bgArgyleRed,.-bgArgyleGreen)::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  background-size: var(--min200max270);
}
.lp-daichi [class].-bgArgyleRed::after {
  background-image: url(/external/category/image/2025/xmas/bg_argyle_red.png);
}
.lp-daichi [class].-bgArgyleGreen::after {
  background-image: url(/external/category/image/2025/xmas/bg_argyle_green.png);
}
.lp-daichi [class].-bgGreen {
  background-color: var(--bg-green);
}
.lp-daichi [class*="bold"] {
  font-weight: bold;
}

.main-area.-bgTexRed.-bgArgyleRed {
  z-index: 1;
}
.main-area.-bgTexRed.-bgArgyleRed::before,
.main-area.-bgTexRed.-bgArgyleRed::after {
  height: calc(100% - var(--min55max95));
}

.contents-area {
  margin-top: calc(-1*var(--min80max95));
}
.date-area > .inner {
  padding-inline: var(--min15max50);
  box-sizing: border-box;
}
.period-sec {
  font-family: var(--font-minchou);
  color: #fff;
}
.period-box {
  width: min(720px, 100%);
  margin-inline : auto;
  border-left: var(--white-thin-border);
  border-right: var(--white-thin-border);
  border-bottom: var(--white-thin-border);
  position: relative;
}
.period-box > .title {
  font-size: var(--min18max22);
  position: absolute;
  left: 0;
  right: 0;
  margin-inline: auto;
  top: 0;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  column-gap: 10px;
}
.period-box > .title::before,
.period-box > .title::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: var(--period-boder);
  background: #fff;
}
.period-box > .title > .str {
  transform: translateY(-15px);
}
.period-box > .title > .str > .small {
  font-size: 70%;
}
.period-box > .title > .str > .circled {
  display: inline-block;
  font-size: var(--min17max21);
  line-height: 1;
  color: var(--circled-color);
  background: #fff;
  border-radius: 30px;
  padding: 5px 8px;
  margin-right: 6px;
}
.period-box > .title > .str.-bestDeal {
  transform: translateY(calc(-1 * var(--min40max51)));
}
.period-box > .title > .str[class]::before {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
}
.period-box > .title > .str.-bestDeal::before {
  background-image: url(/external/category/image/2024/xmas/prop/best_deal_str.png);
  width: var(--min155max180);
  margin-inline: auto;
  aspect-ratio: 214 / 31;
  margin-bottom: 6px;
  animation: var(--blinking-anime);
}
.period-box > .textwrap {
  display: grid;
  place-content: center;
  height: 100%;
  padding: 5% 5% 3%;
  box-sizing: border-box;
  line-height: 1.35;
}
.period-box > .textwrap > .date {
  font-size: var(--min21max26);
}
.period-sec .note {
  text-align: center;
  color: #fff;
  font-family: var(--font-gothic);
  margin-top: var(--min20max40);
}
.period-sec .lead {
  text-align: center;
  font-size: var(--min19max24);
  color: var(--lead-color);
  margin-top: 5%;
  line-height: 1.65;
  letter-spacing: 0.095rem;
}

.lead-sec {
  position: relative;
}
.main-area .image + .lead-sec {
  margin-top: var(--min45max60);
}

.lead-sec > .head {
  text-align: center;
  font-family: var(--font-minchou);
  font-size: var(--min26max37);
  font-weight: 100;
  color: #fff;
  line-height: 1.25;
  letter-spacing: .13rem;
  position: relative;
}
.lead-sec > .head::before {
  content: "";
  display: block;
  width: var(--min50max70);
  aspect-ratio: 69/50;
  margin-inline: auto;
  background: url(/external/category/image/2025/xmas/icon_bell.png) no-repeat center / contain;
  position: absolute;
  left: 0;
  right: 0;
  margin-inline: auto;
  top: calc(-1*var(--min20max25));
}
.lead-sec .head .str {
  display: inline-block;
  justify-content: center;
  gap: calc(-1*var(--minM30maxM15));
  background: no-repeat;
  background-image: url(/external/category/image/2025/xmas/icon_twinkle_L.png),url(/external/category/image/2025/xmas/icon_twinkle_R.png);
  background-position: 0,100%;
  background-size: var(--min45max80);
  padding-inline: var(--min55max90);
  padding-block: var(--min25max35) var(--min0max30);
}
.lead-sec .head .str::before,
.lead-sec .head .str::after {
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
  top: calc(-1 * var(--min0max20));
  height: var(--min80max110);
  aspect-ratio: 8/11;
  margin-top: calc(-1*var(--min20max30));
}
.lead-sec .head .str::before {
  background-image: url(/external/category/image/2025/xmas/icon_twinkle_L.png);
}
.lead-sec .head .str::after {
  background-image: url(/external/category/image/2025/xmas/icon_twinkle_R.png);
}
.lp-daichi .specwrap .note {
  font-size: 92%;
}

.block-grid.-charm {
  margin-inline: auto;
  justify-content: center;
  width: min(var(--min400max900), 100%);
  gap: var(--min20max50);
  margin-top: 40px;
  padding-inline: var(--min15max30);
  box-sizing: border-box;
}
.charm-grid {
  place-content: center;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 0;
  text-align: center;
  position: relative;
  line-height: 1.4;
  font-size: var(--min18max25);
  font-family: var(--font-minchou);
  padding-inline: 3%;
  box-sizing: border-box;
}
.charm-textwrap {
  display: grid;
  align-items: center;
}
.charm-textwrap .icon {
  display: block;
  background: no-repeat center / contain;
  margin-inline: auto;
  width: var(--min45max70);
  aspect-ratio: 1/1;
}
.charm-textwrap .icon.-no1 {
  background-image: url(/external/category/image/2025/xmas/icon_star_01.png);
}
.charm-textwrap .icon.-no2 {
  background-image: url(/external/category/image/2025/xmas/icon_star_02.png);
}
.charm-textwrap .icon.-no3 {
  background-image: url(/external/category/image/2025/xmas/icon_star_03.png);
}
.charm-textwrap .icon:is(.-no2,.-no3) + .str {
  transform: translateY(10px);
}
.charm-grid::after {
  content: "";
  display: block;
  background: url(/external/category/image/2025/xmas/charm_circle.png) no-repeat center / contain;
  width: min(var(--min210max250),100%);
  aspect-ratio: 118/119;
  z-index: -1;
  position: absolute;
  transform: translateY(-10%);
}

.date-area {
  padding-block: var(--min155max180) var(--min30max40);
  z-index: 0;
}
.date-area .inner::before,
.date-area .inner::after {
  content: "";
  display: block;
  position: absolute;
  bottom: calc(-1*var(--min22max55));
  left: 0;
  width: 100%;
  height: var(--min22max55);
  -webkit-mask: no-repeat left top / 100%;
  mask: no-repeat left top / 100%;
}
.date-area .inner::before {
  -webkit-mask-image: url(/external/category/image/2025/xmas/wave.svg);
  mask-image: url(/external/category/image/2025/xmas/wave.svg);
  z-index: -1;
  mix-blend-mode: overlay;
  background-image: url(/external/category/image/2025/xmas/bg_texture_green.png);
}
.date-area .inner::after {
  -webkit-mask-image: url(/external/category/image/2025/xmas/wave.svg);
  mask-image: url(/external/category/image/2025/xmas/wave.svg);
  z-index: -2;
  background-image: url(/external/category/image/2025/xmas/bg_argyle_green.png);
}

.cal-sec > .image {
  width: min(720px, 100%);
  margin-inline: auto;
  margin-top: var(--min20max50);
}
.cal-sec > .text.-select {
  width: min(720px, 100%);
  margin-inline: auto;
  font-family: var(--font-minchou);
  font-size: var(--min20max28);
  font-size: var(--min18max28);
  line-height: 1.2;
  font-weight: bold;
  letter-spacing: .18rem;
  text-align: center;
  color: var(--cal-select-color);
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  column-gap: var(--min15max20);
}
.cal-sec > .text.-select::before,
.cal-sec > .text.-select::after {
  content: "";
  display: block;
  width: var(--min30max50);
  height: 1px;
  background-color: var(--cal-select-color);
}
.cal-sec > .text.-select::before {
  margin-left: auto;
}
.week-btn {
  width: min(720px, 100%);
  margin-inline: auto;
  display: grid;
  column-gap: var(--min10max20);
}
.cal-sec > :is(.image, .text.-select) + .week-btn {
  margin-top: var(--min20max30);
}
.week-btn.-col2 {
  grid-template-columns: repeat(2, 1fr);
}
.week-btn.-col3 {
  grid-template-columns: repeat(3, 1fr);
}
.week-btn > .link {
  border-radius: 12px;
  font-size: var(--min16max23);
  font-family: var(--font-minchou);
  box-shadow: 5px 5px 10px #0000001e;
  text-align: center;
  line-height: 1.3;
  padding-inline: var(--min5max15);
  padding-block: var(--min5max15);
  border: solid var(--min2max4);
  background-color: #fff;
  font-weight: bold;
}
.week-btn.-col2 > .link {
  display: grid;
  grid-template-columns: 1fr var(--min20max28);
  align-items: center;
}
.week-btn > .link.-w8 {
  color: var(--date-w8-color);
  border-color: var(--date-w8-color);
}
.week-btn > .link.-w15 {
  color: var(--date-w15-color);
  border-color: var(--date-w15-color);
}
.week-btn > .link.-w22 {
  color: var(--date-w22-color);
  border-color: var(--date-w22-color);
}
.week-btn > .link::after {
  content: "";
  display: block;
  width: var(--min20max28);
  aspect-ratio: 1/1;
  -webkit-mask: url(/external/category/image/2025/xmas/icon_arrow.svg) no-repeat center / contain;
  mask: url(/external/category/image/2025/xmas/icon_arrow.svg) no-repeat center / contain;
  margin-inline: auto;
  margin-top: 3.5%;
  transform: rotate(-90deg);
}
.week-btn > .link.-w8::after {
  background-color: var(--date-w8-color);
}
.week-btn > .link.-w15::after {
  background-color: var(--date-w15-color);
}
.week-btn > .link.-w22::after {
  background-color: var(--date-w22-color);
}
.week-btn > .link.is-here::after {
  transform: rotate(0deg);
}
.week-btn > .link > .textwrap > .date {
  font-size: 140%;
}

.anchor-area {
  padding-block: var(--min55max125) var(--min50max70);
  padding-inline: var(--min10max30);
}
.block-grid.-anc {
  width: min(850px, 100%);
  gap: var(--min10max30);
  margin-inline: auto;
  grid-template-columns: repeat(3,1fr);
}
.anc-grid {
  position: relative;
  z-index: 0;
  transition: opacity 0.7s;
  filter: drop-shadow(4px 4px 8px rgba(124, 124, 124, 1));
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 1;
}
.anc-grid::before,
.anc-grid::after {
  content: "";
  display: block;
  position: absolute;
  top: calc(-1*var(--min20max30));
  width: 100%;
  height: var(--min70max140);
  left: 0;
  right: 0;
  margin-inline: auto;
  border-radius: 50% / 100% 100% 0 0;
}
.anc-grid::before {
  z-index: -1;
  mix-blend-mode: overlay;
  background-image: url(/external/category/image/2025/xmas/bg_texture_red.png);
}
.anc-grid::after {
  z-index: -2;
  background-image: url(/external/category/image/2025/xmas/bg_argyle_red.png);
  background-position: 23% 50%;
}
.anc-grid:hover,
.anc-grid:hover {
  opacity: .7;
}
.anc-grid:hover .link,
.anc-grid:hover .link {
  opacity: 1;
}
.anc-grid > .icon {
  position: absolute;
  z-index: 1;
  width: var(--min55max90);
  aspect-ratio: 17/13;
  left: 0;
  right: 0;
  margin-inline: auto;
  top: calc(-1*var(--min17max25));
  background: no-repeat center / contain;
}
.anc-grid > .icon.-cake {
  background-image: url(/external/category/image/2025/xmas/icon_cake.png);
}
.anc-grid > .icon.-stollen {
  background-image: url(/external/category/image/2025/xmas/icon_stollen.png);
}
.anc-grid > .icon.-sweets {
  background-image: url(/external/category/image/2025/xmas/icon_sweets.png);
}
.anc-grid > .icon.-chx {
  background-image: url(/external/category/image/2025/xmas/icon_chx.png);
}
.anc-grid > .icon.-party {
  background-image: url(/external/category/image/2025/xmas/icon_party.png);
}
.anc-grid > .icon.-wine {
  background-image: url(/external/category/image/2025/xmas/icon_wine.png);
}
.anc-grid > .link {
  color: #fff;
  height: var(--min125max200);
  font-family: var(--font-minchou);
  font-size: var(--min18max35);
  font-weight: bold;
  line-height: 1.2;
  overflow: hidden;
  border-radius: 8px;
  position: relative;
  z-index: 0;
  display: grid;
  text-align: center;
  padding: 6px;
  box-sizing: border-box;
}
.anc-grid > .link:has(.str br:not(.sp-only)) {
  font-size: var(--min14max26);
}
.anc-grid > .link::before,
.anc-grid > .link::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}
.anc-grid > .link::before {
  z-index: -1;
  mix-blend-mode: overlay;
  background-image: url(/external/category/image/2025/xmas/bg_texture_red.png);
}
.anc-grid > .link::after {
  z-index: -2;
  background-image: url(/external/category/image/2025/xmas/bg_argyle_red.png);
  background-size: var(--min200max270);
}
.anc-grid > .link > .bg {
  background-repeat: no-repeat;
  background-image: url(/external/category/image/2025/xmas/icon_ivy_top.png),url(/external/category/image/2025/xmas/icon_ivy_bottom.png);
  background-position-y: 0, 100%;
  background-size: contain;
  display: grid;

}
.anc-grid > .link > .bg::after {
  content: "";
  display: block;
  width: var(--min18max30);
  aspect-ratio: 1/1;
  background: url(/external/category/image/2025/xmas/icon_anc_arrow.svg) no-repeat center / contain;
  position: absolute;
  left: 0;
  right: 0;
  margin-inline: auto;
  bottom: var(--min6max10);
}
.anc-grid > .link > .bg > .str {
  display: grid;
  height: fit-content;
}
.anc-grid > .link > .bg > .str:has(br) {
  margin-top: calc(-1*var(--minM5max0));
  line-height: 1.08;
}
.anc-grid > .link > .bg > .eng {
  transform: translateY(var(--min22max40));
  position: relative;
  display: grid;
  align-items: center;
  height: fit-content;
  margin-top: var(--min3max8);
}
.anc-grid > .link > .bg > .eng::before {
  content: "";
  display: block;
  height: var(--min13max22);
  background: no-repeat center / contain;
}
.anc-grid > .link > .bg > .eng.-cake::before {
  background-image: url(/external/category/image/2025/xmas/text_cake.svg);
}
.anc-grid > .link > .bg > .eng.-stollen::before {
  background-image: url(/external/category/image/2025/xmas/text_stollen.svg);
}
.anc-grid > .link > .bg > .eng.-sweets::before {
  background-image: url(/external/category/image/2025/xmas/text_sweets.svg);
}
.anc-grid > .link > .bg > .eng.-chx::before {
  background-image: url(/external/category/image/2025/xmas/text_chx.svg);
}
.anc-grid > .link > .bg > .eng.-party::before {
  background-image: url(/external/category/image/2025/xmas/text_party.svg);
}
.anc-grid > .link > .bg > .eng.-wine::before {
  background-image: url(/external/category/image/2025/xmas/text_wine.svg);
}

.deli-week {
  font-size: var(--min18max30);
  text-align: center;
  color: var(--week-here-color);
  font-weight: bold;
  display: flex;
  place-content: center;
  align-items: center;
  column-gap: 10px;
  letter-spacing: 0.045rem;
}
.block-grid.-anc + .deli-week {
  margin-top: var(--min25max50);
}
.deli-week > span > .blinking {
  animation: var(--blinking-anime);
}
@keyframes blinking {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.deli-week::before,
.deli-week::after {
  content: "";
  display: inline-block;
  mask: url(/external/category/image/2025/xmas/icon_deli_arrow.svg) no-repeat;
  -webkit-mask: url(/external/category/image/2025/xmas/icon_deli_arrow.svg) no-repeat;
  mask-size: 100%;
  -webkit-mask-size: contain;
  width: var(--min20max28);
  aspect-ratio: 1 / 1;
  background-color: var(--week-here-color);
}

.cv-area {}
.cv-area > .head {
  font-size: var(--min30max52);
  color: #fff;
  font-family: var(--font-minchou);
  line-height: 1.05;
  position: relative;
  letter-spacing: .15rem;
  z-index: 0;
  /* text-shadow: calc(-1*var(--head-fuchi-thick)) calc(-1*var(--head-fuchi-thick)) 0 var(--head-fuchi-color), var(--head-fuchi-thick) calc(-1*var(--head-fuchi-thick)) 0 var(--head-fuchi-color), calc(-1*var(--head-fuchi-thick)) var(--head-fuchi-thick) 0 var(--head-fuchi-color), var(--head-fuchi-thick) var(--head-fuchi-thick) 0 var(--head-fuchi-color); */
  -webkit-text-stroke: 10px var(--head-fuchi-color);
  text-stroke: 10px var(--head-fuchi-color);
  paint-order: stroke;
}
.cv-area > .head::before,
.cv-area > .head::after {
  content: "";
  display: block;
  position: absolute;
  top: calc(-1*var(--min30max40));
  width: var(--min320max580);
  aspect-ratio: 29 / 7;
  left: 0;
  right: 0;
  margin-inline: auto;
  border-radius: 50% / 100% 100% 0 0;
}
.cv-area > .head::before {
  z-index: -1;
  mix-blend-mode: overlay;
  background-image: url(/external/category/image/2025/xmas/bg_texture_red.png);
}
.cv-area > .head::after {
  z-index: -2;
  background-image: url(/external/category/image/2025/xmas/bg_argyle_red.png);
  background-position: 54.8% 37%;
  background-size: var(--min200max270);
}
.cv-headDeco {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  height: 0;
  position: relative;
  z-index: 1;
  gap: var(--min10max20);
  transform: translateY(calc(-1*var(--min10max14)));
}
.cv-headDeco::before,
.cv-headDeco::after {
  content: "";
  display: block;
  background: url(/external/category/image/2025/xmas/icon_head_deco.svg) no-repeat center / contain;
  width: var(--min45max74);
  aspect-ratio: 37/10;
}
.cv-headDeco::before {
  margin-left: auto;
}
.cv-headDeco::after {
  transform: scale(-1,1);
}
.cv-headDeco .str::before {
  content: "";
  display: block;
  background: no-repeat center / contain;
  height: var(--min16max25);
}
.cv-headDeco .str.-cake::before {
  background-image: url(/external/category/image/2025/xmas/text_cake.svg);
  aspect-ratio: 59/29;
}
.cv-headDeco .str.-stollen::before {
  background-image: url(/external/category/image/2025/xmas/text_stollen.svg);
  aspect-ratio: 109/29;
}
.cv-headDeco .str.-sweets::before {
  background-image: url(/external/category/image/2025/xmas/text_sweets.svg);
  aspect-ratio: 100/29;
}
.cv-headDeco .str.-chx::before {
  background-image: url(/external/category/image/2025/xmas/text_chx.svg);
  aspect-ratio: 103/29;
}
.cv-headDeco .str.-party::before {
  background-image: url(/external/category/image/2025/xmas/text_party.svg);
  aspect-ratio: 152/29;
}
.cv-headDeco .str.-wine::before {
  background-image: url(/external/category/image/2025/xmas/text_wine.svg);
  aspect-ratio: 64/29;
}
.cv-area > .head > .bgUnd {
  display: block;
  position: relative;
  z-index: 0;
}
.cv-area > .head > .bgUnd::before,
.cv-area > .head > .bgUnd::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.cv-area > .head > .bgUnd::before {
  z-index: -1;
  mix-blend-mode: overlay;
  background-image: url(/external/category/image/2025/xmas/bg_texture_red.png);
}
.cv-area > .head > .bgUnd::after {
  z-index: -2;
  background-image: url(/external/category/image/2025/xmas/bg_argyle_red.png);
  background-size: var(--min200max270);
}
.cv-area > .head > .bgUnd > .bgUpp {
  display: block;
  width: 100%;
  background: no-repeat center / var(--min100max205);
  background-image: url(/external/category/image/2025/xmas/bg_cv_head_L.png),url(/external/category/image/2025/xmas/bg_cv_head_R.png);
  background-position-x: var(--minM20max55),calc(100% - var(--minM20max55));
  background-position-y: 5px;
  padding-block: var(--min15max38);
  padding-inline: 30px;
  box-sizing: border-box;
}
.cv-area > .head#wine > .bgUnd > .bgUpp {
  background-size: var(--min120max180);
  background-position-x: var(--minM55max20), calc(100% - var(--minM55max20));
  background-position-y: calc(-1*var(--minM25maxM5));
}
.cv-area > .head + .body {
  padding-top: var(--min15max20);
}
.cv-area > .body {
  padding-inline: var(--min15max20);
  padding-bottom: var(--min55max70);
}
.cv-area > .body:last-of-type {
  padding-bottom: var(--min15max20);
}
.cv-area > .body > .catch {
  font-family: var(--font-minchou);
  font-size: var(--min19max30);
  line-height: 1.3;
  display: grid;
  align-items: center;
  grid-template-columns: 1fr auto 1fr;
  column-gap: var(--min10max30);
  padding-inline: var(--min10max15);
  padding-bottom: var(--min10max20);
}
.cv-area > .body > .block-grid > .grid > .catch {
  font-family: var(--font-minchou);
  font-size: var(--min20max25);
}
.cv-area > .body > .catch::before,
.cv-area > .body > .catch::after {
  content: "";
  display: block;
  background: url(/external/category/image/2025/xmas/icon_tree.png) no-repeat center / contain;
  width: var(--min25max40);
  aspect-ratio: 65/93;
}
.cv-area > .body > .catch::before {
  margin-left: auto;
}
.block-otoku {
  background: var(--otoku-bg);
}
.block-otoku.-new::before {
  content: "＼ NEW セット ／";
  color: #fff;
  background-color: var(--otoku-box-bg);
  display: block;
  text-align: center;
  padding-block: 5px 2px;
  font-size: var(--min16max20);
}
.block-otoku > .inner {
  display: grid;
  grid-template-columns: var(--min90max108) 1fr;
  width: min(calc(800px + 4%), 100%);
  margin-inline: auto;
  gap: var(--min15max20);
  align-items: center;
  padding-inline: var(--min10max20);
  padding-block: var(--min15max20);
  box-sizing: border-box;
}
.block-grid.-item .block-grid.-item .block-otoku > .inner {
  padding: 4%;
}
.block-calc {
  display: grid;
  grid-template-columns: auto var(--min25max30) 1fr;
  align-items: center;
  gap: 5px var(--min18max23);
}
.block-calc.-grid {
  grid-template-columns: 1fr;
}
.plus-icon {
  width: var(--min25max30);
  aspect-ratio: 1/1;
  margin-inline: auto;
  background: url(/external/category/image/2025/xmas/icon_plus.svg) no-repeat center / contain;
}
.sum-num {
  border-radius: 50%;
  background: #fff;
  border: var(--otoku-sum-border);
  height: var(--min90max108);
  width: fit-content;
  aspect-ratio: 1 / 1;
  box-sizing: border-box;
}
.sum-num > .numwrap {
  color: var(--otoku-sum-color);
  font-weight: bold;
  position: relative;
  letter-spacing: -1.5px;
  line-height: 1.05;
  height: 100%;
  display: grid;
  place-content: center;
  text-align: center;
}
.sum-num > .numwrap::before {
  content: "今なら";
  font-size: var(--min18max22);
}
.sum-num > .numwrap::after {
  content: "お得";
  font-size: var(--min18max22);
}
.sum-num > .numwrap > .num {
  display: flex;
  justify-content: center;
  align-items: baseline;
  font-size: var(--min23max28);
  position: static;
  z-index: 1;
  letter-spacing: -1.5px;
}
.sum-num > .numwrap > .num::before {
  content: "";
  display: block;
  width: 23px;
  aspect-ratio: 22 / 37;
  height: fit-content;
  position: absolute;
  z-index: -1;
  background: url(/external/category/image/2025/xmas/text_jisshitsu.svg) no-repeat;
  top: 0;
  bottom: 0;
  margin-block: auto;
  left: -15px;
}
.sum-num > .numwrap > .num::after {
  content: "円";
  font-size: 65%;
}
:is(.list-num, .gift-num) {
  background: var(--otoku-box-bg);
  border-radius: var(--min9max13);
  padding: var(--min5max10);
  padding-block: 6px 2px;
  text-align: center;
}
.list-num > .price {
  font-size: var(--min13max19);
  color: #fff;
}
.list-num.-grid > .price {
  font-size: var(--min13max16);
}
:is(.list-num, .gift-num) > .num {
  font-size: var(--min28max39);
  font-size: 25px;
  color: var(--otoku-num-color);
  font-weight: bold;
  display: inline-block;
  line-height: 1;
}
.list-num::after {
  content: "円引き";
  display: inline-block;
  color: var(--otoku-num-color);
  font-weight: bold;
  line-height: 1;
}
.list-num > .price > .small {
  font-size: 80%;
}
.gift-num::before {
  content: "＼早いとお得ポイント／";
  display: block;
  color: #fff;
  font-size: var(--min13max19);
}
.gift-num.-grid::before {
  font-size: var(--min13max17);
}
.gift-num::after {
  content: "ポイント";
  display: inline-block;
  line-height: 1;
  color: var(--otoku-num-color);
  font-weight: bold;
}

.block-grid[class*="item"] + .block-grid.-col1 {
  padding-top: 25px;
}
.block-otoku + .block-grid.-item {
  padding-top: 10px;
  background-color: #fff;
}
.block-grid[class*="item"] > .image, 
.block-grid[class*="item"] > .grid > .image {
  background: #fff;
}
.block-grid[class*="item"]:has(.cv-btn) .specwrap {
  padding-bottom: var(--min10max20);
}
.block-grid[class*="item"] + .block-grid[class*="item"].-col1 .specwrap {
  padding-bottom: var(--min10max20);
  padding-inline: var(--min10max20);
}
.block-grid[class*="item"].-col1 .specwrap {
  padding-top: var(--min20max25);
  padding-inline: var(--min15max20);
}
.block-grid[class*="item"].-col1 .specwrap:not(:has(:is(.cv-btn, .block-grid) + .text)) {
  padding-bottom: var(--min20max25);
}
.block-grid.-col2 * + .specwrap {
  padding-inline: var(--min10max15);
}
.block-grid.-col2 * + .specwrap:has(.set-textwrap,.block-otoku,.push-wrap) {
  padding-block: var(--min15max20) 0;
}
.block-grid.-item.-col1 .block-grid.-item2 .specwrap {
  padding: 0;
}
.block-grid.-item.-col1 .block-grid.-item .specwrap {
  padding-inline: 3%;
  padding-top: 0;
}
.block-grid[class*="item"] .specwrap > .block-grid.-item2 + .text.-border {
  margin-inline: auto;
  margin-top: var(--min20max25);
}
.block-grid.-item.-col1 > .specwrap > .text.-border:only-child {
  margin-top: 0;
}
.block-grid[class*="item"]:has(.cv-btn) .specwrap .text.-push + .cv-btn {
  margin-top: 15px;
}
.block-grid.-col1 * + .specwrap > .detail {
  width: min(var(--min360max840), 100%);
  margin-inline: auto;
}
.block-grid.-item.-col1 .specwrap .dialog-opener:has(.balloon-unit) {
  width: min(700px, 100%);
  margin-inline: auto;
}

.push-wrap + .cut-box {
  margin-top: var(--min20max30);
}
.push-wrap + .dialog-opener:has(.balloon-unit) {
  margin-top: var(--min20max30);
}
.cut-box {
  background: var(--cut-bg);
  outline: var(--min2max3) solid var(--cut-border-color);
  outline-offset: calc(-1*var(--min10max12));
  background-repeat: no-repeat;
  padding-inline: var(--min20max25);
  padding-block: var(--min30max40);
  box-sizing: border-box;
  position: relative;
}
.cut-box.-M {
  padding-inline: var(--min20max25);
}
.cut-box::before,
.cut-box::after {
  content: "";
  display: block;
  width: var(--min40max56);
  aspect-ratio: 1/1;
  background: url(/external/category/image/2025/xmas/icon_holly.png) no-repeat center / contain;
  position: absolute;
  top: 0;
  z-index: 1;
}
.cut-box::before {
  left: 0;
}
.cut-box::after {
  right: 0;
  transform: scale(-1, 1);
}
.block-grid.-cut {
  align-items: center;
  width: min(600px, 100%);
  margin-inline: auto;
  gap: 15px;
}
.block-grid.-col2 .block-grid.-cut {
  margin-top: 20px;
  gap: 5px;
}
.block-grid.-cut > .image {
  width: min(320px, 90%);
  margin-inline: auto;
}
.block-grid.-cut.-M > .image {
  width: min(270px, 100%);
}
.cut-box .title {
  display: flex;
  justify-content: center;
  width: min(265px, calc(100% - var(--min20max25)*2));
  margin-inline: auto;
  font-weight: 100;
  padding-inline: 30px;
  padding-block: 5px 2px;
  box-sizing: border-box;
  position: relative;
  z-index: 0;
  letter-spacing: 0.11rem;
  line-height: 1;
}
.cut-box .title + .title {
  margin-top: 10px;
}
.block-grid.-col2 .cut-box .title {
  padding-inline: 5px;
  width: min(275px, calc(100% - var(--min20max25)*2));
}
.cut-box .title.-time {
  background-color: var(--cut-time-title);
}
.cut-box .title.-size {
  background-color: var(--cut-size-title);
}
.cut-box .title::before,
.cut-box .title::after {
  content: "";
  display: block;
  -webkit-clip-path: polygon(25% 0%, 100% 1%, 100% 100%, 25% 100%, 0% 50%);
  clip-path: polygon(25% 0%, 100% 1%, 100% 100%, 25% 100%, 0% 50%);
  position: absolute;
  z-index: -1;
  width: 55px;
  height: 100%;
  border-radius: 3px;
  top: 0px;
}
.cut-box .title::before {
  left: -15px;
}
.cut-box .title::after {
  right: -15px;
  transform: scale(-1, 1);
}
.cut-box .title.-time::before,
.cut-box .title.-time::after {
  background-color: var(--cut-time-title);
}
.cut-box .title.-size::before,
.cut-box .title.-size::after {
  background-color: var(--cut-size-title);
}
.cut-box .title > .val {
  font-size: var(--min18max20);
  display: flex;
  font-weight: bold;
}
.cut-box .title .small {
  font-size: 13px;
  transform: translateY(2px);
}
.cut-box .title [class].-pipe {
  display: flex;
}
.cut-box .title [class].-pipe::after {
  content: "";
  display: block;
  width: 1px;
  height: 18px;
  background-color: #000;
  margin-inline: 5px;
  transform: translateY(-3px);
}
.cut-box .title + .num-list.-cut {
  margin-top: var(--min15max20);
  margin-left: var(--min25max30);
}
.num-list {
  font-size: var(--min15max18);
  font-weight: bold;
  padding-left: 4px;
}
.num-list.-cut {
  font-weight: 100;
}
.num-list.-set {
  color: var(--push-red);
  margin-top: 10px;
}
.num-list > li {
  text-indent: calc(-1*var(--min22max24));
  padding-left: var(--min22max24);
  position: relative;
}
.num-list > li::before {
  content: counter(number);
}
.num-list > li::after {
  content: "";
  display: block;
  width: var(--min18max20);
  aspect-ratio: 1/1;
  border-radius: 50%;
  border: 1px solid;
  position: absolute;
  top: var(--min0max1);
  left: -5px;
}
.num-list > li > :is(.unit,.plane) {
  color: initial;
}
.num-list > li > .unit {
  margin-left: var(--min15max20);
}
.num-list.-cut > li {
  line-height: 1.2;
  font-size: var(--min14max16);
}
.num-list.-cut > li::after {
  top: -2px;
  left: -5px;
  width: var(--min16max18);
}
.num-list.-cut > li > .str {
  margin-left: var(--min10max15);
}
.block-grid.-push {
  column-gap: var(--min20max50);
}
.block-grid.-push + .block-grid.-push {
  margin-top: 30px;
}
.cut-box + .block-grid.-push {
  margin-top: 20px;
}
.block-grid.-push > .image > img + img {
  margin-top: 15px;
}
.block-grid.-push > .push-wrap {
  margin-top: var(--min0max20);
}
.push-wrap .title {
  display: flex;
  font-size: var(--min19max22);
  color: var(--push-red);
  justify-content: flex-start;
  text-align: left;
  padding: 0;
}
.block-otoku + .set-textwrap {
  margin-top: var(--min20max30);
}
.set-textwrap .title {
  text-align: left;
  display: block;
  padding-inline: 0;
}

.push-wrap .text + .image {
  margin-top: 15px;
}
.block-grid[class*="item"] .specwrap .title + .text {
  margin-top: var(--min5max10);
}

.block-grid.-push:where(:not(.-col2)) .textwrap + .image {
  margin-top: 20px;
}
.dialog-opener:has(.balloon-unit) + :is(.block-grid, .cv-btn) {
  margin-top: 20px;
}
.block-grid[class*="item"] > .specwrap > :is(.detail + .cv-btn, .text + .block-grid[class*="item"], .detail + .block-grid[class*="item"]) {
  margin-top: var(--min25max30);
}

.block-grid > .specwrap > .balloon-unit + .cv-btn {
  margin-top: var(--min25max30);
}
.block-grid.-col1 > .block-grid.-reccom {
  grid-template-columns: var(--min110max180) 1fr;
}
.block-grid.-col2 .block-grid.-reccom {
  grid-template-columns: var(--min85max110) 1fr;
  width: calc(100% + 15px * 2);
  transform: translateX(calc(-1*15px));
}
.block-grid.-reccom > .image {
  padding: var(--min8max25);
  display: grid;
  place-content: center;
}
.block-grid.-col2 .block-grid.-reccom > .image {
  padding: var(--min8max15);
}
.reccom-list {
  margin-block: var(--min3max5);
  padding-block: 6.5%;
  padding-inline: var(--min15max20);
  background-color: var(--reccom-list-bg);
}
.reccom-list > li {
  font-size: var(--min18max22);
  font-weight: bold;
  display: grid;
  grid-template-columns: var(--min22max25) 1fr;
  gap: var(--min10max20);
  line-height: 1.3;
}
.reccom-list > li + li {
  margin-top: 15px;
}
.block-grid.-col2 .reccom-list > li {
  gap: 10px;
}
.reccom-list > li::before {
  content: "";
  display: inline-block;
  width: var(--min22max25);
  aspect-ratio: 1/1;
  background: url(/external/category/image/2025/xmas/icon_check.png) no-repeat;
  background-size: contain;
}
.balloon-unit.-plain {
  box-shadow: 3px 3px 4px rgba(124, 124, 124, .35);
}

/* カート・ボタン周りstart */
.block-grid.-reccom + .cv-btn {
  margin-top: 20px;
}
.cv-btn + .cv-btn {
  margin-top: 40px;
}
.block-otoku + .cv-btn {
  margin-top: var(--min10max15);
}
.cv-btn > .js-item-sales > .item-summary {
  border: none;
  padding: 0;
}
.cv-btn > .js-item-sales > .item-summary > .image {
  display: none;
}
.cv-btn > .js-item-sales > .item-summary > .info {
  display: grid;
}
.cv-btn > .js-item-sales > .item-summary > .info :is(.attention, .price > .priceOut > .taxout, .cart > .add-to-cart > .add-to-cart fieldset select) {
  display: none;
}
/* 商品名start */
.block-grid[class*="item"] .specwrap > .cv-btn > .js-item-sales > .item-summary > .info > .brand-name {
  order: 3;
}
.block-grid[class*="item"] .specwrap > .cv-btn > .js-item-sales > .item-summary > .info:has(.point) > .brand-name {
  margin-top: var(--min5max10);
}
.cv-btn > .js-item-sales > .item-summary > .info > .brand-name {
  display: grid;
  column-gap: 4px;
  transition: all .7s;
  color: var(--color-item-name);
  font-size: var(--min18max24);
  line-height: 1.2;
  font-family: var(--font-minchou);
}
.cv-btn > .js-item-sales > .item-summary > .info > .brand-name::before {
  content: "";
  display: inline-block;
  aspect-ratio: 1 / 1;
  mask: url(/external/common/image/icon/arrow_itemname.svg) no-repeat;
  -webkit-mask: url(/external/common/image/icon/arrow_itemname.svg) no-repeat;
  mask-size: contain;
  -webkit-mask-size: contain;
  background-color: var(--color-item-name);
  transition: all .7s;
  margin-top: var(--min2max5);
}
.cv-btn > .js-item-sales > .item-summary > .info > .brand-name > a:hover {
  color: var(--color-item-name-hover);
}

.cv-btn > .js-item-sales > .item-summary > .info > .brand-name > a:hover::before {
  background-color: var(--color-item-name-hover);
}
/* 商品名end */
/* ポイントstart */
.block-grid[class*="item"] .specwrap > .cv-btn:not([class*="off"]) .item-summary > .info > .point {
  width: fit-content;
  background: var(--cv-point);
  margin-left: auto;
}
.cv-btn[class*="off"] .item-summary > .info > .point {
  position: relative;
  z-index: 0;
}
.cv-btn .js-item-sales.-cart6 .item-summary > .info > .point {
  color: #fff;
  font-size: var(--min17max24);
  line-height: 1;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 1fr auto auto;
  align-items: flex-end;
  justify-content: flex-end;
  order: 1;
  margin-left: auto;
  width: min(400px,100%);
}
.cv-btn[class*="off"] .js-item-sales .item-summary > .info > .point::before {
  content: "";
  display: inline-block;
  background-repeat: no-repeat;
  width: var(--min190max210);
  height: 100%;
  background-size: contain;
  margin-block: auto;
}
.cv-btn[class*="off"] .js-item-sales .item-summary > .info > .point::after {
  content: "";
  display: block;
  background: var(--cv-point);
  width: calc(100% - var(--min190max210));
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
}
.cv-btn.-off10 > .js-item-sales > .item-summary > .info > .point::before {
  background-image: url(/external/category/image/2025/xmas/prop/balloon_10per_pt.svg);
}
.cv-btn.-off7 > .js-item-sales > .item-summary > .info > .point::before {
  background-image: url(/external/category/image/2025/xmas/prop/7off/balloon_7per_pt.svg);
}
.cv-btn.-off5 > .js-item-sales > .item-summary > .info > .point::before {
  background-image: url(/external/category/image/2025/xmas/prop/5off/balloon_5per_pt.svg);
}
.cv-btn.-off3 > .js-item-sales > .item-summary > .info > .point::before {
  background-image: url(/external/category/image/2025/xmas/prop/3off/balloon_3per_pt.svg);
}
.cv-btn .js-item-sales.-cart6 .item-summary > .info > .point > .value {
  display: inline-block;
  text-align: right;
  padding-block: 5px 1px;
  white-space: nowrap;
}
.cv-btn .js-item-sales.-cart6 .item-summary > .info > .point > .unit {
  display: inline-block;
  font-size: 54.1665%;
  font-weight: 100;
  padding-inline: var(--min3max5) 10px;
  padding-bottom: var(--min4max5);
  letter-spacing: -1px;
  white-space: nowrap;
}
/* ポイントend */
/* 価格start */
.cv-btn > .js-item-sales > .item-summary > .info > .price-routine {
  display: grid;
  grid-template-areas: 
    "loginLink teikiPriceIn"
    "miteikiPriceIn miteikiPriceIn";
  grid-template-columns: auto 1fr;
  column-gap: 5px;
}
.cv-btn > .js-item-sales > .item-summary > .info > .price-routine > .priceMember {
  grid-area: loginLink;
  font-size: var(--min29max42);
  font-weight: bold;
}
.cv-btn > .js-item-sales > .item-summary > .info > .price-routine > .priceMember > a {
  font-size: initial;
  font-weight: 100;
}
.cv-btn > .js-item-sales > .item-summary > .info > .price-routine > .priceMember > .valuein {
  margin-left: -5px;
  display: inline-block;
}
.cv-btn > .js-item-sales > .item-summary > .info > .price-routine > .priceMember :is(.unit, .taxout) {
  font-size: initial;
  font-size: 55%;
  margin-left: calc(-1 * var(--min6max15));
}
.cv-btn > .js-item-sales > .item-summary > .info > .price-routine > .priceMember + .priceIn {
  grid-area: teikiPriceIn;
}
.cv-btn > .js-item-sales > .item-summary > .info > .price-routine > .priceIn + .priceIn {
  grid-area: miteikiPriceIn;
}
.cv-btn > .js-item-sales > .item-summary > .info > .price > .priceOut {
  font-size: 25px;
  font-weight: bold;
  line-height: 1;
}
.cv-btn > .js-item-sales > .item-summary > .info > .price > .priceOut > .unit,
.cv-price > .priceOut > .unit {
  font-size: 65%;
}
/* 価格end */
/* 温度帯start */
.cv-btn > .js-item-sales > .item-summary > .info > .attribute-count {
  margin-top: 5px;
}
/* 温度帯end */
/* カート・ボタンstart */
.cv-btn > .js-item-sales > .item-summary > .info > .price ~ .cart {
  margin-top: 8px;
  width: min(340px, 100%);
  margin-right: auto;
}
.js-item-sales .item-summary .info .cart:has(.routine-only) {
  margin-inline: auto;
}
.js-item-sales .item-summary .info .cart p.routine-only > a::after {
  background: #fff;
}
.js-item-sales .item-summary .info .cart p.routine-only > a {
  font-size: var(--min18max21);
  line-height: 1;
  background-size: 10px;
}
.cv-btn > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart .button,
.js-item-sales .item-summary .info .cart p.routine-only > a {
  border-radius: 10px;
  box-shadow: 4px var(--min4max5) var(--cv-btn-shadow);
  padding: 12px 17px 12px 12px;
}
.cv-btn > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart .button:hover,
.js-item-sales .item-summary .info .cart p.routine-only > a:hover {
  box-shadow: 3px 3px var(--cv-btn-shadow);
  transform: translate(1px, 2px);
}
.cv-btn > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart .button::after {
  content: "";  
  display: inline-block;
  width: var(--min13max15);
  aspect-ratio: 3/4;
  mask: url(/external/category/image/2025/xmas/icon_arrow_R.svg) no-repeat;
  -webkit-mask: url(/external/category/image/2025/xmas/icon_arrow_R.svg) no-repeat;
  mask-size: contain;
  -webkit-mask-size: contain;
  position: absolute;
  right: 4%;
}
.cv-btn > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart:not(:has(:disabled)) .button::after {
  background: var(--cv-btn-reserve-color);
}
.cv-btn > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart:not(:has(:disabled)) .button-cart::after {
  background-color: #fff;
}
.cv-btn > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart:not(:has(:disabled)) .button span {
  background-image: none;
  padding: 0;
  font-size: var(--min18max21);
  line-height: 1;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  flex-wrap: wrap;
}
.cv-btn > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart .button span::before {
  background-image: none;
  position: unset;
  width: auto;
  height: auto;
  transform: none;
}
.cv-btn[class*="dec"] > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart .button span {
  gap: 6px;
}
.cv-btn[class*="dec"] > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart:not(:has(:disabled)) .button span::before {
  font-size: var(--min13max14);
  background-color: #fff;
  border-radius: 30px;
  height: var(--min18max22);
  display: grid;
  align-items: center;
  padding-inline: 8px;
  box-sizing: border-box;
  line-height: var(--min20max25);
}
.cv-btn.-dec8 > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart:not(:has(:disabled)) .button span::before {
  content: "12/8週お届け"!important;
}
.cv-btn.-dec15 > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart:not(:has(:disabled)) .button span::before {
  content: "12/15週お届け"!important;
}
.cv-btn.-dec22 > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart:not(:has(:disabled)) .button span::before {
  content: "12/22週お届け"!important;
}
.cv-btn > .js-item-sales > .item-summary > .info > .special-note {
  order: 4;
  margin-left: 24px;
  margin-top: 8px;
  line-height: 1.1;
}
[class*="btn"] > .link:not(:has(img)) {
  display: grid;
  text-align: center;
  place-content: center;
  font-weight: bold;
  text-decoration: none;
}

.ft-area {
  padding-inline: var(--min10max40);
  padding-block: var(--min20max30);
}
.ft-area .link + .link {
  margin-top: 20px;
}

@media (max-width:767px) {
  :where(.lp-daichi) {
    /* w:767-479px */
    --point-width: clamp(20.125rem, 14.096rem + 20.14vw, 23.75rem);
  }

  .header--ui__fix-area.scrolling-down {
    top: 0;
  }

  .cv-btn .js-item-sales.-cart6 .item-summary > .info > .point {
    width: min(var(--point-width),100%);
  }
  .cv-btn[class*="off"] .js-item-sales.-cart6 .item-summary > .info > .point::before {
    width: 50%;
    position: absolute;
  }
  .cv-btn[class*="off"] .js-item-sales.-cart6 .item-summary > .info > .point::after {
    width: 50%;
  }

  .block-grid.-period {
    grid-template-columns: 1fr;
    width: min(450px, 100%);
    margin-inline: auto;
  }

  .block-grid.-col2.-cut {
    grid-template-columns: 1fr;
    width: min(500px, 100%);
    margin-inline: auto;
  }

  .block-otoku > .inner {
    width: min(460px, 100%);
  }
  .block-calc {
    grid-template-columns: 1fr;
  }
  .block-calc > .icon {
    margin-inline: auto;
  }

}

@media (max-width:479px) {
  .header--ui__fix-area.-xmas[class*="scrolling"] {
    width: calc(100% + 30px);
    transform: translateX(-15px);
  }

  .lp-daichi {
    --period-boder: 1px;
    margin-top: 0;
  }

  .lead-sec .head .str {
    background-position-y: center;
  }
  .period-sec .note {
    text-align: left;
  }
  .period-sec .lead {
    padding-inline: 6%;
    text-align: left;
    margin-top: 8%;
  }

  .block-grid.-charm.-col3 {
    grid-template-columns: repeat(2,1fr);
  }
  .charm-grid:has(.-no3) {
    transform: translate(calc(50% + 25px / 2), 10px);
  }

  .cv-area > .body > .lead-sec + .catch {
    margin-top: 8%;
  }
  .cv-area > .body > .catch {
    padding: 2.5% 1.5%;
  }
  .cv-area > .body > .catch::before {
    margin-left: 0;
  }
  .cv-area > .body > .catch::after {
    margin-left: auto;
  }
  .block-grid.-item .block-grid.-item .block-otoku > .inner {
    padding: 0;
  }
  .block-grid.-item.-col1 .block-grid.-item .specwrap {
    padding: 0;
  }
  .block-grid.-item.-col1 .block-grid.-item2 .grid + .grid {
    margin-top: 25px;
  }
  .block-grid[class*="item"]:has(.cv-btn) .specwrap:has(.-reccom) {
    padding-top: 0;
  }
  .block-grid.-item.-col1 .block-grid.-item .specwrap > .block-otoku {
    padding-left: 4.5%;
  }
  .block-grid.-item.-col1 .block-grid.-item .specwrap > .cv-btn {
    padding-inline: 3%;
  }

  .block-grid[class*="item"] > .image > .dialog-opener {
    pointer-events: none;
  }
  .block-grid.-flex.-push > [class] {
    width: 100%;
  }
  .block-grid[class*="item"] > .specwrap:not(:has(.-col1.-cut)) .block-grid.-push .title {
    margin-top: 0;
  }
  .push-wrap + .image {
    margin-top: 10px;
  }
  .block-grid[class*="item"] > .block-grid.-reccom {
    grid-template-columns: 1fr;
  }

  .cut-textwrap:has(.-cut.-M) + .image {
    margin-top: 15px;
    width: min(240px,100%);
  }
  .block-grid.-cut > .image {
    width: min(240px,100%)
  }
  .num-list.-M {
    margin-left: 25px;
  }

  .sum-num {
    transform: translateX(4px);
  }

  /* カート周りstart */
  .cv-btn .js-item-sales.-cart6 .item-summary > .info > .point {
    width: min(322px,100%);
    margin-left: auto;
  }
  /* カート周りend */

}