:root{background:var(--background-color,#010407);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility}*{box-sizing:border-box}html,body,#app{background:var(--background-color,#010407);width:100%;height:100%;margin:0;overflow:hidden}#app,canvas{touch-action:none;display:block}canvas{width:100%;height:100%}:root{--drawer-width:min(430px, 90vw);--drawer-blur:4px;--drawer-dim:.7;--drawer-slide-seconds:.42s;--drawer-ghost-shift:1.5px;--drawer-red:#ff3a3a;--drawer-cyan:#4ff5ff;--drawer-text:#dfe9ec;--drawer-muted:#93a7ad;--drawer-weight:300;--drawer-heading-weight:400;--drawer-title-en-size:12px;--drawer-rule:#b4d6de24;--drawer-photo-saturate:.72;--drawer-photo-brightness:.82;--drawer-photo-width:140px;--drawer-photo-aberration:.3;--drawer-photo-aberration-shift:1.5px;--drawer-font:"Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", "Noto Sans JP", system-ui, sans-serif}.drawer-toggle{z-index:22;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex-direction:column;justify-content:center;gap:5px;width:34px;height:34px;padding:0;display:flex;position:fixed;top:18px;right:18px}.drawer-toggle-line{background:var(--drawer-text);width:100%;height:1px;box-shadow:calc(var(--drawer-ghost-shift) * -1) 0 0 var(--drawer-red), var(--drawer-ghost-shift) 0 0 var(--drawer-cyan);transition:transform var(--drawer-slide-seconds) ease, opacity var(--drawer-slide-seconds) ease;display:block}.drawer-root.is-open .drawer-toggle-line:first-child{transform:translateY(6px)rotate(45deg)}.drawer-root.is-open .drawer-toggle-line:nth-child(2){opacity:0}.drawer-root.is-open .drawer-toggle-line:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.drawer-scrim{z-index:20;opacity:0;visibility:hidden;transition:visibility var(--drawer-slide-seconds) step-end;background:0 0;position:fixed;inset:0}.drawer-root.is-open .drawer-scrim{opacity:1;visibility:visible;transition:visibility}.drawer-panel{z-index:21;width:var(--drawer-width);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;height:100%;-webkit-backdrop-filter:blur(var(--drawer-blur)) brightness(var(--drawer-dim));visibility:hidden;transition:transform var(--drawer-slide-seconds) cubic-bezier(.22, .61, .36, 1), visibility var(--drawer-slide-seconds) step-end;color:var(--drawer-text);font-family:var(--drawer-font);font-weight:var(--drawer-weight);letter-spacing:.04em;text-shadow:calc(var(--drawer-ghost-shift) * -1) 0 var(--drawer-red), var(--drawer-ghost-shift) 0 var(--drawer-cyan);background:0 0;border:0;font-size:14px;line-height:1.85;position:fixed;top:0;right:0;overflow-y:auto;transform:translate(100%)}.drawer-root.is-open .drawer-panel{visibility:visible;transition:transform var(--drawer-slide-seconds) cubic-bezier(.22, .61, .36, 1), visibility 0s;transform:translate(0)}.drawer-panel:focus{outline:none}.drawer-inner{padding:74px 26px 56px}.drawer-title{font-size:21px;font-weight:var(--drawer-heading-weight);letter-spacing:.22em;margin:0}.drawer-title-en{color:var(--drawer-muted);font-size:var(--drawer-title-en-size);letter-spacing:.14em;margin-left:12px;display:inline-block}.drawer-lead{color:var(--drawer-muted);letter-spacing:.12em;margin:6px 0 0;font-size:12px}.drawer-section{margin-top:40px}.drawer-section-title{font-size:11px;font-weight:var(--drawer-heading-weight);color:var(--drawer-muted);letter-spacing:.3em;margin:0 0 14px}.drawer-profile{flex-direction:column;align-items:flex-start;gap:18px;display:flex}.drawer-photo-frame{width:var(--drawer-photo-width);isolation:isolate;flex:none;max-width:100%;line-height:0;position:relative;overflow:hidden}.drawer-photo{width:100%;height:auto;filter:saturate(var(--drawer-photo-saturate)) brightness(var(--drawer-photo-brightness));display:block}.drawer-photo-frame:before,.drawer-photo-frame:after{content:"";background-image:linear-gradient(var(--drawer-red), var(--drawer-red)), var(--drawer-photo-src);background-blend-mode:multiply;mix-blend-mode:screen;opacity:var(--drawer-photo-aberration);pointer-events:none;transform:translateX(calc(var(--drawer-photo-aberration-shift) * -1));background-position:50%;background-size:cover;position:absolute;inset:0}.drawer-photo-frame:after{background-image:linear-gradient(var(--drawer-cyan), var(--drawer-cyan)), var(--drawer-photo-src);transform:translateX(var(--drawer-photo-aberration-shift))}.drawer-profile-text{width:100%;min-width:0}.drawer-name{font-size:15px;font-weight:var(--drawer-heading-weight);letter-spacing:.1em;margin:0 0 8px}.drawer-bio{white-space:pre-line;margin:0}.drawer-inline-link{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--drawer-rule);text-decoration-color:var(--drawer-rule);text-underline-offset:4px;overflow-wrap:anywhere}.drawer-skills{color:var(--drawer-muted);letter-spacing:.1em;flex-wrap:wrap;gap:6px 14px;margin:14px 0 0;padding:0;font-size:12px;list-style:none;display:flex}.drawer-works{margin:0;padding:0;list-style:none}.drawer-work{border-bottom:1px solid var(--drawer-rule);color:inherit;grid-template-columns:auto 1fr auto auto;grid-template-areas:"category title date chevron""summary summary summary summary";column-gap:12px;padding:12px 0;text-decoration:none;display:grid}.drawer-work-category{color:var(--drawer-muted);letter-spacing:.16em;grid-area:category;font-size:11px}.drawer-work-title{grid-area:title;min-width:0;line-height:1.6}.drawer-work-date{color:var(--drawer-muted);font-variant-numeric:tabular-nums;letter-spacing:.08em;grid-area:date;font-size:11px}.drawer-work-chevron{color:var(--drawer-muted);grid-area:chevron}.drawer-work-summary{color:var(--drawer-muted);grid-area:summary;margin-top:4px;font-size:12px;line-height:1.7}.drawer-work-empty{color:var(--drawer-muted);margin:0;font-size:12px}.drawer-contacts{margin:0;padding:0;list-style:none}.drawer-contact{border-bottom:1px solid var(--drawer-rule);grid-template-columns:68px 1fr;column-gap:12px;padding:10px 0;display:grid}.drawer-contact-label{color:var(--drawer-muted);letter-spacing:.16em;font-size:11px}.drawer-contact-value{min-width:0;color:inherit;overflow-wrap:anywhere;text-decoration:none}@media (prefers-reduced-motion:reduce){.drawer-panel,.drawer-scrim,.drawer-toggle-line{transition-duration:.01ms}}
