/* =========================================================
   ReZIBUN 下層ページ（記事・一覧）専用スタイル
   トップページ（ReZIBUN_LP.html）のスタイルの上に重ねて使います
   ========================================================= */
.rzb .sub-main{position:relative;z-index:2}
.rzb .sub-main > section{border-top:0}

/* ---------- パンくず ---------- */
.rzb .crumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--sub);margin-bottom:26px}
.rzb .crumb a{border-bottom:1.5px solid transparent;transition:border-color .2s,color .2s}
.rzb .crumb a:hover{color:var(--text);border-color:var(--yellow)}
.rzb .crumb i{width:6px;height:6px;border-right:1.8px solid currentColor;border-bottom:1.8px solid currentColor;transform:rotate(-45deg);opacity:.6}

/* ---------- 記事ヒーロー ---------- */
.rzb .ar-hero{position:relative;padding:48px 0 70px;overflow:hidden}
.rzb .ar-hero-in{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.rzb .ar-chip{display:inline-flex;align-items:center;gap:8px;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:12px;letter-spacing:.16em;padding:4px 14px;background:var(--c);border:2px solid var(--line);border-radius:999px;margin-bottom:18px}
.rzb .ar-chip.dark{color:#fff}
.rzb .ar-title{font-family:var(--f-head);font-weight:900;font-size:clamp(30px,4.4vw,54px);line-height:1.35;letter-spacing:.01em}
.rzb .ar-title .mk{background:linear-gradient(transparent 60%,color-mix(in srgb,var(--c) 80%,#fff) 60%);padding:0 .06em;background-size:0% 100%;background-repeat:no-repeat;transition:background-size 1s cubic-bezier(.6,0,.2,1) .5s}
.rzb .ar-hero.go .ar-title .mk{background-size:100% 100%}
.rzb .ar-sub{font-family:var(--f-head);font-weight:700;font-size:16px;color:var(--sub);margin-top:14px}
.rzb .ar-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:22px;font-size:13px;color:var(--sub)}
.rzb .ar-meta time{font-family:"Baloo 2",sans-serif;font-weight:800;font-size:15px;letter-spacing:.06em;color:var(--text)}
.rzb .ar-meta .person{font-weight:800;color:var(--text)}
.rzb .ar-tags{display:flex;flex-wrap:wrap;gap:6px}
.rzb .ar-tags span{font-size:12px;font-weight:700;background:#fff;border:1.5px solid color-mix(in srgb,var(--line) 30%,transparent);border-radius:999px;padding:1px 11px}
/* ポラロイド写真 */
.rzb .polaroid{position:relative;background:#fff;padding:12px 12px 46px;border:var(--bw) solid var(--line);box-shadow:0 10px 0 var(--line);transform:rotate(2.5deg)}
.rzb .polaroid::before{content:"";position:absolute;top:-18px;left:50%;width:110px;height:32px;margin-left:-55px;background:color-mix(in srgb,var(--c) 70%,transparent);transform:rotate(-4deg);z-index:2}
.rzb .polaroid .ph{aspect-ratio:4/3;background:var(--c) center/cover no-repeat;border:2px solid var(--line)}
.rzb .polaroid .ph.noimg{background:color-mix(in srgb,var(--c) 40%,#fff);display:flex;align-items:center;justify-content:center}
.rzb .polaroid .ph.noimg svg{width:44%;height:auto;opacity:.85}
.rzb .polaroid figcaption{position:absolute;left:0;right:0;bottom:12px;text-align:center;font-family:var(--f-head);font-weight:800;font-size:14px}
.rzb .polaroid .back{position:absolute;inset:0;background:color-mix(in srgb,var(--c) 45%,#fff);border:var(--bw) solid var(--line);transform:rotate(-6deg) translate(-14px,10px);z-index:-1}
/* ヒーローの登場 */
.rzb .ar-hero .crumb,.rzb .ar-hero .ar-chip,.rzb .ar-hero .ar-title,.rzb .ar-hero .ar-sub,.rzb .ar-hero .ar-meta{opacity:0;translate:0 24px;transition:opacity .5s,translate .8s cubic-bezier(.2,1.3,.4,1)}
.rzb .ar-hero .polaroid{opacity:0;translate:60px 30px;rotate:12deg;transition:opacity .5s .2s,translate 1s cubic-bezier(.2,1.3,.4,1) .2s,rotate 1s cubic-bezier(.2,1.3,.4,1) .2s}
.rzb .ar-hero.go .crumb,.rzb .ar-hero.go .ar-chip,.rzb .ar-hero.go .ar-title,.rzb .ar-hero.go .ar-sub,.rzb .ar-hero.go .ar-meta,.rzb .ar-hero.go .polaroid{opacity:1;translate:0 0;rotate:0deg}
.rzb .ar-hero.go .ar-chip{transition-delay:.08s}.rzb .ar-hero.go .ar-title{transition-delay:.16s}.rzb .ar-hero.go .ar-sub{transition-delay:.24s}.rzb .ar-hero.go .ar-meta{transition-delay:.32s}

/* ---------- 本文 ---------- */
.rzb .ar-body{padding:70px 0 90px;background:#fff;position:relative}
.rzb .ar-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:64px;align-items:start}
.rzb .ar-main{max-width:720px}
.rzb .ar-main > * + *{margin-top:26px}
.rzb .ar-main p.t{font-size:16px;line-height:2.15;color:var(--text)}
.rzb .ar-main p.t.note{font-size:12.5px;color:var(--red);border:1.5px dashed var(--red);border-radius:10px;padding:6px 12px;display:inline-block}
.rzb .ar-main h2.h{display:flex;align-items:center;gap:12px;font-family:var(--f-head);font-weight:900;font-size:clamp(21px,2.4vw,26px);line-height:1.5;margin-top:56px;scroll-margin-top:110px}
.rzb .ar-main h2.h::before{content:"";flex:none;width:16px;height:16px;border:var(--bw) solid var(--line);border-radius:4px;background:var(--c);transform:rotate(12deg)}
/* 引用：ちぎった紙 */
.rzb .ar-quote{position:relative;margin:44px 0 44px 10px!important;padding:30px 34px 34px;background:color-mix(in srgb,var(--c) 30%,#fff);transform:rotate(-1deg);
  clip-path:polygon(0 3%,8% 0,25% 4%,46% 0,70% 3%,92% 0,100% 5%,98% 50%,100% 95%,80% 100%,56% 96%,32% 100%,10% 96%,0 100%,2% 50%)}
.rzb .ar-quote p{font-family:var(--f-head);font-weight:900;font-size:clamp(19px,2.2vw,24px);line-height:1.7}
.rzb .ar-quote p::before{content:"“";font-family:"Baloo 2",sans-serif;font-size:2.2em;line-height:0;vertical-align:-.45em;margin-right:4px;color:color-mix(in srgb,var(--c) 70%,var(--ink))}
.rzb .ar-quote cite{display:block;margin-top:10px;font-style:normal;font-size:13px;font-weight:700;color:var(--sub)}
/* Q&A */
.rzb .ar-qa{display:flex;flex-direction:column;gap:22px}
.rzb .qa-q{display:flex;gap:12px;align-items:flex-start;font-weight:800;font-size:15px;line-height:1.8}
.rzb .qa-q b,.rzb .qa-a b{flex:none;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:"Baloo 2",sans-serif;font-size:15px;border:2px solid var(--line)}
.rzb .qa-q b{background:var(--ink);color:var(--cream)}
.rzb .qa-a{display:flex;gap:12px;align-items:flex-start;margin-top:10px}
.rzb .qa-a b{background:var(--c)}
.rzb .qa-a p{position:relative;flex:1;background:var(--cream);border-radius:0 18px 18px 18px;padding:14px 18px;font-size:15px;line-height:2}
/* 写真コラージュ */
.rzb .ar-photos{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;padding:18px 0}
.rzb .ar-photos figure{margin:0;background:#fff;padding:8px;border:2.5px solid var(--line);box-shadow:0 6px 0 var(--line);transition:transform .35s cubic-bezier(.2,1.4,.4,1)}
.rzb .ar-photos figure div{aspect-ratio:4/3;background:#ddd center/cover no-repeat}
.rzb .ar-photos figure:nth-child(1){grid-column:1/4;transform:rotate(-1.5deg)}
.rzb .ar-photos figure:nth-child(2){grid-column:4/7;margin-top:40px;transform:rotate(2.5deg);align-self:end}
.rzb .ar-photos figure:nth-child(3){grid-column:2/5;margin-top:-50px;transform:rotate(-2deg)}
.rzb .ar-photos.one figure:nth-child(1){grid-column:1/6}
.rzb .ar-photos figure:hover{transform:rotate(0) scale(1.03);z-index:2}
/* 情報チケット */
.rzb .ar-info{position:relative;border:var(--bw) solid var(--line);border-radius:20px;background:#fff;overflow:hidden}
.rzb .ar-info::before{content:"";position:absolute;left:0;top:0;bottom:0;width:14px;background:var(--c);border-right:2.5px dashed var(--line)}
.rzb .ar-info dl{display:grid;grid-template-columns:130px 1fr;margin:0 0 0 14px}
.rzb .ar-info dt,.rzb .ar-info dd{padding:14px 20px;border-top:1.5px dashed color-mix(in srgb,var(--line) 22%,transparent);font-size:14.5px;line-height:1.8}
.rzb .ar-info dt{font-weight:800;color:var(--sub);font-size:13px}
.rzb .ar-info dd{margin:0;font-weight:500}
.rzb .ar-info dt:first-of-type,.rzb .ar-info dd:first-of-type{border-top:0}
/* 手順 */
.rzb .ar-steps{counter-reset:st;display:flex;flex-direction:column;gap:0;position:relative}
.rzb .ar-steps li{counter-increment:st;position:relative;padding:12px 0 22px 58px;font-size:15.5px;font-weight:700;line-height:1.8}
.rzb .ar-steps li::before{content:counter(st);position:absolute;left:0;top:6px;width:38px;height:38px;border-radius:50%;background:var(--c);border:2.5px solid var(--line);display:flex;align-items:center;justify-content:center;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:16px;z-index:1}
.rzb .ar-steps li:not(:last-child)::after{content:"";position:absolute;left:18px;top:44px;bottom:-6px;border-left:2.5px dashed color-mix(in srgb,var(--line) 40%,transparent)}
/* サイド：目次 */
.rzb .ar-side{position:sticky;top:110px;display:flex;flex-direction:column;gap:18px}
.rzb .toc{border:2.5px solid var(--line);border-radius:18px;padding:18px 18px 12px;background:var(--cream)}
.rzb .toc b{display:block;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:12px;letter-spacing:.18em;margin-bottom:8px}
.rzb .toc a{display:flex;gap:8px;align-items:flex-start;padding:7px 0;font-size:13px;font-weight:700;color:var(--sub);line-height:1.6;border-top:1px dashed color-mix(in srgb,var(--line) 18%,transparent);transition:color .2s}
.rzb .toc a::before{content:"";flex:none;width:7px;height:7px;margin-top:.55em;border-radius:50%;background:color-mix(in srgb,var(--line) 25%,transparent);transition:background .2s,transform .2s}
.rzb .toc a.on{color:var(--text)}
.rzb .toc a.on::before{background:var(--red);transform:scale(1.4)}
.rzb .toc a:first-of-type{border-top:0}
.rzb .side-cta{border:2.5px solid var(--line);border-radius:18px;padding:18px;background:color-mix(in srgb,var(--c) 30%,#fff)}
.rzb .side-cta p{font-weight:800;font-size:14px;line-height:1.7;margin-bottom:12px}
.rzb .side-cta .btn{display:block;text-align:center;padding:11px 14px;font-size:13.5px}
.rzb .share{display:flex;gap:8px;align-items:center;font-size:12px;font-weight:800;color:var(--sub)}
.rzb .share button{width:36px;height:36px;border-radius:50%;border:2px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,transform .2s}
.rzb .share button:hover{background:var(--yellow);transform:translateY(-2px)}
.rzb .share svg{width:17px;height:17px}

/* ---------- 前後ナビ ---------- */
.rzb .ar-pn{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:70px}
.rzb .pn{display:flex;align-items:center;gap:14px;padding:16px 18px;border:2.5px solid var(--line);border-radius:18px;background:#fff;transition:transform .2s,box-shadow .2s}
.rzb .pn:hover{transform:translateY(-3px);box-shadow:0 6px 0 var(--line)}
.rzb .pn .th{flex:none;width:74px;height:58px;border-radius:10px;border:2px solid var(--line);background:color-mix(in srgb,var(--c) 45%,#fff) center/cover no-repeat}
.rzb .pn small{display:block;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:11px;letter-spacing:.14em;color:var(--sub)}
.rzb .pn span{font-weight:800;font-size:14px;line-height:1.55}
.rzb .pn.next{flex-direction:row-reverse;text-align:right}

/* ---------- CTA帯 ---------- */
.rzb .ar-cta{background:var(--yellow);padding:84px 0;position:relative;text-align:center}
.rzb .ar-cta h2{font-family:var(--f-head);font-weight:900;font-size:clamp(26px,3.6vw,40px);line-height:1.45}
.rzb .ar-cta p{margin:12px auto 30px;font-size:15px;max-width:560px}
.rzb .ar-cta .btns{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}

/* ---------- 関連 ---------- */
.rzb .rel{padding:84px 0 96px;position:relative}
.rzb .rel-h{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:26px}
.rzb .rel-h h2{font-family:"Baloo 2",sans-serif;font-weight:800;font-size:30px;letter-spacing:.06em;line-height:1}
.rzb .rel-h h2 span{display:block;font-family:var(--f-head);font-size:13px;letter-spacing:.02em;color:var(--sub);margin-top:6px}

/* ---------- 共通カード ---------- */
.rzb .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.rzb .c-card{display:flex;flex-direction:column;background:#fff;border:var(--bw) solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 5px 0 var(--line);transition:transform .3s cubic-bezier(.2,1,.3,1),box-shadow .3s}
.rzb .c-card:hover{transform:translateY(-6px) rotate(-.6deg);box-shadow:0 11px 0 var(--line)}
.rzb .c-ph{position:relative;aspect-ratio:4/3;background:color-mix(in srgb,var(--c) 40%,#fff) center/cover no-repeat;border-bottom:var(--bw) solid var(--line);overflow:hidden}
.rzb .c-ph.noimg{display:flex;align-items:center;justify-content:center}
.rzb .c-ph.noimg svg{width:36%;opacity:.8}
.rzb .c-ph .tagx{position:absolute;top:12px;left:12px;background:#fff;border:2px solid var(--line);border-radius:999px;padding:2px 12px;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:10.5px;letter-spacing:.14em;z-index:1}
.rzb .c-ph.quote::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 35%,rgba(27,26,24,.72))}
.rzb .c-ph .qt{position:absolute;left:16px;right:16px;bottom:14px;z-index:1;color:#fff;font-family:var(--f-head);font-weight:900;font-size:16.5px;line-height:1.6}
.rzb .c-bd{padding:16px 18px 20px;display:flex;flex-direction:column;gap:6px;flex:1}
.rzb .c-bd time,.rzb .c-bd .cat{font-family:"Baloo 2",sans-serif;font-weight:800;font-size:11.5px;letter-spacing:.12em;color:var(--sub)}
.rzb .c-bd h3{font-family:var(--f-head);font-weight:900;font-size:18px;line-height:1.5}
.rzb .c-bd p{font-size:13px;line-height:1.85;color:var(--sub)}
.rzb .c-bd .go{margin-top:auto;padding-top:10px;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:800;color:var(--text);transition:gap .2s}
.rzb .c-card:hover .go{gap:12px}
.rzb .c-bd .go svg{width:15px;height:15px}

/* ---------- 一覧ページ ---------- */
.rzb .ls-hero{padding:56px 0 40px;position:relative;overflow:hidden}
.rzb .ls-big{font-family:"Baloo 2",sans-serif;font-weight:800;font-size:clamp(64px,11vw,150px);line-height:.9;letter-spacing:.01em;color:var(--text)}
.rzb .ls-big span{display:inline-block;opacity:0;translate:0 40px;rotate:8deg;transition:opacity .4s,translate .8s cubic-bezier(.2,1.5,.4,1),rotate .8s cubic-bezier(.2,1.5,.4,1)}
.rzb .ls-hero.go .ls-big span{opacity:1;translate:0 0;rotate:0deg}
.rzb .ls-ja{font-family:var(--f-head);font-weight:900;font-size:clamp(20px,2.4vw,26px);margin-top:14px}
.rzb .ls-ja .mk{background:linear-gradient(transparent 60%,var(--yellow) 60%)}
.rzb .ls-lead{font-size:15px;color:var(--sub);margin-top:10px}
.rzb .ls-tabs{position:relative;display:inline-flex;flex-wrap:wrap;gap:8px;margin-top:30px;padding:5px;border:2.5px solid var(--line);border-radius:999px;background:#fff}
.rzb .ls-tabs button{position:relative;z-index:1;font:inherit;font-weight:800;font-size:13.5px;padding:8px 18px;border:0;background:transparent;border-radius:999px;cursor:pointer;color:var(--sub);transition:color .25s}
.rzb .ls-tabs button[aria-pressed="true"]{color:var(--cream)}
.rzb .ls-tabs .pill-bg{position:absolute;z-index:0;top:5px;bottom:5px;left:0;width:0;border-radius:999px;background:var(--ink);transition:left .45s cubic-bezier(.2,1.3,.4,1),width .45s cubic-bezier(.2,1.3,.4,1)}
.rzb .ls-body{padding:40px 0 100px;position:relative}
.rzb .ls-count{font-family:"Baloo 2",sans-serif;font-weight:800;font-size:13px;letter-spacing:.14em;color:var(--sub);margin-bottom:18px}
.rzb .cards .c-card.hide{display:none}
.rzb .cards .c-card.pop{animation:cardPop .55s cubic-bezier(.2,1.4,.4,1) both}
@keyframes cardPop{from{opacity:0;transform:translateY(30px) scale(.94) rotate(-2deg)}to{opacity:1;transform:none}}
.rzb .ls-news{border-top:2px dashed color-mix(in srgb,var(--line) 30%,transparent)}
.rzb .ls-news a{display:grid;grid-template-columns:110px auto 1fr 28px;align-items:center;gap:18px;padding:22px 8px;border-bottom:2px dashed color-mix(in srgb,var(--line) 30%,transparent);transition:background .2s,padding .3s}
.rzb .ls-news a:hover{background:color-mix(in srgb,var(--c) 18%,transparent);padding-left:18px}
.rzb .ls-news time{font-family:"Baloo 2",sans-serif;font-weight:800;font-size:15px}
.rzb .ls-news .tg{font-size:11.5px;font-weight:800;border:2px solid var(--line);border-radius:999px;padding:1px 12px;background:color-mix(in srgb,var(--c) 45%,#fff);justify-self:start}
.rzb .ls-news span.tt{font-weight:700;font-size:15px;line-height:1.6}
.rzb .ls-news svg{width:20px;height:20px;transition:transform .2s}
.rzb .ls-news a:hover svg{transform:translateX(4px)}
.rzb .ls-news a.hide{display:none}

/* ---------- ページ遷移（紙がめくれる） ---------- */
.pt{position:fixed;inset:0;z-index:200;pointer-events:none;display:grid;grid-template-columns:repeat(5,1fr)}
.pt i{display:block;transform-origin:top;transform:scaleY(0)}
.pt i:nth-child(1){background:#ffd93b}.pt i:nth-child(2){background:#ff7a1a}.pt i:nth-child(3){background:#ff6fae}.pt i:nth-child(4){background:#59d2ff}.pt i:nth-child(5){background:#20bf6b}
.pt.in i{animation:ptIn .5s cubic-bezier(.7,0,.3,1) forwards}
.pt.out i{transform:scaleY(1);transform-origin:bottom;animation:ptOut .6s cubic-bezier(.7,0,.3,1) forwards}
.pt i:nth-child(2){animation-delay:.05s!important}.pt i:nth-child(3){animation-delay:.1s!important}.pt i:nth-child(4){animation-delay:.15s!important}.pt i:nth-child(5){animation-delay:.2s!important}
@keyframes ptIn{to{transform:scaleY(1)}}
@keyframes ptOut{to{transform:scaleY(0)}}
@media (prefers-reduced-motion:reduce){.pt{display:none}.rzb .ar-hero *,.rzb .ls-big span{opacity:1!important;translate:none!important;rotate:none!important}}

/* ---------- レスポンシブ ---------- */
@media(max-width:960px){
  .rzb .ar-grid{grid-template-columns:1fr}
  .rzb .ar-side{position:static;order:-1}
  .rzb .toc{display:none}
  .rzb .side-cta{display:none}
}
@media(max-width:860px){
  .rzb .ar-hero-in{grid-template-columns:1fr;gap:40px}
  .rzb .polaroid{max-width:460px;margin:0 auto}
  .rzb .cards{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .rzb .cards{grid-template-columns:1fr}
  .rzb .ar-pn{grid-template-columns:1fr}
  .rzb .ar-info dl{grid-template-columns:1fr}
  .rzb .ar-info dt{padding-bottom:0}
  .rzb .ar-info dd{border-top:0;padding-top:4px}
  .rzb .ar-photos{grid-template-columns:1fr}
  .rzb .ar-photos figure:nth-child(n){grid-column:1;margin-top:0}
  .rzb .ls-news a{grid-template-columns:auto 1fr;gap:6px 12px}
  .rzb .ls-news span.tt{grid-column:1/-1}
  .rzb .ls-news svg{display:none}
  .rzb .ar-body{padding:48px 0 70px}
}

/* 調整 */
.rzb .polaroid{width:100%}
.rzb .ar-title{font-size:clamp(28px,3.6vw,46px);word-break:auto-phrase;text-wrap:balance}

@media(max-width:860px){.rzb .polaroid{width:calc(100% - 28px)}}

/* =========================================================
   JOURNAL：雑誌のコラムのような記事
   ========================================================= */
.rzb .jr{background:#fff}
.rzb .jr-hero{position:relative;background:var(--cream);padding:40px 0 150px;text-align:center;overflow:hidden}
.rzb .jr-hero .crumb{justify-content:center}
.rzb .jr-kicker{display:inline-flex;align-items:center;gap:14px;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:13px;letter-spacing:.16em;margin:10px 0 22px}
.rzb .jr-no{background:var(--ink);color:var(--cream);border-radius:999px;padding:2px 12px}
.rzb .jr-cat{color:color-mix(in srgb,var(--c) 65%,var(--ink))}
.rzb .jr-kicker time{color:var(--sub)}
.rzb .jr-title{font-family:var(--f-head);font-weight:900;font-size:clamp(28px,4vw,48px);line-height:1.5;max-width:880px;margin:0 auto;word-break:auto-phrase;text-wrap:balance}
.rzb .jr-title::before,.rzb .jr-title::after{font-family:"Baloo 2",sans-serif;color:var(--c);font-size:1.3em;line-height:0;vertical-align:-.25em}
.rzb .jr-title::before{content:"“";margin-right:.1em}
.rzb .jr-title::after{content:"”";margin-left:.1em}
.rzb .jr-by{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 18px;margin-top:22px;font-size:13.5px;color:var(--sub)}
.rzb .jr-by b{color:var(--text);font-weight:800}
.rzb .jr-cover{margin:-110px 0 0;position:relative;z-index:2}
.rzb .jr-cover-ph{aspect-ratio:16/8;max-width:1000px;margin:0 auto;background:#ddd center/cover no-repeat;border:var(--bw) solid var(--line);border-radius:4px;box-shadow:0 10px 0 var(--line);position:relative;
  clip-path:inset(0 50% 0 50%);transition:clip-path 1.1s cubic-bezier(.7,0,.2,1) .25s}
.rzb .jr.go .jr-cover-ph{clip-path:inset(0 0 0 0)}
.rzb .jr-cover .wrap{position:relative}
.rzb .jr-cover .wrap::before{content:"";position:absolute;top:-16px;left:50%;width:140px;height:34px;margin-left:-70px;background:color-mix(in srgb,var(--c) 70%,transparent);transform:rotate(-3deg);z-index:3}
.rzb .jr-hero .jr-kicker,.rzb .jr-hero .jr-title,.rzb .jr-hero .jr-by{opacity:0;translate:0 22px;transition:opacity .5s,translate .8s cubic-bezier(.2,1.2,.4,1)}
.rzb .jr.go .jr-kicker,.rzb .jr.go .jr-title,.rzb .jr.go .jr-by{opacity:1;translate:0 0}
.rzb .jr.go .jr-title{transition-delay:.1s}.rzb .jr.go .jr-by{transition-delay:.2s}
/* 本文カラム */
.rzb .jr-body{padding:70px 0 90px}
.rzb .jr-col{max-width:720px}
.rzb .jr-col > * + *{margin-top:24px}
.rzb .jr-lead{font-family:var(--f-head);font-weight:700;font-size:clamp(17px,1.8vw,19px);line-height:2.1;color:var(--text);padding-bottom:30px;border-bottom:1.5px solid color-mix(in srgb,var(--line) 15%,transparent)}
.rzb .jr-lead::first-letter{float:left;font-family:var(--f-head);font-weight:900;font-size:3.4em;line-height:1;margin:6px 10px 0 0;padding:4px 10px 8px;background:var(--c);border:2.5px solid var(--line);border-radius:8px;transform:rotate(-4deg)}
.rzb .jr-prof{display:flex;gap:18px;align-items:center;padding:18px 20px;background:var(--cream);border-radius:16px;margin-top:30px!important}
.rzb .jr-prof-ph{flex:none;width:76px;height:76px;border-radius:50%;background:#ddd center/cover no-repeat;border:2.5px solid var(--line)}
.rzb .jr-prof-lb{display:block;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:10.5px;letter-spacing:.2em;color:var(--sub)}
.rzb .jr-prof b{font-weight:900;font-size:16px;margin-right:8px}
.rzb .jr-prof small{font-size:12px;color:var(--sub);font-weight:700}
.rzb .jr-prof p{font-size:13px;line-height:1.8;color:var(--sub);margin-top:4px}
.rzb .jr-col h2.h{display:block;font-family:var(--f-head);font-weight:900;font-size:clamp(20px,2.3vw,25px);line-height:1.6;margin-top:64px;padding-left:0;scroll-margin-top:110px}
.rzb .jr-col h2.h::before{content:"";display:block;width:36px;height:5px;border-radius:3px;background:var(--c);margin-bottom:14px;border:0;transform:none}
.rzb .jr-ask{font-weight:800;font-size:15.5px;line-height:1.9;color:var(--text);margin-top:36px!important}
.rzb .jr-ask::before{content:"――";color:color-mix(in srgb,var(--c) 65%,var(--ink));margin-right:4px;letter-spacing:-.1em}
.rzb .jr-say{font-size:16px;line-height:2.2;color:var(--text);margin-top:14px!important}
.rzb .jr-fig{margin:44px -40px!important}
.rzb .jr-fig div{aspect-ratio:3/2;background:#ddd center/cover no-repeat;border-radius:4px}
.rzb .jr-fig figcaption{margin-top:10px;font-size:12.5px;color:var(--sub);padding-left:40px;position:relative}
.rzb .jr-fig figcaption::before{content:"";position:absolute;left:14px;top:.8em;width:18px;height:1.5px;background:var(--sub)}
.rzb .jr .ar-quote{margin:52px -20px!important;padding:40px 44px 44px;text-align:center;transform:none;background:color-mix(in srgb,var(--c) 22%,#fff)}
.rzb .jr .ar-quote p{font-size:clamp(21px,2.6vw,28px);line-height:1.7}
.rzb .jr .ar-quote p::before{display:none}
.rzb .jr .ar-quote cite{margin-top:14px}
.rzb .jr-col p.t.note{display:block}
.rzb .jr-end{display:flex;align-items:center;gap:16px;margin-top:70px!important}
.rzb .jr-end span{flex:1;height:1.5px;background:color-mix(in srgb,var(--line) 15%,transparent)}
.rzb .jr-end img{width:26px}
.rzb .jr-tags{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.rzb .jr-tags span{font-size:12.5px;font-weight:700;background:var(--cream);border-radius:999px;padding:3px 14px}
.rzb .jr .share{justify-content:center}
@media(max-width:780px){
  .rzb .jr-hero{padding-bottom:110px}
  .rzb .jr-cover{margin-top:-80px}
  .rzb .jr-cover-ph{aspect-ratio:4/3}
  .rzb .jr-fig{margin:36px 0!important}
  .rzb .jr .ar-quote{margin:40px 0!important;padding:30px 24px 32px}
  .rzb .jr-body{padding:50px 0 70px}
}
.rzb .jr-lead::first-letter{float:none;font-size:inherit;margin:0;padding:0;background:none;border:0;transform:none}
.rzb .jr-lead{position:relative;padding-top:26px}
.rzb .jr-lead::before{content:"INTRODUCTION";position:absolute;top:0;left:0;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:11px;letter-spacing:.22em;color:color-mix(in srgb,var(--c) 60%,var(--ink))}

/* =========================================================
   ヘッダー：引き締め（全ページ共通）
   ========================================================= */
.rzb > .bar:first-of-type{height:4px}
.rzb header.hd{border-bottom:1.5px solid var(--line);background:color-mix(in srgb,var(--cream) 92%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.rzb .hd-in{padding:8px 0;min-height:60px}
.rzb .brand{gap:2px}
.rzb .brand-logo{height:24px}
.rzb .brand .tl{font-size:9.5px;letter-spacing:.06em;color:var(--sub);font-weight:700}
.rzb .gnav{gap:2px}
.rzb .gnav a{font-size:12px;letter-spacing:.12em;padding:6px 12px;border:0;color:var(--sub);position:relative;background:none!important}
.rzb .gnav a::after{content:"";position:absolute;left:12px;right:12px;bottom:1px;height:2px;border-radius:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.6,0,.2,1)}
.rzb .gnav a:hover,.rzb .gnav a.cur{color:var(--text)}
.rzb .gnav a:hover::after,.rzb .gnav a.cur::after{transform:scaleX(1)}
.rzb .gnav a.cta{background:var(--ink)!important;color:var(--cream);border:0;box-shadow:none;padding:8px 18px;margin-left:12px;font-size:11.5px;transition:background .2s,transform .2s}
.rzb .gnav a.cta::after{display:none}
.rzb .gnav a.cta:hover{background:var(--red)!important;transform:translateY(-1px)}
/* はさみの線：ヘッダーの下端にぴったり */
.rzb .snip{bottom:-8px;height:12px}
.rzb .snip::before{top:6px;border-top:1.5px dashed rgba(27,26,24,.25)}
.rzb .snip .cut{top:5px;height:3px;border:0;border-radius:0 3px 3px 0}
.rzb .snip .sc svg{width:20px;height:20px}
.rzb .snip .sc{top:-3px}
.rzb .menu-btn{width:40px;height:40px;border-width:2px;box-shadow:none;border-radius:10px}
.rzb .menu-btn::before{top:12px}.rzb .menu-btn::after{top:26px}
@media(max-width:960px){.rzb .gnav a.cta{margin:8px 0 0}}
.rzb .bar{height:4px!important}

/* メンバーカード：「プロフィールを見る」を同じ高さにそろえる */
.rzb .members{align-items:stretch}
.rzb button.mem{height:100%}
.rzb .mem .bd{display:flex;flex-direction:column;align-items:flex-start;flex:1;gap:8px}
.rzb .mem .ro{margin:0}
.rzb .mem-more{margin-top:auto!important;padding-top:14px;width:100%;border-top:1.5px dashed color-mix(in srgb,var(--line) 20%,transparent)}

/* 虹色の帯・はさみの帯：トーンを落とす */
.rzb .bar{opacity:.5;filter:saturate(.75)}
.rzb .snip .cut{opacity:.55;filter:saturate(.75)}

/* ロゴを大きく */
.rzb .brand-logo{height:32px}
.rzb .brand{gap:4px}
.rzb .brand .tl{font-size:10px}
@media(max-width:520px){.rzb .brand-logo{height:26px}}

/* KV：ピンクのテープとボタンが重ならないように */
@media(min-width:901px){.rzb .kv-bottom{margin-top:78px;position:relative;z-index:4}}
@media(min-width:901px){.rzb .kv-ribbon.r1{top:40%!important}}
@media(min-width:901px){.rzb .kv-ribbon.r1{top:30%!important}}

/* =========================================================
   スマホ：スマートに
   ========================================================= */
@media(max-width:700px){
  .rzb{--bw:2px}
  .rzb .card{box-shadow:0 3px 0 var(--line)}
  .rzb main > section{padding:60px 0}
  .rzb h2.sec{font-size:25px;line-height:1.5}
  .rzb .lead{font-size:14px;line-height:2;margin-bottom:28px}
  .rzb .pill{font-size:10.5px;margin-bottom:12px}
  .rzb .q{font-size:12px;margin:0 0 10px 8px}
  .rzb .sub-h{font-size:18px;margin:48px 0 18px;padding-top:22px}

  /* KV */
  .rzb .kv{padding:14px 0 26px}
  .rzb .kv-frame{height:600px}
  .rzb .kv .stick{display:none}
  .rzb .pp1{width:58%;height:34%;left:2%;top:3%;--r:-3deg}
  .rzb .pp2{width:40%;height:25%;right:2%;left:auto;top:1%;--r:4deg}
  .rzb .pp5{width:34%;height:21%;right:5%;left:auto;top:27%;--r:-5deg}
  .rzb .pp3,.rzb .pp4{display:none}
  .rzb .ph-piece{padding:5px 5px 20px}
  .rzb .ph-piece figcaption{font-size:9.5px;bottom:4px}
  .rzb .ph-piece::after{width:44px;height:14px;margin-left:-22px;top:-7px}
  .rzb .kv-ribbon{height:26px}
  .rzb .kv-ribbon.r1{top:43%!important;bottom:auto}
  .rzb .kv-ribbon.r2{bottom:2%!important;top:auto}
  .rzb .kr-set span{font-size:11px;padding:0 11px;gap:11px}
  .rzb .kv-copy{left:4px;right:4px;bottom:56px!important}
  .rzb .kv-copy::before{inset:-30px -20px!important}
  .rzb .kv h1{font-size:34px}
  .rzb .kv-sub{font-size:12.5px;line-height:1.8}
  .rzb .kv-bottom{margin-top:18px;gap:14px}
  .rzb .kv-bottom p{font-size:12.5px;line-height:1.9}
  .rzb .kv-bottom .cta{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .rzb .kv-bottom .btn{padding:12px 8px;font-size:12.5px}

  /* フォトストリップ */
  .rzb .fstrip{padding:18px 0 22px}
  .rzb .fs-ph{border-width:4px;outline-width:2px;box-shadow:0 4px 0 rgba(0,0,0,.3)}

  /* 横スワイプの行 */
  .rzb .acts,.rzb .stories,.rzb .members{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:0 -16px;padding:6px 16px 18px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .rzb .acts::-webkit-scrollbar,.rzb .stories::-webkit-scrollbar,.rzb .members::-webkit-scrollbar{display:none}
  .rzb .acts > *,.rzb .stories > *{flex:0 0 78%;scroll-snap-align:start}
  .rzb .members > *{flex:0 0 46%;scroll-snap-align:start;transform:none!important}
  .rzb .act .ph,.rzb .act .ph.img{height:150px}
  .rzb .act .bd{padding:16px 16px 18px}
  .rzb .act h3{font-size:17px}
  .rzb .act p{font-size:12.5px;-webkit-line-clamp:3;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}
  .rzb .members{margin-top:24px}
  .rzb .mem .ph.mem-photo{height:140px}
  .rzb .sc-quote{font-size:15px}
  .rzb .swipe-hint{display:flex;align-items:center;gap:8px;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:10.5px;letter-spacing:.18em;color:var(--sub);margin:-4px 0 8px}
  .rzb .swipe-hint::after{content:"";flex:none;width:34px;height:1.5px;background:currentColor;animation:hint 1.6s ease-in-out infinite}
  @keyframes hint{0%,100%{transform:translateX(0)}50%{transform:translateX(8px)}}

  /* データ・切り抜き */
  .rzb .clips{gap:22px}
  .rzb .clip{padding:26px 18px 24px}
  .rzb .clip .big{font-size:48px}
  .rzb .bridge p{font-size:16px}

  /* メソッド・メリット */
  .rzb .m3-col{padding:0 2px}
  .rzb .mrows{gap:40px}
  .rzb .mphoto{border-width:6px}
  .rzb .mno{font-size:46px}
  .rzb .mtext h4{font-size:20px;margin:6px 0 10px}
  .rzb .mtext p{font-size:14px}

  /* プラン */
  .rzb .plan .hd2 h3{font-size:18px}
  .rzb .plan.pa li{font-size:13.5px}

  /* フォーム */
  .rzb .cform{padding:22px 16px 20px}
  .rzb .cf-kind span{font-size:12px;padding:6px 13px}

  /* 追従バー */
  .dock{bottom:10px;left:10px;right:10px;padding:5px;border-width:2px;box-shadow:0 3px 0 #1b1a18;border-radius:16px}
  .dock svg{width:30px;height:30px}
  .dock .lb{font-size:8.5px}
  .dock .ap{font-size:14px}
}
@media(max-width:700px){
  .rzb .kv-ribbon.r1{top:20%!important;z-index:1}
  .rzb .kv-copy{bottom:40px!important}
  .rzb .kv h1{font-size:32px}
  .rzb .mem-more{font-size:10.5px;gap:4px;white-space:nowrap}
  .rzb .mem .bd{padding:12px 12px 14px}
}
@media(max-width:700px){.rzb .kv-copy{bottom:64px!important}.rzb .kv-ribbon.r2{bottom:0!important}}

/* プランカード：イメージ写真 */
.rzb .pl-ph{margin:0;position:relative;border-bottom:var(--bw) solid var(--line);overflow:hidden}
.rzb .pl-ph div{aspect-ratio:16/9;background:#ddd center/cover no-repeat;transition:transform .6s cubic-bezier(.2,1,.3,1)}
.rzb .plan:hover .pl-ph div{transform:scale(1.05)}
.rzb .pl-ph figcaption{position:absolute;left:12px;bottom:10px;font-size:11px;font-weight:800;color:#fff;background:rgba(27,26,24,.6);backdrop-filter:blur(4px);border-radius:999px;padding:2px 11px}
@media(max-width:700px){.rzb .pl-ph div{aspect-ratio:2/1}}
/* 追従ボタン：文言が長くなった分 */
.dock .ap{font-size:12.5px;letter-spacing:.12em}
@media(max-width:700px){.dock .ap{font-size:14px;letter-spacing:.06em}}

/* =========================================================
   ABOUT：イケイケに
   ========================================================= */
/* 式を大きく */
.rzb .eq{gap:14px;margin-bottom:26px}
.rzb .p-re{font-size:clamp(36px,4vw,52px);padding:12px 22px}
.rzb .p-me{font-size:clamp(32px,3.6vw,46px);padding:12px 22px}
.rzb .eq-op{font-size:clamp(30px,3vw,40px);color:var(--ink)}
.rzb .p-logo{padding:14px 20px;background:var(--ink)}
.rzb .p-logo img{height:clamp(30px,3vw,40px);filter:brightness(0) invert(1)}
.rzb .lead-world.go .p-logo{animation:eqPop .6s cubic-bezier(.2,1.8,.4,1) .45s both}
@keyframes eqPop{from{transform:scale(.4) rotate(-12deg)}to{transform:scale(1) rotate(-1.5deg)}}
/* キャッチを主役に */
.rzb .lw-catch{font-size:clamp(34px,4.6vw,60px)!important;line-height:1.25!important;letter-spacing:-.01em;margin:4px 0 26px!important}
.rzb .lw-catch{background:linear-gradient(transparent 62%,color-mix(in srgb,var(--yellow) 85%,#fff) 62%);display:inline;padding:0 .08em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.rzb .lead-world .lw-catch + .lw-body{margin-top:28px!important}
/* 動詞を大きく、ぴょこぴょこ */
.rzb .verbs{gap:12px 14px;margin:18px 0 26px}
.rzb .verbs li{font-size:clamp(28px,3.2vw,42px);padding:8px 20px 10px;cursor:default;transition:transform .25s cubic-bezier(.2,1.8,.4,1)}
.rzb .lead-world.go .verbs li{animation:verbBob 3.2s ease-in-out infinite}
.rzb .lead-world.go .verbs li:nth-child(2){animation-delay:.25s}
.rzb .lead-world.go .verbs li:nth-child(3){animation-delay:.5s}
.rzb .lead-world.go .verbs li:nth-child(4){animation-delay:.75s}
@keyframes verbBob{0%,100%{translate:0 0}50%{translate:0 -6px}}
.rzb .verbs li:hover{transform:rotate(calc(var(--r) * -2)) scale(1.12)}
.rzb .lw-body{font-size:16.5px}
.rzb .lw-body strong{font-size:1.15em}

/* VISION / MISSION：大胆に */
.rzb .vmv{gap:22px}
.rzb .vmv-c{position:relative;overflow:hidden;padding:34px 30px 32px;border-width:var(--bw)}
.rzb .vmv-c::after{position:absolute;right:-10px;bottom:-26px;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:110px;line-height:1;letter-spacing:-.02em;color:transparent;-webkit-text-stroke:2px currentColor;opacity:.18;pointer-events:none}
.rzb .vmv-c:nth-child(1){background:var(--ink)!important;color:var(--cream);transform:rotate(-1.5deg)}
.rzb .vmv-c:nth-child(1)::after{content:"VISION"}
.rzb .vmv-c:nth-child(1) .t{background:var(--yellow);color:var(--ink)}
.rzb .vmv-c:nth-child(1) .b{color:var(--cream)}
.rzb .vmv-c:nth-child(2){background:var(--red)!important;color:#fff;transform:rotate(1.5deg) translateX(18px)}
.rzb .vmv-c:nth-child(2)::after{content:"MISSION";font-size:96px}
.rzb .vmv-c:nth-child(2) .t{background:#fff;color:var(--ink)}
.rzb .vmv-c:nth-child(2) .b{color:#fff}
.rzb .vmv-c .b{font-size:clamp(20px,2.2vw,26px);line-height:1.6;position:relative;z-index:1}
.rzb .vmv-c .t{position:relative;z-index:1}
.rzb .vmv-c{transition:transform .35s cubic-bezier(.2,1.5,.4,1)}
.rzb .vmv-c:hover{transform:rotate(0) translateX(0) scale(1.02)}
@media(max-width:700px){
  .rzb .vmv-c:nth-child(2){transform:rotate(1deg)}
  .rzb .vmv-c::after{font-size:72px!important}
  .rzb .lw-catch{font-size:32px!important}
  .rzb .verbs li{font-size:26px;padding:6px 14px 8px}
}
@media (prefers-reduced-motion:reduce){.rzb .verbs li{animation:none!important}}
.rzb .lw-catch{font-family:var(--f-head)!important;font-weight:900!important}
.rzb .eq{flex-wrap:nowrap}
.rzb .p-re{font-size:clamp(28px,3vw,40px);padding:10px 16px}
.rzb .p-me{font-size:clamp(26px,2.8vw,36px);padding:10px 16px}
.rzb .eq-op{font-size:clamp(24px,2.4vw,32px)}
.rzb .p-logo{background:#fff;padding:12px 16px}
.rzb .p-logo img{height:clamp(24px,2.4vw,32px);filter:none}
.rzb .verbs{flex-wrap:nowrap;gap:10px}
.rzb .verbs li{font-size:clamp(22px,2.3vw,32px);padding:8px 14px 10px;white-space:nowrap}
.rzb .vmv-c::after{opacity:.28;bottom:-18px}
@media(max-width:700px){.rzb .eq{flex-wrap:wrap}.rzb .verbs{flex-wrap:wrap}}
/* KVコピー：自分の「好き」を、社会との接点に変えていく。 */
.rzb .kv h1 .h-cut{align-items:baseline}
.rzb .kv h1 .h-wo{font-size:.9em;margin-left:.05em}
.rzb .kv h1 .h-big{font-size:.92em}
@media(max-width:700px){.rzb .kv h1{font-size:31px}.rzb .kv h1 .h-big{white-space:normal}}
@media(min-width:901px){.rzb .s2{top:47%!important;bottom:auto!important;left:3%!important;right:auto!important;transform:rotate(-7deg)!important}}
@media(min-width:901px){.rzb .s2{top:40%!important;left:1%!important}}
@media(min-width:901px){.rzb .s2{top:auto!important;bottom:6%!important;left:auto!important;right:21%!important;transform:rotate(-6deg)!important}}
.rzb .s2.in-photo{position:absolute;top:-14px!important;bottom:auto!important;left:-18px!important;right:auto!important;transform:rotate(-8deg)!important;z-index:7}
@media(max-width:700px){.rzb .s2.in-photo{display:none}}

/* ABOUT：文字サイズのメリハリ */
#about h2.sec{font-size:clamp(30px,3.8vw,46px);line-height:1.45;margin-bottom:34px}
#about h2.sec .hl{background-size:100% 40%}
.rzb .eq{margin-bottom:18px}
.rzb .p-re{font-size:clamp(24px,2.4vw,30px)}
.rzb .p-me{font-size:clamp(22px,2.2vw,28px)}
.rzb .eq-op{font-size:24px}
.rzb .p-logo img{height:26px}
.rzb .lw-catch{font-size:clamp(20px,2vw,26px)!important;line-height:1.5!important;white-space:nowrap;background:none!important;color:var(--sub);letter-spacing:.06em;margin:0 0 22px!important;display:block!important}
.rzb .lw-catch::before{content:"";display:inline-block;width:28px;height:3px;background:var(--red);vertical-align:.35em;margin-right:12px;border-radius:2px}
.rzb .lw-body{font-size:15px!important}
.rzb .verbs li{font-size:clamp(20px,2vw,26px)}
@media(max-width:700px){#about h2.sec{font-size:26px}.rzb .lw-catch{font-size:19px!important}}

/* =========================================================
   WHYデータ：メリハリ＆ポップ
   ========================================================= */
/* 道のり：番号をカード色に */
.rzb .road li:nth-child(2)::before{background:var(--yellow)}
.rzb .road li:nth-child(3)::before{background:var(--orange)}
.rzb .road li:nth-child(4)::before{background:var(--red);color:#fff}
.rzb .road li:nth-child(5)::before{background:var(--sky)}
.rzb .road li.on::before{background:var(--ink);color:var(--cream)}
/* カード：上半分をカラー面に */
.rzb .clip{padding:0 0 22px;background:#fff!important;overflow:visible}
.rzb .clip .lead-in{margin:0!important;min-height:0;padding:30px 20px 14px;background:color-mix(in srgb,var(--c) 32%,#fff);font-size:13.5px;font-weight:900;line-height:1.55;color:var(--ink)}
.rzb .clip .lead-in::before{display:none}
.rzb .clip .big{padding:6px 20px 0;background:color-mix(in srgb,var(--c) 32%,#fff);font-size:clamp(64px,6.6vw,92px)!important;line-height:.95;letter-spacing:-.04em;color:color-mix(in srgb,var(--c) 55%,var(--ink));-webkit-text-stroke:0;text-shadow:3px 3px 0 #fff,5px 5px 0 rgba(27,26,24,.12)}
.rzb .clip .big small{font-size:.3em;color:var(--ink);margin-left:6px}
.rzb .clip .plain{margin:0!important;padding:10px 20px 18px;background:color-mix(in srgb,var(--c) 32%,#fff);font-size:15.5px;font-weight:900;border-bottom:2px dashed rgba(27,26,24,.18)}
.rzb .clip .plain b{font-size:1.35em;color:color-mix(in srgb,var(--c) 55%,var(--ink))}
.rzb .clip .plain .note{font-size:11.5px;font-weight:700;color:var(--sub)}
.rzb .clip .ppl,.rzb .clip .dots,.rzb .clip .nations{margin:18px 20px 0}
.rzb .clip .ppl i.on{background:color-mix(in srgb,var(--c) 75%,var(--ink))}
.rzb .clip .desc{padding:0 20px;margin-top:16px;font-size:13px;color:var(--text)}
.rzb .clip .src{margin:auto 20px 0;font-size:10px}
.rzb .clip::before{height:22px;width:72px;margin-left:-36px;top:-10px;background:color-mix(in srgb,var(--c) 85%,transparent);z-index:2}
/* 6% のカードだけ強調 */
.rzb .clip:nth-child(3) .big{font-size:clamp(88px,9vw,124px)!important}
.rzb .clip{transition:transform .35s cubic-bezier(.2,1.5,.4,1)}
.rzb .clip:hover{transform:translateY(-6px) rotate(calc(var(--rt) * -1))}
@media(max-width:700px){.rzb .clip .big{font-size:60px!important}.rzb .clip:nth-child(3) .big{font-size:80px!important}}

/* =========================================================
   4つの手つき：メリハリ＆ポップ
   ========================================================= */
.rzb .m3-col + .m3-col{border-left:0}
.rzb .m3-col{padding:0 10px}
.rzb .m3-n{font-size:0;display:block;position:relative;height:0}
.rzb .m3-n::before{content:attr(data-n);position:absolute;right:4px;top:-8px;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:84px;line-height:1;color:color-mix(in srgb,var(--c) 45%,transparent);letter-spacing:-.04em;z-index:0}
.rzb .m3-n small{display:none}
.rzb .m3-head{position:relative;padding-top:6px}
.rzb .m3-head::after{content:attr(data-en);display:block;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:11px;letter-spacing:.22em;color:var(--sub);order:-1}
.rzb .m3-verb{position:relative;z-index:1;font-size:clamp(28px,2.9vw,38px)!important;transition:transform .3s cubic-bezier(.2,1.8,.4,1)}
.rzb .m3-col:hover .m3-verb{transform:rotate(0deg) scale(1.08)}
.rzb .m3-hand{font-size:12.5px!important;color:var(--sub)}
.rzb .m3-life{background:color-mix(in srgb,var(--c) 28%,#fff);border-radius:16px;padding:16px 16px 18px;font-size:clamp(17px,1.7vw,20px)!important;line-height:1.6!important;box-shadow:0 5px 0 color-mix(in srgb,var(--c) 70%,var(--ink));transform:rotate(calc(var(--r) * .4))}
.rzb .m3-life em{background:linear-gradient(transparent 55%,#fff 55%)!important}
.rzb .m3-col::after{border-color:color-mix(in srgb,var(--c) 70%,var(--ink));width:14px;height:14px;border-right-width:3px;border-bottom-width:3px}
.rzb .m3-labels .lb-life{background:var(--ink);color:var(--cream);border-radius:999px;padding:3px 10px!important;align-self:start;justify-self:start;font-size:11px}
.rzb .m3-labels .lb-hand{font-size:11px}
.rzb .m3-n{align-self:stretch;width:100%}
.rzb .m3-n::before{right:0;top:-14px;font-size:76px}
.rzb .m3-verb{white-space:nowrap;font-size:clamp(24px,2.4vw,32px)!important}

/* 4つの手つき：スッキリ×ポップ */
.rzb .m3-n{height:auto;width:auto;align-self:flex-start;font-size:0}
.rzb .m3-n::before{position:static;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--c);color:var(--ink);font-size:14px;letter-spacing:0;border:2px solid var(--ink)}
.rzb .m3-head{flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px 10px}
.rzb .m3-head::after{order:0;font-size:10.5px}
.rzb .m3-verb{flex-basis:100%;max-width:max-content;margin-top:4px;font-size:clamp(22px,2.1vw,30px)!important;padding:6px 14px 8px}
.rzb .m3-col{grid-template-rows:128px auto 56px auto}
.rzb .m3-life em{background:none!important;color:color-mix(in srgb,var(--c) 55%,var(--ink));font-style:normal}
.rzb .m3-life{box-shadow:0 4px 0 color-mix(in srgb,var(--c) 60%,var(--ink));font-size:clamp(15px,1.5vw,18px)!important}
.rzb .m3-labels{grid-template-rows:128px 1fr 56px 1.3fr}
.rzb .m3-head{display:grid!important;grid-template-columns:auto 1fr;align-items:center;gap:10px 10px}
.rzb .m3-head .m3-n{grid-row:1;grid-column:1}
.rzb .m3-head::after{grid-row:1;grid-column:2}
.rzb .m3-head .m3-verb{grid-row:2;grid-column:1/-1;justify-self:start;margin:0}
.rzb .m3-head{align-content:start;gap:14px 10px}
.rzb .m3-col{grid-template-rows:112px auto 56px auto}
.rzb .m3-labels{grid-template-rows:112px 1fr 56px 1.3fr}
.rzb .m3-head .m3-verb{font-size:clamp(24px,2.3vw,32px)!important}

/* ブリッジ：強調 */
.rzb .bridge{max-width:900px;margin:72px auto 0;padding:56px 32px 60px;background:#fff;border:var(--bw) solid var(--line);border-radius:28px;box-shadow:0 8px 0 var(--line);position:relative}
.rzb .bridge-arrow{position:absolute;top:-24px;left:50%;margin:0 0 0 -24px;width:48px;height:48px}
.rzb .bridge p{font-family:var(--f-head)}
.rzb .br-lead{font-size:16px!important;font-weight:800;color:var(--sub);letter-spacing:.08em}
.rzb .br-main{font-size:clamp(26px,3.4vw,40px)!important;font-weight:900!important;line-height:1.55!important;margin-top:10px}
.rzb .br-main b{background:linear-gradient(transparent 58%,var(--yellow) 58%)!important}
.rzb .br-sub{font-size:15px!important;font-weight:700;color:var(--sub);margin-top:10px}
.rzb .br-how{margin-top:30px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;font-size:18px!important;font-weight:800}
.rzb .br-how strong{font-size:clamp(34px,4.4vw,52px);font-weight:900;color:#fff;background:var(--red);padding:4px 22px 8px;transform:rotate(-3deg);display:inline-block;
  clip-path:polygon(0 8%,12% 0,40% 6%,70% 0,100% 5%,97% 50%,100% 94%,72% 100%,40% 94%,10% 100%,2% 92%,3% 48%);filter:drop-shadow(3px 4px 0 rgba(27,26,24,.25))}
.rzb .bridge .sp-br{display:none}
@media(max-width:700px){.rzb .bridge{padding:44px 18px 44px;margin-top:56px}.rzb .bridge .sp-br{display:inline}.rzb .br-main{font-size:24px!important}.rzb .br-how strong{font-size:34px}}

/* ブリッジ：強調を控えめに */
.rzb .bridge{background:transparent;border:0;box-shadow:none;padding:40px 24px 20px;max-width:820px}
.rzb .bridge-arrow{position:static;margin:0 auto 18px;width:44px;height:44px}
.rzb .br-main{font-size:clamp(22px,2.6vw,30px)!important}
.rzb .br-main b{background:linear-gradient(transparent 62%,color-mix(in srgb,var(--yellow) 80%,#fff) 62%)!important}
.rzb .br-how{margin-top:22px;font-size:17px!important}
.rzb .br-how strong{font-size:clamp(22px,2.4vw,28px);padding:2px 14px 4px;transform:rotate(-2deg);filter:none}
@media(max-width:700px){.rzb .bridge{padding:32px 4px 10px}.rzb .br-main{font-size:21px!important}.rzb .br-how strong{font-size:22px}}
.pf-photo[style*="member-gacha"]{background-position:50% 25%!important}

/* メンバー写真：引きで見せる（縦長の枠に） */
.rzb .mem .ph.mem-photo{height:auto!important;aspect-ratio:4/5}
.rzb .mem .ph.mem-photo.has-photo{background-size:cover!important;background-position:50% 30%!important}
.pf-photo[style*="member-gacha"]{background-size:cover!important;background-position:50% 40%!important}
@media(max-width:700px){.rzb .mem .ph.mem-photo{aspect-ratio:3/4}}

/* =========================================================
   スマホ：3ステップを1本の「道」にまとめる
   （上の階段図と下のカードの二重表示をやめ、縦のステッパーに）
   ========================================================= */
@media(max-width:700px){
  .rzb [data-pane^="plan-"] .sx-row,
  .rzb [data-pane^="plan-"] .sx-scale{display:none}
  .rzb [data-pane^="plan-"] .stairs-wrap{margin-bottom:6px}
  .rzb [data-pane^="plan-"] .stairs-ttl{font-size:21px}
  .rzb [data-pane^="plan-"] .plans{position:relative;display:flex!important;flex-direction:column;gap:22px;margin-top:18px;padding-left:46px;counter-reset:pl}
  .rzb [data-pane^="plan-"] .plans::before{content:"";position:absolute;left:17px;top:24px;bottom:24px;width:4px;border-radius:4px;
    background:linear-gradient(var(--yellow),var(--orange) 50%,var(--red))}
  .rzb [data-pane="plan-c"] .plans::before{background:linear-gradient(var(--sky),var(--blue) 50%,var(--green))}
  .rzb [data-pane^="plan-"] .plan{margin:0;counter-increment:pl;box-shadow:0 4px 0 var(--line);border-radius:18px}
  .rzb [data-pane^="plan-"] .plan .pstep{left:-46px;top:16px;transform:none;width:38px;height:38px;padding:0;border-radius:50%;
    display:flex;align-items:center;justify-content:center;font-size:0;border:2.5px solid var(--line);background:var(--c);box-shadow:0 0 0 4px var(--cream)}
  .rzb [data-pane^="plan-"] .plan .pstep::before{display:none}
  .rzb [data-pane^="plan-"] .plan .pstep::after{content:counter(pl);font-family:"Baloo 2",sans-serif;font-weight:800;font-size:17px;line-height:1;color:var(--ink)}
  .rzb [data-pane^="plan-"] .plan[style*="--red"] .pstep::after,
  .rzb [data-pane^="plan-"] .plan[style*="--blue"] .pstep::after{color:#fff}
  .rzb [data-pane^="plan-"] .plan .hd2{padding:12px 16px 10px;border-top-width:6px;border-radius:15px 15px 0 0}
  .rzb [data-pane^="plan-"] .plan .hd2 .tg{font-size:11px}
  .rzb [data-pane^="plan-"] .plan .hd2 h3{font-size:18px}
  .rzb [data-pane^="plan-"] .pl-ph div{aspect-ratio:5/2}
  .rzb [data-pane^="plan-"] .pl-ph figcaption{font-size:10.5px;left:10px;bottom:8px}
  .rzb [data-pane^="plan-"] .plan .bd{padding:12px 16px 14px}
  .rzb [data-pane^="plan-"] .plan.pa li{font-size:13px;line-height:1.85;padding-left:22px}
  .rzb [data-pane^="plan-"] .plan li::before{width:14px;height:14px}
  .rzb [data-pane^="plan-"] .plan.rec::after{top:-12px;right:10px;font-size:11px;padding:1px 10px}
}
@media(max-width:700px){.rzb [data-pane^="plan-"] .stairs-wrap{border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important}}

/* メンバー写真がスマホで潰れないように */
.rzb .mem .ph.mem-photo{flex:none;width:100%}
@media(max-width:700px){.rzb button.mem{height:auto}.rzb .members{align-items:stretch}}
.pf-photo[style*="member-johnson"]{background-position:50% 20%!important}
.pf-photo[style*="member-nae"]{background-position:50% 25%!important}
.pf-photo[style*="member-naru"]{background-position:50% 38%!important}

/* メンバー写真：頭の高さと大きさをそろえる（枠の上から約8%に頭のてっぺん） */
.rzb .mem .ph.mem-photo[style*="member-gacha"]{background-size:101% auto!important;background-position:50% 46%!important}
.rzb .mem .ph.mem-photo[style*="member-johnson"]{background-size:113% auto!important;background-position:100% 12%!important}
.rzb .mem .ph.mem-photo[style*="member-nae"]{background-size:141% auto!important;background-position:36% 57%!important}
.rzb .mem .ph.mem-photo[style*="member-naru"]{background-size:128% auto!important;background-position:68% 84%!important}
.pf-photo[style*="member-gacha"]{background-position:50% 40%!important}
.pf-photo[style*="member-johnson"]{background-size:cover!important;background-position:60% 15%!important}
.pf-photo[style*="member-nae"]{background-position:40% 45%!important}
.pf-photo[style*="member-naru"]{background-position:60% 60%!important}

/* メンバーごとの色：ガッチャマン赤／ジョンソン青／なえピンク／なる黄色 */
.rzb button.mem[data-mem="0"]{--mc:var(--red)}
.rzb button.mem[data-mem="1"]{--mc:var(--blue)}
.rzb button.mem[data-mem="2"]{--mc:var(--pink)}
.rzb button.mem[data-mem="3"]{--mc:var(--yellow)}
.rzb button.mem .ph.mem-photo{border-bottom:8px solid var(--mc)!important}
.rzb button.mem .ro{background:var(--mc);color:#fff;border-color:var(--ink)}
.rzb button.mem[data-mem="3"] .ro{color:var(--ink)}
.rzb button.mem .mem-more{color:color-mix(in srgb,var(--mc) 70%,var(--ink))}
.rzb button.mem:hover{box-shadow:0 9px 0 var(--mc)}
.pf-ro{color:#fff}
.pf-in[style*="--yellow"] .pf-ro{color:#1b1a18}

/* 公開版：調整 */
.rzb .mem .ph.mem-photo:not(.has-photo),.pf-photo[style*="logo-mark"]{background:color-mix(in srgb,var(--yellow) 40%,#fff) url('images/logo-mark.png') center/34% no-repeat!important}
.rzb .act .ph:not(.img){font-size:0;background-image:url('images/logo-mark.png')!important;background-repeat:no-repeat!important;background-position:center!important;background-size:56px!important}
