:root{--bg:#fff;--bg2:#fff;--tx:#111;--ink:#111;--sub:#666;--line:#ddd;--key:#ffd400;--link:#0645ad;--sale:#e0284a;--acc:#ff4d6d;--tv:#2563eb}
/* 本文は av-wiki の明るい型。買うボタン・カード・特典の箱・サンプル動画は AVくらべで試した物（components.css） */
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.7 -apple-system,"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif}
a{color:var(--link)}
.w{max-width:880px;margin:0 auto;padding:0 16px}
.hd{background:var(--ink)}
.hd .w{display:flex;align-items:center;gap:16px;padding-top:8px;padding-bottom:8px}
.logo{color:#fff;text-decoration:none;font-weight:700;font-size:20px}
.logo b{color:var(--key)}
.tag{color:#bbb;font-size:12px}
.prbar{background:#f4f4f4;border-bottom:1px solid var(--line);font-size:12px;color:var(--sub)}
.prbar .w{padding-top:8px;padding-bottom:8px}
main{padding-top:16px;padding-bottom:48px}
.bc{font-size:12px;color:var(--sub);margin-bottom:8px}
.bc i{font-style:normal;margin:0 8px}
h1{font-size:20px;line-height:1.5;margin:0 0 16px}
h2{font-size:16px;margin:32px 0 8px;padding:8px 0 8px 8px;border-left:4px solid var(--ink);background:#f6f6f6}
.pk img{display:block;width:auto;max-width:100%;height:auto;max-height:280px;margin:0 auto}
.ans{font-size:18px;line-height:1.6;margin:16px 0;padding:16px;background:#fff6c2;border-left:8px solid var(--key)}
.ans small{display:block;font-size:12px;color:var(--sub);margin-top:8px}
.cta{margin:16px 0}
.box{border:1px solid var(--line);padding:16px;margin:16px 0}
.bh{font-weight:700;margin:0 0 8px}
.box p{font-size:14px;margin:0 0 8px}
.sub{display:inline-block;padding:8px 16px;border:1px solid var(--ink);color:var(--ink);text-decoration:none;font-weight:700;font-size:14px}
.info{width:100%;border-collapse:collapse;font-size:14px}
.info th{width:9em;text-align:left;vertical-align:top;background:#f6f6f6;padding:8px;border:1px solid var(--line);font-weight:400;color:var(--sub)}
.info td{padding:8px;border:1px solid var(--line);word-break:break-all}
.big{font-size:20px}
.sl{color:var(--sale);font-weight:700;margin-left:8px}
.rl{padding-left:16px}
.rl li{margin:8px 0}
.cards{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.cd{display:grid;grid-template-columns:96px 1fr;gap:8px;border-bottom:1px solid var(--line);padding-bottom:16px}
.th img{width:96px;height:auto;display:block}
.ct{margin:0;font-size:13px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.cm{margin:0;font-size:12px;color:var(--sub)}
.mini{font-size:12px}
.cnt{font-size:16px;font-weight:700;margin:0 0 16px}
.src{font-size:12px;color:var(--sub)}
.sf{display:flex;gap:8px;margin:16px 0}
.sf input{flex:1;padding:8px;font-size:16px;border:2px solid var(--ink)}
.sf button{padding:8px 16px;background:var(--ink);color:#fff;border:0;font-weight:700;font-size:16px}
.names{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px 16px}
.more{margin:16px 0}
.ft{background:#f4f4f4;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(0,0,0,.94);z-index:9;display:flex;align-items:center;justify-content:center;padding:16px}
.ag[hidden]{display:none}
.ag-in{background:#fff;max-width:400px;padding:32px 24px}
.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(--ink);color:var(--key);border:0;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:600px){.cards{grid-template-columns:1fr}.info th{width:7em}}

/* 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}
