/* 下層ページ共通（Brave group の型: 白地に黒の帯・英字大見出し＋日本語サブ・行のリスト・影 0・角 2px） */
body.sub{background:var(--page)}
.page-hero{background:var(--white);padding-block:56px 48px;border-bottom:1px solid var(--line)}
.page-hero.dark{background:var(--black);color:var(--white);border-bottom:0}
.page-hero .crumb{font-family:var(--en-nav);font-weight:800;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);display:flex;flex-wrap:wrap;align-items:baseline;gap:10px}
.page-hero.dark .crumb{color:#9a9a9a}
.page-hero .crumb a{text-decoration:none}
.page-hero h1{display:flex;flex-direction:column;gap:8px;margin-top:22px}
.page-hero h1 .en{font-size:clamp(44px,7vw,84px);line-height:.95}
.page-hero.dark h1 .en{color:var(--hi)}
.page-hero h1 .sub{font-size:15px;font-weight:700}
.page-hero .lead{font-size:14px;line-height:1.9;margin-top:18px;max-width:640px;color:var(--ink-soft)}
.page-hero.dark .lead{color:#d0d0d0}
.sub-sec{padding-block:56px var(--pad)}
.h2{display:flex;flex-direction:column;gap:6px;margin-bottom:22px}
.h2 .en{font-size:clamp(28px,3.4vw,40px)}
.h2 .sub{font-size:13px;font-weight:700}
.note-s{font-size:12px;line-height:1.8;color:var(--ink-soft);margin-top:40px;max-width:720px}

/* filters */
.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.fbtn{border:2px solid var(--black);background:transparent;color:var(--ink);border-radius:var(--r-pill);padding:8px 14px;font-family:var(--jp);font-weight:700;font-size:13px;cursor:pointer;transition:background .6s ease-in-out,color .6s ease-in-out}
.fbtn b{font-family:var(--en-nav);font-weight:800;font-size:11px;margin-left:6px;opacity:.7}
.fbtn.on,.fbtn:hover{background:var(--black);color:var(--white)}
.filters .sep{width:1px;height:26px;background:var(--line);margin-inline:6px}
.count{font-family:var(--en-nav);font-weight:800;font-size:11px;letter-spacing:.08em;color:var(--ink-soft);margin-top:18px;text-transform:uppercase}

/* works grid: 列数固定・高さは画像の縦横比に任せる */
.wgrid{columns:4 240px;column-gap:16px;margin-top:22px}
.wcard2{display:block;break-inside:avoid;margin-bottom:16px;background:var(--white);border-radius:2px;overflow:hidden;text-decoration:none;transition:transform .6s ease-in-out}
.wcard2:hover{transform:translateY(-3px)}
.wcard2 img{width:100%;height:auto;display:block;background:#ddd}
.wcard2 .meta{display:block;padding:10px 12px 12px}
.wcard2 .chips{display:flex;gap:4px;flex-wrap:wrap}
.wcard2 .t{display:block;font-size:13px;font-weight:700;line-height:1.5;margin-top:8px}
.wcard2 .by{display:block;font-size:11px;color:var(--ink-soft);margin-top:4px;font-weight:700}
.wcard2.hide{display:none}

/* creators grid: 縦長カード（Neo-Porte の MEMBER 帯の型） */
.cgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}
.ccard{background:var(--white);border-radius:2px;overflow:hidden;text-decoration:none;display:flex;flex-direction:column;transition:transform .6s ease-in-out}
.ccard:hover{transform:translateY(-3px)}
.ccard img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;background:#ddd}
.ccard .body{padding:12px 12px 14px;display:flex;flex-direction:column;gap:6px}
.ccard .chips{display:flex;gap:4px;flex-wrap:wrap}
.ccard .name{font-size:15px;font-weight:800;line-height:1.35}
.ccard .role{font-family:var(--en-nav);font-weight:800;font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft)}
.ccard .n{font-family:var(--en-nav);font-weight:800;font-size:11px;color:var(--ink-soft)}
.ccard .n b{font-family:var(--en);font-size:16px;color:var(--ink);margin-right:2px}

/* articles */
.agrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:26px}
.acard{background:var(--white);border-radius:2px;overflow:hidden;text-decoration:none;display:grid;grid-template-rows:auto 1fr;transition:transform .6s ease-in-out}
.acard:hover{transform:translateY(-3px)}
.acard img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.acard .body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:10px}
.acard .chips{display:flex;gap:4px}
.acard .t{font-size:19px;font-weight:900;line-height:1.45}
.acard .s{font-size:13.5px;line-height:1.8;color:var(--ink-soft)}
.acard .learn{background:var(--page);border-radius:8px;padding:12px 14px;font-size:12.5px;line-height:1.7}
.acard .learn b{display:block;font-family:var(--en-nav);font-weight:800;font-size:10px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}
.acard .learn ul{margin:0;padding-left:1.2em}
.acard .by{font-family:var(--en-nav);font-weight:800;font-size:11px;color:var(--ink-soft);margin-top:auto}

