/* Hallmark · genre: editorial (warm) · macrostructure: Photographic hero + Narrative Workflow (年齢別モデルコース) · theme: custom "ひだまりの日" · enrichment: real photography required (labelled placeholders) · nav: N9 edge-aligned · footer: Ft1 mast-headed
 * paper oklch(97.5% 0.01 80) · ink oklch(25% 0.02 50) · accent oklch(62% 0.17 45) persimmon (CTA only) · sky oklch(92% 0.035 230) tags · display Kaisei Tokumin + Fraunces (numerals) · body BIZ UDPGothic (UD font, 夜スマホの可読性)
 * research: リトル・ママフェスタ=LINE来場予約に一本化 ／ SAITAMA子育て応援フェスタ=設備をFVに ／ 国交省R7調査 約98%が授乳室・子連れトイレの有無で施設を選ぶ ／ フォーム5項目以下で転換率2倍
 * pre-emit critique: P5 H5 E4 S5 R4 V5 */
:root{
  color-scheme: light;
  --paper: oklch(97.5% 0.01 80);
  --paper-2: oklch(94.5% 0.016 80);
  --linen: oklch(90% 0.02 75);
  --ink: oklch(25% 0.02 50);
  --ink-2: oklch(44% 0.02 50);
  --muted: oklch(60% 0.015 55);
  --rule: oklch(86% 0.015 75);
  --accent: oklch(62% 0.17 45);
  --accent-2: oklch(54% 0.17 45);
  --accent-ink: oklch(98% 0.01 80);
  --sky: oklch(92% 0.035 230);
  --sky-ink: oklch(38% 0.06 240);
  --leaf: oklch(92% 0.04 140);
  --leaf-ink: oklch(36% 0.07 150);
  --line-green: #06C755;
  --line-ink: #FFFFFF;
  --focus: oklch(55% 0.19 55);
  --font-display: "Kaisei Tokumin", "Hiragino Mincho ProN", "Yu Mincho", serif;
  --font-num: "Fraunces", "Kaisei Tokumin", serif;
  --font-body: "BIZ UDPGothic", "Hiragino Sans", "Yu Gothic", sans-serif;
  --s-xs:.5rem; --s-sm:.75rem; --s-md:1rem; --s-lg:1.5rem; --s-xl:2.5rem; --s-2xl:4rem; --s-3xl:6rem;
  --ease-out: cubic-bezier(.16,1,.3,1);
  --dur: 220ms; --dur-l: 420ms;
  --max: 1120px; --text: 720px;
  --r: 14px;
}
*,*::before,*::after{box-sizing:border-box}
html,body{overflow-x:clip}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.85;font-feature-settings:"palt"}
h1,h2,h3,p,ul,dl,dd{margin:0}
ul{padding:0;list-style:none}
a{color:inherit}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:clamp(1.25rem,4vw,3rem)}
.text{width:100%;max-width:var(--text);margin-inline:auto;padding-inline:clamp(1.25rem,4vw,3rem)}
.num{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:700}
.h{font-family:var(--font-display);font-weight:800;line-height:1.35;letter-spacing:.01em;text-wrap:balance}
h2.h{font-size:clamp(1.5rem,3.2vw,2.2rem)}
.lead{margin-top:var(--s-md);color:var(--ink-2);max-width:44ch}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap;min-height:56px;padding:.75rem 1.6rem;border-radius:999px;text-decoration:none;font-weight:700;font-size:1.05rem;border:1.5px solid var(--ink);color:var(--ink);background:var(--paper);transition:background-color var(--dur) var(--ease-out),color var(--dur) var(--ease-out),transform 100ms var(--ease-out)}
.btn:hover{background:var(--paper-2)}
.btn:active{transform:translateY(1px)}
.btn--line{background:var(--line-green);border-color:var(--line-green);color:var(--line-ink)}
.btn--line:hover{background:#05B14C;border-color:#05B14C}
.btn--accent{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.btn--accent:hover{background:var(--accent-2);border-color:var(--accent-2)}
.btn svg{width:22px;height:22px;flex:0 0 auto}
.sub{font-size:.85rem;color:var(--ink-2)}

/* nav N9 */
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:200;background:color-mix(in oklab,var(--paper) 90%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--rule)}
.nav .wrap{display:flex;justify-content:space-between;align-items:center;min-height:60px;gap:1rem}
.wordmark{font-family:var(--font-display);font-weight:800;font-size:.95rem;text-decoration:none;white-space:nowrap;letter-spacing:.02em}
.nav__r{display:flex;align-items:center;gap:1.1rem}
.nav__links{display:none;gap:1.1rem;font-size:.88rem;font-weight:700}
.nav__links a{text-decoration:none;white-space:nowrap}
.nav .btn{min-height:40px;padding:.25rem 1rem;font-size:.88rem}
@media(min-width:60rem){.nav__links{display:flex}.wordmark{font-size:1.05rem}}

/* hero photographic */
.hero{position:relative;background:var(--linen)}
.hero__ph{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--linen)}
.hero__ph::before{content:"";position:absolute;inset:0;background:linear-gradient(165deg,oklch(92% 0.03 85),oklch(84% 0.045 60) 55%,oklch(78% 0.05 45))}
.hero__ph::after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='220' height='220' filter='url(%23n)' opacity='.4'/></svg>");mix-blend-mode:multiply;opacity:.3}
.hero__ph .lbl{position:absolute;left:clamp(1.25rem,4vw,3rem);top:1rem;z-index:1;font-size:.72rem;letter-spacing:.1em;color:var(--ink-2);background:color-mix(in oklab,var(--paper) 80%,transparent);padding:.15rem .6rem;border-radius:4px}
.hero__grad{position:absolute;left:0;right:0;bottom:0;height:60%;background:linear-gradient(to top,var(--paper) 18%,transparent);z-index:1}
.hero__body{position:relative;z-index:2;margin-top:-34vw;padding-bottom:var(--s-lg)}
.hero__free{display:inline-flex;align-items:center;gap:.5rem;background:var(--ink);color:var(--paper);font-weight:700;font-size:.85rem;letter-spacing:.08em;padding:.2rem .8rem;border-radius:999px}
.hero h1{margin-top:var(--s-md);font-size:clamp(1.65rem,4.6vw + .4rem,3.2rem);line-height:1.4}
.hero h1 .nw{display:inline-block;white-space:nowrap}
.hero__date{margin-top:var(--s-lg);display:grid;grid-template-columns:auto 1fr;gap:.1rem 1rem;align-items:baseline}
.hero__date .d{font-family:var(--font-num);font-size:clamp(3.6rem,12vw,6rem);line-height:.95;font-weight:700;letter-spacing:-.02em;grid-row:span 2}
.hero__date .y{font-size:.85rem;letter-spacing:.12em;color:var(--muted)}
.hero__date .v{font-weight:700;font-size:1.02rem;line-height:1.5}
.hero__date .v small{display:block;font-weight:400;color:var(--ink-2);font-size:.9rem}
.fac-row{margin-top:var(--s-lg);display:flex;flex-wrap:wrap;gap:.5rem}
.fac-row li{display:inline-flex;align-items:center;gap:.4rem;background:var(--sky);color:var(--sky-ink);font-size:.82rem;font-weight:700;padding:.15rem .7rem;border-radius:999px;white-space:nowrap}
.fac-row li.ok{background:var(--leaf);color:var(--leaf-ink)}
.fac-row svg{width:15px;height:15px}
.hero__cta{margin-top:var(--s-lg);display:grid;gap:.6rem;max-width:460px}
.hero__cta .sub{text-align:center}
.reveal{animation:reveal var(--dur-l) var(--ease-out) both}
@keyframes reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(min-width:60rem){
  .hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;background:var(--paper)}
  .hero__ph{aspect-ratio:4/5;order:2;height:100%;min-height:640px;border-radius:0 0 0 48px}
  .hero__grad{display:none}
  .hero__body{margin-top:0;padding-block:var(--s-2xl);padding-left:clamp(1.25rem,4vw,3rem)}
  .hero__body .wrap{padding-left:0;max-width:560px;margin-left:auto}
}

