:root{--color-ink: #252a33;--color-ink-soft: #5a6272;--color-paper: #f4f6fa;--color-paper-2: #e7ebf3;--color-moss: #3d5a80;--color-amberline: #6f7cb0;--color-brick: #e74c3c;--shadow-soft: 0 2px 10px rgba(43, 38, 34, .1);--maxw: 760px;--radius: 8px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--color-paper);color:var(--color-ink);font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Noto Sans JP,Yu Gothic,Meiryo,sans-serif;line-height:1.75;font-size:16px}img{max-width:100%;height:auto;display:block}a{color:var(--color-moss)}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 16px}.site-header{background:var(--color-ink);color:var(--color-paper);border-bottom:3px solid var(--color-amberline)}.site-header .bar{display:flex;align-items:center;gap:10px;padding:10px 16px;max-width:var(--maxw);margin:0 auto}.site-header a{color:var(--color-paper);text-decoration:none;font-weight:700;letter-spacing:.02em}.badge-18{border:1.5px solid var(--color-brick);color:var(--color-brick);font-size:12px;font-weight:700;padding:1px 6px;border-radius:4px;background:#fff}.pr-strip{background:var(--color-paper-2);color:var(--color-ink-soft);font-size:12px;text-align:center;padding:6px 16px;border-bottom:1px solid #e5ddd0}main{padding:20px 0 40px}h1{font-size:1.5rem;line-height:1.4;margin:14px 0 12px}h2{font-size:1.15rem;margin:28px 0 10px;border-left:5px solid var(--color-amberline);padding-left:10px}.thumb-fv{border-radius:var(--radius);box-shadow:var(--shadow-soft);width:100%;background:#eee}.cta{display:block;text-align:center;text-decoration:none;background:var(--color-brick);color:#fff;font-weight:800;font-size:1.05rem;padding:15px 18px;border-radius:var(--radius);box-shadow:var(--shadow-soft);margin:14px 0;letter-spacing:.02em}.cta small{display:block;font-weight:500;font-size:.72rem;opacity:.92;margin-top:3px}.cta-arrow{text-align:center;color:var(--color-brick);font-size:1.4rem;line-height:1;margin-top:6px}.rating{background:#fff;border:1px solid #e5ddd0;border-radius:var(--radius);padding:12px 14px;margin:16px 0}.rating .stars{color:var(--color-amberline);font-size:1.2rem;letter-spacing:2px}.rating .src{color:var(--color-ink-soft);font-size:.78rem;margin-top:2px}.intro{margin:16px 0}.samples{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.samples img{border-radius:6px}.movie-poster{position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-soft)}.movie-poster .play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:2.4rem;text-decoration:none;background:#00000047}.related ul{list-style:none;padding:0;margin:8px 0}.related li{border-bottom:1px dashed #e0d6c6}.related a{display:block;padding:10px 4px;text-decoration:none}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:16px 0}.card{background:#fff;border:1px solid #e5ddd0;border-radius:var(--radius);overflow:hidden;text-decoration:none;color:var(--color-ink);box-shadow:var(--shadow-soft)}.card .cap{padding:10px 12px;font-size:.92rem;font-weight:700;line-height:1.4}.card .meta{color:var(--color-ink-soft);font-weight:500;font-size:.78rem}.site-footer{background:var(--color-ink);color:var(--color-paper);margin-top:30px}.site-footer .inner{max-width:var(--maxw);margin:0 auto;padding:20px 16px;font-size:.85rem}.site-footer a{color:var(--color-paper)}.site-footer nav{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:10px}.legal{color:#cbb8a0;font-size:.78rem;margin-top:8px}.doc h2{font-size:1.05rem}.doc dl dt{font-weight:700;margin-top:12px}.doc table{border-collapse:collapse;width:100%;font-size:.9rem}.doc th,.doc td{border:1px solid #e0d6c6;padding:8px 10px;text-align:left;vertical-align:top}@media(max-width:480px){.grid{grid-template-columns:1fr}.samples{grid-template-columns:repeat(2,1fr)}}.breadcrumb{margin:4px 0 2px}.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:4px;padding:0;margin:0;font-size:.78rem;color:var(--color-ink-soft)}.breadcrumb li:not(:last-child):after{content:"›";margin-left:6px;color:#b7a98f}.breadcrumb a{color:var(--color-moss);text-decoration:none}.breadcrumb [aria-current=page]{color:var(--color-ink-soft)}.warn{background:#fff7f2;border:1px solid #f0cdbc;border-left:5px solid var(--color-brick);border-radius:var(--radius);padding:12px 14px;margin:18px 0;font-size:.86rem}.warn-h{font-weight:800;color:var(--color-brick);margin:0 0 4px}.warn p{margin:0}.byline{display:flex;flex-wrap:wrap;gap:10px;align-items:baseline;font-size:.8rem;color:var(--color-ink-soft);margin:2px 0 12px}.byline .author{font-weight:700;color:var(--color-ink)}.byline .updated{color:var(--color-ink-soft)}.hub-intro{margin:12px 0 18px}.hub-intro .authority{background:#fff;border:1px solid #e5ddd0;border-radius:var(--radius);padding:12px 14px;margin-top:12px}.hub-intro .cred{font-size:.84rem;color:var(--color-ink-soft);margin:0 0 8px}.hub-intro .crit-h{font-weight:700;margin:6px 0 4px}.hub-intro .criteria{margin:0;padding-left:1.2em;font-size:.88rem}.hub-intro .criteria li{margin:3px 0}.toc{background:var(--color-paper-2);border:1px solid #e5ddd0;border-radius:var(--radius);padding:12px 16px;margin:16px 0}.toc .toc-h{font-weight:800;margin:0 0 6px}.toc ol{margin:0;padding-left:1.3em}.toc a{color:var(--color-moss)}.hub-group{margin:22px 0}.hub-work{background:#fff;border:1px solid #e5ddd0;border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:14px;margin:14px 0}.hub-work h3{font-size:1.05rem;margin:0 0 10px;line-height:1.4}.hub-work h3 a{color:var(--color-ink);text-decoration:none}.hub-work-body{display:flex;gap:14px;align-items:flex-start}.hub-thumb{flex:0 0 132px}.hub-thumb img{border-radius:8px;box-shadow:var(--shadow-soft)}.hub-work-main{flex:1 1 auto;min-width:0}.hub-work-main .rating{margin:0 0 8px}.hub-work .src-line{font-size:.76rem;color:var(--color-ink-soft);margin:0 0 6px}.hub-work .blurb{font-size:.9rem;margin:0 0 10px}.hub-work .detail-link{font-size:.82rem;margin:6px 0 0}.hub-updated-note{font-size:.8rem;color:var(--color-ink-soft);margin:18px 0}.hub-nav ul{list-style:none;padding:0;margin:8px 0 4px}.hub-nav li{border-bottom:1px dashed #e0d6c6}.hub-nav a{display:block;padding:10px 4px;text-decoration:none;font-weight:700}@media(max-width:480px){.hub-work-body{flex-direction:column}.hub-thumb{flex-basis:auto;align-self:center;max-width:200px}}
