/* ============================================================
   URIのウリ — 12 tips to enjoy URI  読み物ページ共通スタイル
   パンフレットの色（緑 #41B841 / 黄緑 #E3EA5B / 墨 #1E1A1E）と
   手描きイラストに合わせた、白地ベースの明るいトーン。
   ============================================================ */
:root{
  --green:#41B841; --green-d:#2F9A33; --green-l:#E9F7E4;
  --lime:#E3EA5B; --lime-l:#F5F8CC; --yg:#B2D952;
  --ink:#1E1A1E; --ink-2:#46424C; --mute:#777482; --line:#DEE1D0;
  --paper:#FFFFFF; --cream:#F7F8EE; --red:#E5322D; --red-l:#FDEDEC;
  --fb:"Zen Kaku Gothic New","Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP",system-ui,sans-serif;
  --fh:"Zen Maru Gothic",var(--fb);
  --fd:"Lilita One","Arial Black",sans-serif;
  --measure:42rem; --wide:72rem; --gutter:clamp(16px,4vw,32px);
  --r:18px; --r-s:12px; --sh:0 12px 34px rgba(30,26,30,.09);
}
*,*::before,*::after{box-sizing:border-box}
html{color-scheme:light;-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:70px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--fb);font-size:17px;line-height:1.95;font-feature-settings:"palt";overflow-x:hidden;overflow-wrap:anywhere}
img{max-width:100%;height:auto;display:block}
a{color:var(--green-d);text-underline-offset:.18em;text-decoration-thickness:1.5px}
a:hover{color:var(--green)}
:focus-visible{outline:3px solid var(--green);outline-offset:3px;border-radius:4px}
.wrap{max-width:var(--wide);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}
.prose{max-width:var(--measure);margin-left:auto;margin-right:auto}
.prose p{margin:0 0 1.35em}
.prose ul,.prose ol{padding-left:1.4em;margin:0 0 1.35em}
.prose li{margin:.25em 0}
.prose strong{font-weight:700}
.ic{width:1.1em;height:1.1em;vertical-align:-.18em;display:inline-block}
small{font-size:.82em}
.mk{background:linear-gradient(transparent 58%,var(--lime) 58%,var(--lime) 94%,transparent 94%);padding:0 .12em}
.vis-h{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- reveal (JSあり・動きを減らす設定では無効) ---------- */
.js .rv{opacity:0;transform:translateY(14px)}
.js .rv.in{opacity:1;transform:none;transition:opacity .55s ease,transform .6s cubic-bezier(.2,.7,.2,1)}
@media (prefers-reduced-motion:reduce){.js .rv{opacity:1;transform:none;transition:none}}

/* ---------- バッジ（ギザ丸） ---------- */
.badge{position:relative;display:inline-grid;place-items:center;width:3.4em;height:3.4em;flex:none;vertical-align:middle}
.badge svg{position:absolute;inset:0;width:100%;height:100%;fill:var(--green)}
.badge b{position:relative;font:400 1.45em/1 var(--fd);color:#fff;letter-spacing:.02em;display:flex;align-items:baseline;gap:.05em}
.badge b small{font-size:.5em}
.badge--s{width:2.6em;height:2.6em}
.badge--s b{font-size:1.1em}

/* ---------- 見出し ---------- */
.h2{font-family:var(--fh);font-weight:900;font-size:clamp(1.45rem,3vw,2rem);line-height:1.35;margin:0 0 .9em;display:flex;flex-direction:column;gap:.2em;letter-spacing:.01em}
.h2__en{font:400 .74rem/1 var(--fd);letter-spacing:.16em;color:var(--green)}
.h2--light .h2__en{color:var(--ink)}
.prose h3,.body h3{font-family:var(--fh);font-weight:700;font-size:1.22rem;line-height:1.5;margin:1.7em 0 .55em;padding-left:.7em;border-left:6px solid var(--lime)}
.prose h2 + h3,.prose .h2 + h3{margin-top:.6em}

/* ---------- トップバー ---------- */
.topbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:3px solid var(--lime)}
.topbar__in{display:flex;align-items:center;gap:18px;height:62px}
.topbar__brand img{width:84px;height:auto}
.topbar__series{display:flex;align-items:baseline;gap:.15em;text-decoration:none;color:var(--ink);font-family:var(--fh);font-weight:900;font-size:1.15rem;white-space:nowrap}
.topbar__uri{font:400 1.45rem/1 var(--fd);color:var(--green);letter-spacing:.02em;transform:skewX(-8deg);display:inline-block}
.topbar__en{display:inline-block;width:auto;height:15px;margin-left:.8em;vertical-align:baseline;opacity:.85}
.topbar__dots{margin-left:auto;display:flex;gap:7px}
.topbar__dots a{display:block;padding:6px 1px}
.topbar__dots i{display:block;width:9px;height:9px;border-radius:50%;background:var(--line);transition:transform .2s,background .2s}
.topbar__dots a:hover i{background:var(--yg);transform:scale(1.35)}
.topbar__dots a.on i{background:var(--green);transform:scale(1.5)}
.topbar__count{font:400 1.1rem/1 var(--fd);color:var(--green-d);min-width:3.2em;text-align:right}
.topbar__count small{font-size:.6em;color:var(--mute)}
.index .topbar__count,.notes .topbar__count{display:none}
@media (max-width:720px){
  .topbar__in{height:56px;gap:12px}
  .topbar__brand img{width:64px}
  .topbar__series{font-size:1rem}
  .topbar__en,.topbar__dots{display:none}
  .topbar__count{margin-left:auto}
}

/* ---------- ヒーロー ---------- */
.hero{position:relative;overflow:hidden;background:var(--paper)}
.hero__in{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(20px,4vw,56px);align-items:center;padding-top:clamp(28px,5vw,64px);padding-bottom:clamp(28px,5vw,64px);min-height:clamp(420px,56vh,640px)}
.hero--tall .hero__in{grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr)}
.hero__text{position:relative;z-index:2}
.hero__kicker{display:flex;align-items:center;gap:14px;margin:0 0 .6em;font-family:var(--fh);font-weight:900;font-size:clamp(1.05rem,2vw,1.35rem);color:var(--green-d)}
.hero__h1{font-family:var(--fh);font-weight:900;font-size:clamp(2rem,5.2vw,3.9rem);line-height:1.18;letter-spacing:.005em;margin:0 0 .45em;text-wrap:balance}
.hero__time{display:inline-flex;align-items:center;gap:.5em;margin:0 0 1.2em;padding:.35em 1em .35em .8em;border:2px solid var(--ink);border-radius:999px;font:400 1.15rem/1.3 var(--fd);letter-spacing:.03em;color:var(--ink);background:#fff}
.hero__time .ic{width:1.15em;height:1.15em;color:var(--green)}
.hero__time small{font-family:var(--fb);font-weight:700;font-size:.78em;color:var(--mute)}
.lead{font-size:clamp(1.02rem,1.6vw,1.18rem);font-weight:500;line-height:1.95;max-width:34em}
.lead p{margin:0 0 .9em}
.hero__art{margin:0;position:relative;z-index:1}
.hero__art img{width:100%;height:auto;max-height:70vh;object-fit:contain}
.nw{white-space:nowrap}
.js .hero__art{animation:floatIn .9s cubic-bezier(.2,.7,.2,1) both}
@keyframes floatIn{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.js .hero__art{animation:none}}
.hero__num{position:absolute;right:-.05em;bottom:-.28em;z-index:0;font:400 clamp(9rem,26vw,22rem)/1 var(--fd);color:var(--lime);letter-spacing:-.04em;pointer-events:none;user-select:none;transform:skewX(-6deg);opacity:.9}
@media (max-width:880px){
  .hero__in,.hero--tall .hero__in{grid-template-columns:1fr;min-height:0;gap:10px}
  .hero__art{order:-1;max-width:min(78vw,520px);margin:0 auto}
  .hero--tall .hero__art{max-width:min(62vw,380px)}
  .hero__art img{max-height:48vh}
  .hero__num{font-size:clamp(7rem,34vw,12rem);bottom:-.3em;right:-.08em;opacity:.55}
}

/* ---------- 本文セクション ---------- */
.body{padding-top:clamp(14px,3vw,36px)}
.sec{padding:clamp(22px,4vw,48px) 0}
.sec--cream{background:var(--cream)}
.sec--lime{background:var(--lime-l)}
.photo{margin:1.9em 0}
.photo img{border-radius:var(--r);width:100%;box-shadow:var(--sh)}
.photo figcaption{font-size:.86rem;color:var(--mute);margin-top:.6em;line-height:1.7}
.photo--wide{max-width:min(62rem,100%);margin-left:auto;margin-right:auto}
.photo--plain img{box-shadow:none;border-radius:var(--r-s)}
.grid2{display:grid;gap:16px;grid-template-columns:1fr 1fr;margin:1.9em 0}
.grid2 .photo{margin:0}
@media (max-width:560px){.grid2{grid-template-columns:1fr}}
.note{background:var(--lime-l);border-radius:var(--r);padding:18px 22px;margin:1.7em 0;font-size:.98em}
.note p:last-child{margin-bottom:0}
.note__t{display:block;font-family:var(--fh);font-weight:900;color:var(--green-d);margin-bottom:.3em}
.warn{background:var(--red-l);border:2px solid var(--red);border-radius:var(--r);padding:16px 20px 16px 58px;margin:1.7em 0;position:relative;font-size:.98em}
.warn::before{content:"!";position:absolute;left:18px;top:16px;width:28px;height:28px;border-radius:50%;background:var(--red);color:#fff;font:400 1.2rem/28px var(--fd);text-align:center}
.warn__t{display:block;font-weight:700;color:var(--red);margin-bottom:.2em}
.warn p:last-child{margin-bottom:0}
.quote{border-left:6px solid var(--green);margin:1.8em 0;padding:.35em 1.1em .35em 1.3em;font-family:var(--fh);font-weight:700;font-size:1.08rem;line-height:1.85;background:linear-gradient(90deg,var(--green-l),transparent 70%);border-radius:0 var(--r-s) var(--r-s) 0}
.quote p{margin:0}
.quote cite{display:block;font:500 .78rem/1.6 var(--fb);color:var(--mute);margin-top:.5em;font-style:normal}
.plan{list-style:none;padding:0;margin:1.5em 0 2em;border-top:2px solid var(--ink)}
.plan li{display:grid;grid-template-columns:7.2em 1fr;gap:14px;padding:.75em 0;border-bottom:1px solid var(--line);align-items:baseline}
.plan time,.plan .t{font:400 1.05rem/1.6 var(--fd);color:var(--green-d);letter-spacing:.03em}
.plan li p{margin:0}
@media (max-width:480px){.plan li{grid-template-columns:1fr;gap:2px}}
.kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:1.6em 0}
.kv div{background:var(--cream);border-radius:var(--r-s);padding:14px 16px}
.kv dt{font:400 .72rem/1 var(--fd);letter-spacing:.12em;color:var(--green-d);margin-bottom:.5em}
.kv dd{margin:0;font-family:var(--fh);font-weight:900;font-size:1.35rem;line-height:1.3}
.kv dd small{font-family:var(--fb);font-weight:500;font-size:.72rem;color:var(--mute);display:block;margin-top:.3em}
.tbl{width:100%;border-collapse:collapse;margin:1.4em 0;font-size:.95em}
.tbl th,.tbl td{text-align:left;padding:.6em .8em;border-bottom:1px solid var(--line);vertical-align:top}
.tbl th{background:var(--cream);font-weight:700;white-space:nowrap}
.tbl thead th{background:var(--ink);color:#fff}
.chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:1em 0 1.5em}
.chips li{background:#fff;border:2px solid var(--lime);border-radius:999px;padding:.25em .9em;font-weight:700;font-size:.92em}

/* ---------- HOW TO ---------- */
.howto{padding:clamp(28px,5vw,60px) 0;background:var(--cream)}
.howto__total{margin:-.6em 0 1.4em;font-weight:700;color:var(--green-d)}
.steps{list-style:none;padding:0;margin:0;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));counter-reset:step}
.step{background:#fff;border-radius:var(--r);padding:22px 22px 24px;position:relative;box-shadow:var(--sh);display:flex;flex-direction:column;gap:12px}
.step__n{font:400 3.6rem/1 var(--fd);color:var(--green);letter-spacing:-.02em;transform:skewX(-6deg)}
.step__img{margin:0;background:var(--cream);border-radius:var(--r-s);padding:10px;height:250px}
.step__img img{width:100%;height:100%;object-fit:contain}
.step__t{font-family:var(--fh);font-weight:900;font-size:1.2rem;line-height:1.45;margin:0;padding:0;border:0}
.step__body p{margin:.3em 0 0;font-size:.96em}

/* ---------- URIちゃんポイント ---------- */
.point{padding:clamp(24px,4vw,48px) 0}
.point__in{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:end;max-width:62rem}
.point__girl{margin:0;text-align:center}
.point__girl img{width:120px;margin:0 auto}
.bubble{position:relative;background:var(--green);color:#fff;border-radius:30px;padding:22px 26px 24px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:22px;align-items:center;min-height:120px}
.bubble::before{content:"";position:absolute;left:-14px;bottom:30px;border:12px solid transparent;border-right-color:var(--green);border-left:0}
.bubble__title{margin:0;font-family:var(--fh);font-weight:900;font-size:1.25rem;line-height:1.4;padding-right:22px;border-right:2px solid rgba(255,255,255,.7);min-width:6em;max-width:9em;align-self:stretch;display:flex;align-items:center}
.bubble__body p{margin:0;font-size:.98em;line-height:1.9}
@media (max-width:640px){
  .point__in{grid-template-columns:1fr;gap:8px}
  .point__girl{display:flex;align-items:flex-end;gap:12px;padding-left:8px}
  .point__girl img{width:96px;margin:0}
  .bubble{grid-template-columns:1fr;gap:10px;padding:20px 20px 22px}
  .bubble::before{left:40px;top:-11px;bottom:auto;border:12px solid transparent;border-bottom-color:var(--green);border-top:0}
  .bubble__title{border-right:0;border-bottom:2px solid rgba(255,255,255,.7);padding:0 0 .35em;max-width:none;min-width:0}
  .bubble__title br{display:none}
}

/* ---------- SHOT LIST ---------- */
.shots{padding:clamp(28px,5vw,64px) 0;background:var(--ink);color:#fff}
.shots .h2{color:#fff}
.shots .h2__en{color:var(--lime)}
.shots__lead{max-width:40em;margin:-.4em 0 1.8em;color:#d9d7dc}
.shots__grid{list-style:none;padding:0;margin:0 0 1.8em;display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.shot{background:#fff;color:var(--ink);border-radius:6px;padding:18px 18px 22px;box-shadow:0 16px 36px rgba(0,0,0,.35);transform:rotate(var(--rot,0deg));transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.shot:hover{transform:rotate(0deg) translateY(-4px)}
.shot__label{display:inline-flex;align-items:center;gap:.4em;margin:0 0 .6em;padding:.2em .8em;border-radius:999px;background:var(--lime);font:400 .8rem/1.6 var(--fd);letter-spacing:.1em}
.shot__t{font-family:var(--fh);font-weight:900;font-size:1.18rem;line-height:1.45;margin:0 0 .45em}
.shot__how{margin:0;font-size:.95em;line-height:1.85}
.shot__tip{margin:.7em 0 0;padding-top:.6em;border-top:1px dashed var(--line);font-size:.86em;color:var(--ink-2)}
.shot__tip::before{content:"コツ ";font-weight:700;color:var(--green-d)}
@media (max-width:720px){.shot{transform:none}}
.tags{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;padding:18px 22px;border:2px dashed rgba(255,255,255,.45);border-radius:var(--r)}
.tags__t{margin:0;font-family:var(--fh);font-weight:900;font-size:clamp(1.15rem,2.6vw,1.6rem);color:var(--lime);letter-spacing:.01em}
.tags__btn{margin-left:auto;background:var(--lime);color:var(--ink);border:0;border-radius:999px;padding:.6em 1.3em;font:700 .95rem/1 var(--fb);cursor:pointer;transition:transform .15s,background .2s}
.tags__btn:hover{transform:translateY(-1px);background:#eef26f}
.tags__btn.done{background:var(--green);color:#fff}
@media (max-width:560px){.tags__btn{margin-left:0;width:100%}}

/* ---------- DATA ---------- */
.data{padding:clamp(24px,4vw,48px) 0}
.data__tbl{max-width:var(--measure);margin:0 auto;border-top:2px solid var(--ink)}
.data__tbl table{width:100%;border-collapse:collapse;font-size:.96em}
.data__tbl th,.data__tbl td{text-align:left;padding:.75em .6em;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.75}
.data__tbl th{width:34%;font-weight:700;color:var(--green-d);padding-left:0}
.data .h2{max-width:var(--measure);margin-left:auto;margin-right:auto}

/* ---------- FAQ ---------- */
.faq{padding:clamp(24px,4vw,48px) 0;background:var(--cream)}
.faq .h2,.faq__list{max-width:var(--measure);margin-left:auto;margin-right:auto}
.faq__i{background:#fff;border-radius:var(--r-s);margin:0 0 10px;box-shadow:0 2px 0 var(--line)}
.faq__i summary{cursor:pointer;list-style:none;padding:16px 52px 16px 20px;font-weight:700;position:relative;line-height:1.7}
.faq__i summary::-webkit-details-marker{display:none}
.faq__i summary::before{content:"Q";font:400 1rem/1 var(--fd);color:var(--green);margin-right:.6em}
.faq__i summary::after{content:"";position:absolute;right:20px;top:50%;width:14px;height:14px;background:linear-gradient(var(--green),var(--green)) center/14px 2px no-repeat,linear-gradient(var(--green),var(--green)) center/2px 14px no-repeat;transform:translateY(-50%);transition:transform .25s}
.faq__i[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq__a{padding:0 20px 18px 20px;font-size:.97em}
.faq__a p{margin:0;padding-left:1.6em;position:relative}
.faq__a p::before{content:"A";position:absolute;left:0;top:.1em;font:400 1rem/1.6 var(--fd);color:var(--red)}

/* ---------- 前後ナビ・一覧 ---------- */
.pn{padding:clamp(20px,3vw,40px) 0 0}
.pn__in{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pn__c{display:grid;grid-template-columns:112px minmax(0,1fr);gap:16px;align-items:center;padding:14px;border:2px solid var(--line);border-radius:var(--r);text-decoration:none;color:var(--ink);background:#fff;transition:border-color .2s,transform .2s}
.pn__c:hover{border-color:var(--green);transform:translateY(-2px)}
.pn__c--next{grid-template-columns:minmax(0,1fr) 112px;text-align:right}
.pn__c--next .pn__thumb{order:2}
.pn__c--empty{border:0}
.pn__label{display:block;font:400 .72rem/1 var(--fd);letter-spacing:.12em;color:var(--green-d);margin-bottom:8px}
.pn__thumb{display:block;background:var(--cream);border-radius:var(--r-s);padding:8px;height:104px}
.pn__thumb img{width:100%;height:100%;object-fit:contain}
.pn__t{display:block;font-size:.95em;line-height:1.5}
.pn__k{display:block;font-size:.8em;color:var(--mute);margin-bottom:2px}
.pn__t b{font-family:var(--fh);font-weight:900;font-size:1.08rem;line-height:1.4}
@media (max-width:640px){.pn__in{grid-template-columns:1fr}.pn__c--next{grid-template-columns:112px minmax(0,1fr);text-align:left}.pn__c--next .pn__thumb{order:0}.pn__c--empty{display:none}}
.series{padding:clamp(28px,5vw,56px) 0 clamp(20px,4vw,40px)}
.series__grid{list-style:none;padding:0;margin:0;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.series__c{display:block;padding:12px 14px 14px;border-radius:var(--r-s);background:var(--cream);text-decoration:none;color:var(--ink);border:2px solid transparent;transition:border-color .2s,transform .2s;height:100%}
.series__c:hover{border-color:var(--yg);transform:translateY(-2px)}
.series__c.on{background:var(--green);color:#fff}
.series__n{font:400 1.5rem/1 var(--fd);display:block;color:var(--green-d)}
.series__c.on .series__n{color:var(--lime)}
.series__time{display:block;font:400 .72rem/1.6 var(--fd);letter-spacing:.06em;opacity:.8;margin:4px 0 2px}
.series__t{display:block;font-family:var(--fh);font-weight:900;font-size:.95rem;line-height:1.45}

/* ---------- CTA ---------- */
.cta{background:var(--green);color:#fff;padding:clamp(32px,6vw,72px) 0}
.cta__in{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(20px,4vw,48px);align-items:center}
.cta__k{margin:0 0 .4em;font:400 .8rem/1 var(--fd);letter-spacing:.14em;color:var(--lime)}
.cta__h{font-family:var(--fh);font-weight:900;font-size:clamp(1.4rem,3vw,2.1rem);line-height:1.4;margin:0 0 .7em}
.cta__text p:last-child{margin:0;font-size:.98em}
.cta__btns{display:grid;gap:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:.9em 1.4em;border-radius:999px;font-weight:700;text-decoration:none;transition:transform .15s,background .2s,color .2s;line-height:1.3}
.btn--primary{background:#fff;color:var(--green-d);font-size:1.05rem}
.btn--primary:hover{transform:translateY(-2px);color:var(--green)}
.btn--line2{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.75);font-size:.95rem}
.btn--line2:hover{background:rgba(255,255,255,.14);color:#fff}
@media (max-width:760px){.cta__in{grid-template-columns:1fr}}

/* ---------- フッター ---------- */
.foot{background:var(--ink);color:#d5d3d8;padding:clamp(28px,5vw,56px) 0 32px;font-size:.9em}
.foot__in{display:grid;grid-template-columns:1.2fr 1fr;gap:28px}
.foot__brand img{width:120px;filter:invert(1) brightness(1.6);margin-bottom:12px}
.foot__brand p{margin:0;line-height:1.8}
.foot__links{list-style:none;padding:0;margin:0;display:grid;gap:8px;align-content:start}
.foot__links a{color:#fff;text-decoration-color:rgba(255,255,255,.4)}
.foot__links a:hover{color:var(--lime)}
.foot__copy{grid-column:1/-1;margin:16px 0 0;padding-top:16px;border-top:1px solid rgba(255,255,255,.14);font-size:.78em;color:#9d9aa5}
@media (max-width:640px){.foot__in{grid-template-columns:1fr}}

/* ---------- 目次ページ ---------- */
.cover{position:relative;overflow:hidden;background:var(--paper)}
.cover__in{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(16px,4vw,48px);align-items:center;padding-top:clamp(24px,5vw,56px);padding-bottom:clamp(24px,5vw,56px)}
.cover__title img{width:min(100%,640px)}
.cover__sub{font-family:var(--fh);font-weight:900;font-size:clamp(1.3rem,3vw,2rem);margin:.6em 0 .4em;line-height:1.4}
.cover__en{font:400 .9rem/1 var(--fd);letter-spacing:.16em;color:var(--green);margin:0 0 1.2em}
.cover__staff{margin:0;text-align:center}
.cover__staff img{width:min(100%,420px);margin:0 auto}
.js .cover__staff{animation:floatIn .9s cubic-bezier(.2,.7,.2,1) both}
@media (max-width:760px){.cover__in{grid-template-columns:1fr}.cover__staff{order:-1}.cover__staff img{width:min(62vw,300px)}}
.manifesto{background:var(--lime-l);padding:clamp(28px,5vw,64px) 0}
.manifesto__in{max-width:var(--measure);margin:0 auto;font-family:var(--fh);font-weight:700;font-size:clamp(1.02rem,1.7vw,1.22rem);line-height:2.1}
.manifesto__in p{margin:0 0 1.2em}
.manifesto__in p:last-child{margin:0}
.manifesto__in .big{font-weight:900;font-size:1.25em;line-height:1.7}
.cards{list-style:none;padding:0;margin:0;display:grid;gap:22px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.card a{display:flex;flex-direction:column;height:100%;background:#fff;border-radius:var(--r);overflow:hidden;text-decoration:none;color:var(--ink);box-shadow:var(--sh);border:2px solid transparent;transition:transform .25s,border-color .25s}
.card a:hover{transform:translateY(-4px);border-color:var(--green)}
.card__art{display:block;background:var(--cream);height:210px;padding:16px}
.card__art img{width:100%;height:100%;object-fit:contain}
.card__meta{display:flex;align-items:center;gap:12px;padding:16px 18px 0}
.card__time{display:inline-flex;align-items:center;gap:.4em;font:400 .92rem/1 var(--fd);letter-spacing:.03em;color:var(--ink-2)}
.card__time .ic{color:var(--green)}
.card__k{display:block;padding:12px 18px 0;font-size:.85em;color:var(--green-d);font-weight:700}
.card__t{display:block;padding:2px 18px 0;font-family:var(--fh);font-weight:900;font-size:1.3rem;line-height:1.4}
.card__d{display:block;padding:8px 18px 20px;font-size:.88em;line-height:1.8;color:var(--ink-2)}
.index .sec .h2{max-width:none}

/* ---------- 制作メモ ---------- */
.notes__in{max-width:52rem;padding-top:40px;padding-bottom:80px}
.notes h1{font-family:var(--fh);font-weight:900;font-size:1.8rem;line-height:1.4}
.notes h2{font-family:var(--fh);font-weight:900;font-size:1.3rem;margin:2.2em 0 .6em;padding-bottom:.3em;border-bottom:3px solid var(--lime)}
.notes h3{font-size:1.05rem;margin:1.6em 0 .4em}
.notes table{width:100%;border-collapse:collapse;font-size:.9em}
.notes th,.notes td{text-align:left;padding:.5em .7em;border-bottom:1px solid var(--line);vertical-align:top}
.notes th{background:var(--cream)}
.notes .tag{display:inline-block;padding:.1em .6em;border-radius:999px;font-size:.78em;font-weight:700;background:var(--lime)}
.notes .tag--red{background:var(--red);color:#fff}
.notes .tag--green{background:var(--green);color:#fff}
.notes code{background:var(--cream);padding:.1em .4em;border-radius:4px;font-size:.9em}
.notes__toc{columns:2;gap:24px;font-size:.95em}
@media (max-width:560px){.notes__toc{columns:1}}