/* trust strip */
.trust{background:var(--paper-2);padding-block:var(--s-lg)}
.trust .wrap{display:grid;gap:.5rem;font-size:.92rem;color:var(--ink-2)}
.trust b{color:var(--ink)}
@media(min-width:40rem){.trust .wrap{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-lg)}}

/* model course (narrative workflow) */
.course{padding-block:var(--s-2xl)}
.tabs{margin-top:var(--s-lg);display:flex;gap:.5rem;flex-wrap:wrap}
.tab{border:1.5px solid var(--ink);border-radius:999px;padding:.35rem 1rem;font-weight:700;font-size:.92rem;white-space:nowrap;transition:background-color var(--dur) var(--ease-out),color var(--dur) var(--ease-out)}
.tab[aria-selected="true"]{background:var(--ink);color:var(--paper)}
.plan{margin-top:var(--s-lg);display:none}
.plan.is-on{display:block}
.plan ol{margin:0;padding:0;list-style:none;border-left:2px solid var(--rule);margin-left:.6rem}
.plan li{position:relative;padding:0 0 1.1rem 1.4rem}
.plan li::before{content:"";position:absolute;left:-7px;top:.55rem;width:12px;height:12px;border-radius:50%;background:var(--accent);border:2px solid var(--paper)}
.plan li.rest::before{background:var(--sky)}
.plan .t{font-family:var(--font-num);font-weight:700;font-size:1.05rem;letter-spacing:.02em}
.plan .n{font-weight:700;margin-left:.6rem}
.plan .w{display:block;font-size:.9rem;color:var(--ink-2)}
.plan .tip{margin-top:.6rem;padding:.7rem .9rem;background:var(--leaf);color:var(--leaf-ink);border-radius:var(--r);font-size:.9rem}

