:root{--bg:#0f0f10;--bg2:#1b1b1e;--line:#2b2b30;--tx:#fff;--ink:#fff;--sub:#a1a1a8;--acc:#ff4d6d;--sale:#ff4d6d;--low:#4ade80;--tv:#2563eb}
/* 色・字・カードは AVくらべ（v2.css）で試した物に合わせた（11/8 会長）。見出しの形だけこのサイトの物 */
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.75 -apple-system,"Hiragino Sans","Noto Sans JP",sans-serif}
a{color:var(--acc)}
.w{max-width:760px;margin:0 auto;padding:0 16px}
.hd{border-bottom:1px solid var(--line);background:var(--bg)}
.hd .w{display:flex;align-items:baseline;gap:16px;padding-top:16px;padding-bottom:16px}
.logo{font-size:24px;font-weight:700;text-decoration:none;color:var(--ink);letter-spacing:.02em}
.logo b{color:var(--acc)}
.tag{font-size:12px;color:var(--sub)}
.prbar{font-size:12px;color:var(--sub);border-bottom:1px solid var(--line)}
.prbar .w{padding-top:8px;padding-bottom:8px}
main{padding-top:24px;padding-bottom:48px}
.bc{font-size:12px;color:var(--sub);margin-bottom:16px}
.bc i{font-style:normal;margin:0 8px}
.bc a{color:var(--sub)}
h1{font-size:24px;line-height:1.4;margin:0 0 16px}
h2{font-size:18px;margin:32px 0 8px;padding-bottom:8px;border-bottom:2px solid var(--acc)}
h3{font-size:16px;margin:0 0 8px}
.lead{font-size:16px;margin:0 0 16px}
.how,.src{font-size:12px;color:var(--sub)}
.list{list-style:none;margin:0;padding:0}
.it{display:grid;grid-template-columns:32px 120px 1fr;gap:16px;padding:24px 0;border-bottom:1px solid var(--line)}
.no{font-size:24px;font-weight:700;color:var(--sub);line-height:1}
.im img{width:120px;height:auto;display:block;border-radius:4px}
.tt{margin:0 0 8px;font-weight:700;font-size:15px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.mt{margin:0 0 8px;font-size:12px;color:var(--sub)}
.pz{margin:8px 0}
.now b{font-size:32px;line-height:1.2}
.now small{font-size:16px;margin-left:0}
.now s{font-size:14px;color:var(--sub);margin-left:8px}
.tg{display:inline-block;font-size:12px;font-weight:700;padding:0 8px;margin:8px 8px 0 0;border:1px solid}
.tg.sale{color:var(--sale)}
.tg.low{color:var(--low)}
.kv{display:grid;grid-template-columns:auto 1fr;gap:0 16px;font-size:13px;margin:8px 0}
.kv dt{color:var(--sub)}
.kv dd{margin:0}
.hist{font-size:12px;color:var(--sub);margin:0}
.sp{display:block;margin-top:8px}
.sp polyline{fill:none;stroke:var(--low);stroke-width:2}
.buy,.sub{display:inline-block;margin-top:8px;padding:8px 16px;background:var(--acc);color:#fff;text-decoration:none;font-weight:700;font-size:14px;border-radius:4px}
.tv{margin:40px 0;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.tv-h{font-weight:700;margin:0 0 8px}
.tv p{font-size:14px}
.sub{background:var(--acc)}
.tw{overflow-x:auto}
.pt{width:100%;border-collapse:collapse;font-size:14px}
.pt th,.pt td{padding:8px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}
.pt .r{text-align:right}
.wl,.links{padding-left:16px}
.links li{margin:8px 0}
.links small{color:var(--sub);margin-left:8px}
.cols{columns:2}
.stats{display:flex;gap:32px;margin:16px 0 8px}
.stats b{display:block;font-size:32px;line-height:1.2}
.stats span{font-size:12px;color:var(--sub)}
.sims{list-style:none;padding:0}
.sm{padding:24px 0;border-bottom:1px solid var(--line)}
.more{margin:16px 0}
.ft{border-top:1px solid var(--line);font-size:12px;color:var(--sub);padding:24px 0 48px}
.ft p{margin:0 0 8px}
.fl a{margin-right:16px;color:var(--sub)}
.ag{position:fixed;inset:0;background:rgba(20,20,18,.92);z-index:9;display:flex;align-items:center;justify-content:center;padding:16px}
.ag[hidden]{display:none}
.ag-in{background:var(--bg2);color:var(--tx);max-width:400px;padding:32px 24px;border-radius:8px}
.ag-t{font-weight:700;font-size:18px;margin:0 0 8px}
.ag-m{font-size:14px;margin:0 0 24px}
.ag-yes{display:block;width:100%;padding:16px;background:var(--acc);color:#fff;border:0;border-radius:4px;font-size:16px;font-weight:700;margin-bottom:16px;cursor:pointer}
.ag-no{display:block;text-align:center;font-size:14px;color:var(--sub)}
@media(max-width:520px){.it{grid-template-columns:24px 96px 1fr;gap:8px}.im img{width:96px}.now b{font-size:24px}.stats{gap:16px}.stats b{font-size:24px}}

.top1 .pz .now b{font-size:24px}
.top1 .kv{font-size:12px}
@media(max-width:520px){.top1{grid-template-columns:38% 1fr;gap:8px}}

/* AVくらべで試した部品（v2.css の card・cbuy・btn・perk・mvo を、このサイト用に書き直した物）。色は各サイトの :root の変数 */
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:16px 0}
@media(min-width:720px){.grid{grid-template-columns:repeat(4,1fr)}}
.card{background:var(--bg2);border:1px solid var(--line);border-radius:8px;overflow:hidden;display:flex;flex-direction:column}
.card .im{position:relative;display:block;aspect-ratio:3/4;background:#000;overflow:hidden}
.card .im img{width:100%;height:100%;object-fit:cover;display:block}
.card .rk{position:absolute;top:8px;left:8px;background:var(--acc);color:#fff;font-weight:800;font-size:14px;min-width:24px;height:24px;line-height:24px;text-align:center;border-radius:4px}
.card .chip{position:absolute;left:0;right:0;bottom:0;display:flex;gap:8px;padding:8px;background:linear-gradient(transparent,rgba(0,0,0,.75))}
.card .chip i{font-style:normal;font-size:12px;font-weight:700;color:#fff}
.card .chip i small{font-weight:400;opacity:.8}
.card .chip i.o{background:var(--sale);padding:0 8px;border-radius:4px}
.card .b{padding:8px;display:flex;flex-direction:column;gap:8px;flex:1}
.card .t{font-size:13px;line-height:1.5;font-weight:700;color:var(--tx);text-decoration:none;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.card .m{font-size:12px;color:var(--sub)}
.card .pr2{font-size:16px;font-weight:800;color:var(--tx)}
.card .pr2 .sale{color:var(--sale)}
.card .pr2 s{font-size:12px;font-weight:400;color:var(--sub);margin-left:8px}
.card .pr2 .mm{font-size:12px;font-weight:400;color:var(--sub)}
.card .hx{font-size:12px;color:var(--sub);line-height:1.5}
.cmv{display:block;width:100%;padding:8px;font-size:12px;font-weight:700;color:var(--tx);background:transparent;border:1px solid var(--line);border-radius:8px;cursor:pointer}
.cbuy{display:block;margin-top:auto;text-align:center;font-size:13px;font-weight:800;color:#fff;background:var(--acc);border-radius:8px;padding:8px;text-decoration:none}
.cta{display:flex;gap:8px;margin:16px 0 8px}
.btn{flex:1;display:block;text-align:center;padding:16px 8px;border-radius:8px;font-weight:800;font-size:15px;text-decoration:none;border:0;cursor:pointer}
.btn.buy{background:var(--acc);color:#fff}
.btn.play{background:var(--bg2);color:var(--tx);border:1px solid var(--line)}
.trig{font-size:12px;color:var(--sub);text-align:center;margin:0 0 16px}
.perk{border:1px solid var(--acc);border-radius:8px;padding:16px;margin:16px 0;background:var(--bg2)}
.perk .pkh{font-weight:800;margin:0 0 8px;color:var(--tx)}
.perk .pkl{font-size:13px;margin:0 0 8px;color:var(--tx);line-height:1.6}
.perk .pkb{display:flex;flex-direction:column;gap:8px;margin:8px 0}
.tvb{display:block;text-align:center;padding:16px 8px;border-radius:8px;font-weight:800;font-size:15px;text-decoration:none;color:#fff;background:var(--tv)}
.tvb.g{background:transparent;color:var(--tx);border:1px solid var(--line);padding:8px}
.perk .pkn{font-size:11px;color:var(--sub);margin:0}
.perk.mini{padding:8px 16px}
.perk.mini .tvb{padding:8px}
.smp{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;margin:16px 0 8px}
.smp a{flex:0 0 auto;scroll-snap-align:start}
.smp img{height:200px;width:auto;display:block;border-radius:8px}
.note{font-size:12px;color:var(--sub);margin:0 0 16px}
.top1{display:grid;grid-template-columns:40% 1fr;gap:16px;margin:16px 0;align-items:start}
.top1 .im img{width:100%;height:auto;display:block;border-radius:8px}
.top1 .lab{display:inline-block;background:var(--acc);color:#fff;font-size:12px;font-weight:800;padding:0 8px;border-radius:4px;margin-bottom:8px}
.top1 .tt{font-size:15px;font-weight:800;line-height:1.5;margin:0 0 8px;color:var(--tx)}
.mvo{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:20;display:flex;align-items:center;justify-content:center;flex-direction:column}
.mvs{width:100%;max-width:720px;aspect-ratio:560/360}
.mvs iframe{width:100%;height:100%;border:0}
.mvx{position:absolute;top:16px;right:16px;width:48px;height:48px;font-size:24px;background:#fff;color:#000;border:0;border-radius:24px;cursor:pointer}
.mvh{color:#ccc;font-size:12px;margin-top:8px}
.shelf{margin:24px 0}
.shelf h2{margin-bottom:8px}
.shelf .row{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}
.shelf .row .card{flex:0 0 44%;max-width:200px;scroll-snap-align:start}
.achs{display:flex;gap:16px;overflow-x:auto;padding:8px 0 16px}
.ach{flex:0 0 72px;text-align:center;text-decoration:none;color:var(--tx)}
.ach img,.ach .ini{display:block;width:64px;height:64px;border-radius:32px;object-fit:cover;object-position:top;margin:0 auto 8px;border:2px solid var(--acc);background:var(--bg2)}
.ach .ini{line-height:60px;font-weight:800;font-size:24px}
.ach b{display:block;font-size:12px;font-weight:600;line-height:1.4}
.tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:16px 0}
@media(min-width:720px){.tiles{grid-template-columns:repeat(4,1fr)}}
.tile{position:relative;display:block;aspect-ratio:3/4;border-radius:8px;overflow:hidden;background:#000}
.tile img{width:100%;height:100%;object-fit:cover;display:block;opacity:.85}
.tile .tl{position:absolute;left:0;right:0;bottom:0;padding:8px;background:linear-gradient(transparent,rgba(0,0,0,.85));color:#fff}
.tile .tl b{display:block;font-size:14px;line-height:1.4}
.tile .tl small{font-size:12px;opacity:.85}