/* courses */
.stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.stage{background:var(--white);border-radius:2px;padding:24px 22px 22px;display:flex;flex-direction:column;gap:10px;border-top:6px solid var(--black)}
.stage .no{font-family:var(--en-nav);font-weight:800;font-size:11px;letter-spacing:.1em;color:var(--ink-soft)}
.stage .en{font-family:var(--jp);font-weight:900;font-size:26px}
.stage p{font-size:13.5px;line-height:1.8;color:var(--ink-soft)}
.stage .chip{align-self:flex-start;margin-top:auto}

/* news list */
.nlist{background:var(--white);border-radius:2px}
.nrow{display:grid;grid-template-columns:110px auto 1fr 24px;gap:16px;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line);text-decoration:none;transition:background .6s ease-in-out}
.nrow:hover{background:var(--page)}
.nrow .d{font-family:var(--en-nav);font-weight:800;font-size:12px}
.nrow .t{font-size:14px;font-weight:700;line-height:1.55}
.nrow .ar{text-align:right}

/* about */
.about-sec .two{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.about-sec p{font-size:15px;line-height:1.95;margin-top:12px}
.nums{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.nums div{background:var(--white);border-radius:2px;padding:18px;font-size:12px;font-weight:700;color:var(--ink-soft);border-left:4px solid var(--hi)}
.nums b{display:block;font-family:var(--en);font-size:36px;color:var(--ink);margin-bottom:4px}
.feats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.feat{background:var(--white);border-radius:2px;padding:22px 20px;text-decoration:none;display:flex;flex-direction:column;gap:8px;transition:transform .6s ease-in-out}
.feat:hover{transform:translateY(-3px)}
.feat .en{font-size:22px}
.feat b{font-size:15px}
.feat p{font-size:13px;line-height:1.75;color:var(--ink-soft);margin:0}

/* 出現アニメ（Brave: fadein delay 0/0.2/0.4 の 3 段） */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .8s ease-out,transform .8s ease-out}
.reveal.in{opacity:1;transform:none}
.reveal.d1{transition-delay:.2s}.reveal.d2{transition-delay:.4s}
@media (min-width:0) and (max-width:0){.reveal{opacity:1;transform:none;transition:none}}

@media (max-width:960px){.agrid,.about-sec .two{grid-template-columns:1fr}.stages,.feats{grid-template-columns:1fr 1fr}.nrow{grid-template-columns:90px auto 1fr 20px}}
@media (max-width:640px){.stages,.feats,.nums{grid-template-columns:1fr}.wgrid{columns:2 150px;column-gap:10px}.wcard2{margin-bottom:10px}.cgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.nrow{grid-template-columns:1fr;gap:6px}.nrow .chip{justify-self:start}.nrow .ar{display:none}.page-hero{padding-block:36px 32px}}

/* creators: アイコン重ね・番号・レベル */
.ccard .cover{position:relative;display:block}
.ccard .cover img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:#ddd}
.av2{position:absolute;left:12px;bottom:-22px;width:56px;height:56px;border-radius:50%;border:3px solid var(--white);object-fit:cover;background:var(--black)}
.av2.ini,.av3.ini{display:grid;place-items:center;color:var(--hi);font-family:var(--en);font-size:22px}
.ccard .body{padding-top:30px}
.ccard .role .no{font-family:var(--en-nav);font-weight:800;font-size:10px;letter-spacing:.08em;color:var(--ink-soft)}
.ccard .role .lv{font-family:var(--en);font-size:12px;margin-left:8px;color:var(--ink)}
/* creator page */
.cp-hero{background:var(--black);color:var(--white);padding-block:48px 56px}
.cp-hero .crumb{font-family:var(--en-nav);font-weight:800;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#9a9a9a;display:flex;flex-wrap:wrap;align-items:baseline;gap:10px}
.cp-hero .crumb a{text-decoration:none;color:#9a9a9a}
.cp-head{display:flex;gap:28px;align-items:center;margin-top:28px}
.av3{width:132px;height:132px;border-radius:50%;object-fit:cover;border:4px solid var(--hi);background:#1a1a1a;flex:none}
.av3.ini{font-size:56px}
.cp-hero .kicker{font-family:var(--en-nav);font-weight:800;font-size:12px;letter-spacing:.24em;color:var(--hi)}
.cp-hero h1{font-size:clamp(32px,5vw,56px);font-weight:900;line-height:1.2;margin-top:8px}
.cp-hero .tools{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}
.cp-hero .tools .chip{background:var(--white);color:var(--ink)}
.cp-hero .tools .chip.hi{background:var(--hi);color:var(--hi-ink)}
.cp-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:18px;margin-top:40px;border-top:1px solid #333;padding-top:26px}
.cp-stats .st small{display:block;font-family:var(--en-nav);font-weight:800;font-size:10px;letter-spacing:.14em;color:#9a9a9a}
.cp-stats .st b{display:block;font-family:var(--en);font-size:28px;margin-top:6px;color:var(--white);line-height:1}
@media (max-width:640px){.cp-head{flex-direction:column;align-items:flex-start;gap:18px}.av3{width:96px;height:96px}.cp-stats{grid-template-columns:1fr 1fr;gap:14px}.cp-stats .st b{font-size:22px}}
.ccard img.av2{width:56px;height:56px;aspect-ratio:1}
/* 2026-09-16 STΛCK: 丸い印は無し。サムネの位置に Discord アイコン */
.av2{display:none!important}
.ccard .body{padding-top:12px}
.ccard .cover img.icon{aspect-ratio:1;object-fit:cover;image-rendering:auto}
.av3{border-radius:18px;border:0}

/* ===== 2026-09-16 STΛCK「黄色はずしてモノクロで」 ===== */
:root{--hi:#FFFFFF;--hi-ink:#000000}
/* 明るい地の上では白が消えるので黒に反転 */
.hd .pill.hi,.sec .pill.hi,.about .pill.hi,.twocol .pill.hi,.wcard .pill,.stage .chip.hi,.acard .chip.hi,.chip.hi{background:var(--black);color:var(--white)}
.wcard2 .chip.hi,.item .chip.hi,.row .chip.hi,.nrow .chip.hi{background:var(--black);color:var(--white)}
.cp-hero .tools .chip.hi{background:var(--white);color:var(--black)}
.hero-v .pill.hi,.cp-hero .pill.hi,.city .pill.hi,.concept .pill.hi{background:var(--white);color:var(--black)}
.hero-v .pill.wh{background:transparent;color:var(--white);border:2px solid var(--white)}
.hero-v h1 mark{background:var(--white);color:var(--black)}
.hero-v .slab{background:var(--white)} .hero-v .slab b{color:var(--black)}
.hero-v .kicker,.cp-hero .kicker,.concept .sec-title .en,.city .sec-title .en,.page-hero.dark h1 .en,.band.bk .en{color:var(--white)}
.side-label{color:#8a8a8a}
.hero-v .ticker i:first-child{background:var(--white)}
.concept .stack i:nth-child(1){background:var(--white);border-color:var(--white)}
.card3{background:var(--white);color:var(--black)} .card3 .head .no{border-color:var(--black)}
.learn{background:var(--white)} .learn .side-label{color:#8a8a8a} .wcard{background:var(--page)} .wcard .mark{background:var(--black);color:var(--white)}
.city .grid{background-image:linear-gradient(rgba(255,255,255,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px)}
.city .blocks i{border-color:var(--white)} .city .badge i{background:var(--white)}
.numbers .n{border-left-color:var(--white)}
.nums div{border-left-color:var(--black)}
.band.hi{background:var(--white);color:var(--black);border-top:1px solid var(--line)}
.ft h4{color:#a5a5a5}
.logo .mark i{background:var(--white)}
.av2.ini,.av3.ini{color:var(--white)} .av3{border:0}
.numbers .n b{color:var(--white)}
.cover-ini{display:grid;place-items:center;aspect-ratio:1;background:var(--black);color:var(--white);font-family:var(--en);font-size:48px}
.stages.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.acard .body{gap:8px;padding:16px 18px 18px}.acard .t{font-size:17px}.acard .s{font-size:13px;line-height:1.7}
.acard[hidden]{display:none}
.about-sec .two > div:nth-child(2) .two{display:none}
@media (max-width:960px){.stages.three{grid-template-columns:1fr}}

/* ===== 全件版 Artworks / 個人ページのポートフォリオ格子 ===== */
.wcard2{position:relative}
.wcard2 .kb{position:absolute;top:10px;left:10px;width:30px;height:30px;border-radius:50%;background:rgba(0,0,0,.72);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800}
.wcard2 img{aspect-ratio:auto;min-height:120px}
.pgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:8px}
.pw{position:relative;display:block;background:var(--white);border-radius:2px;overflow:hidden;text-decoration:none;margin:0;transition:transform .5s cubic-bezier(.34,1.56,.64,1)}
.pw:hover{transform:translateY(-4px)}
.pw img,.pw video{width:100%;aspect-ratio:1;object-fit:cover;display:block;background:#111}
.pw.video video{aspect-ratio:16/9;background:#000}
.pw .play{position:absolute;left:50%;top:38%;transform:translate(-50%,-50%);width:56px;height:56px;border-radius:50%;background:rgba(0,0,0,.72);color:#fff;display:grid;place-items:center;font-size:22px}
.pw figcaption{padding:12px 14px 14px}
.pw figcaption b{display:block;font-size:14px;font-weight:800;line-height:1.5}
.pw figcaption small{display:block;font-family:var(--en-nav);font-weight:800;font-size:10.5px;color:var(--ink-soft);margin-top:4px;letter-spacing:.04em}
@media (max-width:960px){.pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.pgrid{grid-template-columns:1fr 1fr;gap:10px}}

.pw.audio img{background:#111}
.pw.audio .play{top:44%}

/* ===== 2026-09-19 夜: 区画の境目の線をやめる / 下層ページの見出しは黒ヘッダーの下でライムに（ロゴの稲妻の斜めを下辺に） ===== */
.page-hero,.band.hi,.band.bk#mypage{border-top:0!important;border-bottom:0!important}
.page-hero,.page-hero.dark{background:#C6F91F;color:#0a0a0a;position:relative;overflow:hidden;padding-block:54px 96px;clip-path:polygon(0 0,100% 0,100% calc(100% - 56px),0 100%);margin-bottom:-20px}
.page-hero .crumb,.page-hero.dark .crumb{color:rgba(0,0,0,.62)}
.page-hero h1 .en,.page-hero.dark h1 .en{color:#0a0a0a;font-size:clamp(54px,9.4vw,132px);line-height:.9;letter-spacing:-.01em}
.page-hero h1 .sub{font-size:16px;font-weight:800;display:inline-block;align-self:flex-start;background:#0a0a0a;color:#fff;padding:7px 12px;margin-top:10px}
.page-hero .lead,.page-hero.dark .lead{color:#1a1a1a;font-weight:700}
.page-hero::after{content:"";position:absolute;right:-40px;top:-30px;bottom:-30px;width:min(34vw,420px);background:repeating-linear-gradient(115deg,transparent 0 26px,rgba(0,0,0,.09) 26px 30px);pointer-events:none}
@media (max-width:640px){.page-hero,.page-hero.dark{padding-block:36px 72px;clip-path:polygon(0 0,100% 0,100% calc(100% - 30px),0 100%)}.page-hero::after{display:none}}

/* ===== 2026-09-19 深夜: 記事一覧（参考: Brave Story）。白箱をやめ、角丸サムネ → 日付＋黒いカテゴリ札 → 太い題名 の 3 列 ===== */
.ahead{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;border-top:3px solid var(--black);padding-top:22px}
.acount{font-size:15px;font-weight:800}.acount b{font-family:var(--en);font-size:40px;line-height:1;margin-right:6px}
.agrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:56px 36px;margin-top:40px}
.acard{display:block;background:transparent;border-radius:0;overflow:visible;text-decoration:none;color:var(--ink)}
.acard[hidden]{display:none}
.acard .aimg{display:block;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#dcdcdc}
.acard .aimg img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.acard:hover .aimg img{transform:scale(1.05)}
.acard .arow{display:flex;align-items:center;flex-wrap:wrap;gap:0 10px;margin-top:0;font:700 13px/1 var(--en-nav)}
.acard .arow time{padding:14px 0 12px;letter-spacing:.02em}
.acard .atab{display:inline-block;background:var(--black);color:var(--white);font:800 12px/1 var(--jp);padding:11px 14px;border-radius:0 0 10px 10px}
.acard .atab.lock{background:#C6F91F;color:#0a0a0a}.acard .atab.open{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 2px var(--black)}
.acard .t{display:block;font-size:19px;font-weight:800;line-height:1.6;margin-top:12px;text-wrap:wrap;transition:opacity .3s}
.acard:hover .t{opacity:.62}
.acard .s{display:block;font-size:13px;line-height:1.85;color:var(--ink-soft);margin-top:10px}
.acard .by{display:block;font-size:11px;font-weight:800;color:var(--ink-soft);margin-top:12px;letter-spacing:.04em}
@media (max-width:960px){.agrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 20px}}
@media (max-width:640px){.agrid{grid-template-columns:1fr}.acard .t{font-size:17px}}
.acard{position:relative}
.acard .atab.lock{position:absolute;top:12px;left:12px;border-radius:999px;padding:9px 13px;font-size:11px}
.acard .atab.open{display:none}

/* ===== 2026-09-19 深夜 2: STΛCK「グリーンは微妙、前の白っぽい感じに」。ヘッダー下の見出しは全ページ白。線は引かない ===== */
.page-hero,.page-hero.dark{background:var(--white);color:var(--ink);clip-path:none;margin-bottom:0;padding-block:56px 52px}
.page-hero::after{display:none}
.page-hero .crumb,.page-hero.dark .crumb{color:var(--ink-soft)}
.page-hero h1 .en,.page-hero.dark h1 .en{color:var(--ink);font-size:clamp(min(48px,13vw),7.6vw,104px);line-height:.95}
.page-hero h1 .sub{background:transparent;color:var(--ink);padding:0;margin-top:6px;font-size:15px}
.page-hero .lead,.page-hero.dark .lead{color:var(--ink-soft);font-weight:500}
@media (max-width:640px){.page-hero,.page-hero.dark{padding-block:36px 36px;clip-path:none}}
/* 2026-09-21: 「メンバー限定」の札はサムネの上に重ねない（サムネの文字とぶつかる）。日付の行に並べる */
.acard .atab.lock{position:static;border-radius:0 0 10px 10px;padding:11px 14px;font-size:12px}
/* 2026-09-21: 記事カードの崩れ対策。浮き上がる古い動きを止める（1 枚だけ大きさがずれる原因）。日付の行は折り返さない */
.acard,.acard:hover{transform:none!important;box-shadow:none!important}
.acard .arow{flex-wrap:nowrap;min-width:0}.acard .arow .atab{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.acard .t{min-height:3.2em}
@media (max-width:960px){.ahead{flex-direction:column;align-items:flex-start}.ahead .filters{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:6px;scrollbar-width:none}.ahead .filters .fbtn{flex:none}}
/* 個人ページ: 本人が登録した SNS リンク */
.cp-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.cp-links a{display:inline-block;border:1.5px solid currentColor;border-radius:999px;padding:8px 14px;font:800 12px/1 var(--en-nav);letter-spacing:.04em;text-decoration:none;color:inherit;transition:background .2s,color .2s}
.cp-links a:hover{background:#C6F91F;color:#0a0a0a;border-color:#C6F91F}

/* Learn ページ: 学習サイトの案内。英字と日本語の見出しは 2 段に分ける */
.lrn-site .lrn-h .en,.lrn-site .lrn-h .sub{display:block}.lrn-site .lrn-h .sub{margin-top:8px}

/* 個人ページ v4: 本人 → クリップ → 作品 → この人について */
.cp-hero.v4{padding-bottom:44px}.cp-hero.v4 .av3{width:168px;height:168px;border-radius:22px}
.cp-headst{font-size:15px;font-weight:800;margin:10px 0 4px;color:#C6F91F}
.cp-act{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px}
.cp-clip{border:1.5px solid #fff;background:transparent;color:#fff;border-radius:999px;padding:10px 18px;font-size:13px;font-weight:800;cursor:pointer}
.cp-clip[aria-pressed="true"]{background:#C6F91F;border-color:#C6F91F;color:#0a0a0a}
.cp-clipmsg{font-size:12px;font-weight:700;color:#d6d6d6}.cp-clipmsg a{color:#C6F91F;margin-left:6px}
.cp-color .dna{display:flex;height:22px;border-radius:999px;overflow:hidden;max-width:420px}
.cp-words{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0}.tchip.link{text-decoration:none;color:inherit}.tchip.link:hover{background:#C6F91F}
.cp-hint{font-size:12px;color:var(--ink-soft);margin:10px 0 0;line-height:1.7}
.cp-fold>summary{cursor:pointer;font-size:13px;font-weight:800;list-style:none}.cp-fold>summary::-webkit-details-marker{display:none}.cp-fold>summary::after{content:" ＋"}.cp-fold[open]>summary::after{content:" －"}
.cp-fold>div{margin-top:12px;display:flex;flex-wrap:wrap;gap:6px}
@media (max-width:640px){.cp-hero.v4 .av3{width:112px;height:112px;border-radius:18px}}
.cp-about .cp-dl dd.blk{display:block}.cp-about .cp-dl dd.blk .cp-color{display:block;width:100%}.cp-color .dna{width:100%}
.cp-hero.v4 + .cpx{padding-top:64px}

/* 利用案内・相談 */
.lg-wrap{display:grid;grid-template-columns:220px minmax(0,1fr);gap:48px;align-items:start}
.lg-nav{position:sticky;top:96px;display:flex;flex-direction:column;gap:4px}.lg-nav a{padding:10px 12px;border-radius:10px;text-decoration:none;font-size:13px;font-weight:700;color:var(--ink)}.lg-nav a[aria-current]{background:#0a0a0a;color:#fff}
.lg-body{background:var(--white);border-radius:18px;padding:40px clamp(22px,4vw,56px);max-width:820px}
.lg-body h2{font-size:17px;margin:32px 0 12px}.lg-sec:first-child h2,.ct-done > h2:first-child{margin-top:0}
.lg-body p,.lg-body li{font-size:14.5px;line-height:2}.lg-body ul{padding-left:1.2em;margin:0 0 12px}
.lg-table{overflow-x:auto}.lg-table table{border-collapse:collapse;width:100%;min-width:520px;font-size:13px}.lg-table th,.lg-table td{border-bottom:1px solid #e3e3e3;padding:10px 8px;text-align:left;vertical-align:top;line-height:1.7}
.lg-date{font-size:12px!important;color:var(--ink-soft);margin-top:32px}
.ct-to{background:#0a0a0a;color:#fff;border-radius:10px;padding:12px 16px;font-weight:800;font-size:14px!important;margin:0 0 24px}
.cp-ask{display:inline-block;background:#C6F91F;color:#0a0a0a;border-radius:999px;padding:11px 20px;font-size:13px;font-weight:800;text-decoration:none}
.cp-askb .wrap{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;justify-content:space-between;background:var(--white);border-radius:18px;padding:28px 32px;max-width:1152px}.cp-askb p{margin:0;font-weight:700;font-size:15px}
@media (max-width:860px){.lg-wrap{grid-template-columns:minmax(0,1fr);gap:16px}.lg-nav{position:static;flex-direction:row;flex-wrap:wrap}.lg-nav a{background:var(--white)}}

/* 問い合わせフォーム */
.ct-lead{margin:0 0 28px}.ct-form em{font-style:normal;font-size:11px;font-weight:800;background:#0a0a0a;color:#fff;border-radius:4px;padding:2px 6px;margin-left:6px;vertical-align:1px}
.ct-row{margin:0 0 22px}.ct-row label,.ct-kind legend{display:block;font-size:14px;font-weight:800;margin:0 0 8px;padding:0}
.ct-form input[type=text],.ct-form input[type=email],.ct-form textarea{width:100%;box-sizing:border-box;border:1.5px solid #cfcfcf;border-radius:10px;padding:13px 14px;font:inherit;font-size:16px;background:#fff;color:var(--ink)}
.ct-form input:focus,.ct-form textarea:focus{outline:0;border-color:#0a0a0a;box-shadow:0 0 0 3px rgba(198,249,31,.55)}
.ct-form textarea{resize:vertical;min-height:180px;line-height:1.8}
.ct-kind{border:0;padding:0;margin:0 0 22px;display:flex;flex-wrap:wrap;gap:8px}.ct-kind legend{float:left;width:100%}
.ct-kind label{display:inline-flex;align-items:center;gap:8px;min-height:44px;border:1.5px solid #cfcfcf;border-radius:999px;padding:0 16px;font-size:14px;font-weight:700;cursor:pointer}
.ct-kind label:has(input:checked){background:#0a0a0a;color:#fff;border-color:#0a0a0a}
.ct-kind input{appearance:none;-webkit-appearance:none;width:16px;height:16px;margin:0;border-radius:50%;border:1.5px solid currentColor;display:grid;place-items:center;flex:none;outline:0}
.ct-kind input::before{content:'';width:8px;height:8px;border-radius:50%;background:#C6F91F;transform:scale(0);transition:transform .2s}
.ct-kind input:checked::before{transform:scale(1)}
.ct-kind label:has(input:focus-visible){box-shadow:0 0 0 3px rgba(198,249,31,.6)}  /* 選択時に四角い枠が出ないように（2026-09-23 STΛCK） */
.ct-hint{font-size:12.5px!important;color:var(--ink-soft);margin:0 0 8px;line-height:1.8!important}
.ct-err{color:#b3261e;font-size:13px!important;font-weight:700;margin:6px 0 0;width:100%}
.ct-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ct-agree{display:flex;gap:10px;align-items:flex-start;font-size:14px;font-weight:700;margin:4px 0 0;min-height:44px;cursor:pointer}.ct-agree input{width:20px;height:20px;margin-top:3px;accent-color:#0a0a0a;flex:none}
#ctSend{margin-top:22px;border:0;cursor:pointer;min-height:52px;padding-inline:32px;font-size:15px}#ctSend:disabled{opacity:.55;cursor:default}
.ct-done h2{margin-top:0}
.lg-wrap:has(> .ct){grid-template-columns:minmax(0,1fr)}.lg-wrap:has(> .ct) > div:first-child{display:none}.lg-body.ct{margin-inline:auto;width:100%}

/* 記事カード: 日付とタグを画像から離し、タグは小さな丸い札に（2026-09-22 STΛCK「見づらい」） */
.acard .arow{margin-top:14px;gap:0 12px;align-items:center}
.acard .arow time{padding:0;color:var(--ink-soft)}
.acard .atab{padding:6px 11px;border-radius:999px;font-size:11px;line-height:1}
.acard .t{margin-top:12px}
.acard .by{margin-top:14px}
/* 個人ページの「この人について」: 行の間隔をそろえ、見出し（MAKES 等）を札の中心に合わせる */
.cp-about .cp-dl{gap:20px 28px;margin-top:22px}
.cp-about .cp-dl dt{line-height:34px}
.cp-about .cp-dl dd{align-items:center}
.cp-about .cp-words{margin-top:14px}
.cp-about .cp-hint{margin-top:12px}
/* 個人ページの ARTWORKS（畳み）: 見出しは左、ボタンは右下。区画の上下に余白 */
.cpx .cpx-h2{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:18px;align-items:end;text-align:left}
.cpx .cpx-h2 .en{grid-column:1;grid-row:1}.cpx .cpx-h2 .sub{grid-column:1;grid-row:2}
.cpx .cpx-h2 .cpx-open{grid-column:2;grid-row:1/3;align-self:end;margin:0}
.cpx{padding-top:72px}.cpx:has(.cpx-body[hidden]){padding-bottom:72px}  /* 開いても上の余白は変えない（2026-09-22 STΛCK「開いたらまた狭まる」） */
@media (max-width:640px){.cpx .cpx-h2{grid-template-columns:1fr}.cpx .cpx-h2 .cpx-open{grid-column:1;grid-row:3;margin-top:16px;width:100%;justify-content:center}}

/* 一覧の札は出現で動かさない（下の方でスクロールするとズレて見える）。色だけ 0 → 1 */
.cgrid .reveal,.wgrid .reveal,.agrid .reveal{transform:none!important;filter:none!important;transition:opacity .6s ease!important}

/* Learn: 入ると学べること（4 つ） */
.lrn-why{background:var(--white)}
.lrn-why-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:8px}
.lrn-why-grid a{display:block;padding:26px 26px 24px;background:var(--page);border-radius:2px;color:var(--ink);text-decoration:none;transition:transform .5s ease}
.lrn-why-grid a:hover{transform:translateY(-3px)}
.lrn-why-grid b{display:block;font-size:20px;font-weight:900;line-height:1.35}
.lrn-why-grid p{margin:12px 0 0;font-size:13.5px;line-height:1.9;color:var(--ink-soft)}
@media (max-width:760px){.lrn-why-grid{grid-template-columns:1fr}}

.av3.ini.logo{background:#0a0a0a;display:grid;place-items:center}.av3.ini.logo img{width:52%;height:auto}

/* resp2: 英単語は途中で切らない。日本語改行処理の inline 指定より優先。 */
.page-hero h1 .en,.page-hero h1 .en span{overflow-wrap:normal!important;word-break:keep-all!important}
@media (max-width:640px){
  body:has(.lg-wrap) .page-hero h1 .en{font-size:clamp(min(30px,8vw),calc((100vw - 40px) / 9),56px)}
}
@media (min-width:901px){
  .cp-about .cp-fold>summary{line-height:34px}
  .cp-about .cp-color .dna{margin-top:6px}
}
@media (hover:none) and (pointer:coarse){
  .cp-fold>summary,.cp-clip,.cp-ask,.cp-act a,.cp-words .tchip.link,.cp-fold .tchip.link,.lg-nav a{min-width:44px;min-height:44px;align-content:center}
}
/* TOOLS の押せる高さを広げても、2 列の見出しの中心を保つ。 */
@media (min-width:901px) and (hover:none) and (pointer:coarse){
  .cp-about .cp-dl dt:has(+dd .cp-fold){line-height:44px}
  .cp-about .cp-fold>summary{line-height:44px}
}

/* 404 / 500（2026-09-25） */
.err-sec{padding:96px 0 120px}
.err-wrap{max-width:720px;text-align:center}
.err-code{font:900 96px/1 var(--en-nav);letter-spacing:-.03em;margin:0 0 10px;color:#0a0a0a}
.err-code::after{content:"";display:block;width:56px;height:6px;background:#C6F91F;margin:18px auto 0;border-radius:3px}
.err-h{font-size:24px;font-weight:900;margin:18px 0 10px}
.err-p{font-size:15px;line-height:2;color:var(--ink-soft,#555);margin:0 auto;max-width:34em}
.err-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:28px 0 0}
.err-foot{margin-top:28px;font-size:13.5px;color:var(--ink-soft,#555)}
@media (max-width:640px){.err-sec{padding:64px 0 88px}.err-code{font-size:72px}.err-h{font-size:20px}}

/* 2026-09-29 STΛCK「他のページも同じ条件で統一」: 規約・外部送信・お問い合わせも記事・お知らせと同じ白い全面に（灰色の地＋白い箱をやめる） */
body:has(.lg-wrap){background:#fff}
body:has(.lg-wrap) .sub-sec{background:#fff}
.lg-body{background:#fff;border-radius:0;padding:0}
@media (max-width:860px){.lg-nav a{background:#f4f4f4}}
