:root{--ink:#161817;--muted:#626864;--line:#c9ceca;--paper:#fff;--gray:#f1f3f1;--steel:#29312d;--accent:#d94b2b;--accent-dark:#a72f18;--max:1160px;--shadow:0 14px 35px rgb(0 0 0/.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:1rem;line-height:1.8;-webkit-font-smoothing:antialiased}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}h1,h2,h3,p{margin-top:0}img{max-width:100%;height:auto}.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.narrow{width:min(calc(100% - 40px),760px);margin-inline:auto}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:12px;top:-80px;z-index:9999;background:#fff;padding:12px 16px;border:2px solid var(--ink)}.skip-link:focus{top:12px}:focus-visible{outline:3px solid #1672c4;outline-offset:4px}
.site-header{height:72px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100}.header-inner{height:100%;width:min(calc(100% - 32px),var(--max));margin:auto;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;letter-spacing:.04em}.brand-mark{width:38px;height:38px;background:var(--ink);color:#fff;display:grid;place-items:center;font-family:serif;font-size:1.15rem}.menu-button{min-width:48px;min-height:48px;border:0;background:transparent;display:flex;align-items:center;gap:8px;font:inherit;font-size:.875rem;font-weight:700}.menu-icon,.menu-icon::before,.menu-icon::after{display:block;width:22px;height:2px;background:var(--ink);position:relative}.menu-icon::before,.menu-icon::after{content:"";position:absolute;left:0}.menu-icon::before{top:-7px}.menu-icon::after{top:7px}.menu-button[aria-expanded="true"] .menu-icon{background:transparent}.menu-button[aria-expanded="true"] .menu-icon::before{top:0;transform:rotate(45deg)}.menu-button[aria-expanded="true"] .menu-icon::after{top:0;transform:rotate(-45deg)}.global-nav{display:none;position:absolute;left:0;top:72px;width:100%;padding:12px 20px 24px;background:#fff;border-bottom:3px solid var(--ink);box-shadow:var(--shadow)}.global-nav.is-open{display:grid}.global-nav a{min-height:50px;display:flex;align-items:center;text-decoration:none;border-bottom:1px solid var(--line);font-weight:700}.global-nav a::after{content:"→";margin-left:auto}
.hero{background:#e7eae7;border-bottom:8px solid var(--ink)}.hero-inner{width:min(100%,1440px);margin:auto}.hero-copy{padding:64px 20px 54px}.eyebrow,.section-number{font-size:.75rem;font-weight:800;letter-spacing:.16em;color:var(--accent);text-transform:uppercase;margin-bottom:14px}.hero h1{font-size:clamp(2.4rem,10vw,5.4rem);line-height:1.15;letter-spacing:-.04em;margin-bottom:28px}.hero-lead{font-weight:600;max-width:660px}.opening-badge{display:inline-flex;align-items:center;gap:10px;border:3px solid var(--ink);background:#fff;padding:10px 16px;font-size:1.22rem;font-weight:900;margin:12px 0 26px;box-shadow:5px 5px 0 var(--ink)}.opening-badge span{background:var(--accent);color:#fff;padding:2px 8px;font-size:.85rem}.button-row{display:flex;flex-wrap:wrap;gap:12px}.button{min-height:50px;display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border:2px solid var(--ink);text-decoration:none;font-weight:800}.button-primary{background:var(--ink);color:#fff}.button-primary:hover{background:var(--accent);border-color:var(--accent)}.button-secondary{background:#fff}.hero-visual{min-height:430px;background:#202522;display:grid;grid-template-rows:minmax(270px,1.55fr) minmax(158px,.8fr);gap:2px;border-top:2px solid var(--ink);overflow:hidden}.hero-photo{display:block;width:100%;height:100%;object-fit:cover}.hero-storefront{object-position:center 54%}.hero-detail-grid{min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:2px;overflow:hidden}
.business-info{background:var(--ink);color:#fff;padding:56px 0}.section-heading{margin-bottom:30px}.section-heading h2{font-size:clamp(1.85rem,6vw,3rem);line-height:1.25;margin-bottom:12px}.section-heading>p:last-child{color:var(--muted)}.section-heading-light h2{color:#fff}.hours-grid{display:grid;gap:28px}.hours-main p{display:grid;grid-template-columns:1fr auto;align-items:baseline;border-bottom:1px solid #ffffff42;padding:14px 0;margin:0}.hours-main span{font-weight:700}.hours-main strong{font-family:Arial,sans-serif;font-size:clamp(1.35rem,5vw,2.15rem);letter-spacing:.02em}.phone-panel{background:#fff;color:var(--ink);padding:24px;border-left:8px solid var(--accent)}.phone-panel p{font-weight:700;margin-bottom:8px}.phone-panel a{display:block;font:800 clamp(1.7rem,8vw,2.5rem)/1.2 Arial,sans-serif;text-decoration:none;white-space:nowrap}.phone-panel a small{display:block;font-size:.7rem;color:var(--accent);letter-spacing:.15em}.phone-panel>span{font-size:.78rem;color:var(--muted)}
.section{padding:72px 0}.section-gray{background:var(--gray)}.notice-list{border-top:3px solid var(--ink)}.notice-item{padding:20px 4px;border-bottom:1px solid var(--line)}.notice-item time{font:700 .85rem Arial,sans-serif;color:var(--accent)}.notice-item h3{font-size:1.1rem;margin:4px 0}.notice-item p{color:var(--muted);margin:0}.loading-text{color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:2px solid var(--ink);border-left:1px solid var(--line)}.product-card{min-height:120px;padding:22px 15px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;display:flex;flex-direction:column;justify-content:space-between}.product-card .product-number{font:700 .7rem Arial,sans-serif;color:var(--accent)}.product-card h3{font-size:1.05rem;line-height:1.4;margin:20px 0 0}.section-note{margin-top:24px;padding-left:16px;border-left:4px solid var(--accent);color:var(--muted)}
.shigefusa-feature{background:#202522;color:#fff;padding:78px 0;border-block:10px solid #0f1110}.shigefusa-inner{display:grid;gap:40px}.shigefusa-feature h2{font-family:serif;font-size:clamp(2.7rem,10vw,5.2rem);letter-spacing:.12em;margin-bottom:10px}.shigefusa-copy{font-family:serif;font-size:1.35rem}.text-link{display:inline-flex;align-items:center;gap:14px;margin-top:20px;padding:12px 0;text-decoration:none;border-bottom:2px solid #fff;font-weight:800}.shigefusa-side{display:grid;gap:14px}.shigefusa-side>img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center 34%;border:1px solid #ffffff50}.shigefusa-contact{padding:24px;border:1px solid #ffffff50;display:flex;flex-direction:column;justify-content:center}.shigefusa-contact span{font-size:.85rem}.shigefusa-contact a{font:800 clamp(1.8rem,7vw,2.8rem)/1.2 Arial,sans-serif;text-decoration:none}.maker-list{list-style:none;margin:0;padding:0;border-top:3px solid var(--ink);display:grid;grid-template-columns:1fr 1fr}.maker-list li{padding:18px 10px;border-bottom:1px solid var(--line);font-weight:800}.maker-list li::before{content:"—";color:var(--accent);margin-right:8px}
.calendar-status{background:#fff;border:3px solid var(--ink);border-left:10px solid var(--accent);padding:18px 20px;margin-bottom:24px;display:flex;flex-direction:column}.calendar-status strong{font-size:1.25rem}.calendar-status span{font-size:.9rem;color:var(--muted)}.calendar-grid{display:grid;gap:24px}.calendar-card{background:#fff;border:1px solid var(--line);padding:16px}.calendar-card h3{text-align:center;font:800 1.25rem Arial,sans-serif}.calendar-table{width:100%;border-collapse:collapse;table-layout:fixed;text-align:center}.calendar-table th{font-size:.75rem;padding:5px 0;border-bottom:2px solid var(--ink)}.calendar-table td{height:46px;border-bottom:1px solid #e5e8e5;vertical-align:middle;position:relative;font:600 .9rem Arial,sans-serif}.calendar-table td.is-holiday,.calendar-table td.is-sunday{background:#f8e8e4;color:#922b17}.calendar-table td.is-saturday{background:#e7eef3;color:#1f5676}.calendar-table td.is-today{outline:3px solid var(--ink);outline-offset:-3px}.calendar-table .day-status{display:block;font-size:.58rem;line-height:1;color:inherit}.calendar-legend{display:flex;flex-wrap:wrap;gap:20px;margin:20px 0}.calendar-legend span{display:flex;align-items:center;gap:8px}.legend-mark{width:28px;height:28px;display:grid;place-items:center;font-style:normal;font-size:.7rem;font-weight:800}.legend-mark.holiday{background:#f8e8e4;color:#922b17}.legend-mark.saturday{background:#e7eef3;color:#1f5676}.base-hours{display:grid;gap:4px;padding:18px 20px;background:var(--ink);color:#fff}.base-hours strong{color:#ffab98}.company-list{margin:0;border-top:3px solid var(--ink)}.company-list div{display:grid;grid-template-columns:105px 1fr;border-bottom:1px solid var(--line);padding:18px 0}.company-list dt{font-weight:800}.company-list dd{margin:0}.access{padding:72px 0;background:#dfe3e0}.access-inner{display:grid;gap:32px}.access h2{font-size:clamp(2rem,8vw,3.5rem)}.map-placeholder{min-height:260px;background:repeating-linear-gradient(45deg,#d2d7d3 0,#d2d7d3 1px,transparent 1px,transparent 26px),#f5f6f5;border:3px solid var(--ink);display:grid;place-content:center;text-align:center}.map-placeholder span{font-size:1.25rem;font-weight:900}.map-placeholder small{letter-spacing:.18em}.site-footer{background:#111312;color:#fff;padding:54px 0 110px}.footer-inner{display:grid;gap:28px}.footer-inner strong{font-size:1.2rem}.footer-inner p{margin:8px 0}.footer-inner span{display:block;color:#aaa;font-size:.75rem}.footer-inner a{font:800 1.6rem Arial,sans-serif;text-decoration:none}.footer-inner small{color:#999}.mobile-call{position:fixed;bottom:0;left:0;z-index:90;width:100%;min-height:68px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;gap:12px;text-decoration:none;border-top:3px solid #fff;box-shadow:0 -4px 15px #0004}.mobile-call span{font-size:.78rem}.mobile-call strong{font:800 1.25rem Arial,sans-serif}
.breadcrumb{padding-top:22px}.breadcrumb ol{display:flex;list-style:none;padding:0;margin:0;gap:10px;font-size:.85rem}.breadcrumb li+li::before{content:"/";margin-right:10px;color:var(--muted)}.shigefusa-hero{margin-top:22px;background:#1c211e;color:#fff;border-bottom:12px solid var(--accent)}.shigefusa-hero-inner{display:grid}.shigefusa-hero-copy{padding:70px 0}.shigefusa-hero h1{font-family:serif;font-size:clamp(3.3rem,14vw,7.5rem);letter-spacing:.12em;margin-bottom:8px}.shigefusa-hero-copy>p:last-child{font-family:serif;font-size:clamp(1.2rem,5vw,1.8rem)}.shigefusa-hero img{display:block;width:100%;height:420px;object-fit:cover;object-position:center 42%;border-top:1px solid #ffffff35}.shigefusa-intro{text-align:center}.shigefusa-intro h2{font-family:serif;font-size:clamp(1.55rem,6vw,2.6rem);line-height:1.7}.future-product-area{display:grid;gap:20px}.shigefusa-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px;background:#272d2a}.shigefusa-photo-grid img{display:block;width:100%;height:420px;object-fit:cover}.shigefusa-photo-grid img:first-child{object-position:center}.shigefusa-photo-grid img:last-child{object-position:center 32%}.future-product-area p{margin:0;padding:20px;border:1px solid var(--line);background:#fff;color:var(--muted)}.shigefusa-contact-section{background:#d9ddd9;padding:78px 0;text-align:center}.shigefusa-contact-section h2{font-size:clamp(1.8rem,7vw,3rem)}.large-phone{display:inline-block;font:800 clamp(2rem,9vw,4.5rem)/1.2 Arial,sans-serif;text-decoration:none;margin:16px 0 32px}.large-phone small{display:block;font-size:.75rem;color:var(--accent);letter-spacing:.2em}.compact-hours{max-width:560px;margin:auto;border-top:3px solid var(--ink)}.compact-hours p{display:flex;justify-content:space-between;margin:0;padding:10px;border-bottom:1px solid #adb3ae}
@media(min-width:760px){.container,.narrow{width:min(calc(100% - 80px),var(--max))}.hero-inner{display:grid;grid-template-columns:56% 44%;min-height:620px}.hero-copy{padding:90px 7vw 70px;align-self:center}.hero-visual{border-top:0;border-left:1px solid #fff3}.hours-grid{grid-template-columns:1.1fr .9fr;align-items:center}.product-grid{grid-template-columns:repeat(3,1fr)}.product-card{min-height:150px}.shigefusa-inner{grid-template-columns:1.25fr .75fr;align-items:center}.calendar-grid{grid-template-columns:1fr 1fr}.base-hours{grid-template-columns:1.3fr repeat(3,1fr);align-items:center}.access-inner{grid-template-columns:1fr 1fr;align-items:center}.footer-inner{grid-template-columns:1fr auto auto;align-items:end}.future-product-area{grid-template-columns:2fr 1fr;align-items:stretch}.future-product-area p{display:grid;place-items:center}.maker-list{grid-template-columns:repeat(3,1fr)} }
@media(min-width:980px){.site-header{height:82px}.header-inner{width:min(calc(100% - 60px),var(--max))}.menu-button{display:none}.global-nav{display:flex;position:static;width:auto;padding:0;background:transparent;border:0;box-shadow:none;gap:30px}.global-nav a{min-height:44px;border:0;font-size:.9rem}.global-nav a::after{display:none}.global-nav a:hover{color:var(--accent)}.section{padding:100px 0}.mobile-call{display:none}.site-footer{padding-bottom:54px}.company-list div{grid-template-columns:180px 1fr}.product-grid{grid-template-columns:repeat(4,1fr)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media(max-width:360px){.header-inner{width:calc(100% - 24px)}.brand{gap:7px;font-size:.86rem;letter-spacing:0;white-space:nowrap}.brand-mark{flex:0 0 36px;width:36px;height:36px}.menu-button{gap:5px;font-size:.72rem}.menu-icon,.menu-icon::before,.menu-icon::after{width:20px}}
.hero-copy{padding:92px 20px 82px}.hero h1{font-size:clamp(1.15rem,3.2vw,2.6rem);line-height:1.35;letter-spacing:-.06em;white-space:nowrap;margin-bottom:36px}.hero .eyebrow{margin-bottom:22px}.hero-lead{margin-bottom:28px}
.product-card{position:relative;isolation:isolate;overflow:hidden}.product-card::after{content:"";position:absolute;right:-12px;bottom:-18px;z-index:-1;width:112px;height:112px;background:var(--product-icon) center/contain no-repeat;opacity:.13;transform:rotate(-7deg);pointer-events:none}.product-card h3,.product-card .product-number{position:relative;z-index:1}.product-card:hover::after{opacity:.2}
@media(min-width:760px){.hero-inner{min-height:680px}.hero-copy{padding:120px 7vw 110px}.product-card::after{right:-14px;bottom:-20px;width:132px;height:132px}}
.delivery-badge{display:flex;align-items:stretch;width:max-content;max-width:100%;margin:-12px 0 26px;border:2px solid var(--ink);background:#fff;font-weight:900;line-height:1.35}.delivery-badge span{display:flex;align-items:center;padding:9px 12px}.delivery-badge-number{background:var(--ink);color:#fff;white-space:nowrap}.seasonal-holiday-note{display:block!important;padding:12px 0!important;border-bottom:0!important;color:#ffab98;font-size:.9rem;font-weight:800}.delivery-callout{margin-top:30px;padding:24px;background:var(--ink);color:#fff;border-left:10px solid var(--accent);display:grid;gap:12px}.delivery-callout-label{margin:0;color:#ffab98;font:800 .75rem/1.4 Arial,sans-serif;letter-spacing:.14em}.delivery-callout h3{margin:0 0 4px;font-size:clamp(1.35rem,5vw,2rem)}.delivery-callout p{margin:0}.delivery-callout a{width:max-content;font:800 clamp(1.45rem,7vw,2rem)/1.3 Arial,sans-serif;text-decoration:none;border-bottom:2px solid #fff}.base-hours span:last-child{color:#ffab98;font-weight:800}.compact-hours .seasonal-holiday-note{justify-content:center;color:var(--accent)}
@media(min-width:760px){.delivery-callout{grid-template-columns:auto 1fr auto;align-items:center;padding:28px 32px}.base-hours{grid-template-columns:1.3fr repeat(4,1fr)}.delivery-badge{margin-top:-12px}}
@media(min-width:760px){.shigefusa-hero-inner{grid-template-columns:1fr minmax(330px,44%);align-items:stretch}.shigefusa-hero-copy{align-self:center;padding:90px 40px 90px 0}.shigefusa-hero img{height:100%;min-height:580px;border-top:0;border-left:1px solid #ffffff35}}
.shigefusa-photo-grid img{height:auto;aspect-ratio:3/4}
