@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.518e079e.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.ea323500.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.853d50a3.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.55554cd0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.3b6cae6d.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist","Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.56c1f21e.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.3b336396.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.e3369375.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.a40b9a8b.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.fe42ddf4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.29207c2f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}
:root{--bg-base:#f4efe6;--bg-accent:#efe7da;--surface:#fffcf7e0;--surface-strong:#fffffff5;--surface-soft:#fff8f0d1;--border:#6c543524;--border-strong:#6c543538;--text:#1d1b19;--muted:#645b52;--muted-soft:#8a7d70;--accent:#a14f2a;--accent-strong:#7b3517;--accent-soft:#f6e5d8;--shadow-lg:0 32px 80px #42291224;--shadow-md:0 18px 40px #4229121a;--shadow-sm:0 12px 24px #42291214;--radius-xl:32px;--radius-lg:24px;--radius-md:18px;--radius-sm:14px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100vh;color:var(--text);font-family:var(--font-geist-sans),"Segoe UI","Hiragino Sans","Noto Sans JP",sans-serif;background:radial-gradient(circle at top left,#dec4a499,transparent 28%),radial-gradient(circle at top right,#aa734c2e,transparent 24%),linear-gradient(180deg,#fcf8f2 0%,var(--bg-base)52%,#eee5d6 100%);margin:0;line-height:1.7}body:before,body:after{content:"";pointer-events:none;z-index:0;filter:blur(10px);position:fixed;inset:auto}body:before{background:#ad673e1a;border-radius:999px;width:280px;height:280px;top:72px;right:5vw}body:after{background:#e0c08f1f;border-radius:999px;width:240px;height:240px;bottom:80px;left:4vw}a{color:inherit}button,a{transition:transform .18s,background-color .18s,color .18s,border-color .18s,box-shadow .18s,opacity .18s}.portfolio-container{z-index:1;border-radius:var(--radius-xl);background:var(--surface);border:1px solid var(--border);max-width:1180px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(16px);margin:28px auto 64px;padding:28px;position:relative;overflow:hidden}.portfolio-container:before{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff6b,#0000 32%),radial-gradient(circle at 85% 18%,#a14f2a1f,#0000 22%);position:absolute;inset:0}.portfolio-header,.nav-bar,.section-container{z-index:1;position:relative}.portfolio-header{border-radius:calc(var(--radius-xl) - 8px);background:linear-gradient(135deg,#fffbf7f5,#f7eee3eb),radial-gradient(circle at 100% 0,#a14f2a1a,#0000 32%);border:1px solid #a14f2a24;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;padding:24px 24px 28px;display:grid;box-shadow:inset 0 1px #ffffffb3}.portfolio-header h1{letter-spacing:-.04em;max-width:14ch;margin:0;font-size:clamp(2.3rem,4vw,4.3rem);font-weight:800;line-height:1.05}.portfolio-header p{max-width:720px;color:var(--muted);margin:14px 0 0;font-size:clamp(1rem,1.3vw,1.18rem)}.lang-switch{background:#fff9;border:1px solid #6c54351a;border-radius:999px;align-items:center;gap:10px;padding:8px;display:inline-flex;box-shadow:0 10px 24px #4229120f}.lang-btn{color:var(--muted);letter-spacing:.01em;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;padding:10px 16px;font-size:.92rem;font-weight:700}.lang-btn:hover{color:var(--accent-strong);background:#a14f2a14}.lang-btn.active{color:#fffaf6;background:linear-gradient(135deg,var(--accent),var(--accent-strong));box-shadow:0 12px 24px #7b351738}.nav-bar{background:#ffffff8f;border:1px solid #6c543514;border-radius:999px;flex-wrap:wrap;gap:12px;margin:22px 0 8px;padding:12px;display:flex;box-shadow:0 10px 26px #4229120d}.nav-item{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;padding:10px 18px;font-size:.96rem;font-weight:700}.nav-item:hover{color:var(--accent-strong);background:#a14f2a14}.nav-item.active{color:#fffaf6;background:linear-gradient(135deg,#2e2a25,#171411);box-shadow:0 14px 28px #1714112e}.section-container{flex-direction:column;gap:24px;margin-top:22px;display:flex}.section-container section{border-radius:var(--radius-lg);background:var(--surface-strong);box-shadow:var(--shadow-md);border:1px solid #6c543514;padding:30px}.section-title{letter-spacing:-.03em;margin:0 0 16px;font-size:clamp(1.6rem,2vw,2.1rem);line-height:1.15}.section-title:after{content:"";background:linear-gradient(90deg,var(--accent),#a14f2a33);border-radius:999px;width:56px;height:4px;margin-top:12px;display:block}.section-caption{color:var(--muted-soft);margin:-4px 0 0;font-size:.98rem}.section-container p{color:#2b2722;margin:0 0 1rem;font-size:1.02rem}.section-container p:last-child{margin-bottom:0}.contact-panel{grid-template-columns:1fr;align-items:start;gap:20px;display:grid}.contact-copy{gap:0;display:grid}.contact-copy p{margin:0}.contact-copy p:last-child{display:none}.contact-card{max-width:880px;margin:0}.contact-card-sheet{background:linear-gradient(#fffffffa,#fff7eeeb);border:1px solid #a14f2a1f;border-radius:26px;grid-template-columns:8px 1fr;gap:26px;padding:34px 36px 34px 0;display:grid;box-shadow:0 18px 34px #4229121a}.contact-card-accent{background:linear-gradient(#c79a46,#b88427);border-radius:999px}.contact-card-body{gap:28px;display:grid}.contact-card-identity h3{letter-spacing:.08em;margin:0;font-size:clamp(2.1rem,4vw,3rem);line-height:1.05}.contact-card-kana,.contact-card-role{color:#514a45;margin:0}.contact-card-kana{letter-spacing:.18em;margin-top:12px;font-size:1rem}.contact-card-role{margin-top:28px;font-size:1.15rem}.contact-card-services{gap:8px;display:grid}.contact-card-services strong{font-size:clamp(1.25rem,2.2vw,1.7rem);line-height:1.35;display:block}.contact-card-actions{gap:14px;max-width:540px;display:grid}.contact-action-card{color:inherit;background:linear-gradient(#fffdfa,#fff8f0);border:1px solid #a14f2a24;border-radius:18px;padding:16px 18px;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s;display:block;box-shadow:0 10px 24px #4229120f}.contact-action-card:hover,.contact-action-card:focus-visible{background:linear-gradient(#fff8f2,#fff2e6);border-color:#a14f2a42;outline:none;transform:translateY(-2px);box-shadow:0 16px 30px #4229121f}.contact-action-label{color:var(--accent-strong);letter-spacing:.12em;margin-bottom:6px;font-size:.78rem;font-weight:800;display:block}.contact-action-value{color:#231d18;word-break:break-word;-webkit-user-select:text;user-select:text;font-size:clamp(1rem,1.8vw,1.2rem);font-weight:700;line-height:1.4;display:block}.contact-action-hint{color:var(--muted-soft);margin-top:10px;font-size:.88rem;font-weight:600;display:inline-flex}.contact-copy-tools{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.contact-copy-chip{color:var(--accent-strong);cursor:pointer;background:#fff8f0eb;border:1px solid #a14f2a24;border-radius:999px;padding:10px 14px;font-size:.92rem;font-weight:700;transition:background .18s,border-color .18s,transform .18s}.contact-copy-chip:hover,.contact-copy-chip:focus-visible{background:#fff1e4fa;border-color:#a14f2a47;outline:none;transform:translateY(-1px)}.skills-grid,.project-grid,.gallery-grid{gap:18px;margin-top:24px;display:grid}.skills-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.project-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.skills-card,.gallery-item{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:linear-gradient(#fffdf9 0%,#fff8f1 100%);border:1px solid #a14f2a17;position:relative}.skills-card{padding:20px 20px 18px}.skills-card:before,.gallery-item:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#fff9,#0000 45%);position:absolute;inset:0}.skills-card h3{margin:0 0 14px;font-size:1.15rem}.skills-card ul,.project-points{margin:0;padding-left:1.2rem}.skills-card li,.project-points li,.skills-text li{color:#372f27;margin-bottom:.45rem}.skills-text>div{border-radius:var(--radius-md);background:var(--surface-soft);border:1px solid #6c543514;padding:18px 20px;box-shadow:0 10px 24px #4229120a}.skills-text strong{color:var(--accent-strong);margin-bottom:.35rem;display:inline-block}.project-card-link{color:inherit;text-decoration:none}.project-card{border-radius:var(--radius-lg);height:100%;box-shadow:var(--shadow-md);background:linear-gradient(#fffffffa,#fff7eef2),linear-gradient(135deg,#a14f2a14,#0000);border:1px solid #a14f2a1f;padding:22px;position:relative;overflow:hidden}.project-card:before{content:"";background:linear-gradient(180deg,var(--accent),#d9a277);width:5px;position:absolute;inset:0 auto 0 0}.project-card-link:hover .project-card,.project-card:hover{border-color:#a14f2a38;transform:translateY(-6px);box-shadow:0 26px 54px #42291229}.project-card-inner{margin-left:8px}.project-title{margin:0 0 10px;font-size:1.22rem;line-height:1.25}.project-meta{color:var(--muted-soft);margin:0 0 12px;font-size:.88rem;line-height:1.6}.project-summary{color:#433a31;margin:0 0 12px;font-size:.98rem}.personal-work-section{border-top:1px solid #a14f2a24;margin-top:44px;padding-top:32px}.personal-work-list{gap:20px;display:grid}.works-intro{max-width:860px;margin:0 0 24px}.works-intro p{color:var(--muted);margin:0 0 .8rem;line-height:1.85}.works-intro p:last-child{margin-bottom:0}.salon-work-card{order:-1}.personal-work-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px;display:flex}.personal-work-heading h3{letter-spacing:-.025em;margin:0;font-size:clamp(1.35rem,2vw,1.75rem)}.personal-work-kicker{color:var(--accent-strong);letter-spacing:.18em;order:2;font-size:.72rem;font-weight:800}.personal-work-card{min-height:250px;color:inherit;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fffdf9;border:1px solid #a14f2a24;grid-template-columns:minmax(230px,.7fr) minmax(320px,1.3fr);text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;display:grid;overflow:hidden}.personal-work-card:hover{border-color:#a14f2a4d;transform:translateY(-5px);box-shadow:0 26px 54px #42291229}.personal-work-preview{color:#f8f1e6;background:#6d725c;justify-content:center;align-items:center;min-height:250px;display:flex;position:relative;overflow:hidden}.personal-work-preview:before{aspect-ratio:1;content:"";background:#2f3028;border-radius:50% 50% 0 0;width:78%;position:absolute;bottom:-36%;right:15%}.personal-work-sun{background:#bf6844;border-radius:50%;width:78px;height:78px;position:absolute;top:14%;right:13%}.personal-work-mark{z-index:1;border:1px solid #ffffff80;border-radius:50%;place-items:center;width:92px;height:92px;font-family:serif;font-size:2.7rem;display:grid;position:relative}.personal-work-preview-title{z-index:1;letter-spacing:.22em;font-size:.66rem;position:absolute;bottom:20px;left:22px}.salon-app-preview{background:radial-gradient(circle at 78% 20%,#ffffffe6,#0000 30%),linear-gradient(145deg,#dff1ef,#b8dbdd)}.salon-app-preview:before,.salon-app-preview:after{display:none}.salon-app-icon{z-index:1;border-radius:24%;width:min(54%,150px);height:auto;position:relative;box-shadow:0 18px 38px #1f535b33}.salon-app-preview .personal-work-preview-title{color:#2e6871}.english-learn-preview{color:#173e39;background:radial-gradient(circle at 100% 0,#ffffffe6,#0000 26%),linear-gradient(160deg,#f5f6f1 0%,#edf3ef 48%,#e0eee6 100%);justify-content:space-between;align-items:stretch;padding:28px 26px 24px}.english-learn-preview:before,.english-learn-preview:after{display:none}.english-learn-badge{color:#f6fbf8;background:linear-gradient(145deg,#234d48,#1b3935);border-radius:14px;place-items:center;width:52px;height:52px;font-size:1.65rem;font-weight:800;display:grid;box-shadow:0 16px 30px #173e3929}.english-learn-preview-copy{gap:2px;margin-top:18px;display:grid}.english-learn-preview-brand{letter-spacing:.01em;font-size:1.45rem;font-weight:800}.english-learn-preview-sub{color:#173e39b8;font-size:.96rem;font-weight:600}.english-learn-preview-chips{flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:26px;display:flex}.english-learn-preview-chips span{color:#406864;letter-spacing:.04em;background:#fffc;border:1px solid #173e3924;border-radius:999px;justify-content:center;align-items:center;min-width:72px;padding:9px 14px;font-size:.82rem;font-weight:700;display:inline-flex}.personal-work-copy{flex-direction:column;justify-content:space-between;gap:22px;padding:30px;display:flex}.personal-work-type{color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px;font-size:.76rem;font-weight:800;display:inline-block}.personal-work-copy h3{margin:0 0 12px;font-size:clamp(1.35rem,2.2vw,1.85rem);line-height:1.25}.personal-work-copy p{color:var(--muted);margin:0;line-height:1.8}.personal-work-cta{width:fit-content;color:var(--accent-strong);border-bottom:1px solid;padding-bottom:4px;font-weight:700}.gallery-item{padding:12px}.gallery-item:hover{transform:translateY(-4px);box-shadow:0 22px 40px #42291224}.gallery-image{aspect-ratio:4/3;object-fit:cover;border:1px solid #6c543514;border-radius:14px;width:100%;display:block;box-shadow:0 12px 26px #42291214}.gallery-caption{padding:14px 6px 6px}.gallery-caption-title{font-size:1rem;font-weight:700}.gallery-caption-desc{color:var(--muted);margin-top:4px;font-size:.92rem;line-height:1.6}.project-back-link{color:var(--accent-strong);background:#a14f2a14;border:1px solid #a14f2a1f;border-radius:999px;align-items:center;gap:.45rem;margin-top:1rem;padding:10px 14px;font-size:.92rem;font-weight:700;text-decoration:none;display:inline-flex}.project-back-link:hover{background:#a14f2a24;transform:translateY(-1px)}.project-detail-page{border-radius:var(--radius-xl);background:var(--surface);border:1px solid var(--border);max-width:980px;box-shadow:var(--shadow-lg);margin:32px auto 64px;padding:36px 28px 44px}.project-detail-header{margin-bottom:2rem}.project-detail-title{margin:0 0 .75rem;font-size:clamp(2rem,3vw,3rem);line-height:1.08}.project-detail-subtitle{color:var(--muted)}.project-detail-section-title{margin:2rem 0 .8rem;font-size:1.22rem}.project-detail-list{margin:.25rem 0 .75rem;padding-left:1.2rem}.project-detail-list li,.project-detail-env-list li{margin-bottom:.4rem}@media (max-width:900px){.portfolio-container{margin:20px 18px 44px;padding:18px}.portfolio-header{grid-template-columns:1fr;align-items:start;padding:22px 18px 20px}.nav-bar{border-radius:24px}.section-container section{padding:24px 20px}.contact-panel{grid-template-columns:1fr}.contact-card-sheet{gap:20px;padding:28px 24px 28px 0}.contact-card-actions{max-width:none}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.personal-work-heading{flex-direction:column;align-items:flex-start}.personal-work-kicker{order:0}.personal-work-card{grid-template-columns:1fr}.personal-work-preview{min-height:210px}.personal-work-copy{padding:24px 20px}.contact-card-sheet{grid-template-columns:6px 1fr;gap:16px;padding:24px 18px 24px 0}.contact-card-identity h3{font-size:1.8rem}.contact-card-kana{letter-spacing:.1em;font-size:.86rem}.contact-card-role{margin-top:18px;font-size:1rem}.contact-card-services strong{font-size:1.1rem}.contact-action-card{border-radius:16px;padding:14px 14px 13px}.contact-action-value{font-size:.98rem}body:before,body:after{display:none}.portfolio-container{border-left:none;border-right:none;border-radius:0;margin:0;padding:14px}.portfolio-header{border-radius:24px;gap:18px;padding:18px 16px}.portfolio-header h1{max-width:none}.lang-switch{justify-content:space-between;width:100%}.lang-btn{text-align:center;flex:1;padding-inline:10px}.nav-bar{border-radius:22px;gap:10px;padding:10px}.nav-item{text-align:center;flex:calc(50% - 10px)}.section-container{gap:18px}.section-container section{border-radius:22px;padding:22px 16px}.project-card,.skills-card,.gallery-item{border-radius:18px}.project-detail-page{border-radius:0;margin:0;padding:28px 18px 36px}.gallery-grid{grid-template-columns:1fr}}