/* timetable */
.stage{padding-block:var(--s-2xl);background:var(--paper-2)}
.chips{margin-top:var(--s-lg);display:flex;gap:.5rem;flex-wrap:wrap}
.chip{border:1.5px solid var(--rule);background:var(--paper);border-radius:999px;padding:.25rem .9rem;font-size:.88rem;font-weight:700;white-space:nowrap}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.tt{margin-top:var(--s-md);display:grid;gap:.5rem}
.tt li{display:grid;grid-template-columns:5.2rem 1fr;gap:.6rem;background:var(--paper);border-radius:var(--r);padding:.8rem 1rem;align-items:baseline}
.tt li.free{background:transparent;border:1.5px dashed var(--rule);color:var(--muted)}
.tt li[hidden]{display:none}
.tt .t{font-family:var(--font-num);font-weight:700;font-size:1.1rem;letter-spacing:.02em}
.tt .t small{display:block;font-size:.75rem;color:var(--muted);font-weight:600}
.tt .n{font-weight:700}
.tt .w{display:block;font-size:.85rem;color:var(--ink-2)}
.tt .rep{display:inline-block;font-size:.75rem;font-weight:700;color:var(--accent);margin-left:.5rem;white-space:nowrap}
.tt .tag{display:inline-block;font-size:.72rem;font-weight:700;background:var(--sky);color:var(--sky-ink);border-radius:999px;padding:0 .55rem;margin-left:.4rem;white-space:nowrap}
.tt-note{margin-top:var(--s-md);font-size:.88rem;color:var(--ink-2)}

