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

:where(.lp-daichi) {
  --bg-green: #0f4800;
  --bg-red: #6d0001;
  --head-color: #e9c593;
  --lead-color: #fffabf;
  --period-color: #350d0d;
  --charm-cake-color: #faf9ca;
  --cal-select-color: #897007;
  --date-w14-color: #ac0707;
  --date-w21-color: #166a00;
  --cut-bg: #ede0bc;
  --cut-border-color: #aa001d;
  --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: #ad7406;
  --otoku-bg: #f2f2d4;
  --otoku-sum-color: #c52832;
  --otoku-num-color: #ffff00;
  --otoku-box-bg: #b92c2c;
  --otoku-price: #c80009;
  --circled-color: #b82626;
  --reccom-list-bg: #fcf5e2;
  --head-fuchi-color: #8e0606;
  --otoku-sum-border: var(--min4max5) solid #c71f2e;
  --period-boder: 1px;
  --brown-thin-border: var(--period-boder) solid #350d0d;
  --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);
  --minM15maxM10: clamp(-0.938rem, -1.249rem + 1.04vw, -0.625rem);
  --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);
  --min3max6: clamp(0.188rem, 0.63vw, 0.375rem);
  --min3max8: clamp(0.188rem, -0.124rem + 1.04vw, 0.5rem);
  --min3max15: clamp(0.188rem, -0.559rem + 2.49vw, 0.938rem);
  --min4max5: clamp(0.25rem, 0.188rem + 0.21vw, 0.313rem);
  --min4max6: clamp(0.25rem, 0.126rem + 0.42vw, 0.375rem);
  --min4max7: clamp(0.188rem, -0.061rem + 0.83vw, 0.438rem);
  --min4max8: clamp(0.25rem, 0.001rem + 0.83vw, 0.5rem);
  --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);
  --min6max12: clamp(0.375rem, 1.25vw, 0.75rem);
  --min6max15: clamp(0.375rem, -0.185rem + 1.87vw, 0.938rem);
  --min8max15: clamp(0.5rem, 0.064rem + 1.46vw, 0.938rem);
  --min8max16: clamp(0.5rem, 1.67vw, 1rem);
  --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);
  --min10max50: clamp(0.625rem, -1.875rem + 8.33vw, 3.125rem);
  --min11max22: clamp(0.688rem, 0.003rem + 2.29vw, 1.375rem);
  --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);
  --min13max20: 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);
  --min20max23: clamp(1.25rem, 1.063rem + 0.62vw, 1.438rem);
  --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);
  --min28max55: clamp(1.75rem, 0.07rem + 5.61vw, 3.438rem);
  --min23max28: clamp(1.438rem, 1.126rem + 1.04vw, 1.75rem);
  --min23max29: clamp(1.438rem, 1.064rem + 1.25vw, 1.813rem);
  --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);
  --min28max35: clamp(1.75rem, 1.314rem + 1.46vw, 2.188rem);
  --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);
  --min35max70: clamp(2.188rem, 0.009rem + 7.28vw, 4.375rem);
  --min40max50: clamp(2.5rem, 1.878rem + 2.08vw, 3.125rem);
  --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);
  --min40max80: clamp(2.5rem, 0.01rem + 8.32vw, 5rem);
  --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);
  --min56max80: clamp(3.5rem, 2.006rem + 4.99vw, 5rem);
  --min67max90: clamp(4.188rem, 2.756rem + 4.78vw, 5.625rem);
  --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);
  --min107max215: clamp(6.688rem, -0.034rem + 22.45vw, 13.438rem);
  --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);
  --min235max250: clamp(14.688rem, 13.754rem + 3.12vw, 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;
}

#site-header {
  z-index: 3;
}

