:root{--bg:#000;--fg:#fff;--muted:#ffffffa6;--hairline:#ffffff1f;--accent:#ffffffe6;--max:1200px;--font-body:"Noto Sans JP",ui-sans-serif,system-ui,-apple-system,"Helvetica Neue","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);letter-spacing:-.01em;margin:0}::selection{color:var(--fg);background:#fff3}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff40}html{scrollbar-color:#ffffff26 var(--bg)}a{color:inherit;text-decoration:none}p{margin:0 0 1em;line-height:1.9}small{color:var(--muted)}.container{width:100%;max-width:var(--max);margin:0 auto;padding:0 24px}.section{border-top:1px solid var(--hairline);padding:96px 0}.sectionTitle{letter-spacing:-.02em;margin:0 0 24px;font-size:28px}.muted{color:var(--muted)}.btn{border:1px solid var(--hairline);color:var(--fg);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:0 0;justify-content:center;align-items:center;padding:12px 16px;font-size:12px;transition:border-color .2s;display:inline-flex}.btn:hover{border-color:#ffffff59}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-ticket{letter-spacing:.08em;color:#000;background:#fff;border:none;padding:18px 56px;font-size:clamp(15px,1.8vw,18px);font-weight:700;text-decoration:none;transition:opacity .2s,transform .2s;display:inline-block}.btn-ticket:hover{opacity:.85;transform:translateY(-2px)}.btn-ticket:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.card{border:1px solid var(--hairline);padding:32px;transition:border-color .3s}.card:hover{border-color:#ffffff40}.grid2{grid-template-columns:1fr 1fr;gap:24px;display:grid}.grid3{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}input,textarea{font:inherit}.char-group{margin-bottom:48px}.char-group:last-child{margin-bottom:0}.group-label{letter-spacing:.1em;color:var(--muted);border-bottom:1px solid var(--hairline);text-transform:uppercase;margin:0;padding-bottom:12px;font-size:11px}.char-row{border-bottom:1px solid var(--hairline);flex-direction:column;gap:16px;padding:24px 0;display:flex}.char-header{flex-direction:column;gap:4px;display:flex}.char-name{margin:0;font-size:clamp(15px,1.6vw,18px);font-weight:700}.char-catchphrase{color:var(--muted);font-size:12px;line-height:1.6}.cast-row{flex-wrap:nowrap;gap:16px;display:flex}.cast-row--scroll{-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:4px;overflow-x:auto}.cast-card{color:inherit;font:inherit;cursor:pointer;text-align:center;background:0 0;border:none;flex:0 0 148px;padding:0;transition:opacity .2s}.cast-card:hover{opacity:.8}.cast-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cast-card--single{max-width:180px}.cast-photo-wrap{aspect-ratio:3/4;background:#ffffff0d;width:100%;margin-bottom:8px;position:relative;overflow:hidden}.cast-photo-wrap img{object-fit:cover;width:100%;height:100%;display:block}.cast-badge{border-radius:2px;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:700;line-height:1;display:flex;position:absolute;top:6px;left:6px}.cast-badge--a{color:#000;background:#fff}.cast-badge--b{color:#fff;background:0 0;border:1px solid #fff}.cast-info{flex-direction:column;gap:2px;display:flex}.cast-actor{font-size:13px;font-weight:700}.cast-label-text{color:var(--muted);font-size:11px}.content-grid{-webkit-overflow-scrolling:touch;scrollbar-width:thin;gap:14px;margin-top:24px;padding-bottom:4px;display:flex;overflow-x:auto}.content-grid>*{flex:0 0 196px}.content-card{border:1px solid var(--hairline);color:inherit;font:inherit;cursor:pointer;text-align:left;background:0 0;width:100%;padding:0;transition:border-color .3s;overflow:hidden}.content-card:hover{border-color:#ffffff40}.content-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.content-card__thumb{aspect-ratio:16/9;background:#ffffff0d;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.content-card__thumb img{object-fit:cover;width:100%;height:100%;display:block}.content-card__label{color:var(--muted);padding:10px 12px;font-size:12px;line-height:1.5}.voices-layout{flex-direction:column;gap:16px;display:flex}.voices-layout__episodes .content-grid{-webkit-overflow-scrolling:touch;scrollbar-width:thin;gap:12px;margin-top:0;padding-bottom:4px;display:flex;overflow-x:auto}.voices-layout__episodes .content-card{flex:0 0 180px}.proof-scroll{-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:thin;gap:14px;margin-top:24px;padding-bottom:8px;display:flex;overflow-x:auto}.proof-scroll>*{scroll-snap-align:start;flex:0 0 260px}.proof-card{text-align:left}.proof-card__body{flex-direction:column;gap:10px;min-height:160px;padding:20px;display:flex}.proof-card__header{align-items:center;gap:8px;display:flex}.proof-card__author{color:var(--fg);letter-spacing:.04em;font-size:13px;font-weight:600}.proof-card__label{letter-spacing:.12em;text-transform:uppercase;color:var(--accent,var(--muted));font-size:11px}.proof-card__preview{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.7;display:-webkit-box;overflow:hidden}.goods-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:32px;display:flex}.opening-overlay{z-index:100;background:var(--bg);justify-content:center;align-items:center;transition:opacity .8s;display:flex;position:fixed;inset:0}.opening-text{color:var(--fg);letter-spacing:.12em;white-space:nowrap;font-family:Noto Serif JP,游明朝,Yu Mincho,ヒラギノ明朝 ProN,serif;font-size:clamp(20px,5vw,42px);animation:1.2s both openingFadeInZoom}@keyframes openingFadeInZoom{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@media (max-width:860px){.goods-header{text-align:center;justify-content:center}.section{padding:72px 0}.sectionTitle{font-size:22px}.grid2{grid-template-columns:1fr}.grid3{grid-template-columns:1fr 1fr}.cast-card{flex:0 0 120px}.overview-grid{grid-template-columns:1fr!important}}@media (max-width:480px){.section{padding:56px 0}.sectionTitle{font-size:20px}.container{padding:0 16px}.grid3{grid-template-columns:1fr}.content-grid{gap:12px}.content-grid>*{flex:0 0 160px}.voices-layout__episodes .content-card{flex:0 0 150px}.proof-scroll>*{flex:0 0 220px}body{font-size:15px}.cast-card{flex:0 0 120px}}
