:root{--motion-duration-fast: .12s;--motion-duration-normal: .24s;--motion-duration-slow: .4s;--motion-ease: cubic-bezier(.4, 0, .2, 1);--brand-primary: #1E3A2D;--brand-accent: #8B5E34;--brand-paper: #F2EFE4;--brand-earth: #5C3D1E;--brand-warm-gray: #5A524B;--text-color: var(--brand-primary);--bg-color: #F7F4EF;--container-max-width: 1200px;--company-name: "中村建材・中村建設";--brand-secondary: #4D6B5A;--brand-muted: #F2EFE4;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 48px;--type-2xs: .75rem;--type-sm: .875rem;--type-body-sm: .9375rem;--type-base: 1rem;--type-md: 1.125rem;--type-lg: 1.375rem;--type-xl: 1.75rem;--leading-tight: 1.4;--leading-snug: 1.7;--leading-body: 1.9;--font-serif: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", "Times New Roman", serif;--radius-sm: 6px;--radius-md: 8px;--container-padding: 24px}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{height:100%;margin:0;font-family:var(--font-serif);color:var(--text-color);background:var(--bg-color)}body{font-size:var(--type-base);line-height:var(--leading-body)}.container{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--container-padding)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 24px;border-radius:var(--radius-md);text-decoration:none;font-family:var(--font-serif);font-size:var(--type-base);line-height:var(--leading-tight)}.btn-primary{background:var(--brand-primary);color:#fff;border:2px solid var(--brand-primary);transition:background var(--motion-duration-fast) var(--motion-ease),transform var(--motion-duration-normal) var(--motion-ease)}.btn-primary:hover{background:#162b21;border-color:#162b21;transform:translateY(-2px)}a[data-tel-href]{color:inherit;text-decoration:none;cursor:default}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;display:grid;align-items:stretch;background:transparent;color:#fff;transition:background .3s var(--motion-ease),box-shadow .2s var(--motion-ease);padding:0;min-height:90px}.site-header.is-scrolled{background:var(--bg-color);color:var(--text-color);box-shadow:0 6px 18px #1010100f}.header-inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;padding:0 var(--container-padding);position:relative;max-width:var(--container-max-width);margin:0 auto;width:100%}.header-left{display:flex;align-items:center;gap:12px;align-self:center}.site-nav{display:flex;gap:16px;align-self:center;justify-content:flex-end;justify-self:end}.site-logo{display:inline-flex;align-items:center;min-height:44px}.site-logo__img{height:48px}.site-company{font-weight:700;color:#fff;font-size:1.5rem;line-height:1;transition:color .3s var(--motion-ease)}.site-header.is-scrolled .site-company{color:var(--brand-primary)}.site-company-wrapper{display:flex;flex-direction:column;justify-content:center}.site-company-roman{font-size:var(--type-2xs);color:#ffffffbf;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin-top:2px;transition:color .3s var(--motion-ease)}.site-header.is-scrolled .site-company-roman{color:var(--text-color);opacity:.85}.nav-toggle{display:none;background:transparent;border:0;cursor:pointer;padding:8px;line-height:1;color:#fff;transition:color .3s var(--motion-ease)}.site-header.is-scrolled .nav-toggle{color:var(--brand-primary)}.nav-toggle__bars{display:flex;flex-direction:column;gap:5px;width:22px;pointer-events:none}.nav-toggle__bar{display:block;width:22px;height:2px;background:currentColor;border-radius:2px;transform-origin:center;transition:transform .25s var(--motion-ease),opacity .2s ease,width .2s ease}.nav-toggle[aria-expanded=true] .nav-toggle__bar:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded=true] .nav-toggle__bar:nth-child(2){opacity:0;transform:scaleX(0)}.nav-toggle[aria-expanded=true] .nav-toggle__bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.site-nav .nav-contact-link{display:none}.site-nav a{color:#ffffffeb;text-decoration:none;display:inline-flex;align-items:center;transition:color .3s var(--motion-ease)}.site-header.is-scrolled .site-nav a{color:var(--text-color)}.header-cta{display:flex;align-self:center;align-items:center;background:transparent;border:1.5px solid rgba(255,255,255,.85);border-radius:4px;margin-left:var(--space-md);transition:background .3s var(--motion-ease),border-color .3s var(--motion-ease)}.site-header.is-scrolled .header-cta{background:var(--brand-primary);border-color:transparent}.header-cta .contact-block{display:inline-flex;align-items:center;gap:10px;color:#fff;padding:8px 16px}.header-cta .contact-text{display:flex;flex-direction:column;line-height:1.2}.header-cta .contact-label{font-size:var(--type-2xs);letter-spacing:.04em;opacity:.9}.header-cta .contact-tel{font-size:var(--type-md);font-weight:700;letter-spacing:.02em;font-feature-settings:"tnum"}.header-cta .icon-phone{display:inline-block;color:currentColor;flex-shrink:0}@media (max-width: 1160px){.header-inner{display:flex;justify-content:space-between;align-items:center;gap:12px}.header-left{min-width:0}.site-company{line-height:1.3}.nav-toggle{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;padding:0;position:relative;z-index:110}.site-nav{display:none}.site-nav.is-open{display:flex;position:fixed;top:0;right:0;bottom:0;left:auto;width:min(82vw,340px);max-width:100%;height:100%;height:100dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;flex-direction:column;justify-content:flex-start;background:var(--bg-color);border-top:none;box-shadow:-12px 0 40px #00000038;z-index:100;padding:calc(56px + 1rem) 0 2rem;gap:0;animation:navDrawerIn .26s var(--motion-ease) both}.site-nav.is-open a{display:flex;align-items:center;padding:18px 28px;font-size:var(--type-base);font-weight:600;color:var(--brand-primary);text-decoration:none;border-bottom:1px solid rgba(139,94,52,.4);letter-spacing:.04em;position:relative;transition:background .15s ease}.site-nav.is-open a:last-of-type{border-bottom:none}.site-nav.is-open a:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--brand-primary);transform:scaleY(0);transform-origin:center;transition:transform .15s var(--motion-ease)}.site-nav.is-open a:hover,.site-nav.is-open a:focus-visible{background:#1e3a2d0d;outline:none}.site-nav.is-open a:hover:before,.site-nav.is-open a:focus-visible:before{transform:scaleY(1)}.site-nav.is-open .nav-contact-link{display:flex;align-items:center;gap:12px;margin:14px 24px 8px;padding:14px 24px;min-height:44px;border-bottom:none;background:var(--brand-primary);color:#fff;border-radius:6px;justify-content:center;font-weight:700;letter-spacing:.04em;transition:background .15s ease}.site-nav.is-open .nav-contact-link:not([href]){background:transparent;color:var(--brand-primary);border:1.5px solid rgba(30,58,45,.35);cursor:default}.site-nav.is-open .nav-contact-link .icon-phone{flex-shrink:0}.site-nav.is-open .nav-contact-text{display:flex;flex-direction:column;line-height:1.25}.site-nav.is-open .nav-contact-label{font-size:var(--type-2xs);font-weight:500;opacity:.9}.site-nav.is-open .nav-contact-tel{font-size:var(--type-md);font-weight:700;font-feature-settings:"tnum"}.site-nav.is-open .nav-contact-link:before{display:none}.site-nav.is-open .nav-contact-link:hover,.site-nav.is-open .nav-contact-link:focus-visible{background:#0f1e17;color:#fff}.header-cta,.site-company-roman{display:none}}@keyframes navDrawerIn{0%{transform:translate(100%)}to{transform:none}}.nav-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a07038c;opacity:0;pointer-events:none;z-index:90;transition:opacity .26s var(--motion-ease)}.nav-scrim.is-visible{opacity:1;pointer-events:auto}@media (min-width: 1161px){.nav-scrim{display:none}}@media (prefers-reduced-motion: reduce){.site-nav.is-open{animation:none}.nav-scrim{transition:none}}@media (max-width: 540px){.site-company{font-size:.95rem}.site-logo__img{height:34px}.site-header{min-height:56px}}@media (max-width: 430px){.site-company{font-size:.85rem}.site-logo__img{height:30px}}@media (max-width: 360px){.site-company{font-size:.78rem}.site-logo__img{height:28px}}.site-footer{padding:40px 0;background-color:var(--brand-primary);color:#fff;font-size:var(--type-base)}.footer-inner{display:flex;gap:24px;align-items:flex-start;justify-content:space-between}.footer-left{display:flex;flex-direction:column;gap:8px;flex:0 0 auto;max-width:460px}.footer-brand{display:flex;align-items:center;gap:12px;margin-bottom:4px}.footer-logo{width:60px;height:60px;object-fit:contain;display:block;flex-shrink:0}.footer-company-wrapper{display:flex;flex-direction:column;justify-content:center}.footer-company{font-weight:700;font-size:1.25rem;line-height:1.2;color:#fff;white-space:nowrap}.footer-company-roman{font-size:var(--type-2xs);color:#ffffffd9;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin-top:2px}.footer-address{font-style:normal;color:#ffffffe6;font-size:var(--type-base);line-height:1.7}.footer-telfax{display:flex;flex-direction:row;flex-wrap:wrap;gap:4px 16px;align-items:center;color:#ffffffe6;font-size:var(--type-base)}.footer-telfax>div{white-space:nowrap}.footer-telfax a{color:inherit;text-decoration:none}.footer-telfax a[href]{display:inline-flex;align-items:center;min-height:44px}.footer-links{flex:1 1 auto;display:grid;grid-template-columns:repeat(2,1fr);gap:8px 32px;align-items:start;padding:0 24px}.links-col{display:flex;flex-direction:column;gap:0}.links-col a{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap}.footer-cta{flex:0 0 auto;display:flex;align-items:center}.footer-contact-btn{display:inline-flex;align-items:center;gap:10px;padding:10px 22px;min-height:44px;border:1.5px solid rgba(255,255,255,.75);border-radius:4px;font-family:var(--font-serif);white-space:nowrap}.footer-contact-btn[href]:hover{background:#ffffff1f;border-color:#fff}.footer-contact-btn .icon-phone{flex-shrink:0}.footer-cta-text{display:flex;flex-direction:column;line-height:1.25}.footer-cta-label{font-size:var(--type-2xs);font-weight:500;color:#ffffffd9;letter-spacing:.04em}.footer-cta-tel{font-size:var(--type-md);font-weight:700;color:#fff;font-feature-settings:"tnum"}.site-footer a{color:#fff;text-decoration:none}@media (max-width: 920px){.footer-inner{flex-direction:column;gap:24px;align-items:stretch}.footer-left{max-width:none}.footer-brand{gap:10px}.footer-logo{width:48px;height:48px}.footer-company{font-size:1.1rem;white-space:normal}.footer-telfax{flex-wrap:wrap;gap:8px 16px}.footer-links{padding:0;gap:8px 24px}.footer-cta{justify-content:flex-start}}@media (max-width: 400px){.footer-links{grid-template-columns:1fr}}.motion-reveal{opacity:0;transform:translateY(12px);transition:opacity var(--motion-duration-normal) var(--motion-ease),transform var(--motion-duration-normal) var(--motion-ease);will-change:opacity,transform}.motion-reveal.is-revealed{opacity:1;transform:none}.motion-card-lift{transition:transform var(--motion-duration-normal) var(--motion-ease),box-shadow var(--motion-duration-normal) var(--motion-ease)}.motion-card-lift:hover,.motion-card-lift:focus{transform:translateY(-6px) scale(1.02);box-shadow:0 8px 24px #13131314}.motion-cta{transition:transform var(--motion-duration-fast) var(--motion-ease)}@media (prefers-reduced-motion: reduce){.motion-reveal,.motion-card-lift,.motion-cta{transition:none!important;animation:none!important;transform:none!important}}.motion-reveal.motion-slide{transform:translate(-28px);transition:opacity 3s var(--motion-ease),transform 3s var(--motion-ease);will-change:opacity,transform}.motion-reveal.motion-slide.is-revealed{transform:none}:focus-visible{outline:3px solid var(--brand-primary);outline-offset:2px;border-radius:2px}:focus:not(:focus-visible){outline:none}.site-footer :focus-visible,.hero :focus-visible,.page-hero :focus-visible,.lightbox :focus-visible,.site-header:not(.is-scrolled) .site-nav:not(.is-open) :focus-visible,.site-header:not(.is-scrolled) .site-logo:focus-visible,.site-header:not(.is-scrolled) .nav-toggle:focus-visible{outline-color:#fff}.skip-link{position:absolute;top:0;left:0;z-index:300;transform:translateY(-120%);display:inline-flex;align-items:center;min-height:44px;padding:0 20px;background:var(--brand-primary);color:#fff;font-family:var(--font-serif);font-size:var(--type-base);font-weight:700;text-decoration:none;border-radius:0 0 var(--radius-md) 0;transition:transform .16s var(--motion-ease)}.skip-link:focus-visible{transform:translateY(0);outline-offset:-4px;outline-color:#fff}@media (prefers-reduced-motion: reduce){.skip-link{transition:none}}.visually-hidden{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap;border:0;padding:0;margin:-1px}
