:root{--cv-fg: #0a0f1f;--cv-fg-mute: #6a7286;--cv-line: #dde2ec;--cv-bg: #f7f8fb;--cv-accent: #e5374b;--cv-link-hover: #2a56f0;--cv-note-link-hover: #4b5568}html[data-pre-theme=dark]{--cv-fg: #eceffb;--cv-fg-mute: #7782a0;--cv-line: #1a1f35;--cv-bg: #060814;--cv-accent: #ff5b6f;--cv-link-hover: #5a7cff;--cv-note-link-hover: #a6aec4}.cv-root{max-width:760px;margin:0 auto;padding:64px 32px 96px;color:var(--cv-fg);background:var(--cv-bg);min-height:100vh;font-family:Inter,Noto Sans JP,system-ui,sans-serif}.cv-back{font-family:JetBrains Mono,monospace;font-size:12px;letter-spacing:.14em;color:var(--cv-fg-mute)}.cv-back:hover{color:var(--cv-accent)}.cv-header{margin-bottom:48px}.cv-name{margin:32px 0 8px;font-family:Noto Sans JP,sans-serif;font-weight:800;font-size:40px;letter-spacing:-.02em;line-height:1.2}.cv-sub{margin:0;font-family:JetBrains Mono,monospace;font-size:12px;letter-spacing:.14em;color:var(--cv-fg-mute);text-transform:uppercase}.cv-sub a{color:inherit}.cv-sub a:hover{color:var(--cv-accent)}.cv-block{margin-top:48px;padding-top:32px;border-top:1px solid var(--cv-line)}.cv-h2{margin:0 0 24px;font-family:Noto Sans JP,sans-serif;font-weight:800;font-size:22px;letter-spacing:-.005em}.cv-h2:before{content:"●";color:var(--cv-accent);margin-right:12px;font-size:14px;vertical-align:middle}.cv-list{margin:0;display:grid;gap:12px}.cv-row{display:grid;grid-template-columns:100px 1fr;gap:16px;padding:4px 0}.cv-row dt{font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--cv-fg-mute);padding-top:3px}.cv-row dd{margin:0;font-size:16px}.cv-mobile-break{display:none}.cv-events{margin:0;padding:0;list-style:none;display:grid;gap:28px}.cv-events li{display:grid;grid-template-columns:160px 1fr;gap:20px}.cv-events time{font-family:JetBrains Mono,monospace;font-size:12px;letter-spacing:.08em;color:var(--cv-fg-mute);padding-top:4px}.cv-events h3{margin:0 0 6px;font-family:Noto Sans JP,sans-serif;font-weight:700;font-size:17px;line-height:1.45;letter-spacing:-.005em}.cv-events h3 a{color:var(--cv-fg);border-bottom:1px solid var(--cv-line);transition:color .15s,border-color .15s}.cv-events h3 a:hover{color:var(--cv-link-hover);border-bottom-color:var(--cv-link-hover)}.cv-events p{margin:0;font-size:14px;color:var(--cv-fg-mute);line-height:1.7}.cv-events p a,.cv-role a,.oldhp-text a,.oldhp-list a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,var(--cv-fg-mute) 48%,transparent);transition:color .15s,text-decoration-color .15s}.cv-events p a:hover,.cv-role a:hover,.oldhp-text a:hover,.oldhp-list a:hover{color:var(--cv-note-link-hover);text-decoration-color:var(--cv-note-link-hover)}.cv-role{margin:-1px 0 8px!important;font-family:JetBrains Mono,Noto Sans JP,monospace;font-size:12px!important;font-weight:500;letter-spacing:.08em;color:var(--cv-fg-mute)!important;line-height:1.6!important}.oldhp-photos{display:flex;gap:16px;align-items:flex-start;margin-bottom:56px}.oldhp-photos img{width:min(30%,180px);height:auto;border-radius:8px;border:1px solid var(--cv-line);background:#fff}.oldhp-text{margin:0;color:var(--cv-fg-mute);line-height:1.8}.oldhp-more{margin-top:20px}.oldhp-list{margin:0;padding-left:1.25em;color:var(--cv-fg);line-height:1.85;list-style:disc}.oldhp-list ul{list-style:disc}.oldhp-list li{padding-left:.1em}.oldhp-list li::marker{color:var(--cv-link-hover)}.oldhp-list ul{margin:4px 0 10px;padding-left:1.4em;color:var(--cv-fg-mute)}.oldhp-contact{color:var(--cv-fg-mute)}.oldhp-embeds{display:grid;gap:16px}.oldhp-embeds iframe{display:block;width:494px;max-width:100%;border:0;padding:0;margin:0}.oldhp-badges{display:flex;flex-wrap:wrap;gap:8px;margin:0}.oldhp-badges a{display:inline-flex}.oldhp-badges img{display:block;height:20px}.cv-foot{margin-top:80px;padding-top:32px;border-top:1px solid var(--cv-line);font-family:JetBrains Mono,monospace;font-size:12px;color:var(--cv-fg-mute);line-height:1.8;letter-spacing:.04em}.cv-foot .cv-h2{font-family:Noto Sans JP,sans-serif;font-size:22px;letter-spacing:-.005em}.cv-foot-back{margin-top:32px}.cv-foot-back a:hover{color:var(--cv-accent)}@media(max-width:600px){.cv-root{padding:32px 20px 72px}.cv-name{font-size:30px}.cv-block{margin-top:32px}.cv-row{grid-template-columns:88px 1fr;gap:12px}.cv-mobile-break{display:block}.cv-events li{grid-template-columns:1fr;gap:8px}.oldhp-photos{gap:12px;margin-bottom:40px}.oldhp-photos img{width:calc((100% - 12px)/2)}}
