:root{font-family:Arial,Helvetica,sans-serif;color:#080808;background:#fff;font-synthesis:none;text-rendering:optimizeLegibility;--gold: #ba935a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:6px}.skip-link{position:absolute;top:-100px;left:20px;z-index:10;padding:14px;background:#fff;color:#000}.skip-link:focus{top:14px}.site-header{height:clamp(58px,4.88vw,76px);padding:0 4.2%;background:#030303;color:#fff;display:flex;align-items:center;justify-content:space-between}.home-link{display:block}.brand-image{display:block;position:relative;width:180px;height:48px;overflow:hidden}.brand-image img{position:absolute;width:259px;max-width:none;height:auto;top:-27px;left:-40px}.brand-image-small{width:126px;height:38px}.brand-image-small img{width:181px;left:-28px;top:-19px}.navigation{display:flex;align-items:center;gap:44px}.navigation a,.navigation button{padding:10px 0;color:#fff;text-decoration:none;font-size:14px;background:transparent;border:0}.navigation a:hover,.navigation button:hover{color:#d8b57b}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:40% 60%;min-height:43.865vw}.hero-copy{padding:10.1vw 10px 4vw 4.2vw}.hero h1{font-size:clamp(32px,4.28vw,62px);line-height:1.08;letter-spacing:-.048em;font-weight:400;margin:0;white-space:nowrap}.hero-copy p{font-size:clamp(18px,2.01vw,29px);line-height:1.19;letter-spacing:-.025em;color:#484848;margin:25px 0 0}.hero-copy .hero-support{font-size:clamp(15px,1.4vw,19px);line-height:1.45;letter-spacing:-.015em;max-width:310px;margin-top:18px}.project-button{display:inline-flex;justify-content:space-between;align-items:center;gap:22px;min-height:52px;min-width:260px;padding:12px 27px;color:#fff;background:#020202;border:1px solid #020202;text-align:left;font-size:16px;margin-top:34px;transition:background .18s ease,border-color .18s ease}.project-button svg{color:var(--gold)}.project-button:hover{background:#252525;border-color:#252525}.hero-image{width:100%;height:100%;min-height:0;object-fit:cover;display:block}.approach{padding:43px 4.2vw 48px;display:grid;grid-template-columns:62% 38%;align-items:start}.approach h2{font-size:clamp(42px,5.52vw,80px);line-height:.99;letter-spacing:-.047em;font-weight:400;margin:0}.approach-intro>p{max-width:460px;padding-right:25px;margin:26px 0 0;color:#4a4a4a;font-size:18px;line-height:1.45}.approach-steps{padding-top:15px}.approach-steps h3{font-size:clamp(22px,2.18vw,31px);line-height:1.15;font-weight:400;letter-spacing:-.035em;margin:0 0 5px}.approach-steps p{color:#4a4a4a;font-size:clamp(16px,1.59vw,22px);line-height:1.2;letter-spacing:-.02em;margin:0}.approach-steps>div+div{padding-top:30px;margin-top:30px;position:relative}.approach-steps>div+div:before{content:"";width:34px;height:1px;background:#333;position:absolute;top:0;left:0}.product-gallery{position:relative}.product-gallery img{display:block;width:100%;height:31.1vw;object-fit:cover}.product-gallery>p{position:absolute;left:4.2vw;bottom:clamp(22px,2.86vw,34px);margin:0;font-size:clamp(11px,1.26vw,15px);letter-spacing:.12em;color:#111}.expertise-copy{padding:76px 4.2vw 78px}.section-intro{display:grid;grid-template-columns:62% 38%}.section-intro .eyebrow{grid-column:1 / -1}.section-intro h2,.about-heading h2{font-size:clamp(34px,4.1vw,56px);font-weight:400;letter-spacing:-.045em;line-height:1.06;margin:0}.section-description{color:#4a4a4a;font-size:18px;line-height:1.5;margin:0;padding-top:4px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px;margin-top:54px}.service-grid article{border-top:1px solid #c8c8c8;padding-top:22px}.service-number{font-size:12px;color:#765c32;letter-spacing:.1em}.service-grid h3{font-size:28px;letter-spacing:-.025em;font-weight:400;line-height:1.2;margin:24px 0 14px}.service-grid p{font-size:17px;line-height:1.5;color:#4a4a4a;margin:0;max-width:340px}.about-section{margin:0 4.2vw;padding:68px 0 72px;border-top:1px solid #c8c8c8;display:grid;grid-template-columns:44% 56%;gap:0}.about-heading{padding-right:46px}.about-location{color:#555;font-size:13px;line-height:1.7;letter-spacing:.035em;margin-top:28px}.brand-story{max-width:720px;padding-left:20px}.brand-story p{color:#4a4a4a;font-size:17px;line-height:1.6;margin:0 0 22px}.brand-story p:last-child{margin-bottom:0}.site-footer{display:flex;align-items:center;justify-content:space-between;padding:22px 4.2vw;min-height:84px}.site-footer p{font-size:14px;letter-spacing:.06em;margin:0}.company-dialog{border:0;padding:56px 44px 36px;width:min(560px,calc(100% - 40px));max-height:calc(100dvh - 48px);color:#080808;background:#fff}.company-dialog::backdrop{background:#000000a6}.dialog-close{position:absolute;right:19px;top:18px;width:36px;height:36px;display:grid;place-items:center;background:none;border:0}.eyebrow{font-size:12px;letter-spacing:.13em;color:#765c32;margin:0 0 20px}.company-dialog h2{font-size:clamp(29px,4vw,42px);line-height:1.08;font-weight:400;letter-spacing:-.045em;margin:0 0 22px}.dialog-description{font-size:18px;color:#4a4a4a;line-height:1.45;margin-bottom:25px}.contact-row{display:flex;align-items:center;gap:15px;padding:20px 0;border-top:1px solid #ddd;text-decoration:none}.contact-row>svg:last-child{margin-left:auto;color:#947441}.contact-row small{display:block;color:#555;font-size:14px;padding-top:6px}.contact-row:hover{color:#765c32}.contact-location{margin:24px 0 0;color:#555;font-size:14px}@media(min-width:1500px){.hero-copy{padding-top:145px}}@media(max-width:900px)and (min-width:701px){.navigation{gap:25px}.brand-image{transform:scale(.85);transform-origin:left center}.hero-copy{padding-top:8vw}.hero h1{font-size:4.17vw}.project-button{min-width:218px;font-size:14px;padding:10px 18px}.hero-copy p{margin-top:18px}.approach{padding-top:36px;padding-bottom:38px}.approach-steps{padding-top:2px}}@media(max-width:700px){.site-header{height:64px;padding:0 24px;position:relative}.brand-image{width:155px;height:43px}.brand-image img{width:223px;top:-23px;left:-34px}.menu-toggle{display:grid;place-items:center;color:#fff;background:none;border:0;width:42px;height:44px}.navigation{display:none;position:absolute;left:0;right:0;top:64px;z-index:2;background:#030303;padding:18px 24px 25px;flex-direction:column;align-items:flex-start;gap:10px}.navigation.is-open{display:flex}.navigation a,.navigation button{font-size:17px;padding:10px 0}.hero{display:flex;flex-direction:column}.hero-copy{padding:55px 24px 46px}.hero h1{font-size:clamp(29px,7.6vw,50px);line-height:1.08;letter-spacing:-.048em}.hero-copy p{font-size:20px;margin-top:24px}.project-button{margin-top:30px;min-width:250px}.hero-image{width:100%;height:auto;aspect-ratio:1.364}.approach{display:block;padding:48px 24px 44px}.approach h2{font-size:clamp(42px,11.6vw,68px);line-height:1.02}.approach-steps{padding-top:36px}.approach-steps h3{font-size:24px}.approach-steps p{font-size:17px}.approach-steps>div+div{padding-top:25px;margin-top:25px}.approach-intro>p{font-size:17px;padding-right:0;margin-top:24px}.product-gallery img{height:auto;aspect-ratio:3;object-fit:contain}.product-gallery>p{position:static;padding:22px 24px;font-size:11px;letter-spacing:.095em;background:#eee}.expertise-copy{padding:48px 24px}.section-intro{display:block}.section-intro h2,.about-heading h2{font-size:38px}.section-description{font-size:17px;padding-top:0;margin-top:24px}.service-grid{grid-template-columns:1fr;gap:30px;margin-top:34px}.service-grid h3{font-size:26px;margin-top:18px}.service-grid p{max-width:none}.about-section{margin:0 24px;padding:48px 0;grid-template-columns:1fr;gap:30px}.about-heading{padding-right:0}.brand-story{padding-left:0}.brand-story p{font-size:17px}.site-footer{padding:24px;min-height:94px;gap:20px}.site-footer p{font-size:10px;max-width:150px;line-height:1.4}.brand-image-small{width:100px;height:32px}.brand-image-small img{width:144px;top:-15px;left:-22px}.company-dialog{padding:53px 25px 28px}.dialog-description{font-size:17px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-button{transition:none}}.header-tools{display:flex;align-items:center;gap:10px}.site-header>.navigation{margin-left:auto;margin-right:30px}.language-switch{display:flex;align-items:center;gap:8px;font-size:13px;white-space:nowrap}.language-switch a{display:inline-flex;align-items:center;min-height:44px;padding:8px 2px;text-decoration:none;color:#fff}.language-switch a[aria-current=page]{color:#d8b57b}.language-switch>span{color:#767676}.language-name-short{display:none}:root:lang(zh){font-family:PingFang TC,Noto Sans TC,Microsoft JhengHei,Arial,sans-serif}:root:lang(ja){font-family:Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,Arial,sans-serif}:is(:lang(zh),:lang(ja)) .hero h1{font-size:clamp(30px,3.3vw,48px);line-height:1.3;letter-spacing:0;white-space:normal}:is(:lang(zh),:lang(ja)) .hero-copy p{letter-spacing:0;line-height:1.5}:is(:lang(zh),:lang(ja)) .approach h2{font-size:clamp(38px,4.6vw,66px);line-height:1.22;letter-spacing:0}:is(:lang(zh),:lang(ja)) .approach-steps h3,:is(:lang(zh),:lang(ja)) .service-grid h3{letter-spacing:0}:is(:lang(zh),:lang(ja)) .approach-steps p,:is(:lang(zh),:lang(ja)) .section-description,:is(:lang(zh),:lang(ja)) .service-grid p,:is(:lang(zh),:lang(ja)) .brand-story p,:is(:lang(zh),:lang(ja)) .dialog-description{line-height:1.75;letter-spacing:0}:is(:lang(zh),:lang(ja)) .section-intro h2,:is(:lang(zh),:lang(ja)) .about-heading h2,:is(:lang(zh),:lang(ja)) .company-dialog h2{line-height:1.3;letter-spacing:0}:is(:lang(zh),:lang(ja)) .company-dialog h2{text-wrap:balance}@media(max-width:900px)and (min-width:701px){.site-header>.navigation{margin-right:20px;gap:20px}.language-switch{font-size:12px;gap:6px}}@media(max-width:700px){.site-header>.navigation{margin:0}.header-tools{gap:8px}.language-switch{font-size:13px;gap:7px}.language-name-full{display:none}.language-name-short{display:inline}:is(:lang(zh),:lang(ja)) .hero h1{font-size:clamp(28px,7.3vw,43px)}:is(:lang(zh),:lang(ja)) .approach h2{font-size:clamp(36px,9.8vw,54px)}:is(:lang(zh),:lang(ja)) .section-intro h2,:is(:lang(zh),:lang(ja)) .about-heading h2{font-size:34px}:is(:lang(zh),:lang(ja)) .site-footer p{font-size:12px}}@media(max-width:380px){.site-header{padding:0 18px}.site-header .brand-image{width:130px;height:39px}.site-header .brand-image img{width:187px;top:-20px;left:-28px}.header-tools{gap:4px}.language-switch{font-size:12px;gap:5px}}@media(max-width:1100px)and (min-width:701px){.site-header{height:76px;position:relative}.site-header>.navigation{display:none;position:absolute;top:76px;left:0;right:0;z-index:2;margin:0;padding:18px 4.2vw 25px;flex-direction:column;align-items:flex-start;gap:10px;background:#030303}.site-header>.navigation.is-open{display:flex}.navigation a,.navigation button{font-size:17px}.menu-toggle{display:grid;place-items:center;color:#fff;background:none;border:0;width:42px;height:44px}}@media(max-width:700px){.site-header{height:104px;align-items:flex-start;padding-top:10px}.site-header>.navigation{top:104px}.header-tools{height:44px}.language-switch{position:absolute;left:24px;right:24px;bottom:0;height:40px;justify-content:flex-end;gap:12px;font-size:13px}.language-switch a{min-height:40px}:lang(ja) .hero-copy .hero-support{max-width:100%}}