.structure-body:not(:has(.-toku,.-sale)) .content-header > .topicpath + .content-title {
  display: none;
}
.structure-body:not(:has(.-toku,.-sale)) .header--ui__fix-area {
  /* width: 100%; */
  display: none!important;
  grid-template-columns: 1fr;
}
.content-header + .header--ui__fix-area.-xmas {
  margin-top: 15px;
  display: block!important;
}
.header--ui__fix-area.-xmas img {
  height: 45px;
}
.header--ui__fix-area.-xmas[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.-xmas .is-current {
  margin: 0;
  padding: 0;
}
.header--ui__fix-area.-xmas .is-current img {
  opacity: .5;
}
.header--ui__fix-area.-xmas:is(.scrolling-up, .scrolling-down) {
  top: 73px;
}
.header--ui__fix-area.-xmas: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__feature.-xmas .header--ui__featurelist {
  padding-block: var(--min7max10);
  justify-content: center;
}

.lp-daichi.-food {
  background: url(/external/category/image/2026/xmas/bg_food.jpg) top center / 100% auto;
}
.lp-daichi.-cake {
  background: url(/external/category/image/2026/xmas/bg_cake.jpg) top center / 100% auto;
}

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

.lp-daichi [class]:is(.-bgTex)::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  width: 100%;
  height: 40%;
  z-index: -1;
}
.lp-daichi [class]:is(.-bgStrBeige) {
  position: relative;
  z-index: 0;
}
.lp-daichi [class]:is(.-bgStrBeige)::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  background-size: var(--min200max270);
  background: url(/external/category/image/2026/xmas/bg_stripe.jpg) center / 100% auto;
}
.lp-daichi [class].-bgGreen {
  background-color: var(--bg-green);
}
.lp-daichi [class].-bgRed {
  background-color: var(--bg-red);
}
.lp-daichi [class*="bold"] {
  font-weight: bold;
}

.main-area.-bgStrBeige {
  padding-top: 2%;
}
.main-area.-bgStrBeige.-food::before {
  background-image: url(/external/category/image/2026/xmas/bg_food.jpg);
}
.main-area.-bgStrBeige.-cake::before {
  background-image: url(/external/category/image/2026/xmas/bg_cake.jpg);
}
/* .main-area:has(.lead-sec).-bgStrBeige::before,
.main-area:has(.lead-sec).-bgStrBeige::after {
  height: calc(100% - var(--min55max95));
} */
.main-area.-bgStrBeige::before,
.main-area.-bgStrBeige::after {
  height: calc(100% - 200px);
}
.main-area + .contents-area {
  position: relative;
  z-index: 0;
}
.main-area + .contents-area:has(.date-area) {
  margin-top: -1px;
}
/* .main-area:has(.lead-sec) + .contents-area {
  margin-top: calc(-1*var(--min80max95));
} */
.main-area + .contents-area.-toku {
  margin-top: 50px;
}
.main-area + .contents-area.-sale {
  margin-top: 0;
}
.date-area > .inner {
  padding-inline: var(--min15max50);
  box-sizing: border-box;
}
.period-sec {
  font-family: var(--font-minchou);
  color: var(--period-color);
}
.block-grid.-period {
  gap: var(--min30max40) 6%;
}
.period-box {
  width: min(720px, 100%);
  margin-inline : auto;
  border-left: var(--brown-thin-border);
  border-right: var(--brown-thin-border);
  border-bottom: var(--brown-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: var(--period-color);
}
.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.8% 5% 2.8%;
  box-sizing: border-box;
  line-height: 1.35;
}
.period-box > .textwrap > .date {
  font-size: var(--min21max26);
}
.period-sec .note {
  text-align: center;
  color: var(--period-color);
  font-family: var(--font-gothic);
  margin-top: var(--min15max20);
}
.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(--min20max40);
}
.main-area .image + .lead-sec.-toku {
  margin-top: 40px;
}
.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.-toku > .head {
  font-size: 25px;
  line-height: 1.65;
}
.lead-sec:not(.-toku) > .head::before {
  content: "";
  display: block;
  width: var(--min50max70);
  aspect-ratio: 69/50;
  margin-inline: auto;
  background: url(/external/category/image/2026/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)); */
  padding-inline: var(--min55max90);
}
.lead-sec:not(.-toku) .head .str {
  padding-block: var(--min25max35) var(--min0max30);
  background: no-repeat;
  background-image: url(/external/category/image/2026/xmas/icon_twinkle_L.png),url(/external/category/image/2026/xmas/icon_twinkle_R.png);
  background-position: 0,100%;
  background-size: var(--min45max80);
}
/* .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/2026/xmas/icon_twinkle_L.png);
}
.lead-sec .head .str::after {
  background-image: url(/external/category/image/2026/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: 0 var(--min10max50);
  padding-inline: var(--min15max30);
  box-sizing: border-box;
}
.charm-grid {
  place-content: center;
  display: grid;
  grid-template-rows: subgrid;
  gap: 0;
}

.date-area {
  padding-block: var(--min30max50) var(--min30max40);
  z-index: 0;
}
.date-area::before {
  content: "";
  display: block;
  position: absolute;
  bottom: calc(-1*var(--min28max55));
  left: 0;
  width: 100%;
  height: calc(var(--min28max55) + 1px);
  -webkit-mask: no-repeat left top / 100%;
  mask: no-repeat left top / 100%;
  -webkit-mask-image: url(/external/category/image/2026/xmas/wave.svg);
  mask-image: url(/external/category/image/2026/xmas/wave.svg);
  z-index: -1;
  background: url(/external/category/image/2026/xmas/bg_stripe.jpg) center / 100% auto;
}

.period-sec + .cal-sec {
  margin-top: var(--min20max50);
}
.cal-sec {
  position: relative;
  width: min(833px, 100%);
  margin-inline: auto;
}
.cal-sec > .image {
  margin-inline: auto;
}
.image-single {
  display: block;
  margin-inline: auto;
  width: min(736px, 100%);
}
.cal-sec .image + .note {
  margin-top: var(--min20max30);
  color: #fff;
}
.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);
}
.week-btn.-left {
  position: absolute;
  right: 3.8%;
  bottom: 16%;
  width: 21.2%;
  gap: 7%;
}
/* .cal-sec > :is(.image, .text.-select, .note) + .week-btn {
  margin-top: var(--min20max30);
} */
.week-btn.-col2 {
  grid-template-columns: repeat(2, 1fr);
  width: min(550px, 100%);
}
.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.-left > .link {
  display: grid;
  justify-content: space-around;
  position: relative;
  padding: 6% 5% 5%;
  grid-template-columns: auto 12.5%;
  gap: 2%;
  align-items: center;
  border: none;
  border-radius: var(--min6max12);
  animation: btn_animation 3s infinite;
  box-shadow: 0 var(--min3max6) var(--min2max5) rgb(0, 0, 0, 0.3);
  font-size: var(--min8max16);
  line-height: 1.2;
  letter-spacing: .03rem;
}