/* cards */
.sec{padding-block:var(--s-2xl)}
.cards{margin-top:var(--s-lg);display:grid;gap:1rem}
.card{background:var(--paper-2);border-radius:var(--r);overflow:hidden}
.card .ph{position:relative;aspect-ratio:4/3;background:var(--linen);overflow:hidden}
.card .ph::before{content:"";position:absolute;inset:0;background:linear-gradient(150deg,oklch(92% 0.03 85),oklch(85% 0.04 55))}
.card .ph span{position:absolute;left:.9rem;bottom:.7rem;font-size:.72rem;letter-spacing:.08em;color:var(--ink-2);background:color-mix(in oklab,var(--paper) 80%,transparent);padding:.1rem .5rem;border-radius:4px}
.card .b{padding:1rem 1.1rem 1.2rem}
.card h3{font-family:var(--font-display);font-weight:800;font-size:1.2rem}
.card p{margin-top:.35rem;font-size:.92rem;color:var(--ink-2)}
.card .meta{margin-top:.5rem;display:flex;gap:.4rem;flex-wrap:wrap}
.card .meta span{font-size:.75rem;font-weight:700;background:var(--sky);color:var(--sky-ink);border-radius:999px;padding:0 .55rem}
@media(min-width:40rem){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* hints */
.hints{margin-top:var(--s-lg);border-top:1px solid var(--ink)}
.hints li{padding:1rem 0;border-bottom:1px solid var(--rule);display:grid;gap:.2rem}
.hints b{font-size:1.02rem}
.hints span{font-size:.92rem;color:var(--ink-2)}
@media(min-width:40rem){.hints li{grid-template-columns:.8fr 1.2fr;gap:1.5rem;align-items:baseline}}

/* booths */
.booths{margin-top:var(--s-lg);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.booths li{aspect-ratio:1;background:var(--paper-2);border-radius:var(--r);padding:.9rem;display:flex;flex-direction:column;justify-content:space-between;font-size:.85rem;color:var(--muted)}
.booths li b{color:var(--ink-2);font-size:.85rem}
@media(min-width:40rem){.booths{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* baby: facilities + route */
.baby{padding-block:var(--s-2xl);background:var(--paper-2)}
.fac{margin-top:var(--s-lg);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.fac div{background:var(--paper);border-radius:var(--r);padding:.9rem 1rem}
.fac__icon{display:block;width:42px;height:42px;object-fit:contain;margin-bottom:.4rem}
.fac b{display:block;font-size:.95rem}
.fac span{font-size:.85rem;color:var(--muted)}
.fac .ok{color:var(--leaf-ink)}
@media(min-width:40rem){.fac{grid-template-columns:repeat(3,minmax(0,1fr))}}
.route{margin-top:var(--s-xl)}
.route h3{font-family:var(--font-display);font-weight:800;font-size:1.2rem}
.route ol{margin:var(--s-md) 0 0;padding:0;list-style:none;display:grid;gap:.75rem}
.route li{display:grid;grid-template-columns:96px 1fr;gap:.9rem;align-items:center;background:var(--paper);border-radius:var(--r);padding:.6rem}



.route b{font-size:.95rem;display:block}
.route span.d{font-size:.85rem;color:var(--ink-2)}
@media(min-width:40rem){.route ol{grid-template-columns:repeat(3,minmax(0,1fr))}.route li{grid-template-columns:1fr;gap:.5rem}}

/* info */
.info dl{margin:var(--s-lg) 0 0;border-top:1px solid var(--ink)}
.info .row{display:grid;grid-template-columns:6rem 1fr;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--rule)}
.info dt{color:var(--muted);font-size:.85rem}
.info dd small{display:block;color:var(--ink-2)}
.map{margin-top:var(--s-lg);aspect-ratio:16/10;border-radius:var(--r);background:var(--paper-2);overflow:hidden}
.map iframe{display:block;width:100%;height:100%;border:0}
@media(min-width:60rem){.info .wrap{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-2xl);align-items:start}.map{margin-top:var(--s-lg)}}

/* faq */
.faq details{border-bottom:1px solid var(--rule)}
.faq details:first-of-type{border-top:1px solid var(--ink);margin-top:var(--s-lg)}
.faq summary{cursor:pointer;list-style:none;padding:1rem 2.2rem 1rem 0;font-weight:700;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:.4rem;top:1.35rem;width:.55rem;height:.55rem;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:rotate(45deg);transition:transform var(--dur) var(--ease-out)}
.faq details[open] summary::after{transform:rotate(225deg)}
.faq .a{padding:0 0 1.1rem;color:var(--ink-2);max-width:60ch;font-size:.95rem}

/* organizer */
.org{padding-block:var(--s-2xl);background:var(--paper-2)}
.org p{margin-top:var(--s-md);color:var(--ink-2);max-width:44ch}

/* final */
.final{padding-block:var(--s-3xl) var(--s-2xl)}
.final .hero__cta{margin-top:var(--s-lg)}
footer{border-top:1px solid var(--ink);padding-block:var(--s-lg) calc(var(--s-3xl) + 56px)}
footer .wrap{display:flex;flex-wrap:wrap;gap:.4rem 2rem;justify-content:space-between;font-size:.85rem;color:var(--ink-2)}
footer a{text-decoration:none}
@media(min-width:60rem){footer{padding-bottom:var(--s-xl)}}

/* sticky */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:200;padding:.55rem 1rem calc(.55rem + env(safe-area-inset-bottom,0px));background:color-mix(in oklab,var(--paper) 94%,transparent);backdrop-filter:blur(10px);border-top:1px solid var(--rule)}
.sticky .btn{width:100%;min-height:50px}
.sticky .sub{display:block;text-align:center;font-size:.72rem;margin-top:.2rem}
@media(min-width:60rem){.sticky{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* ===== 実写ヒーロー（ゆっくりズーム＋切り替え） ===== */
.kv{position:relative;min-height:min(94svh,900px);display:flex;align-items:flex-end;overflow:hidden;background:var(--ink);color:var(--paper)}
.kv__slides{position:absolute;inset:0}
.kv .slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 25%;opacity:0;transform:scale(1.04);transition:opacity 1.8s var(--ease-out)}
.kv .slide.is-on{opacity:1;animation:kb 16s linear forwards}
@keyframes kb{from{transform:scale(1.04)}to{transform:scale(1.13)}}
.kv__shade{position:absolute;inset:0;background:linear-gradient(to top,oklch(18% 0.02 50 / .92) 0%,oklch(18% 0.02 50 / .62) 40%,oklch(18% 0.02 50 / 0) 72%)}
.kv__credit{position:absolute;top:.6rem;left:clamp(1.25rem,4vw,3rem);z-index:2;font-size:.68rem;letter-spacing:.06em;color:oklch(95% 0.01 80 / .85);background:oklch(18% 0.02 50 / .45);padding:.1rem .5rem;border-radius:4px}
.kv .hero__body{position:relative;z-index:2;width:100%;margin-top:0;padding-block:var(--s-3xl) calc(var(--s-lg) + 72px)}
.kv h1{font-family:var(--font-display);font-weight:800;font-size:clamp(1.75rem,4.8vw + .4rem,3.3rem);line-height:1.4;letter-spacing:.01em;margin-top:var(--s-md);color:var(--paper);text-shadow:0 1px 2px oklch(18% 0.02 50 / .4)}
.kv h1 .nw{display:inline-block;white-space:nowrap}
.kv .hero__free{background:var(--paper);color:var(--ink)}
.kv .hero__date .d{color:var(--paper)}
.kv .hero__date .y{color:oklch(88% 0.015 80)}
.kv .hero__date .v{color:var(--paper)}
.kv .hero__date .v small{color:oklch(88% 0.015 80)}
.kv .fac-row li{background:oklch(97% 0.01 80 / .92);color:var(--ink)}
.kv .fac-row li.ok{background:var(--leaf);color:var(--leaf-ink)}
.kv .sub{color:oklch(92% 0.012 80);display:flex;align-items:center;gap:.4rem;justify-content:center}
.kv .arrow{width:34px;height:22px;flex:0 0 auto;color:var(--accent)}
.ul{background:linear-gradient(transparent 68%,oklch(62% 0.17 45 / .85) 68%,oklch(62% 0.17 45 / .85) 88%,transparent 88%) no-repeat;background-size:100% 100%}
@media(min-width:60rem){
  .kv{min-height:760px;align-items:center}
  .kv .slide{object-position:68% 30%}
  .kv__shade{background:linear-gradient(to right,oklch(18% 0.02 50 / .88) 0%,oklch(18% 0.02 50 / .66) 38%,oklch(18% 0.02 50 / 0) 72%)}
  .kv .hero__body{padding-block:var(--s-3xl)}
  .kv .hero__body .wrap{max-width:var(--max)}
  .kv .hero__body .wrap > *{max-width:560px}
}
/* ===== 写真帯 ===== */
.band{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;background:var(--linen)}
.band--short{aspect-ratio:4/3}
.band img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.band__cap{position:absolute;left:clamp(1.25rem,4vw,3rem);bottom:1rem;right:clamp(1.25rem,4vw,3rem);font-family:var(--font-display);font-weight:800;color:var(--paper);font-size:clamp(1.15rem,3vw,1.7rem);text-shadow:0 1px 8px oklch(18% 0.02 50 / .6);line-height:1.4}
@media(min-width:40rem){.band{aspect-ratio:21/9}.band--short{aspect-ratio:21/8}}
.card .ph.has-img::before{display:none}
.card .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media(prefers-reduced-motion:reduce){.kv .slide.is-on{animation:none;transform:none}}

/* ===== v2: イベント一覧・プレゼント ===== */
.cards--3{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.cards--3 .card h3{font-size:1.02rem;line-height:1.35}
.cards--3 .card p{font-size:.85rem;line-height:1.65}
.cards--3 .card .b{padding:.8rem .85rem 1rem}
.cards--3 .card .ph{aspect-ratio:1}
@media(min-width:40rem){.cards--3{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.cards--3 .card .ph{aspect-ratio:4/3}}
.present{background:var(--paper-2)}
.gifts{margin-top:var(--s-lg);display:grid;gap:.75rem}
.gifts div{background:var(--paper);border-radius:var(--r);padding:1rem 1.1rem}
.gifts b{display:block;font-family:var(--font-display);font-weight:800;font-size:1.1rem}
.gifts span{font-size:.9rem;color:var(--ink-2)}
@media(min-width:40rem){.gifts{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Stamp rally preview and route-photo status */
.present__stamp-preview{position:relative;margin:var(--s-lg) auto 0;max-width:300px;text-align:center}
.present__stamp-preview::before{content:"予定イメージ";position:absolute;z-index:1;top:.6rem;right:.6rem;padding:.3rem .6rem;border-radius:999px;background:rgba(255,255,255,.95);font-size:.75rem;font-weight:700;color:var(--ink)}
.present__stamp-preview img{display:block;width:100%;height:auto;border-radius:var(--r);box-shadow:0 8px 28px rgba(76,49,31,.12)}
.present__stamp-preview figcaption{margin-top:.6rem;font-size:.82rem;color:var(--ink-2)}


/* お土産バッグの掲載イメージ */
.gift-bag-card__image{display:block;width:100%;height:auto;max-width:240px;margin:.8rem auto .2rem;border-radius:14px}
.gift-bag-card small{display:block;color:var(--ink-2);font-size:.75rem;text-align:center}

/* ベビーカーでの道順動画 */
/* Google ドライブの映像を切らず、上下に同じ余白を設ける */
.route__video{position:relative;width:min(100%,800px);margin:var(--s-md) auto 0;overflow:hidden;background:#231f20}
.route__video::before{content:"";display:block;padding-top:calc(56.25% + 112px)}
.route__video iframe{position:absolute;inset:0;display:block;width:100%;height:100%;border:0}
.route__video-link{margin:.55rem 0 0;text-align:center;font-size:.82rem}
.route__video-link a{color:var(--ink-2);text-decoration:underline;text-underline-offset:.2em}
.route--video li{display:block}
.route--video li .d{display:block;margin-top:.25rem}

