@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;700&family=JetBrains+Mono:wght@400;700&family=Noto+Sans+JP:wght@400;500;700;900&display=swap";:root{--bg-color:#f2f0e8;--text-color:#191a17;--text-muted:#52534c;--accent-color:#c2f750;--ui-border:#191a17;--font-display:"Space Grotesk","Noto Sans JP",sans-serif;--font-mono:"JetBrains Mono",monospace}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--bg-color);color:var(--text-color);font-family:var(--font-display);line-height:1.8;-webkit-font-smoothing:antialiased}a{color:inherit}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #425dff;outline-offset:5px}::-moz-selection{background:#191a17;color:var(--accent-color)}::selection{background:#191a17;color:var(--accent-color)}.container{margin:auto;max-width:1440px;padding:0 64px;width:100%}h1,h2,h3,h4{font-weight:700;letter-spacing:-.045em;line-height:1.1}html.lenis,html.lenis body{height:auto}.lenis-smooth{scroll-behavior:auto!important}.lenis-stopped{overflow:hidden}.lenis-scrolling iframe{pointer-events:none}.site-header{background:var(--bg-color);border-bottom:2px solid;position:sticky;top:0;z-index:100}.header-inner{align-items:center;display:flex;gap:24px;justify-content:space-between;min-height:90px}.brand-link{font-size:36px;font-weight:700;letter-spacing:-3px;text-decoration:none;white-space:nowrap}.brand-link>span:first-child{font-weight:400}.brand-star{font-size:30px;letter-spacing:0;margin-left:14px}.desktop-nav{align-items:center;display:flex;gap:28px}.desktop-nav>a{font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}.desktop-nav small{color:var(--text-muted);display:block;font:10px var(--font-mono);margin-bottom:3px}.desktop-nav>a:hover{text-decoration:underline;text-underline-offset:5px}.nav-cta{background:var(--accent-color);border:2px solid;box-shadow:3px 3px #191a17;padding:13px 18px}.menu-toggle{display:none}.mobile-navigation{background:var(--accent-color);border-top:2px solid;padding:16px 24px}.mobile-navigation a{border-bottom:1px solid;display:block;font-weight:700;padding:16px 0;text-decoration:none}.hero-section{padding-top:32px}.hero-meta{display:flex;font:11px var(--font-mono);justify-content:space-between;letter-spacing:.04em}.hero-heading-wrap{padding:52px 0 42px;position:relative}.hero-title{font-size:clamp(65px,10.5vw,152px);letter-spacing:-.075em;line-height:.96}.hero-highlight{background:var(--accent-color);border:2px solid;box-shadow:7px 7px #191a17;display:inline-block;margin-top:14px;padding:0 14px 8px 6px}.hero-symbol{font-size:clamp(100px,17vw,240px);line-height:1;position:absolute;right:24px;top:58px;transform:rotate(-12deg)}.hero-bottom{border-top:2px solid;display:grid;gap:60px;grid-template-columns:1fr 1fr;padding:30px 0 48px}.hero-caption p{font-size:20px;font-weight:700;letter-spacing:-.04em}.hero-description{font-size:14px;line-height:2;max-width:560px}.hero-actions{align-items:center;display:flex;flex-wrap:wrap;gap:26px;margin-top:24px}.gits-btn{align-items:center;background:var(--accent-color);border:2px solid var(--text-color);box-shadow:5px 5px 0 var(--text-color);color:var(--text-color);cursor:pointer;display:inline-flex;font-size:13px;font-weight:700;gap:36px;justify-content:space-between;padding:16px 24px;text-decoration:none;transition:transform .15s,box-shadow .15s}.gits-btn:hover,.nav-cta:hover{box-shadow:2px 2px #191a17;transform:translate(3px,3px)}.hero-contact{font-size:12px;font-weight:700;text-underline-offset:5px}.hero-strip{background:#191a17;border-block:2px solid;color:var(--bg-color);display:flex;font:12px var(--font-mono);gap:24px;justify-content:space-around;letter-spacing:.06em;padding:16px 24px}.hero-strip span:nth-child(2n){color:var(--accent-color)}.about-section,.contact-section,.development-section,.qualifications-section,.works-section{border-bottom:2px solid;padding:84px 0}.section-header{margin-bottom:36px}.section-number{display:block;font:700 11px var(--font-mono);letter-spacing:.06em;margin-bottom:20px}.section-title{font-size:clamp(32px,4.3vw,62px);margin-bottom:20px;overflow-wrap:anywhere}.section-subtitle{color:var(--text-muted);font-size:14px}.text-accent{background:var(--accent-color);box-decoration-break:clone;-webkit-box-decoration-break:clone;color:#191a17;padding:0 .12em}.projects-grid{display:grid;gap:32px;grid-template-columns:repeat(2,minmax(0,1fr))}.project-card{background:#faf9f3;border:2px solid;box-shadow:6px 6px #191a17;display:flex;flex-direction:column;min-width:0;text-decoration:none;transition:transform .15s,box-shadow .15s}.project-card:hover{box-shadow:9px 9px #191a17;transform:translate(-3px,-3px)}.project-image-wrapper{aspect-ratio:16/9;background:#deded4;border-bottom:2px solid;overflow:hidden;position:relative}.project-image{display:block;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .3s;width:100%}.project-card:hover .project-image{transform:scale(1.025)}.project-index-overlay{background:var(--accent-color);border:2px solid;font:700 15px var(--font-mono);left:14px;padding:3px 12px;position:absolute;top:14px}.card-content{display:flex;flex:1;flex-direction:column;padding:24px}.tags-container{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px}.tag-pill{background:var(--bg-color);border:1px solid;font:10px var(--font-mono);padding:3px 7px}.project-title{display:flex;font-size:26px;gap:15px;justify-content:space-between;margin-bottom:16px}.arrow{font-size:28px}.project-description{color:var(--text-muted);font-size:13px;line-height:1.9}.gits-box{background:#faf9f3;border:2px solid;box-shadow:7px 7px #191a17;padding:48px}.about-grid{display:grid;gap:48px;grid-template-columns:1.3fr 1fr}.about-text,.development-text{color:var(--text-muted);font-size:14px;line-height:2;margin-bottom:20px}.pr-box{background:var(--accent-color);border:2px solid;margin-top:28px;padding:24px}.pr-title{font-size:17px;letter-spacing:0;line-height:1.6;margin-bottom:15px}.pr-text{font-size:13px;line-height:1.9}.skills-area{border-left:2px solid;padding-left:40px}.skills-title{font-size:24px;margin-bottom:24px}.skill-item{align-items:center;border-bottom:1px solid;display:flex;font:12px var(--font-mono);gap:14px;line-height:1.7;padding:13px 0}.skill-dot{background:#191a17;flex-shrink:0;height:8px;width:8px}.development-section{background:var(--accent-color)}.development-card{background:transparent;border:0;box-shadow:none;padding:0}.development-subtitle{font-size:22px;letter-spacing:0;margin:30px 0 20px}.development-text{color:#191a17;margin:0;max-width:950px}.qualifications-card{background:transparent;border:0;box-shadow:none;padding:0}.qualifications-list{border-top:2px solid;margin-top:40px}.qualification-item{border-bottom:1px solid;display:grid;gap:24px;grid-template-columns:160px 1fr;padding:24px 0}.qual-date{align-self:center;font:12px var(--font-mono)}.qual-name{font-size:16px;font-weight:700}.contact-section{background:#191a17;color:var(--bg-color)}.contact-card{background:transparent;border:0;box-shadow:none;padding:0}.contact-card .section-number{color:var(--accent-color)}.contact-card .section-title{font-size:clamp(48px,8vw,112px);margin:28px 0}.contact-card .text-accent{background:none;color:var(--accent-color)}.contact-subtitle{font-size:14px;margin-bottom:32px;max-width:600px}.app-footer{background:#191a17;border-top:1px solid #55564d;color:var(--bg-color);font:11px var(--font-mono);padding:24px 0}.footer-inner{display:flex;gap:20px;justify-content:space-between}.app-shell{min-height:100vh}.gsap-reveal{opacity:1;transform:none}@media(max-width:1100px){.container{padding-inline:36px}.desktop-nav{gap:18px}.hero-symbol{right:0}.about-grid{gap:30px}.gits-box{padding:32px}.skills-area{padding-left:28px}.hero-bottom{gap:32px}}@media(max-width:800px){html{scroll-padding-top:90px}.container{padding-inline:24px}.header-inner{min-height:74px}.brand-link{font-size:30px}.desktop-nav{display:none}.menu-toggle{background:var(--accent-color);border:2px solid;box-shadow:3px 3px #191a17;cursor:pointer;display:block;font:700 11px var(--font-mono);padding:9px 12px}.hero-meta{font-size:9px}.hero-meta span:last-child{display:none}.hero-heading-wrap{padding:42px 0 32px}.hero-title{font-size:clamp(52px,11.5vw,92px)}.hero-symbol{font-size:70px;right:0;top:57px}.hero-bottom{gap:22px;grid-template-columns:1fr;padding:26px 0 34px}.hero-caption p{font-size:18px}.hero-highlight{box-shadow:5px 5px #191a17}.hero-strip{font-size:9px;gap:12px;justify-content:space-between}.hero-strip span:nth-child(n+4){display:none}.about-section,.contact-section,.development-section,.qualifications-section,.works-section{padding:56px 0}.projects-grid{gap:26px;grid-template-columns:1fr}.project-title{font-size:24px}.card-content{padding:20px}.about-grid{grid-template-columns:1fr}.gits-box{box-shadow:5px 5px #191a17;padding:24px}.skills-area{border-left:0;border-top:2px solid;padding:28px 0 0}.contact-card,.development-card,.qualifications-card{box-shadow:none;padding:0}.qualification-item{gap:8px;grid-template-columns:1fr;padding:20px 0}.qual-name{font-size:14px}.hero-actions{gap:20px}.gits-btn{padding:14px 18px}.footer-inner{font-size:10px}.development-subtitle{font-size:19px}}@media(max-width:380px){.hero-symbol{font-size:48px;top:65px}.container{padding-inline:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation:none!important;transition:none!important}}