@keyframes btn_animation {
  0% {
    box-shadow: 0 var(--min3max6) var(--min2max5) rgb(0, 0, 0, 0.3);
    top: 0;
  }
  10% {
    box-shadow: 0 0 5px rgb(0, 0, 0, 0.3);
    top: var(--min3max6);
  }
  20% {
    box-shadow: 0 var(--min3max6) var(--min2max5) rgb(0, 0, 0, 0.3);
    top: 0;
  }
  100% {
    box-shadow: 0 var(--min3max6) var(--min2max5) rgb(0, 0, 0, 0.3);
    top: 0;
  }
}



.week-btn.-col2 > .link {
  display: grid;
  grid-template-columns: 1fr var(--min20max28);
  align-items: center;
}
.week-btn > .link.-w14 {
  color: #fff;
  background: var(--date-w14-color);
}
.week-btn > .link.-w21 {
  color: #fff;
  background: var(--date-w21-color);
}
.week-btn > .link::after {
  content: "";
  display: block;
  width: 100%;
  aspect-ratio: 1/1;
  -webkit-mask: url(/external/category/image/2026/xmas/icon_arrow.svg) no-repeat center / contain;
  mask: url(/external/category/image/2026/xmas/icon_arrow.svg) no-repeat center / contain;
  margin-inline: auto;
  margin-top: 3.5%;
  transform: rotate(-90deg);
}
.week-btn > .link.-w14::after {
  background-color: #fff;
}
.week-btn > .link.-w21::after {
  background-color: #fff;
}
.week-btn > .link.is-here::after {
  transform: rotate(0deg);
}
.week-btn > .link > .textwrap > .date {
  font-size: 140%;
}

.date-area + .anchor-area {
  margin-top: var(--min55max95);
}
.anchor-area {
  padding-inline: var(--min10max30);
}
/* .contents-area:not(:has(.date-area)) .anchor-area {
  padding-top: 200px;
} */
.block-grid.-anc {
  width: min(850px, 100%);
  gap: var(--min10max30);
  margin: var(--min20max30) auto 0;
  grid-template-columns: repeat(3,1fr);
}
.anc-grid {
  position: relative;
  z-index: 0;
  transition: opacity 0.7s;
  filter: drop-shadow(4px 4px 8px rgba(0, 0, 0, 0.74));
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 1;
}
.anc-grid:hover,
.anc-grid:hover {
  opacity: .7;
}
.anc-grid:hover .link,
.anc-grid:hover .link {
  opacity: 1;
}
.anc-grid > .link {
  display: block;
  width: 100%;
  aspect-ratio: 254/271;
  background: no-repeat center / contain;
  font-size: 0;
}
.anc-grid.-cake > .link {
  background-image: url(/external/category/image/2026/xmas/cake_ca_anc.png);
}
.anc-grid.-stollen > .link {
  background-image: url(/external/category/image/2026/xmas/cake_st_anc.png);
}
.anc-grid.-sweets > .link {
  background-image: url(/external/category/image/2026/xmas/cake_sw_anc.png);
}
.anc-grid.-chx > .link {
  background-image: url(/external/category/image/2026/xmas/food_ch_anc.png);
}
.anc-grid.-party > .link {
  background-image: url(/external/category/image/2026/xmas/food_pa_anc.png);
}
.anc-grid.-wine > .link {
  background-image: url(/external/category/image/2026/xmas/food_wi_anc.png);
}


