@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap";
:root{--background:linear-gradient(180deg, #fff7cb 0%, #c6fff3 42%, #95d3ff 100%);--foreground:#102033;--surface:#ffffff94;--surface-strong:#ffffffc7;--border-soft:#1020331f;--shadow-soft:0 20px 60px #10203324}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--background);color:var(--foreground);min-height:100vh;margin:0;padding:0;font-family:Noto Sans JP,Helvetica,sans-serif;overflow:hidden auto}main{position:relative}a{color:inherit}.pageShell{min-height:100vh;position:relative}.pageContent{z-index:1;padding:0 0 4rem;position:relative}.pageBackdrop{pointer-events:none;position:fixed;inset:0;overflow:hidden}.pageBackdropGrid,.pageBackdropGlow,.pageBackdropNoise{position:absolute;inset:0}.pageBackdropGrid{opacity:.5;background-image:radial-gradient(circle,#ffffffb3 0 14%,#0000 15%),linear-gradient(#ffffff29 1px,#0000 1px),linear-gradient(90deg,#ffffff29 1px,#0000 1px);background-size:36px 36px,36px 36px,36px 36px;animation:16s linear infinite driftGrid;-webkit-mask-image:radial-gradient(circle,#000 55%,#0000 95%);mask-image:radial-gradient(circle,#000 55%,#0000 95%)}.pageBackdropGlow{filter:blur(24px);opacity:.7}.pageBackdropGlowOne{background:radial-gradient(circle,#ffc479bf,#0000 65%);border-radius:50%;width:38rem;height:38rem;animation:12s ease-in-out infinite floatGlow;inset:auto auto 8% -8%}.pageBackdropGlowTwo{background:radial-gradient(circle,#6dd5ffb3,#0000 62%);border-radius:50%;width:34rem;height:34rem;animation:16s ease-in-out infinite reverse floatGlow;inset:8% -10% auto auto}.pageBackdropNoise{opacity:.14;mix-blend-mode:soft-light;background-image:linear-gradient(135deg,#ffffff6b 25%,#0000 25%),linear-gradient(225deg,#ffffff38 25%,#0000 25%);background-size:24px 24px}.heroScene{--pointer-x:0px;--pointer-y:0px;--pointer-glow-x:50%;--pointer-glow-y:50%;position:relative}@keyframes driftGrid{0%{transform:translate(0,0)}to{transform:translate(36px,36px)}}@keyframes floatGlow{0%,to{transform:translate(0,0)scale(1)}50%{transform:translateY(-24px)scale(1.06)}}@media (max-width:600px){body{margin:10px;font-size:1rem}.profileContainer{padding-top:2rem}.profileName{font-size:2.5rem}.profileJob{font-size:1.2rem}.profileDescription{font-size:1rem}.profileImage{width:100px;height:100px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pageBackdropGrid,.pageBackdropGlowOne,.pageBackdropGlowTwo{animation:none}}
