:root{--font-display: Georgia, "Times New Roman", "Noto Serif JP", serif;--font-sans: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;--color-bg: #fbfaf7;--color-surface: #ffffff;--color-surface-soft: #f8fafc;--color-ink: #0f172a;--color-ink-soft: #334155;--color-muted: #64748b;--color-border: #e2e8f0;--color-border-strong: #cbd5e1;--color-blue: #2563eb;--color-blue-soft: #5aa6ff;--color-cyan: #22d3ee;--color-gold: #c79a2e;--color-green: #22c55e;--color-purple: #7c3aed;--color-navy: #081d3a;--shadow-card: 0 12px 32px rgba(2, 6, 23, .06);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-full: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--max-width: 1460px;--content-width: 900px;--header-height: 64px;--transition-fast: .15s ease;--transition-base: .22s ease;--bg-primary: var(--color-bg);--bg-secondary: var(--color-surface);--bg-tertiary: var(--color-surface-soft);--bg-glass: color-mix(in srgb, var(--color-surface) 84%, transparent);--bg-glass-hover: var(--color-surface);--text-primary: var(--color-ink);--text-secondary: var(--color-ink-soft);--text-tertiary: var(--color-muted);--accent-primary: var(--color-blue);--accent-secondary: var(--color-purple);--accent-gradient: linear-gradient(135deg, var(--color-blue), var(--color-cyan));--accent-glow: rgba(37, 99, 235, .16);--border-subtle: var(--color-border);--border-default: var(--color-border);--border-hover: var(--color-border-strong);--shadow-sm: 0 1px 2px rgba(2, 6, 23, .05);--shadow-md: var(--shadow-card);--shadow-lg: var(--shadow-card);--shadow-glow: 0 16px 44px rgba(37, 99, 235, .16);--space-xs: var(--space-1);--space-sm: var(--space-2);--space-md: var(--space-4);--space-lg: var(--space-6);--space-xl: var(--space-8);--space-2xl: var(--space-12);--space-3xl: var(--space-16);--radius-xl: var(--radius-lg)}:root[data-theme=dark]{--color-bg: #0f172a;--color-surface: #111c2f;--color-surface-soft: #162238;--color-ink: #f8fafc;--color-ink-soft: #dbe4ef;--color-muted: #94a3b8;--color-border: rgba(226, 232, 240, .16);--color-border-strong: rgba(226, 232, 240, .28);--shadow-card: 0 18px 44px rgba(0, 0, 0, .25)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{min-width:320px;margin:0;background:radial-gradient(circle at 80% 6%,rgba(90,166,255,.1),transparent 30rem),linear-gradient(180deg,rgba(255,255,255,.72),transparent 22rem),var(--color-bg);color:var(--color-ink);font-family:var(--font-sans);font-size:16px;line-height:1.75;letter-spacing:0;-webkit-font-smoothing:antialiased;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.28;background-image:linear-gradient(rgba(15,23,42,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.035) 1px,transparent 1px);background-size:56px 56px}main{width:min(100%,var(--max-width));margin:0 auto;padding:calc(var(--header-height) + var(--space-8)) var(--space-6) var(--space-16)}a{color:inherit;text-decoration:none}a:hover{color:var(--color-blue)}button,input,select,textarea{font:inherit}button{color:inherit}img{display:block;max-width:100%;height:auto}h1,h2,h3,h4{margin:0;color:var(--color-ink);line-height:1.18;letter-spacing:0}h1,.display-font{font-family:var(--font-display);font-weight:700}p{margin:0;color:var(--color-ink-soft)}ul,ol{margin:0 0 var(--space-6);padding-left:var(--space-6)}li{color:var(--color-ink-soft);margin-bottom:var(--space-2)}code{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-soft);color:var(--color-blue);font-family:var(--font-mono);font-size:.88em;padding:.1em .35em}pre{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);padding:var(--space-6)}pre code{padding:0;border:0;background:transparent;color:inherit}blockquote{margin:var(--space-8) 0;padding:var(--space-6);border-left:3px solid var(--color-blue);background:var(--color-surface);color:var(--color-ink-soft)}table{width:100%;border-collapse:collapse}th,td{padding:var(--space-3);border-bottom:1px solid var(--color-border);text-align:left}.page-shell{display:grid;gap:var(--space-8)}.content-width{max-width:var(--content-width);margin-inline:auto}.panel{min-width:0;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-surface) 92%,transparent);box-shadow:var(--shadow-card)}.section-block{padding:var(--space-8)}.section-header{display:flex;align-items:end;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5, 20px)}.section-kicker{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-blue);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.section-title{margin-top:var(--space-2);font-size:clamp(1.2rem,2vw,1.55rem)}.section-copy{max-width:58ch;color:var(--color-muted);font-size:.95rem}.view-link{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-ink-soft);font-size:.82rem;font-weight:700}.view-link:after{content:"->";color:var(--color-blue)}.btn{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink);cursor:pointer;font-size:.92rem;font-weight:700;padding:.78rem 1.35rem;transition:transform var(--transition-base),border-color var(--transition-base),background var(--transition-base),color var(--transition-base)}.btn:hover{transform:translateY(-1px);border-color:var(--color-blue);color:var(--color-blue)}.btn-primary{border-color:var(--color-navy);background:var(--color-navy);color:#fff}.btn-primary:hover{background:#0b2a52;color:#fff}.tag,.chip{display:inline-flex;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-soft);color:var(--color-ink-soft);font-size:.72rem;font-weight:700;letter-spacing:.02em;line-height:1;padding:.42rem .55rem;text-transform:uppercase}.card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.media-card{min-width:0;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);transition:transform var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base)}.media-card:hover{transform:translateY(-2px);border-color:var(--color-border-strong);box-shadow:var(--shadow-card)}.media-card__image{position:relative;aspect-ratio:16 / 9;overflow:hidden;background:radial-gradient(circle at 50% 50%,rgba(37,99,235,.3),transparent 35%),linear-gradient(135deg,#0f172a,#334155)}.media-card__image img{width:100%;height:100%;object-fit:cover}.media-card__image img[src*=shugo-lineart]{background:#fff;object-fit:contain;padding:var(--space-2)}.media-card__body{padding:var(--space-4)}.media-card__meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);color:var(--color-muted);font-size:.72rem;font-weight:700;text-transform:uppercase}.media-card__meta span,.media-card__meta time{min-width:0}.media-card__title{margin-top:var(--space-3);font-size:1rem}.media-card__excerpt{margin-top:var(--space-3);color:var(--color-muted);font-size:.84rem;line-height:1.65}.arrow{color:var(--color-blue);font-weight:800}.tabs{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.tab-button{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--color-muted);cursor:pointer;font-size:.75rem;font-weight:800;letter-spacing:.05em;padding:var(--space-2) var(--space-3);text-transform:uppercase}.tab-button[aria-selected=true],.tab-button:hover{border-color:var(--color-blue);color:var(--color-ink)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1100px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){main{padding:calc(var(--header-height) + var(--space-5, 20px)) var(--space-4) var(--space-12)}.section-block{padding:var(--space-5, 20px)}.section-header{align-items:start;flex-direction:column}.card-grid{grid-template-columns:1fr}.tabs{flex-wrap:nowrap;max-width:100%;margin-inline:0;overflow-x:auto;padding:0 0 var(--space-2);scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab-button{flex:0 0 auto;min-height:40px;white-space:nowrap}.media-card__meta{align-items:flex-start;flex-direction:column;gap:var(--space-1)}}@media(max-width:520px){main{padding-inline:var(--space-3)}.panel{border-radius:var(--radius-sm)}.section-block{padding:var(--space-4)}.btn{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}::view-transition-old(root),::view-transition-new(root){animation-duration:.3s}::view-transition-old(root){animation-name:fade-out}::view-transition-new(root){animation-name:fade-in}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}a[data-astro-cid-eimmu3lg]{display:inline-block;text-decoration:none}a[data-astro-cid-eimmu3lg].active{font-weight:bolder;text-decoration:underline}.site-header[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--color-border);background:color-mix(in srgb,var(--color-bg) 86%,transparent);backdrop-filter:blur(18px)}.site-nav[data-astro-cid-3ef6ksr2]{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:min(100%,var(--max-width));height:var(--header-height);margin:0 auto;padding:0 var(--space-6)}.logo[data-astro-cid-3ef6ksr2]{color:var(--color-ink);font-weight:800;letter-spacing:.02em}.nav-links[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:center;gap:clamp(var(--space-4),2.5vw,var(--space-8))}.nav-links[data-astro-cid-3ef6ksr2] a{position:relative;padding:var(--space-2) 0;color:var(--color-ink-soft);font-size:.86rem;font-weight:700}.nav-links[data-astro-cid-3ef6ksr2] a.active,.nav-links[data-astro-cid-3ef6ksr2] a:hover{color:var(--color-ink)}.nav-links[data-astro-cid-3ef6ksr2] a.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--color-blue)}.nav-actions[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:end;gap:var(--space-3)}.theme-toggle[data-astro-cid-3ef6ksr2],.mobile-menu-btn[data-astro-cid-3ef6ksr2]{display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--color-ink);cursor:pointer}.theme-toggle[data-astro-cid-3ef6ksr2]{gap:var(--space-2);padding:var(--space-2)}.theme-toggle[data-astro-cid-3ef6ksr2] .sun[data-astro-cid-3ef6ksr2]{color:var(--color-ink-soft)}.theme-toggle[data-astro-cid-3ef6ksr2] .moon[data-astro-cid-3ef6ksr2]{color:var(--color-navy)}.mobile-menu-btn[data-astro-cid-3ef6ksr2]{display:none;width:42px;height:42px;flex-direction:column;gap:5px}.mobile-menu-btn[data-astro-cid-3ef6ksr2] span[data-astro-cid-3ef6ksr2]{width:22px;height:2px;border-radius:var(--radius-full);background:currentColor}@media(max-width:820px){.site-nav[data-astro-cid-3ef6ksr2]{grid-template-columns:1fr auto;padding-inline:var(--space-4)}.nav-links[data-astro-cid-3ef6ksr2]{position:fixed;top:var(--header-height);left:var(--space-4);right:var(--space-4);display:none;flex-direction:column;align-items:stretch;gap:0;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:var(--shadow-card);padding:var(--space-3)}.nav-links[data-astro-cid-3ef6ksr2].is-open{display:flex}.nav-links[data-astro-cid-3ef6ksr2] a{padding:var(--space-3) var(--space-4)}.nav-links[data-astro-cid-3ef6ksr2] a.active:after{display:none}.mobile-menu-btn[data-astro-cid-3ef6ksr2]{display:inline-flex}}.site-footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface) 76%,transparent)}.footer-inner[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:minmax(240px,1.4fr) repeat(4,minmax(120px,.7fr)) minmax(170px,.8fr);gap:var(--space-8);width:min(100%,var(--max-width));margin:0 auto;padding:var(--space-8) var(--space-6)}.footer-logo[data-astro-cid-sz7xmlte]{display:inline-flex;margin-bottom:var(--space-3);color:var(--color-ink);font-weight:800}.footer-about[data-astro-cid-sz7xmlte] p[data-astro-cid-sz7xmlte]{max-width:44ch;color:var(--color-muted);font-size:.9rem;line-height:1.8}.footer-col[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;gap:var(--space-2)}.footer-col[data-astro-cid-sz7xmlte] h2[data-astro-cid-sz7xmlte]{margin-bottom:var(--space-2);color:var(--color-ink);font-size:.82rem}.footer-col[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte],.footer-col[data-astro-cid-sz7xmlte] span[data-astro-cid-sz7xmlte]{color:var(--color-ink-soft);font-size:.86rem}.footer-motif[data-astro-cid-sz7xmlte]{position:relative;min-height:120px}.footer-motif[data-astro-cid-sz7xmlte] i[data-astro-cid-sz7xmlte]{position:absolute;left:50%;top:50%;width:3px;height:3px;border-radius:50%;background:var(--color-blue);opacity:.45;transform:rotate(calc(var(--i) * 17deg)) translate(calc(12px + (var(--i) % 9) * 8px))}.footer-bottom[data-astro-cid-sz7xmlte]{display:flex;justify-content:space-between;gap:var(--space-4);width:min(100%,var(--max-width));margin:0 auto;border-top:1px solid var(--color-border);padding:var(--space-4) var(--space-6);color:var(--color-muted);font-size:.78rem}.footer-bottom[data-astro-cid-sz7xmlte] p[data-astro-cid-sz7xmlte]{margin:0;color:inherit}.footer-bottom[data-astro-cid-sz7xmlte] div[data-astro-cid-sz7xmlte]{display:flex;gap:var(--space-4)}@media(max-width:1100px){.footer-inner[data-astro-cid-sz7xmlte]{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-about[data-astro-cid-sz7xmlte]{grid-column:span 2}}@media(max-width:700px){.footer-inner[data-astro-cid-sz7xmlte]{grid-template-columns:1fr 1fr;padding-inline:var(--space-4)}.footer-about[data-astro-cid-sz7xmlte],.footer-motif[data-astro-cid-sz7xmlte]{grid-column:1 / -1}.footer-bottom[data-astro-cid-sz7xmlte]{flex-direction:column;padding-inline:var(--space-4)}}