.deli-week {
  font-size: var(--min18max30);
  text-align: center;
  color: #fff;
  font-weight: bold;
  display: flex;
  place-content: center;
  align-items: center;
  column-gap: 4px;
  letter-spacing: 0.17rem;
  text-shadow: var(--week-here-color) 5px 0px 0px, var(--week-here-color) 4.90033px 0.993347px 0px, var(--week-here-color) 4.60531px 1.94709px 0px, var(--week-here-color) 4.12668px 2.82321px 0px, var(--week-here-color) 3.48353px 3.58678px 0px, var(--week-here-color) 2.70151px 4.20736px 0px, var(--week-here-color) 1.81179px 4.6602px 0px, var(--week-here-color) 0.849836px 4.92725px 0px, var(--week-here-color) -0.145998px 4.99787px 0px, var(--week-here-color) -1.13601px 4.86924px 0px, var(--week-here-color) -2.08073px 4.54649px 0px, var(--week-here-color) -2.94251px 4.04248px 0px, var(--week-here-color) -3.68697px 3.37732px 0px, var(--week-here-color) -4.28444px 2.57751px 0px, var(--week-here-color) -4.71111px 1.67494px 0px, var(--week-here-color) -4.94996px 0.7056px 0px, var(--week-here-color) -4.99147px -0.291871px 0px, var(--week-here-color) -4.83399px -1.27771px 0px, var(--week-here-color) -4.48379px -2.2126px 0px, var(--week-here-color) -3.95484px -3.05929px 0px, var(--week-here-color) -3.26822px -3.78401px 0px, var(--week-here-color) -2.4513px -4.35788px 0px, var(--week-here-color) -1.53666px -4.75801px 0px, var(--week-here-color) -0.560763px -4.96845px 0px, var(--week-here-color) 0.437495px -4.98082px 0px, var(--week-here-color) 1.41831px -4.79462px 0px, var(--week-here-color) 2.34258px -4.41727px 0px, var(--week-here-color) 3.17346px -3.86382px 0px, var(--week-here-color) 3.87783px -3.15633px 0px, var(--week-here-color) 4.4276px -2.32301px 0px, var(--week-here-color) 4.80085px -1.39708px 0px, var(--week-here-color) 4.98271px -0.415447px 0px;
}
.deli-week.-colorW {
  color: #fff;
}
.deli-week.-colorW::before,
.deli-week.-colorW::after {
  background-color: #fff;
}
.cal-sec + .deli-week.-colorW {
  margin-top: var(--min20max30);
}
.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;
  margin-top: -4px;
  background: url(/external/category/image/2026/xmas/icon_deli_arrow.svg) center / contain no-repeat;
  width: var(--min25max35);
  aspect-ratio: 1 / 1;
}

.cv-head {
  margin-top: var(--min30max40);
  z-index: 0;
  letter-spacing: .15rem;
  font-size: var(--min35max70);
  color: var(--head-color);
  font-family: var(--font-minchou);
  line-height: .8;
  text-align: center;
}
.cv-head:is(.-chicken, .-cake) {
  font-size: var(--min40max80);
}
.cv-head > .bgUnd > .small {
  font-size: 78.6%;
}
.cv-headDeco {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: var(--min10max20);
  align-items: center;
}
.cv-headDeco::before, 
.cv-headDeco::after {
  content: "";
  display: block;
  background: url(/external/category/image/2026/xmas/sub_title_deco.png) no-repeat center / contain;
  width: var(--min107max215);
  aspect-ratio: 215 / 83;
}
.cv-headDeco::before {
  margin-left: auto;
}
.cv-headDeco::after {
  transform: scale(-1, 1);
}
.cv-headDeco > .image {
  margin-top: -6%;
}

