:root{--navy:#04142d;--ink:#14253b;--muted:#617083;--line:#dbe3ec;--surface:#fff;--quiet:#f4f7fa;--blue:#126fb2;--font-sans:Inter, "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", Meiryo, system-ui, sans-serif;color:var(--ink);background:var(--surface);font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}button,input,textarea,select{font:inherit}img{max-width:100%;display:block}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #126fb273}::selection{color:#fff;background:var(--blue)}.site-shell{background:var(--surface);min-height:100svh}.site-header{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;grid-template-columns:auto 1fr;align-items:center;gap:clamp(36px,4vw,60px);min-height:92px;padding:12px clamp(24px,4vw,64px);display:grid;position:sticky;top:0}.brand-button,.site-header nav button,.menu-toggle,.footer-links button{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0}.brand-button{align-items:center;padding:0;display:inline-flex}.brand-button img{object-fit:contain;width:158px;height:72px}.site-header nav{justify-content:flex-end;align-items:center;gap:clamp(16px,2.4vw,34px);display:flex}.site-header nav button{color:var(--ink);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;padding:10px 0;font-size:.78rem;font-weight:760;transition:color .18s;position:relative}.site-header nav button:after{content:"";background:var(--blue);transform-origin:0;height:2px;transition:transform .22s;position:absolute;bottom:4px;left:0;right:0;transform:scaleX(0)}.site-header nav button:hover,.site-header nav button.active{color:var(--blue)}.site-header nav button:hover:after,.site-header nav button.active:after{transform:scaleX(1)}.menu-toggle{border:1px solid var(--line);color:var(--navy);letter-spacing:.08em;text-transform:uppercase;justify-self:end;padding:9px 14px;font-size:.78rem;font-weight:800;display:none}.home-hero{background:var(--navy);align-items:end;min-height:clamp(620px,82svh - 92px,790px);display:grid;position:relative;overflow:hidden}.home-hero>img{object-fit:cover;opacity:.75;transform-origin:50%;will-change:transform;width:100%;height:100%;animation:16s ease-in-out infinite alternate homeHeroSlowZoom;position:absolute;inset:0}.home-hero:after{content:"";background:linear-gradient(90deg,#04142df0 0%,#04142dc7 43%,#04142d38 100%),linear-gradient(#04142d0d,#04142dcc);position:absolute;inset:0}.home-hero__content{z-index:1;color:#fff;width:min(1040px,100%);padding:clamp(86px,10vw,126px) clamp(24px,4vw,64px) clamp(68px,9vw,118px);position:relative}@keyframes homeHeroSlowZoom{0%{transform:scale(1)}to{transform:scale(1.03)}}.home-hero h1,.page-hero h1,.contact-page h1{color:inherit;letter-spacing:0;max-width:980px;margin:22px 0 0;font-size:clamp(2.15rem,3.6vw,3.85rem);font-weight:660;line-height:1.12}.home-hero__content>p:last-of-type,.page-hero__copy>p:last-of-type,.contact-page>div>p{color:#ffffffd6;max-width:720px;margin-top:24px;font-size:clamp(1.03rem,1.25vw,1.18rem);line-height:1.72}.kicker{color:var(--blue);letter-spacing:.11em;text-transform:uppercase;margin:0;font-size:.86rem;font-weight:840;line-height:1.45}.home-hero .kicker,.page-hero .kicker,.contact-page .kicker{color:#a9d7f7}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:38px;display:flex}.hero-actions button,.contact-card a{border:1px solid var(--blue);background:var(--blue);color:#fff;letter-spacing:.08em;text-transform:uppercase;justify-content:center;align-items:center;min-height:50px;padding:0 24px;font-size:.78rem;font-weight:840;text-decoration:none;display:inline-flex}.hero-actions button+button{background:0 0;border-color:#ffffff75}.section{border-bottom:1px solid var(--line);padding:clamp(58px,8vw,112px) clamp(20px,4vw,64px)}.section--quiet{background:var(--quiet)}.section-intro,.two-column,.page-hero,.contact-page{grid-template-columns:minmax(0,1fr) minmax(320px,.78fr);align-items:start;gap:clamp(32px,6vw,88px);display:grid}.section-intro h2,.text-block h2{color:var(--navy);letter-spacing:0;margin:12px 0 0;font-size:clamp(2rem,3.2vw,3.45rem);font-weight:650;line-height:1.12}.section-intro>p,.text-block p,.collaboration-grid li,.capability-list p,.product-category-grid p,.navigation-card p,.certificate-display figcaption,.gallery-grid figcaption,.image-grid figcaption{color:var(--muted);line-height:1.78}.section-intro>p{margin:0;font-size:1.02rem}.navigation-card-grid,.process-grid,.product-category-grid,.capability-list{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin-top:44px;display:grid}.navigation-card,.process-grid article,.product-category-grid article,.capability-list article,.collaboration-grid article{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;min-height:220px;padding:26px}.navigation-card{text-align:left;cursor:pointer;transition:transform .24s,box-shadow .24s,border-color .24s;position:relative;overflow:hidden}.navigation-card:before{content:"";background:var(--blue);transform-origin:0;height:3px;transition:transform .24s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.navigation-card:after{content:"→";color:var(--blue);opacity:0;font-size:1.15rem;font-weight:700;transition:opacity .22s,transform .22s;position:absolute;bottom:22px;right:24px;transform:translate(-6px)}.navigation-card span,.collaboration-grid span,.process-grid span{color:var(--blue);letter-spacing:.12em;text-transform:uppercase;margin-bottom:36px;font-size:.78rem;font-weight:840;display:block}.navigation-card span,.process-grid h3,.product-category-grid h3,.capability-list h3,.collaboration-grid h3{color:var(--navy);font-size:1.16rem;font-weight:760;line-height:1.24}.navigation-card span{transition:color .2s}.navigation-card:hover,.navigation-card:focus-visible{z-index:1;border-color:#126fb25c;transform:translateY(-4px);box-shadow:0 16px 34px #04142d1a}.navigation-card:hover:before,.navigation-card:focus-visible:before{transform:scaleX(1)}.navigation-card:hover:after,.navigation-card:focus-visible:after{opacity:1;transform:translate(0)}.navigation-card:hover span,.navigation-card:focus-visible span{color:var(--blue)}.navigation-card p,.product-category-grid p,.capability-list p{margin:16px 0 0}.two-column{align-items:center}.two-column--reverse{grid-template-columns:minmax(320px,.78fr) minmax(0,1fr)}.feature-image,.page-hero>img{object-fit:cover;border:1px solid var(--line);width:100%;height:clamp(320px,42vw,620px)}.feature-image--portrait{object-fit:contain;background:#fff;height:clamp(420px,48vw,620px)}.text-block p:not(.kicker){margin-top:24px;font-size:1.02rem}.page-hero{background:var(--navy);color:#fff;align-items:stretch;padding:clamp(56px,6vw,88px) clamp(24px,4vw,64px)}.page-hero__copy{align-self:center}.page-hero>img{object-position:center;height:clamp(320px,38vw,560px)}.page-hero>img.page-hero__image--contain{object-fit:contain;background:#fff;padding:clamp(18px,3vw,34px)}.collaboration-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:1fr 1fr;margin-top:44px;display:grid}.collaboration-grid ul{gap:12px;margin:22px 0 0;padding-left:18px;display:grid}.image-grid,.gallery-grid{background:var(--line);border:1px solid var(--line);gap:1px;display:grid}.image-grid--two{grid-template-columns:1.05fr .95fr}.image-grid--three,.gallery-grid{grid-template-columns:repeat(3,1fr)}.image-grid figure,.gallery-grid figure{background:#fff;min-height:280px;margin:0;position:relative;overflow:hidden}.image-grid img,.gallery-grid img{object-fit:cover;width:100%;height:100%}.image-grid figcaption,.gallery-grid figcaption{color:#fff;background:#04142dc7;padding:14px 16px;font-size:.86rem;position:absolute;bottom:0;left:0;right:0}.process-grid{grid-template-columns:repeat(3,1fr)}.process-grid article{min-height:170px}.process-grid span{margin-bottom:26px}.gallery-grid figure{aspect-ratio:1.18}.product-category-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:1px}.product-category-grid article{min-height:390px;padding:24px;transition:border-color .22s,box-shadow .22s,transform .22s;overflow:hidden}.product-category-grid img{object-fit:cover;object-position:center;background:#eef3f7;border:0;width:100%;height:clamp(170px,13vw,210px);margin-bottom:22px;transition:transform .42s}.product-category-grid h3{transition:color .18s}.product-category-grid article:hover{border-color:#126fb26b;box-shadow:0 14px 34px #04142d1a}.product-category-grid article:hover img{transform:scale(1.04)}.product-category-grid article:hover h3{color:var(--blue)}.capability-list{grid-template-columns:repeat(3,1fr)}.certificate-display{border:1px solid var(--line);background:#fff;margin:44px 0 0}.certificate-card-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin-top:44px;display:grid}.certificate-card-grid article{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;min-height:170px;padding:24px}.certificate-card-grid span{color:var(--blue);letter-spacing:.11em;text-transform:uppercase;margin-bottom:32px;font-size:.76rem;font-weight:840;display:block}.certificate-card-grid h3{color:var(--navy);margin:0;font-size:1.35rem;font-weight:760;line-height:1.22}.certificate-display img{object-fit:contain;background:#050505;width:100%;max-height:720px}.certificate-display figcaption{border-top:1px solid var(--line);padding:18px 22px}.policy-card-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:44px;display:grid}.policy-card{background:#fff;flex-direction:column;min-height:440px;padding:clamp(26px,3vw,36px);display:flex}.policy-card h3{color:var(--navy);margin:0;font-size:clamp(1.35rem,2vw,1.75rem);font-weight:760;line-height:1.18}.policy-card p{color:var(--muted);margin:20px 0 0;line-height:1.76}.policy-card ul{gap:12px;margin:28px 0 0;padding:0;list-style:none;display:grid}.policy-card li{color:var(--ink);padding-left:20px;line-height:1.55;position:relative}.policy-card li:before{content:"";background:var(--blue);width:7px;height:7px;position:absolute;top:.72em;left:0}.policy-card a{border:1px solid var(--line);min-height:42px;color:var(--navy);letter-spacing:.06em;text-transform:uppercase;justify-content:center;align-self:flex-start;align-items:center;margin-top:auto;padding:0 16px;font-size:.78rem;font-weight:820;text-decoration:none;transition:border-color .18s,color .18s,background-color .18s;display:inline-flex}.policy-card a:hover{border-color:var(--blue);color:#fff;background:var(--blue)}.contact-page{color:#fff;background:linear-gradient(90deg,#04142df5,#04142dc2),url(/assets/thailand-factory-front-CKt0VzHI.jpg) 50%/cover;align-items:center;min-height:calc(100svh - 92px);padding:clamp(72px,10vw,132px) clamp(20px,4vw,64px)}.contact-card{background:#ffffff14;border:1px solid #ffffff47;gap:14px;padding:clamp(24px,4vw,44px);display:grid}.contact-card a{text-transform:none;letter-spacing:0;width:100%}.site-footer{border-top:1px solid var(--line);background:#f8fafc;grid-template-columns:1fr auto;align-items:center;gap:28px;padding:28px clamp(20px,4vw,64px);display:grid}.site-footer img{object-fit:contain;width:104px;height:48px}.site-footer p{color:var(--muted);margin:8px 0 0;font-size:.92rem}.footer-links{flex-wrap:wrap;justify-content:flex-end;gap:12px 22px;display:flex}.footer-links button{color:var(--ink);font-size:.78rem;font-weight:760}@media (width<=1180px){.site-header{grid-template-columns:auto auto;min-height:88px}.brand-button img{width:146px;height:66px}.menu-toggle{display:inline-flex}.site-header nav{border-top:1px solid var(--line);flex-direction:column;grid-column:1/-1;align-items:stretch;gap:0;display:none}.site-header nav.open{display:flex}.site-header nav button{text-align:left;padding:14px 0}.site-header nav button:after{bottom:8px}.section-intro,.two-column,.two-column--reverse,.page-hero,.contact-page{grid-template-columns:1fr}.navigation-card-grid,.product-category-grid,.certificate-card-grid{grid-template-columns:repeat(2,1fr)}.home-hero{min-height:660px}.home-hero__content{width:min(860px,100%)}.home-hero h1,.page-hero h1,.contact-page h1{max-width:820px;font-size:clamp(2.05rem,4.6vw,3.35rem);line-height:1.13}.section-intro h2,.text-block h2{font-size:clamp(2rem,4.1vw,2.85rem);line-height:1.13}}@media (width<=820px){.home-hero,.contact-page{min-height:610px}.home-hero__content{padding-top:76px;padding-bottom:58px}.home-hero h1,.page-hero h1,.contact-page h1{font-size:clamp(1.9rem,7vw,2.75rem);line-height:1.15}.section-intro h2,.text-block h2{font-size:clamp(1.85rem,5.8vw,2.35rem);line-height:1.15}.kicker{font-size:.8rem;line-height:1.5}.home-hero__content>p:last-of-type,.page-hero__copy>p:last-of-type,.contact-page>div>p{margin-top:20px;font-size:1rem;line-height:1.68}.navigation-card-grid,.process-grid,.product-category-grid,.certificate-card-grid,.policy-card-grid,.capability-list,.collaboration-grid,.image-grid--two,.image-grid--three,.gallery-grid{grid-template-columns:1fr}.navigation-card,.product-category-grid article,.certificate-card-grid article,.policy-card,.capability-list article,.collaboration-grid article{min-height:0}.feature-image,.page-hero>img{height:300px}.product-category-grid img{height:220px}.image-grid figure,.gallery-grid figure{min-height:260px}.site-footer{grid-template-columns:1fr}.footer-links{justify-content:flex-start}}@media (width<=560px){.site-header{min-height:80px;padding-inline:18px}.brand-button img{width:128px;height:58px}.home-hero__content{padding:58px 18px 46px}.home-hero h1,.page-hero h1,.contact-page h1{font-size:clamp(1.72rem,8.3vw,2.28rem);line-height:1.17}.section-intro h2,.text-block h2{font-size:clamp(1.75rem,7.4vw,2.1rem);line-height:1.16}.hero-actions{margin-top:30px}.product-category-grid img{height:190px}.hero-actions button,.contact-card a{width:100%}}@media (prefers-reduced-motion:reduce){.home-hero>img{will-change:auto;animation:none;transform:none}.site-header nav button,.site-header nav button:after,.navigation-card,.navigation-card:before,.navigation-card:after,.navigation-card span,.product-category-grid article,.product-category-grid img,.product-category-grid h3{transition:none}.navigation-card:hover,.navigation-card:focus-visible,.product-category-grid article:hover img{transform:none}}
