:root{--bg: #0b0e14;--bg-elev: #141925;--bg-elev2: #1c2233;--border: #283044;--text: #e6e9f0;--text-dim: #97a0b5;--accent: #5b8cff;--radius: 12px;--maxw: 1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,system-ui,-apple-system,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}h1,h2,h3{line-height:1.3}.site-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 22px;border-bottom:1px solid var(--border);background:#0b0e14d9;backdrop-filter:blur(8px);position:sticky;top:0;z-index:50}.brand{font-size:1.25rem;font-weight:800;letter-spacing:.02em;display:flex;align-items:center;gap:8px}.brand-mark{color:var(--accent)}.site-nav{display:flex;gap:18px;font-size:.95rem;color:var(--text-dim)}.site-nav a:hover{color:var(--text)}.site-footer{margin-top:64px;padding:28px 22px 48px;border-top:1px solid var(--border);color:var(--text-dim);font-size:.85rem;text-align:center}.foot-links{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin-bottom:10px}.foot-links a:hover{color:var(--text)}.foot-disc{max-width:640px;margin:8px auto;font-size:.78rem}.layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:20px;max-width:1640px;margin:0;padding:22px 24px 22px 16px}@media(max-width:820px){.layout{grid-template-columns:1fr;gap:14px;padding:14px}.hero h1{font-size:1.35rem}.hero p{font-size:.92rem}.site-header{padding:12px 16px}.site-nav{gap:14px}.cal-head h2{font-size:1.05rem}.detail,.page{padding-left:16px;padding-right:16px}}@media(max-width:600px){.layout{padding:12px;gap:12px}.cal-scroll{display:none}.cal-agenda{display:block}.hero{margin-bottom:18px}.hero h1{font-size:1.22rem}.cal-section{margin-bottom:30px}.site-nav{font-size:.9rem}}.sidebar{position:sticky;top:78px;align-self:start;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:16px 16px 20px;max-height:calc(100vh - 100px);overflow:auto}.sidebar-title{margin:0 0 12px;font-size:1rem}.sidebar-toggle{display:none;width:100%;padding:11px 12px;text-align:left;font-size:.95rem;font-weight:700;color:var(--text);background:var(--bg-elev2);border:1px solid var(--border);border-radius:8px;cursor:pointer}.cat-all{width:100%;margin-bottom:14px;padding:7px;font-size:.82rem;color:var(--text-dim);background:var(--bg-elev2);border:1px solid var(--border);border-radius:8px;cursor:pointer}.cat-all:hover{color:var(--text)}.cat-group{margin-bottom:14px}.cat-group h3{margin:0 0 6px;font-size:.74rem;letter-spacing:.08em;color:var(--text-dim);text-transform:uppercase}.cat-group ul{list-style:none;margin:0;padding:0}.cat-item{display:flex;align-items:center;gap:8px;padding:4px 2px;font-size:.9rem;cursor:pointer}.cat-item input{accent-color:var(--accent)}.cat-dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}@media(max-width:820px){.sidebar{position:static;top:auto;max-height:none;overflow:visible;padding:10px 14px}.sidebar-title{display:none}.sidebar-toggle{display:block}.cat-all,.cat-body{display:none}.sidebar.open .cat-all{display:block}.sidebar.open .cat-body{display:block;margin-top:12px}}.hero{margin-bottom:26px}.hero h1{margin:0 0 8px;font-size:1.7rem}.hero p{margin:0;color:var(--text-dim)}.cal-section{margin-bottom:40px}.cal-section h2,.timeline h2{font-size:1.15rem;margin:0 0 14px}.cal-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.cal-head h2{margin:0}.cal-nav{display:flex;gap:14px;font-size:.85rem}.cal-nav a{color:var(--accent)}.cal-nav a:hover{text-decoration:underline}.cal-hint{font-size:.78rem;color:var(--text-dim);margin-top:8px}.timeline+.timeline{margin-top:38px}.calendar{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.cal-scroll{max-width:100%}.cal-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));background:var(--bg-elev2)}.cal-wd{padding:8px;text-align:center;font-size:.8rem;color:var(--text-dim)}.cal-wd.sun{color:#ff8a8a}.cal-wd.sat{color:#8ab4ff}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.cal-cell{position:relative;min-height:104px;min-width:0;padding:6px;border-top:1px solid var(--border);border-left:1px solid var(--border)}.cal-cell:nth-child(7n+1){border-left:none}.cal-cell.empty{background:#ffffff03}.cal-day{font-size:.78rem;color:var(--text-dim);margin-bottom:4px}.cal-items{display:flex;flex-direction:column;gap:4px;min-width:0}.cal-chip{display:block;padding:4px 6px;border-radius:6px;font-size:.72rem;background:color-mix(in srgb,var(--c) 22%,transparent);border-left:3px solid var(--c);line-height:1.25}.cal-chip:hover{background:color-mix(in srgb,var(--c) 38%,transparent)}.chip-cat{display:block;font-size:.62rem;color:var(--text-dim)}.chip-name{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-today{margin:0 0 12px;font-weight:800;font-size:.98rem;color:var(--accent)}.cal-cell.is-today{background:color-mix(in srgb,var(--accent) 13%,transparent);box-shadow:inset 0 0 0 2px var(--accent)}.cal-cell.is-today .cal-day{color:#fff;background:var(--accent);border-radius:99px;padding:1px 9px;font-weight:800;display:inline-block}.cal-cell.is-today:after{content:"今日";position:absolute;top:5px;right:5px;font-size:.58rem;font-weight:800;color:var(--accent);background:var(--bg-elev);border:1px solid var(--accent);padding:0 6px;border-radius:99px}.agd-day.is-today{background:color-mix(in srgb,var(--accent) 11%,transparent);border-radius:10px;box-shadow:inset 0 0 0 1px var(--accent)}.agd-day.is-today .agd-d{color:#fff;background:var(--accent);border-radius:10px;padding:0 6px}.agd-day.is-today .agd-wd{color:var(--accent)}.agd-day.is-today .agd-date:after{content:"今日";display:block;margin-top:3px;font-size:.6rem;font-weight:800;color:var(--accent)}.cal-agenda{display:none;list-style:none;margin:0;padding:0}.agd-empty{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:18px;color:var(--text-dim);text-align:center}.agd-day{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--border)}.agd-day:first-child{border-top:none}.agd-date{flex:0 0 44px;text-align:center;line-height:1.1;padding-top:2px}.agd-date .agd-d{display:block;font-size:1.3rem;font-weight:800}.agd-date .agd-wd{display:block;font-size:.7rem;color:var(--text-dim)}.agd-date.sun .agd-d,.agd-date.sun .agd-wd{color:#ff8a8a}.agd-date.sat .agd-d,.agd-date.sat .agd-wd{color:#8ab4ff}.agd-items{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:8px}.agd-chip{padding:10px 12px;border-radius:8px;border-left-width:4px;font-size:.9rem;line-height:1.3}.agd-chip .chip-cat{font-size:.7rem;margin-bottom:1px}.agd-chip .chip-name{white-space:normal;overflow:visible;font-weight:600}@media(max-width:820px){.cal-cell{min-height:64px}.chip-name{font-size:.66rem}.cal-wd{font-size:.72rem;padding:6px 4px}.tl-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}.tl-month{margin-bottom:26px}.tl-month h3{font-size:.95rem;color:var(--text-dim);border-bottom:1px solid var(--border);padding-bottom:6px;margin:0 0 12px}.tl-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.rcard{display:flex;flex-direction:column;background:var(--bg-elev);border:1px solid var(--border);border-top:3px solid var(--c);border-radius:10px;overflow:hidden;transition:transform .08s ease,border-color .08s ease}.rcard:hover{transform:translateY(-2px);border-color:var(--c)}.rcard-media{position:relative;aspect-ratio:4 / 3;background:#fff;display:flex;align-items:center;justify-content:center}.rcard-media img{width:100%;height:100%;object-fit:contain;padding:8px}.rcard-noimg{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:color-mix(in srgb,var(--c) 65%,#fff);background:linear-gradient(135deg,color-mix(in srgb,var(--c) 28%,var(--bg-elev2)),var(--bg-elev2))}.rcard-noimg svg{width:34px;height:34px;opacity:.85}.rcard-noimg span{font-size:.72rem;color:var(--text-dim)}.rcard-datebadge{position:absolute;top:8px;left:8px;background:#0b0e14d1;color:#fff;font-size:.74rem;font-weight:700;padding:2px 9px;border-radius:99px}.rcard-link{display:flex;flex-direction:column;flex:1 1 auto;color:inherit}.rcard-body{padding:10px 12px 8px;display:flex;flex-direction:column;gap:3px;min-width:0}.rcard-top{display:flex;align-items:center;gap:8px;margin-bottom:1px}.rcard-cat{font-size:.68rem;color:var(--c);font-weight:700;min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rcard-name{font-weight:700;font-size:.92rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rcard-brand{font-size:.8rem;color:var(--text-dim)}.rcard-status{flex:0 0 auto;white-space:nowrap;font-size:.64rem;padding:1px 7px;border-radius:99px;border:1px solid var(--border);color:var(--text-dim)}.rcard-buy{display:flex;gap:6px;padding:0 12px 12px}.rbuy{flex:1 1 0;min-width:0;text-align:center;font-size:.76rem;font-weight:700;padding:7px 4px;border-radius:7px;border:1px solid transparent}.rbuy.amazon{background:#f90;color:#1a1a1a}.rbuy.rakuten{background:#bf0000;color:#fff}.rbuy:hover{filter:brightness(1.08)}.st-confirmed{color:#6ee7a8;border-color:#2f6b4b}.st-scheduled{color:#ffd479;border-color:#6b5a2f}.st-rumored{color:#b6a7ff;border-color:#4b3f6b}.promo{position:relative;display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:10px 22px;background:linear-gradient(90deg,#2a1a02,#3c2606);border-bottom:1px solid #5a3c0c;color:#ffd479}.promo:hover{background:linear-gradient(90deg,#321f02,#472d07)}.promo-badge{flex:0 0 auto;font-weight:800;font-size:.82rem;letter-spacing:.02em;background:#ff990029;border:1px solid #7a5210;color:#ffb84d;padding:3px 10px;border-radius:99px}.promo-text{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1 1 auto}.promo-text strong{color:#ffe9b0;font-size:.95rem}.promo-note{color:#d9b97a;font-size:.8rem}.promo-cta{flex:0 0 auto;background:#f90;color:#1a1a1a;font-weight:700;padding:8px 14px;border-radius:8px;font-size:.85rem;white-space:nowrap}.promo:hover .promo-cta{filter:brightness(1.07)}.promo-pr{position:absolute;top:4px;right:8px;font-size:.58rem;color:#b58a3a}@media(max-width:600px){.promo{padding:10px 14px 18px;gap:10px}.promo-note{display:none}.promo-cta{flex:1 1 100%;text-align:center}}.detail{max-width:760px;margin:0 auto;padding:26px 22px 0}.back{color:var(--text-dim);font-size:.88rem}.back:hover{color:var(--text)}.detail-head{border-left:5px solid var(--c);padding-left:16px;margin:18px 0 26px}.detail-cat{color:var(--c);font-weight:700;font-size:.82rem}.detail-head h1{margin:4px 0;font-size:1.6rem}.detail-brand{color:var(--text-dim)}.detail-meta{display:flex;align-items:center;gap:12px;margin-top:10px;flex-wrap:wrap}.detail-date{font-weight:700}.detail-price{color:var(--text-dim)}.detail-highlights ul{padding-left:20px}.detail-highlights li{margin-bottom:4px}.detail-specs table{width:100%;border-collapse:collapse;margin-top:8px}.detail-specs th,.detail-specs td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--border);font-size:.92rem}.detail-specs th{width:38%;color:var(--text-dim);font-weight:600}.detail h2{font-size:1.1rem;margin-top:30px}.pr-note{font-size:.76rem;color:var(--text-dim)}.buy-btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}.buy{flex:1 1 200px;text-align:center;padding:13px;border-radius:10px;font-weight:700;border:1px solid var(--border)}.buy.rakuten{background:#bf0000;color:#fff}.buy.amazon{background:#f90;color:#1a1a1a}.buy.disabled{opacity:.85}.buy:hover{filter:brightness(1.08)}.source{font-size:.78rem;color:var(--text-dim);margin-top:28px}.source a{color:var(--accent)}.detail-media{margin:18px 0 4px}.detail-media img{width:100%;height:auto;display:block;border-radius:12px;border:1px solid var(--border);background:#fff}.detail-media-ph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;aspect-ratio:16 / 10;border-radius:12px;text-align:center;padding:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--c) 32%,var(--bg-elev2)),var(--bg-elev2));border:1px solid var(--border)}.detail-media-ph strong{font-size:1.02rem}.detail-media-ph .ph-brand{color:var(--text-dim);font-size:.8rem}.page{max-width:760px;margin:0 auto;padding:30px 22px}.page h1{font-size:1.5rem}.page h2{font-size:1.1rem;margin-top:28px}.page p,.page li{color:var(--text)}.page .muted{color:var(--text-dim);font-size:.88rem}.page table{width:100%;border-collapse:collapse}.page th,.page td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--border);vertical-align:top}.page th{width:34%;color:var(--text-dim)}.drawer-overlay{position:fixed;inset:0;background:#0000008c;opacity:0;pointer-events:none;transition:opacity .22s ease;z-index:80}.drawer-overlay.open{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;height:100vh;height:100dvh;width:min(480px,94vw);background:var(--bg-elev);border-left:1px solid var(--border);box-shadow:-16px 0 40px #0006;transform:translate(100%);transition:transform .26s cubic-bezier(.4,0,.2,1);z-index:90;overflow-y:auto;overscroll-behavior:contain;padding:18px 22px 48px}.drawer.open{transform:translate(0)}.drawer-close{position:sticky;top:0;display:block;width:36px;height:36px;margin:0 0 6px auto;border-radius:50%;background:var(--bg-elev2);border:1px solid var(--border);color:var(--text);font-size:1.25rem;line-height:1;cursor:pointer}.drawer-close:hover{background:var(--border)}.drawer-loading{color:var(--text-dim);padding:48px 0;text-align:center}.drawer .detail{max-width:none;margin:0;padding:0}.drawer .detail .back{display:none}@media(max-width:520px){.drawer{width:100%}}