/* .anchor-area + .cv-area > .head,
.cv-area > .body + .head {
  margin-top: 0;
}
.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/2026/xmas/bg_texture_red.png);
}
.cv-area > .head::after {
  z-index: -2;
  background-image: url(/external/category/image/2026/xmas/bg_argyle_red.png);
  background-position: var(--min56max80) var(--min28max35);
  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/2026/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/2026/xmas/text_cake.svg);
  aspect-ratio: 59/29;
}
.cv-headDeco .str.-stollen::before {
  background-image: url(/external/category/image/2026/xmas/text_stollen.svg);
  aspect-ratio: 109/29;
}
.cv-headDeco .str.-sweets::before {
  background-image: url(/external/category/image/2026/xmas/text_sweets.svg);
  aspect-ratio: 100/29;
}
.cv-headDeco .str.-chx::before {
  background-image: url(/external/category/image/2026/xmas/text_chx.svg);
  aspect-ratio: 103/29;
}
.cv-headDeco .str.-set::before {
  background-image: url(/external/category/image/2026/xmas/text_set.svg);
  aspect-ratio: 120/29;
}
.cv-headDeco .str.-party::before {
  background-image: url(/external/category/image/2026/xmas/text_party.svg);
  aspect-ratio: 152/29;
}
.cv-headDeco .str.-wine::before {
  background-image: url(/external/category/image/2026/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/2026/xmas/bg_texture_red.png);
}
.cv-area > .head > .bgUnd::after {
  z-index: -2;
  background-image: url(/external/category/image/2026/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/2026/xmas/bg_cv_head_L.png),url(/external/category/image/2026/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 > .body {
  padding-inline: var(--min15max20);
  padding-bottom: var(--min55max70);
}
.cv-area > .body:last-of-type {
  padding-bottom: var(--min15max20);
}
.cv-area > .body:only-child {
  padding-top: var(--min15max20);
}
.contents-area.-toku .cv-area > .body {
  padding-top: 0;
}
.cv-head + .catch {
  margin-top: var(--min10max15);
}
.cv-area > .body > .catch {
  font-family: var(--font-minchou);
  font-size: var(--min19max30);
  line-height: 1.3;
  display: grid;
  align-items: center;
  column-gap: var(--min10max30);
  padding-inline: var(--min10max15);
  padding-bottom: var(--min6max10);
}
.cv-area > .body > .block-grid > .grid > .catch {
  font-family: var(--font-minchou);
  font-size: var(--min20max25);
}
.block-grid.-col2.-otoku {
  gap: var(--min15max20);
}

.block-grid[class*="item"] + .block-grid.-col1 {
  padding-top: 0;
}
.block-grid.-col2.-item2.-cartM2 {
  margin-top: 0;
  gap: 0;
}
.block-grid.-item2.-cartM2 > :is(.grid, .card),
.block-grid.-col2.-item2.-cartM2 .text.-push {
  margin-top: 0;
}
.block-otoku + .block-grid.-item {
  padding-top: 10px;
  background-color: #fff;
}
.block-grid[class*="item"] > .image, 
.block-grid[class*="item"] > .grid > .image {
  background: #fff;
}
.teiki-canceling .anc-grid .link {
  pointer-events: auto;
}
.teiki-canceling .anc-grid .link,
.teiki-canceling .image .dialog-opener {
  opacity: 1;
}
.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(--min10max20);
}
.block-grid.-col2 * + .specwrap {
  padding-inline: var(--min10max15);
}
.block-grid.-col2 * + .specwrap:has(.set-textwrap,.block-otoku,.push-wrap) {
  padding-block: 10px var(--min10max20);
}
.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;
}

.block-grid[class*="item"] + .block-grid.-col1 .specwrap > .cv-btn + .text.-push {
  margin-top: 6%;
}
.push-wrap + .cv-btn,
.recipe-wrap  + .cv-btn {
  margin-top: var(--min15max20);
}
.recipe-wrap,
.push-wrap > .text > .ingredients {
  display: inline-block;
  margin-top: var(--min10max15);
}
.push-wrap + .cut-box {
  margin-top: var(--min15max20);
}
.push-wrap + .dialog-opener:has(.balloon-unit) {
  margin-top: var(--min10max20);
}
.cut-box {
  position: relative;
  background: var(--cut-bg);
  /* outline: var(--min2max3) solid var(--cut-border-color);
  outline-offset: calc(-1*var(--min10max12)); */
  background-repeat: no-repeat;
  padding: var(--min18max20);
  box-sizing: border-box;
  position: relative;
}
.cut-box::before {
  position: absolute;
  top: var(--min4max8);
  right: var(--min4max8);
  bottom: var(--min4max8);
  left: var(--min4max8);
  content: "";
  background:
    radial-gradient(circle at top left, transparent var(--min10max20), var(--cut-border-color) var(--min10max20), var(--cut-border-color) var(--min11max22), transparent var(--min11max22)) left top / var(--min11max22) var(--min11max22) no-repeat,
    radial-gradient(circle at top right, transparent var(--min10max20), var(--cut-border-color) var(--min10max20), var(--cut-border-color) var(--min11max22), transparent var(--min11max22)) right top / var(--min11max22) var(--min11max22) no-repeat,
    radial-gradient(circle at bottom left, transparent var(--min10max20), var(--cut-border-color) var(--min10max20), var(--cut-border-color) var(--min11max22), transparent var(--min11max22)) left bottom / var(--min11max22) var(--min11max22) no-repeat,
    radial-gradient(circle at bottom right, transparent var(--min10max20), var(--cut-border-color) var(--min10max20), var(--cut-border-color) var(--min11max22), transparent var(--min11max22)) right bottom / var(--min11max22) var(--min11max22) no-repeat,
    linear-gradient(90deg, transparent var(--min10max20), var(--cut-border-color) var(--min11max22)) left top / 51% 2px no-repeat,
    linear-gradient(-90deg, transparent var(--min10max20), var(--cut-border-color) var(--min11max22)) right top / 51% 2px no-repeat,
    linear-gradient(90deg, transparent var(--min10max20), var(--cut-border-color) var(--min11max22)) left bottom / 51% 2px no-repeat,
    linear-gradient(-90deg, transparent var(--min10max20), var(--cut-border-color) var(--min11max22)) right bottom / 51% 2px no-repeat,
    linear-gradient(180deg, transparent var(--min10max20), var(--cut-border-color) var(--min11max22)) left top / 2px 51% no-repeat,
    linear-gradient(0deg, transparent var(--min10max20), var(--cut-border-color) var(--min11max22)) left bottom / 2px 51% no-repeat,
    linear-gradient(180deg, transparent var(--min10max20), var(--cut-border-color) var(--min11max22)) right top / 2px 51% no-repeat,
    linear-gradient(0deg, transparent var(--min10max20), var(--cut-border-color) var(--min11max22)) right bottom / 2px 51% no-repeat;
}
.cut-box.-M {
  padding-inline: var(--min18max20);
}
/* .cut-box::before,
.cut-box::after {
  content: "";
  display: block;
  width: var(--min40max56);
  aspect-ratio: 1/1;
  background: url(/external/category/image/2026/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 {
  position: relative;
  z-index: 1;
  align-items: center;
  margin-inline: auto;
}
.block-grid.-col1.-cut.-M {
  gap: 7px;
}
.block-grid.-cut > .image {
  width: min(295px, 90%);
  margin-inline: auto;
}
.block-grid.-cut.-M > .image {
  width: min(295px, 100%);
}

.cut-textwrap {
  color: #250606;
}
.cut-textwrap > .title.-time {
  grid-template-columns: 5.7% auto 5.7%;
  background-repeat: no-repeat;
}
.cut-textwrap > .title.-time::before,
.cut-textwrap > .title.-time::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-image: url(/external/category/image/2026/xmas/storage_time_bg.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  transform: translateX(1px);
}
.cut-textwrap > .title.-time::after {
  transform: scale(-1, 1) translateX(1px);
}
.cut-bg {
  padding-block: var(--min4max7) var(--min4max5);
  background: #a7dcee;
  font-size: var(--min18max24);
  font-weight: bold;
  text-align: center;
}
.cut-bg > .small.-pipe {
  font-size: 75%;
}
.cut-bg > .val {
  display: inline-block;
  transform: translateY(6%);
}
.cut-bg > .val > .small {
  display: inline-block;
  font-size: 66%;
  transform: translateY(-6%);
}

.cut-textwrap > .title.-size {
  display: block;
  margin-top: 7px;
  padding-inline: 0;
  font-size: var(--min16max20);
  font-weight: normal;
}
.cut-textwrap > .title.-size > .frame {
  color: #ad0a24;
}
.cut-textwrap > .title.-size > .size {
  font-size: var(--min14max16);
}
.cut-textwrap > .text {
  padding-inline: var(--min10max15);
  line-height: 1.2;
  font-size: var(--min14max18);
}


.cut-box .title + .num-list.-cut {
  margin-top: var(--min6max10);
  max-width: 285px;
  margin-inline: auto;
}
.num-list.-cut.-M {
  max-width: 295px;
  margin-inline: auto;
}
.num-list {
  font-size: var(--min15max18);
  font-weight: bold;
  padding-left: 4px;
}
.num-list.-cut {
  font-weight: 100;
}
.num-list.-set {
  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);
  margin-right: 3px;
}
.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(--min14max18);
}
.num-list.-cut > li::after {
  top: -2px;
  left: -5px;
  width: var(--min16max20);
}
.num-list.-cut > li > .str {
  margin-left: var(--min10max15);
}
.block-grid.-push {
  column-gap: var(--min15max20);
}
.block-grid.-push + .block-grid.-push {
  margin-top: 30px;
}
.cut-box + .block-grid.-push {
  margin-top: var(--min15max20);
}
.block-grid.-push > .image > img + img {
  margin-top: 15px;
}
.block-grid.-push > .push-wrap {
  margin-top: var(--min0max10);
}
.push-wrap .title {
  display: flex;
  font-size: var(--min19max22);
  justify-content: flex-start;
  text-align: left;
  padding: 0;
}
.block-otoku + .set-textwrap {
  margin-top: var(--min20max30);
}
.set-textwrap.-middle {
  padding: var(--min10max20) var(--min10max15) 0;
}
.set-textwrap > .title {
  text-align: left;
  display: block;
  padding-inline: 0;
}

.push-wrap .text + .image {
  margin-top: var(--min10max15);
}
.specwrap:has(.block-grid.-push.-item) {
  padding-top: var(--min0max20);
  padding-inline: var(--min15max20);
  background: #fff;
}
.block-grid[class*="item"] .specwrap .title + .text,
.specwrap .block-grid.-push.-item .title + .text {
  margin-top: var(--min5max10);
}
.block-grid[class*="item"] .specwrap .text.-border .note,
.push-wrap .text .note {
  font-size: 75%;
  color: var(--color-seasoning-anchor);
}
.specwrap .block-grid.-push.-item {
  width: min(var(--min360max840), 100%);
  margin-inline: auto;
}
.block-grid.-recipe {
  grid-template-columns: var(--min14max16) 1fr;
  gap: var(--min40max50);
}

.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[class*="item"] > .specwrap > :is(.detail:not(:has(> *)) + .block-grid.-col2.-item2) {
  margin-top: 0;
}

.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/2026/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);
}
.text.-border + .cv-btn {
  margin-top: var(--min15max20);
}
.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:not(.-off0) > .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:not(.-off0) > .js-item-sales > .item-summary > .info > .brand-name {
  order: 3;
}
.block-grid[class*="item"] .specwrap > .cv-btn:not(.-off0) > .js-item-sales > .item-summary > .info:has(.point) > .brand-name {
  margin-top: calc(-1*var(--minM15maxM10));
}
.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"],.-off0) .item-summary > .info > .point {
  width: fit-content;
  background: var(--cv-point);
  margin-left: auto;
}
.cv-btn[class*="off"]:not(.-off0) .item-summary > .info > .point {
  position: relative;
  z-index: 0;
}
.cv-btn:not(.-off0) .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"]:not(.-off0) .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"]:not(.-off0) .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/2026/xmas/prop/balloon_10per_pt.svg);
}
.cv-btn.-off7 > .js-item-sales > .item-summary > .info > .point::before {
  background-image: url(/external/category/image/2026/xmas/prop/7off/balloon_7per_pt.svg);
}
.cv-btn.-off5 > .js-item-sales > .item-summary > .info > .point::before {
  background-image: url(/external/category/image/2026/xmas/prop/5off/balloon_5per_pt.svg);
}
.cv-btn.-off3 > .js-item-sales > .item-summary > .info > .point::before {
  background-image: url(/external/category/image/2026/xmas/prop/3off/balloon_3per_pt.svg);
}
.cv-btn:not(.-off0) .js-item-sales.-cart6 .item-summary > .info > .point > .value {
  display: inline-block;
  text-align: right;
  padding-block: 5px 1px;
  white-space: nowrap;
}
.cv-btn:not(.-off0) .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:not(.-off0) > .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;
}
.js-item-sales .item-summary .info .cart .add-to-cart fieldset .button::before {
  display: none;
}
.cv-btn > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart .button:not(.button-cart),
.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:not(.button-cart):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:not(.button-cart)::after {
  content: "";  
  display: inline-block;
  width: var(--min13max15);
  aspect-ratio: 3/4;
  mask: url(/external/category/image/2026/xmas/icon_arrow_R.svg) no-repeat;
  -webkit-mask: url(/external/category/image/2026/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:not(.button-cart)::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:not(.button-cart) 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:not(.button-cart) span::before {
  background-image: none;
  position: unset;
  width: auto;
  height: auto;
  transform: none;
}
.cv-btn > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart .button.edit span::before {
  width: 20px;
  height: 20px;
}
.cv-btn:is([class*="dec"], [class*="nov"]) > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart .button:not(.button-cart) span {
  gap: 6px;
}
.cv-btn:is([class*="dec"], [class*="nov"]) > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart:not(:has(:disabled)) .button:not(.button-cart, .edit) 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:is([class*="dec"], [class*="nov"]) > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart:not(:has(:disabled)) .button.edit span.btn-txt-sm::before {
  display: none;
}
.cv-btn.-nov30 > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart:not(:has(:disabled)) .button span::before {
  content: "11/30週お届け"!important;
}
.cv-btn.-dec7 > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart:not(:has(:disabled)) .button span::before {
  content: "12/7週お届け"!important;
}
.cv-btn.-dec14 > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart:not(:has(:disabled)) .button span::before {
  content: "12/14週お届け"!important;
}
.cv-btn.-dec21 > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart:not(:has(:disabled)) .button span::before {
  content: "12/21週お届け"!important;
}
.cv-btn.-off0 > .js-item-sales > .item-summary > .info > .cart > .add-to-cart > .add-to-cart:not(:has(:disabled)) .button span::before {
  content: ""!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 {
  margin-top: var(--min28max55);
  padding-inline: var(--min10max20);
  padding-block: var(--min20max30);
}
.ft-area::before {
  content: "";
  display: block;
  position: absolute;
  top: calc(-1*var(--min28max55));
  left: 0;
  width: 100%;
  height: calc(var(--min28max55) + 1px);
  -webkit-mask: no-repeat left bottom / 100%;
  mask: no-repeat left bottom / 100%;
  -webkit-mask-image: url(/external/category/image/2026/xmas/wave_bottom.svg);
  mask-image: url(/external/category/image/2026/xmas/wave_bottom.svg);
  z-index: -1;
  background: url(/external/category/image/2026/xmas/bg_stripe.jpg) center / 100% auto;
}
.ft-area .link {
  filter: drop-shadow(1px 1px var(--min4max7) rgba(0, 0, 0, 0.75));
}
.ft-area .link:hover {
  transform: translate(1px, 2px);
  filter: drop-shadow(1px 1px 5px rgba(0, 0, 0, 0.75));
}
.ft-area .link + .link {
  margin-top: 20px;
}

.lp-daichi.-bottom {
  margin-top: var(--min20max30);
}
.lp-daichi.-bottom .instagram-post iframe {
  margin-inline: auto !important;
  border: none!important;
}

.insta-anc {
  position: relative;
  z-index: 0;
  overflow: hidden;
  margin-top: var(--min15max20);
  width: min(280px, 82%);
  margin-inline: auto;
}
.insta-anc > .link {
  display: grid;
  grid-template-columns: 9% auto 9%;
  color: #fff;
  font-size: var(--min18max21);
  font-weight: bold;
  background-repeat: no-repeat;
  text-align: center;
}
.insta-anc > .link::before,
.insta-anc > .link::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-image: url(/external/category/image/2026/xmas/movie_btn_bg.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  transform: translateX(1px);
}
.insta-anc > .link::after {
  transform: scale(-1, 1) translateX(1px);
}

.insta-anc > .link > .text {
  display: grid;
  grid-template-columns: 19.5% auto 7.5%;
  padding-block: var(--min10max15) var(--min6max12);
  padding-left: 4%;
  background: #aa6400;
  letter-spacing: .1rem;
}
.insta-anc > .link > .text::before,
.insta-anc > .link > .text::after {
  margin-top: -6%;
}
.insta-anc > .link > .text::before {
  content: "";
  display: block;
  background: url(/external/category/image/2026/xmas/movie_icon.png) no-repeat center / contain;
}
.insta-anc > .link > .text::after {
  content: "";
  display: block;
  background: url(/external/category/image/2026/xmas/movie_arrow.png) no-repeat center / contain;
}

/* .lp-daichi.-toku {
  background-image: url(/external/category/image/2026/xmas/bg_argyle2_red.png);
  background-size: 200px;
} */

@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.-xmas.scrolling-down {
    top: 0;
  }
  .header--ui__feature.-xmas .header--ui__featurelist__child:last-of-type {
    padding-right: 0;
    margin-right: 0;
  }

  .cv-btn:not(.-off0) .js-item-sales.-cart6 .item-summary > .info > .point {
    width: min(var(--point-width),100%);
  }
  .cv-btn[class*="off"]:not(.-off0) .js-item-sales.-cart6 .item-summary > .info > .point::before {
    width: 50%;
    position: absolute;
  }
  .cv-btn[class*="off"]:not(.-off0) .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 {
    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(3,1fr);
  }

  .week-btn.-left {
    right: 1%;
    bottom: 15%;
    width: 26%;
  }
  .week-btn.-left > .link {
    padding: 5% 2% 4%;
    gap: 1%;
  }

  .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,
  .recipe-wrap {
    padding: 0 10px 5px;
  }
  .push-wrap + .image,
  .block-grid.-push > .image + .push-wrap {
    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:not(.-off0) .js-item-sales.-cart6 .item-summary > .info > .point {
    width: min(322px,100%);
    margin-left: auto;
  }
  /* カート周りend */

}