:root{--red:#c91f2b;--red-dark:#981722;--ink:#171717;--paper:#faf8f2;--gold:#FFCA00;--line:#dedbd2;--muted:#666;--max:1360px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;line-height:1.75}body.menu-open{position:fixed;right:0;left:0;overflow:hidden}a{color:inherit;text-decoration:none}img,video{display:block;max-width:100%}button{font:inherit}.sf-header{position:sticky;z-index:50;top:0;background:#fff;border-top:4px solid var(--gold);border-bottom:1px solid #eee}.sf-header-inner{max-width:var(--max);height:86px;margin:auto;padding:0 28px;display:flex;align-items:center;gap:32px}.sf-logo{display:flex;align-items:center;gap:12px;min-width:235px;color:var(--red);font-size:20px;font-weight:900}.sf-logo img{width:58px;height:58px;object-fit:contain}.sf-logo small,.sf-footer-brand small{display:block;color:var(--ink);font-size:10px;letter-spacing:.08em}.nav-menu{margin-left:auto}.nav-menu ul{margin:0;padding:0;display:flex;align-items:center;gap:24px;list-style:none}.nav-menu a{font-size:14px;font-weight:700;white-space:nowrap}.nav-menu a:hover,.nav-menu a:focus-visible{color:var(--red)}.nav-menu .sf-nav-shop,.nav-menu .sf-nav-recruit{padding:11px 17px;color:#fff;background:var(--ink)}.nav-menu .sf-nav-recruit{background:var(--red)}.menu-btn{display:none}.sf-hero{max-width:var(--max);min-height:565px;margin:auto;display:grid;grid-template-columns:42% 58%;background:#fff}.sf-hero-copy{padding:52px clamp(34px,5vw,72px);display:flex;flex-direction:column;justify-content:center}.sf-kicker,.sf-section-heading>p,.sf-craft-copy>p{margin:0 0 10px;color:var(--red);font-size:12px;font-weight:900;letter-spacing:.18em}.sf-hero h1{margin:0;font-size:clamp(43px,4.2vw,66px);line-height:1.32;letter-spacing:.02em}.sf-hero-lead{margin:24px 0 6px;font-weight:800}.sf-search-box{max-width:390px;padding:18px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 24px rgba(0,0,0,.08)}.sf-current-button{width:100%;min-height:58px;border:0;color:#fff;background:var(--red);font-weight:900;cursor:pointer}.sf-current-button:hover,.sf-current-button:focus-visible{background:var(--red-dark)}.sf-search-box>p{margin:12px 0;color:#888;font-size:12px;text-align:center}.sf-region-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sf-region-grid a{min-height:58px;padding:10px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);font-weight:800;text-align:center;line-height:1.35}.sf-region-grid a:hover,.sf-region-grid a:focus-visible{border-color:var(--red);color:var(--red)}.sf-text-link{width:max-content;margin-top:12px;border-bottom:2px solid var(--gold);font-size:13px;font-weight:800}.sf-hero-media{min-width:0;overflow:hidden}.sf-hero-media video{width:100%;height:100%;object-fit:cover;object-position:center}.sf-news{padding:22px max(28px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:130px 1fr 130px;gap:26px;align-items:center;color:#fff;background:var(--ink)}.sf-news-heading{padding-right:22px;border-right:1px solid #555}.sf-news-heading h2{margin:0;font-size:20px}.sf-news-heading span{color:var(--gold);font-size:12px}.sf-news-list a{padding:5px 0;display:grid;grid-template-columns:95px 80px minmax(0,1fr);gap:12px;border-bottom:1px solid #444;align-items:center;font-size:12px}.sf-news-list a:last-child{border-bottom:0}.sf-news-list time{color:#ccc}.sf-news-list span{color:var(--gold);font-weight:800}.sf-news-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-news-more{font-size:13px;font-weight:800;text-align:right}.sf-seasonal{max-width:var(--max);margin:auto;padding:72px 28px}.sf-section-heading{margin-bottom:28px;padding-left:18px;border-left:5px solid var(--gold)}.sf-section-heading h2{margin:0;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(32px,3.2vw,48px);line-height:1.3}.sf-seasonal-grid{display:grid;grid-template-columns:1.58fr 1fr;grid-template-rows:1fr 1fr;gap:14px}.sf-menu-main{position:relative;grid-row:1/3;min-height:650px;overflow:hidden;background:#111;color:#fff}.sf-menu-main img{width:100%;height:100%;object-fit:cover}.sf-menu-main>div{position:absolute;right:0;bottom:0;left:0;padding:38px;background:rgba(0,0,0,.78)}.sf-menu-main span,.sf-menu-sub span{color:var(--gold);font-size:12px;font-weight:900}.sf-menu-main h3{margin:8px 0;font-family:"Yu Mincho",serif;font-size:clamp(28px,3.2vw,48px);line-height:1.35}.sf-menu-main p{max-width:650px;margin:0 0 15px}.sf-menu-main strong,.sf-menu-sub strong{border-bottom:2px solid var(--gold);font-size:13px}.sf-menu-sub{min-height:318px;display:grid;grid-template-columns:1.1fr 1fr;background:#fff;border:1px solid var(--line)}.sf-menu-sub>div{padding:30px;display:flex;flex-direction:column;justify-content:center}.sf-menu-sub img{width:100%;height:100%;object-fit:cover}.sf-menu-sub h3{margin:7px 0;font-size:24px;line-height:1.45}.sf-menu-sub p{margin:0 0 14px;color:var(--muted);font-size:14px}.sf-craft{max-width:calc(var(--max) - 56px);min-height:510px;margin:0 auto 30px;display:grid;grid-template-columns:43% 57%;color:#fff;background:#151515}.sf-craft-copy{padding:50px}.sf-craft-copy h2{margin:0 0 26px;font-family:"Yu Mincho",serif;font-size:44px}.sf-craft ol{margin:0;padding:0;list-style:none}.sf-craft li{padding:14px 0;display:grid;grid-template-columns:56px 1fr;gap:12px;border-top:1px solid #444}.sf-craft li>span{color:var(--gold);font-family:serif;font-size:26px}.sf-craft h3{margin:0;color:var(--gold);font-size:16px}.sf-craft li p{margin:2px 0;color:#ddd;font-size:13px}.sf-dark-link{display:inline-block;margin-top:22px;border-bottom:2px solid var(--gold);font-weight:800}.sf-craft>img{width:100%;height:100%;object-fit:cover}.sf-link-rail{max-width:calc(var(--max) - 56px);margin:0 auto 58px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.sf-link-rail a{min-height:122px;padding:24px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--line)}.sf-link-rail a:last-child{border-right:0}.sf-link-rail a:hover,.sf-link-rail a:focus-visible{background:#fff}.sf-link-rail strong{font-size:17px}.sf-link-rail span{margin-top:5px;color:var(--muted);font-size:12px}.sf-footer{padding:44px max(28px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:240px 1fr auto;gap:42px;align-items:start;color:#fff;background:#111}.sf-footer-brand{display:flex;align-items:center;gap:12px;color:#e5313d;font-weight:900}.sf-footer-brand img{width:58px;height:58px;object-fit:contain}.sf-footer-brand small{color:#ddd}.sf-footer nav{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:8px 18px}.sf-footer nav a{color:#ddd;font-size:12px}.sf-footer p{margin:0;color:#999;font-size:11px;white-space:nowrap}.menu-backdrop{position:fixed;z-index:40;inset:90px 0 0;background:rgba(0,0,0,.55)}.menu-backdrop[hidden]{display:none}
@media(max-width:1100px){.sf-header-inner{height:76px}.menu-btn{margin-left:auto;padding:10px 14px;display:block;border:1px solid var(--ink);background:#fff;font-weight:800}.nav-menu{position:fixed;z-index:51;top:80px;right:0;width:min(380px,88vw);height:calc(100vh - 80px);padding:24px;background:#fff;transform:translateX(110%);transition:transform .25s}.nav-menu.is-open{transform:none}.nav-menu ul{display:grid;gap:0}.nav-menu li{border-bottom:1px solid var(--line)}.nav-menu a{padding:14px 8px;display:block}.nav-menu .sf-nav-shop,.nav-menu .sf-nav-recruit{margin-top:8px;text-align:center}.sf-hero{grid-template-columns:48% 52%}.sf-news{grid-template-columns:110px 1fr}.sf-news-more{display:none}.sf-footer{grid-template-columns:1fr 2fr}.sf-footer p{grid-column:1/-1}.menu-backdrop{inset:80px 0 0}}
@media(min-width:1101px) and (max-width:1320px){.sf-header-inner{padding-right:10px;padding-left:10px;gap:10px}.sf-logo{min-width:160px;gap:8px;font-size:17px}.sf-logo img{width:50px;height:50px}.nav-menu ul{gap:8px}.nav-menu a{font-size:13px;font-weight:800}.nav-menu .sf-nav-shop,.nav-menu .sf-nav-recruit{padding:8px 7px}}
@media(max-width:768px){.sf-header-inner{height:66px;padding:0 16px}.sf-logo{min-width:0;font-size:16px}.sf-logo img{width:44px;height:44px}.sf-logo small{font-size:8px}.menu-btn{padding:8px 11px;font-size:13px}.nav-menu{top:70px;height:calc(100vh - 70px)}.menu-backdrop{inset:70px 0 0}.sf-hero{display:flex;flex-direction:column}.sf-hero-copy{padding:40px 20px 28px;order:2}.sf-hero h1{font-size:38px}.sf-hero-media{height:220px;order:1}.sf-search-box{max-width:none}.sf-region-grid a{min-height:64px}.sf-news{padding:28px 20px;display:block}.sf-news-heading{margin-bottom:14px;padding:0 0 10px;border-right:0;border-bottom:1px solid #555}.sf-news-list a{padding:10px 0;grid-template-columns:86px 70px 1fr;gap:7px}.sf-news-list strong{white-space:normal;line-height:1.5}.sf-seasonal{padding:52px 20px}.sf-seasonal-grid{display:block}.sf-menu-main{min-height:580px;display:block}.sf-menu-main>div{padding:25px}.sf-menu-main h3{font-size:30px}.sf-menu-sub{min-height:0;margin-top:12px;grid-template-columns:1fr}.sf-menu-sub>div{padding:24px}.sf-menu-sub img{height:240px;grid-row:1}.sf-craft{margin:0 20px 24px;display:flex;flex-direction:column}.sf-craft-copy{padding:34px 24px}.sf-craft-copy h2{font-size:34px}.sf-craft>img{height:310px;order:-1}.sf-link-rail{margin:0 20px 42px;grid-template-columns:1fr 1fr}.sf-link-rail a{min-height:118px;border-bottom:1px solid var(--line)}.sf-footer{padding:36px 20px;display:block}.sf-footer nav{margin:28px 0;grid-template-columns:1fr 1fr}.sf-footer p{white-space:normal}}
@media(max-width:430px){.sf-news-list a{grid-template-columns:82px 1fr}.sf-news-list strong{grid-column:1/-1}.sf-menu-main{min-height:520px}.sf-menu-main p{font-size:13px}.sf-link-rail{grid-template-columns:1fr}.sf-link-rail a{border-right:0}.sf-footer nav{grid-template-columns:1fr}}
@media(max-width:768px){.sf-news-more{width:max-content;min-height:44px;margin-top:14px;display:inline-flex;align-items:center;border-bottom:2px solid var(--gold);font-size:13px;font-weight:800}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.nav-menu{transition:none}}
.sf-features{max-width:var(--max);margin:auto;padding:54px 28px 64px}.sf-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.sf-feature-grid>a{min-width:0;background:#fff;border-top:4px solid var(--gold);transition:transform .2s,box-shadow .2s}.sf-feature-grid>a:hover,.sf-feature-grid>a:focus-visible{transform:translateY(-4px);box-shadow:0 14px 28px rgba(0,0,0,.1)}.sf-feature-grid img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.sf-feature-grid div{padding:22px}.sf-feature-grid span{color:var(--red);font-size:11px;font-weight:900;letter-spacing:.12em}.sf-feature-grid h3{margin:5px 0 8px;font-size:19px;line-height:1.45}.sf-feature-grid p{margin:0;color:var(--muted);font-size:13px}
.sf-feature-grid>.sf-feature-card--instagram{border-top-color:var(--gold)}
.sf-feature-grid>.sf-feature-card--instagram img{filter:saturate(1.5) contrast(1.12) brightness(.82)}
.sf-feature-grid>.sf-feature-card--kitchencar img{aspect-ratio:3/2;object-fit:cover;object-position:left center}

/* 期間限定商品が1件のときのトップ表示 */
.sf-seasonal-grid--single{display:block}
.sf-seasonal-grid--single .sf-menu-main{max-width:1000px;height:auto;min-height:0;margin:auto;display:grid;grid-template-columns:1fr;grid-template-rows:auto auto}
.sf-seasonal-grid--single .sf-menu-main img{width:100%;height:auto;min-height:0;aspect-ratio:12/5;object-fit:cover;background:#f5ead9}
.sf-seasonal-grid--single .sf-menu-main>div{position:static;padding:clamp(30px,5vw,60px);display:flex;flex-direction:column;justify-content:center;background:#111}
@media(max-width:768px){.sf-seasonal-grid--single .sf-menu-main{min-height:0;display:flex}.sf-seasonal-grid--single .sf-menu-main img{height:auto;aspect-ratio:12/5}}
@media(max-width:900px){.sf-feature-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.sf-features{padding:44px 20px 48px}.sf-feature-grid{grid-template-columns:1fr}.sf-feature-grid img{height:auto}}
.nav-menu .sf-nav-shop,.nav-menu .sf-nav-shop:visited,.nav-menu .sf-nav-shop:hover,.nav-menu .sf-nav-shop:focus-visible,.nav-menu .sf-nav-recruit,.nav-menu .sf-nav-recruit:visited,.nav-menu .sf-nav-recruit:hover,.nav-menu .sf-nav-recruit:focus-visible{color:#fff}.nav-menu .sf-nav-shop:hover,.nav-menu .sf-nav-shop:focus-visible{background:#333}.nav-menu .sf-nav-recruit:hover,.nav-menu .sf-nav-recruit:focus-visible{background:var(--red-dark)}.sf-link-rail{grid-template-columns:repeat(3,1fr)}.sf-recruit-banners{max-width:calc(var(--max) - 56px);margin:0 auto 64px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.sf-recruit-panel{min-width:0;color:#fff;background:#171717}.sf-recruit-panel>img{width:100%;height:280px;object-fit:cover}.sf-recruit-content{padding:30px}.sf-recruit-content h2{margin:0 0 14px;padding:0 0 10px 16px;border-left:4px solid var(--red);border-bottom:1px solid var(--gold);font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:30px}.sf-recruit-content p{margin:0 0 20px;color:#ddd}.sf-recruit-content a{min-height:46px;padding:11px 18px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--gold);color:#fff;font-size:13px;font-weight:800}.sf-recruit-content a:hover,.sf-recruit-content a:focus-visible{color:#111;background:var(--gold)}.sf-recruit-actions{display:flex;flex-wrap:wrap;gap:10px}
@media(max-width:768px){.sf-link-rail{grid-template-columns:1fr 1fr}.sf-recruit-banners{margin:0 20px 44px;grid-template-columns:1fr}.sf-recruit-panel>img{height:240px}.sf-recruit-content{padding:26px 22px}.sf-recruit-content h2{font-size:26px}.sf-recruit-actions{display:grid}.sf-recruit-actions a{width:100%}}
@media(max-width:430px){.sf-link-rail{grid-template-columns:1fr}}
@media(min-width:1101px){.sf-hero{height:635px;min-height:635px;grid-template-columns:32% 68%}.sf-hero-copy{min-height:0;padding:16px 30px}.sf-hero h1{font-size:clamp(38px,3.2vw,48px)}}
@media(min-width:769px){.sf-menu-main>div{padding:20px 28px;background:rgba(0,0,0,.68)}.sf-menu-main h3{margin:4px 0;font-size:clamp(26px,2.4vw,36px);line-height:1.3}.sf-menu-main p{margin:0 0 8px;font-size:13px;line-height:1.55}}
@media(min-width:769px) and (max-width:1100px){.sf-hero{min-height:0;display:flex;flex-direction:column}.sf-hero-copy{padding:32px 40px;display:grid;grid-template-columns:minmax(270px,.85fr) minmax(330px,1fr);grid-template-rows:auto auto auto auto;column-gap:28px;align-items:start;order:2}.sf-kicker{grid-column:1}.sf-hero h1{grid-column:1;font-size:clamp(36px,4.5vw,44px);line-height:1.35}.sf-hero-lead{grid-column:1;margin-top:18px}.sf-search-box{width:100%;max-width:none;grid-column:2;grid-row:1/5;align-self:center}.sf-hero-copy>.sf-text-link{grid-column:1}.sf-hero-media{height:clamp(300px,40vw,420px);order:1}.sf-hero-media video{object-position:center center}.sf-news{grid-template-columns:110px minmax(0,1fr)}.sf-news-more{width:max-content;min-height:44px;margin-top:6px;display:inline-flex;grid-column:2;justify-self:end;align-items:center;border-bottom:2px solid var(--gold);font-size:13px;font-weight:800}}
@media(min-width:769px){.sf-menu-main{display:grid;grid-template-rows:minmax(360px,1fr) auto}.sf-menu-main img{height:100%;object-fit:contain;background:#24170f}.sf-menu-main>div{position:static;padding:28px 38px;background:#111}.sf-menu-sub{grid-template-columns:.8fr 1.2fr}.sf-menu-sub img{object-fit:contain;padding:10px;background:#eef1f4}}
@media(max-width:768px){.sf-menu-main{display:flex;min-height:0;flex-direction:column}.sf-menu-main img{height:auto;aspect-ratio:3/2;object-fit:contain;background:#24170f}.sf-menu-main>div{position:static}.sf-menu-sub img{object-fit:contain;padding:10px;background:#eef1f4}}
@media(min-width:769px) and (max-width:1100px){.sf-seasonal-grid{display:block}.sf-menu-main{min-height:0;margin-bottom:14px}.sf-menu-main img{height:auto;aspect-ratio:3/2}.sf-menu-sub{min-height:300px;margin-top:14px;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr)}}
.sf-feature-visual{height:210px;padding:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;line-height:1.25}.sf-feature-visual span{font-size:12px;font-weight:800;letter-spacing:.06em}.sf-feature-visual strong{margin-top:10px;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(25px,2.2vw,34px);font-weight:800}.sf-feature-visual b{margin-top:8px;font-size:16px;letter-spacing:.12em}.sf-feature-visual--instagram{color:#fff;background:linear-gradient(120deg,#ff785e 0%,#ed2d6f 48%,#6d36c7 100%)}.sf-feature-visual--instagram strong{font-family:Georgia,"Times New Roman",serif;font-size:clamp(30px,2.6vw,40px);font-weight:500;letter-spacing:.16em}.sf-feature-visual--instagram span,.sf-feature-visual--instagram b{color:#fff}.sf-feature-visual--summer{color:#07538d;background:#f8f0d9;border:8px solid #eee2bf;outline:2px solid #caa64b;outline-offset:-12px}.sf-feature-visual--summer span{color:#171717;font-size:11px}.sf-feature-visual--summer strong{font-size:clamp(28px,2.6vw,40px);text-shadow:1px 1px 0 #d1a73b}.sf-feature-visual--furusato{color:#171717;background:#fff8e8;border-top:8px solid #262626;border-bottom:8px solid #e06b2f}.sf-feature-visual--furusato strong{max-width:100%;font-size:clamp(19px,1.65vw,25px);line-height:1.5}.sf-feature-visual--furusato b{color:#d95b26;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(17px,1.45vw,22px);letter-spacing:.02em}
@media(max-width:560px){.sf-feature-visual{height:230px}.sf-feature-visual strong{font-size:30px}}
.sf-feature-visual--summer strong{font-size:clamp(26px,2.1vw,32px);white-space:nowrap}.sf-feature-visual--furusato strong{font-size:clamp(18px,1.35vw,20px);white-space:nowrap}
@media(min-width:1101px){.sf-seasonal{padding-top:54px;padding-bottom:46px}.sf-seasonal-grid{grid-template-columns:1fr 1fr;grid-template-rows:292px 292px}.sf-menu-main{height:598px;min-height:598px;grid-template-rows:390px 208px}.sf-menu-main img{min-height:0}.sf-menu-main>div{min-height:0;padding:22px 30px}.sf-menu-sub{height:292px;min-height:292px}.sf-menu-sub>div{min-height:0;padding:22px 26px}.sf-menu-sub img{min-height:0;padding:8px}}
.sf-feature-visual{position:relative;isolation:isolate;overflow:hidden}.sf-feature-visual>*{position:relative;z-index:1}.sf-feature-visual--instagram{border:7px solid rgba(255,255,255,.2);box-shadow:inset 0 0 0 2px rgba(255,255,255,.72)}.sf-feature-visual--instagram::before{content:"Follow us!";position:absolute;z-index:1;top:15px;left:18px;color:#fff;font-family:"Segoe Script","Brush Script MT",cursive;font-size:20px;font-weight:600;transform:rotate(-6deg)}.sf-feature-visual--instagram::after{content:"";position:absolute;z-index:0;width:170px;height:170px;right:-45px;bottom:-80px;border:20px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:-82px -55px 0 -48px rgba(255,255,255,.2),-132px 15px 0 -58px rgba(255,255,255,.16)}.sf-feature-visual--instagram span{margin-top:17px}.sf-feature-visual--instagram strong{padding:5px 0;border-top:1px solid rgba(255,255,255,.6);border-bottom:1px solid rgba(255,255,255,.6)}.sf-feature-visual--summer{background:radial-gradient(circle at 50% 48%,rgba(220,181,68,.2),transparent 48%),repeating-linear-gradient(0deg,rgba(117,87,34,.035) 0 1px,transparent 1px 4px),#f8f0d9}.sf-feature-visual--summer::before,.sf-feature-visual--summer::after{content:"";position:absolute;top:50%;width:54px;height:1px;background:#b78a27;box-shadow:0 -5px 0 rgba(183,138,39,.45),0 5px 0 rgba(183,138,39,.45)}.sf-feature-visual--summer::before{left:18px}.sf-feature-visual--summer::after{right:18px}.sf-feature-visual--summer strong{margin-top:2px;display:flex;align-items:center;gap:5px}.sf-feature-visual--summer strong small{font-size:20px;font-weight:800}.sf-feature-visual--summer strong em{color:#07538d;font-size:64px;font-style:normal;line-height:.9;text-shadow:2px 2px 0 #d1a73b}.sf-feature-visual--summer b{margin-top:2px;color:#99701c;font-size:10px;letter-spacing:.28em}.sf-feature-visual--furusato{background:repeating-linear-gradient(0deg,rgba(119,77,22,.025) 0 1px,transparent 1px 4px),#fff8e8;box-shadow:inset 0 0 0 2px #d8c8a7}.sf-feature-visual--furusato::after{content:"";position:absolute;right:-45px;bottom:-55px;width:150px;height:150px;border:18px solid rgba(32,169,59,.08);border-radius:50%}.sf-feature-visual--furusato span{padding:4px 12px;color:#fff;background:#239c3b;border-radius:999px;font-size:10px;letter-spacing:.1em}.sf-feature-visual--furusato strong{margin-top:9px;padding-bottom:6px;border-bottom:2px solid #242424}.sf-feature-visual--furusato b{padding:6px 8px 3px;border-bottom:3px double #d95b26}
@media(max-width:560px){.sf-feature-visual--instagram::before{font-size:18px}.sf-feature-visual--summer strong small{font-size:22px}.sf-feature-visual--summer strong em{font-size:68px}.sf-feature-visual--furusato strong{font-size:19px}}
@media(min-width:1101px){.sf-menu-sub{grid-template-columns:minmax(215px,235px) minmax(0,1fr)}.sf-menu-sub>div{padding:20px 22px}.sf-menu-sub h3{font-size:21px;line-height:1.5}}
.sf-hero h1{line-height:1.22;text-align:center}.sf-hero-lead{margin-top:20px;line-height:1.45;text-align:center}
body{line-height:1.48}.sf-news-more{font-size:15px;font-weight:900}.sf-news-list a{font-size:14px}.sf-news-list strong{font-size:14px;line-height:1.48}.sf-news-list a,.sf-menu-main p,.sf-menu-sub p,.sf-craft li p,.sf-feature-grid p,.sf-link-rail span,.sf-recruit-content p{line-height:1.48}
@media(min-width:769px){.sf-craft{grid-template-columns:1fr 1fr}.sf-craft>img{grid-column:1;grid-row:1}.sf-craft-copy{grid-column:2;grid-row:1}}
.nav-menu .sf-nav-shop,.nav-menu .sf-nav-recruit{padding:9px 15px;border:2px solid;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease}.nav-menu .sf-nav-shop{border-color:var(--ink)}.nav-menu .sf-nav-recruit{border-color:var(--red)}.nav-menu .sf-nav-shop:hover,.nav-menu .sf-nav-shop:focus-visible,.nav-menu .sf-nav-recruit:hover,.nav-menu .sf-nav-recruit:focus-visible{transform:translateY(-3px);background:#fff;box-shadow:0 9px 18px rgba(0,0,0,.18)}.nav-menu .sf-nav-shop:hover,.nav-menu .sf-nav-shop:focus-visible{color:var(--ink)}.nav-menu .sf-nav-recruit:hover,.nav-menu .sf-nav-recruit:focus-visible{color:var(--red)}
@media(prefers-reduced-motion:reduce){.nav-menu .sf-nav-shop,.nav-menu .sf-nav-recruit{transition:none}.nav-menu .sf-nav-shop:hover,.nav-menu .sf-nav-shop:focus-visible,.nav-menu .sf-nav-recruit:hover,.nav-menu .sf-nav-recruit:focus-visible{transform:none}}
/* トップページ共通インタラクションルール */
:where(a,button):focus-visible{outline:3px solid #005fcc;outline-offset:3px}.sf-current-button{border:2px solid var(--red);transition:transform .2s ease,box-shadow .2s ease,color .2s ease,background-color .2s ease}.sf-current-button:hover,.sf-current-button:focus-visible{transform:translateY(-2px);color:var(--red);background:#fff;box-shadow:0 8px 16px rgba(152,23,34,.2)}.sf-region-grid a{transition:color .18s ease,background-color .18s ease,border-color .18s ease}.sf-region-grid a:hover,.sf-region-grid a:focus-visible{border-color:var(--red);color:#fff;background:var(--red)}.sf-news-list a{transition:color .18s ease,background-color .18s ease}.sf-news-list a:hover,.sf-news-list a:focus-visible{color:#fff;background:#292929}.sf-news-list a:hover strong,.sf-news-list a:focus-visible strong{color:var(--gold)}.sf-news-more,.sf-text-link,.sf-dark-link{transition:color .18s ease,border-color .18s ease}.sf-news-more::after,.sf-text-link::after,.sf-dark-link::after{content:"→";display:inline-block;margin-left:7px;transition:transform .18s ease}.sf-news-more:hover::after,.sf-news-more:focus-visible::after,.sf-text-link:hover::after,.sf-text-link:focus-visible::after,.sf-dark-link:hover::after,.sf-dark-link:focus-visible::after{transform:translateX(4px)}.sf-menu-main,.sf-menu-sub,.sf-link-rail a{transition:transform .2s ease,box-shadow .2s ease}.sf-menu-main:hover,.sf-menu-main:focus-visible,.sf-menu-sub:hover,.sf-menu-sub:focus-visible,.sf-link-rail a:hover,.sf-link-rail a:focus-visible{transform:translateY(-4px);box-shadow:0 14px 28px rgba(0,0,0,.12)}.sf-menu-main:hover strong,.sf-menu-main:focus-visible strong,.sf-menu-sub:hover strong,.sf-menu-sub:focus-visible strong{color:var(--ink);background:var(--gold)}.sf-menu-main strong,.sf-menu-sub strong{display:inline-block;width:max-content;padding:3px 5px;transition:color .18s ease,background-color .18s ease}.sf-footer nav a:hover,.sf-footer nav a:focus-visible{color:var(--gold);text-decoration:underline;text-underline-offset:4px}.sf-recruit-content a{transition:transform .2s ease,color .2s ease,background-color .2s ease,box-shadow .2s ease}.sf-recruit-content a:hover,.sf-recruit-content a:focus-visible{transform:translateY(-2px);box-shadow:0 8px 16px rgba(0,0,0,.18)}
@media(hover:none){.sf-current-button:hover,.sf-menu-main:hover,.sf-menu-sub:hover,.sf-link-rail a:hover,.sf-feature-grid>a:hover,.sf-recruit-content a:hover{transform:none;box-shadow:none}.sf-current-button:active{color:var(--red);background:#fff}.sf-region-grid a:active{color:#fff;background:var(--red)}}
@media(prefers-reduced-motion:reduce){.sf-current-button,.sf-news-list a,.sf-news-more::after,.sf-text-link::after,.sf-dark-link::after,.sf-menu-main,.sf-menu-sub,.sf-link-rail a,.sf-feature-grid>a,.sf-recruit-content a{transition:none}.sf-current-button:hover,.sf-current-button:focus-visible,.sf-menu-main:hover,.sf-menu-main:focus-visible,.sf-menu-sub:hover,.sf-menu-sub:focus-visible,.sf-link-rail a:hover,.sf-link-rail a:focus-visible,.sf-feature-grid>a:hover,.sf-feature-grid>a:focus-visible,.sf-recruit-content a:hover,.sf-recruit-content a:focus-visible,.sf-news-more:hover::after,.sf-news-more:focus-visible::after,.sf-text-link:hover::after,.sf-text-link:focus-visible::after,.sf-dark-link:hover::after,.sf-dark-link:focus-visible::after{transform:none}}

/* 横綱のこだわり：期間限定メニューと揃えたカードリンク */
.sf-craft{transition:transform .2s ease,box-shadow .2s ease}
.sf-craft:hover,.sf-craft:focus-visible{transform:translateY(-4px);box-shadow:0 14px 28px rgba(0,0,0,.18)}
.sf-craft-menu-link{width:max-content;min-height:44px;margin-top:20px;padding:3px 5px;display:inline-flex;align-items:center;border-bottom:2px solid var(--gold);color:#fff;font-size:13px;font-weight:900;line-height:1.4;transition:color .18s ease,background-color .18s ease}
.sf-craft:hover .sf-craft-menu-link,.sf-craft:focus-visible .sf-craft-menu-link{color:var(--ink);background:var(--gold)}
@media(hover:none){.sf-craft:hover{transform:none;box-shadow:none}}
@media(prefers-reduced-motion:reduce){.sf-craft,.sf-craft-menu-link{transition:none}.sf-craft:hover,.sf-craft:focus-visible{transform:none}}

/* 店舗一覧・お知らせ一覧：矢印なし、背景色で選択状態を表示 */
.sf-news-more,.sf-text-link{width:max-content;min-height:44px;padding:3px 5px;display:inline-flex;align-items:center;border-bottom:2px solid var(--gold);transition:color .18s ease,background-color .18s ease}
.sf-news-more{justify-self:end}
.sf-news-more::after,.sf-text-link::after{content:none}
.sf-news-more:hover,.sf-news-more:focus-visible,.sf-text-link:hover,.sf-text-link:focus-visible{color:var(--ink);background:var(--gold)}

/* 横綱のこだわり：PCで反応が分かる左右独立カード */
.sf-craft{gap:14px;color:inherit;background:transparent;transition:none}
.sf-craft:hover,.sf-craft:focus-visible{transform:none;box-shadow:none}
.sf-craft-card{min-width:0;color:#fff;background:#151515;transition:transform .2s ease,box-shadow .2s ease}
.sf-craft-card:hover,.sf-craft-card:focus-visible{transform:translateY(-4px);box-shadow:0 14px 28px rgba(0,0,0,.18)}
.sf-craft-visual{position:relative;overflow:hidden;background:#151515}
.sf-craft-visual img{width:100%;height:100%;object-fit:cover}
.sf-craft-card-link{width:max-content;min-height:44px;margin-top:20px;padding:3px 5px;display:inline-flex;align-items:center;border-bottom:2px solid var(--gold);color:#fff;font-size:13px;font-weight:900;line-height:1.4;transition:color .18s ease,background-color .18s ease}
.sf-craft-visual .sf-craft-card-link{position:absolute;right:28px;bottom:28px;left:28px;width:max-content;margin:0;color:var(--ink);background:rgba(255,255,255,.96)}
.sf-craft-card:hover .sf-craft-card-link,.sf-craft-card:focus-visible .sf-craft-card-link{color:var(--ink);background:var(--gold)}
@media(min-width:769px){.sf-craft{grid-template-columns:1fr 1fr}.sf-craft-visual{grid-column:1;grid-row:1}.sf-craft-copy{grid-column:2;grid-row:1}}
@media(max-width:768px){.sf-craft{gap:12px}.sf-craft-visual{height:310px;order:0}.sf-craft-copy{order:1}}
@media(hover:none){.sf-craft-card:hover{transform:none;box-shadow:none}}
@media(prefers-reduced-motion:reduce){.sf-craft-card,.sf-craft-card-link{transition:none}.sf-craft-card:hover,.sf-craft-card:focus-visible{transform:none}}

/* 大きなリンク枠：上辺を看板イエローで統一 */
.sf-link-rail a{border-top:4px solid var(--gold)}

/* 店舗検索：地域と全店舗一覧を同じ枠内へ集約 */
.sf-region-grid .sf-region-all{grid-column:1/-1;min-height:56px;border:2px solid var(--red);color:var(--red);background:#fff;transition:transform .2s ease,box-shadow .2s ease,color .18s ease,background-color .18s ease,border-color .18s ease}
.sf-region-grid .sf-region-all:hover,.sf-region-grid .sf-region-all:focus-visible{transform:translateY(-2px);border-color:var(--gold);color:var(--ink);background:var(--gold);box-shadow:0 8px 16px rgba(0,0,0,.14)}
@media(hover:none){.sf-region-grid .sf-region-all:hover{transform:none;box-shadow:none}}
@media(prefers-reduced-motion:reduce){.sf-region-grid .sf-region-all{transition:none}.sf-region-grid .sf-region-all:hover,.sf-region-grid .sf-region-all:focus-visible{transform:none}}

/* 関連情報：連結した帯から独立カードへ変更 */
.sf-link-rail{width:calc(100% - 56px);gap:14px;border-top:0;border-bottom:0}
.sf-link-rail a{border:1px solid var(--line);border-top:4px solid var(--gold);background:#fff}
.sf-link-rail a:last-child{border-right:1px solid var(--line)}
@media(max-width:768px){.sf-link-rail{width:auto}}
.sf-region-grid .sf-region-osaka{padding-right:6px;padding-left:6px;font-size:.875rem;white-space:nowrap}

/* ページ内リンク：固定ヘッダーで期間限定見出しが隠れない位置に補正 */
.sf-seasonal{scroll-margin-top:44px}
@media(max-width:1100px){.sf-seasonal{scroll-margin-top:16px}}
@media(max-width:768px){.sf-seasonal{scroll-margin-top:24px}}

/* ヘッダー：現在ページを金色線で明示 */
.sf-header .nav-menu a.active-nav{position:relative;color:var(--red)}
.sf-header .nav-menu a.active-nav::after{content:"";position:absolute;right:0;bottom:-12px;left:0;height:3px;background:var(--gold)}
.sf-current-button{display:flex;align-items:center;justify-content:center;text-align:center}
.sf-menu-direct{min-height:44px;margin-top:8px;display:flex;align-items:center;justify-content:center;border:2px solid var(--red);color:var(--red);background:#fff;font-weight:900;text-align:center;transition:color .18s ease,background-color .18s ease}
.sf-menu-direct:hover,.sf-menu-direct:focus-visible{color:#111;background:var(--gold)}
.sf-hero-shortcuts{margin-top:8px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sf-hero-shortcuts a{min-height:44px;padding:8px 10px;display:flex;align-items:center;justify-content:center;color:var(--ink);background:#f7f2e8;border-bottom:2px solid var(--gold);font-size:13px;font-weight:800;text-align:center;transition:color .18s ease,background-color .18s ease}
.sf-hero-shortcuts a:hover,.sf-hero-shortcuts a:focus-visible{color:#111;background:var(--gold)}
.sf-news,.sf-seasonal{scroll-margin-top:100px}
@media(max-width:1100px){.sf-header .nav-menu a.active-nav::after{right:8px;bottom:6px;left:8px}}

/* タブレット・スマートフォン：下層ページと同じヘッダーメニューへ統一 */
@media(max-width:1100px){
  .sf-header-inner{position:relative}
  .sf-header .menu-btn{position:absolute;z-index:52;top:0;right:16px;width:52px;height:76px;margin:0;padding:0;display:flex;align-items:center;justify-content:center;border:0;background:#fff;font-size:0;cursor:pointer}
  .sf-header .menu-btn span,.sf-header .menu-btn span::before,.sf-header .menu-btn span::after{content:"";position:absolute;display:block;width:28px;height:3px;border-radius:3px;background:var(--ink);transition:transform .25s,background .25s}
  .sf-header .menu-btn span::before{transform:translateY(-8px)}
  .sf-header .menu-btn span::after{transform:translateY(8px)}
  .sf-header .menu-btn[aria-expanded="true"] span{background:transparent}
  .sf-header .menu-btn[aria-expanded="true"] span::before{transform:rotate(45deg)}
  .sf-header .menu-btn[aria-expanded="true"] span::after{transform:rotate(-45deg)}
  .sf-header .nav-menu li{width:100%}
  .sf-header .nav-menu a{display:inline-block;padding:15px 8px}
  .sf-header .nav-menu .sf-nav-shop,.sf-header .nav-menu .sf-nav-recruit{display:block}
  .sf-header .nav-menu a.active-nav::after{right:8px;bottom:0;left:8px}
}
@media(max-width:768px){
  .sf-header .menu-btn{right:8px;width:50px;height:66px}
}

@media(prefers-reduced-motion:reduce){
  .sf-menu-direct,.sf-hero-shortcuts a{transition:none}
  .sf-header .menu-btn span,.sf-header .menu-btn span::before,.sf-header .menu-btn span::after{transition:none}
}

/* PC：下層ページと同じヘッダーメニューへ統一 */
@media(min-width:1101px){
  .sf-header .nav-menu a:not(.sf-nav-shop):not(.sf-nav-recruit){position:relative;padding:12px 0;font-size:.875rem;font-weight:700;white-space:nowrap}
  .sf-header .nav-menu a:not(.sf-nav-shop):not(.sf-nav-recruit)::after{content:"";position:absolute;right:auto;bottom:0;left:0;width:0;height:3px;background:var(--gold);transition:width .3s ease}
  .sf-header .nav-menu a:not(.sf-nav-shop):not(.sf-nav-recruit):hover,
  .sf-header .nav-menu a:not(.sf-nav-shop):not(.sf-nav-recruit):focus-visible,
  .sf-header .nav-menu a.active-nav{color:var(--red)}
  .sf-header .nav-menu a:not(.sf-nav-shop):not(.sf-nav-recruit):hover::after,
  .sf-header .nav-menu a:not(.sf-nav-shop):not(.sf-nav-recruit):focus-visible::after,
  .sf-header .nav-menu a.active-nav:not(.sf-nav-shop):not(.sf-nav-recruit)::after{width:100%}
}

/* トップのレスポンシブヘッダーを下層ページの実装値へ完全統一 */
@media(max-width:1100px){
  .sf-header{z-index:1000}
  .sf-header .menu-btn{z-index:1200}
  .sf-header .nav-menu{position:fixed;z-index:1050;top:80px;right:-100%;width:min(380px,88vw);max-width:none;height:calc(100vh - 80px);margin-left:auto;padding:24px;background:#fff;box-shadow:-10px 0 30px rgba(0,0,0,.14);overflow-y:auto;transform:none;transition:right .25s}
  .sf-header .nav-menu.is-open{right:0;transform:none}
  .sf-header .nav-menu ul{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:0}
  .sf-header .nav-menu li{width:100%;border-bottom:0}
  .sf-header .nav-menu .sf-nav-shop,.sf-header .nav-menu .sf-nav-recruit{display:inline-block;margin-top:8px;padding:9px 15px;text-align:center}
  .menu-backdrop{z-index:900;inset:80px 0 0;background:rgba(0,0,0,.55)}
}
@media(max-width:992px){
  .sf-header .nav-menu li{border-bottom:1px solid var(--line)}
}
@media(max-width:768px){
  .sf-header .nav-menu{top:70px;height:calc(100vh - 70px)}
}

/* トップ選択中：環境差の出ない背景線で金色線を確実に表示 */
.sf-header .nav-menu a.active-nav{
  background-image:linear-gradient(var(--gold),var(--gold));
  background-repeat:no-repeat;
  background-position:left bottom;
  background-size:100% 3px;
}
.sf-header .nav-menu a.active-nav::after{display:none}
@media(max-width:1100px){
  .sf-header .nav-menu a.active-nav{background-position:8px bottom;background-size:calc(100% - 16px) 3px}
}

/* トップ選択中：文字要素へ実線を付け、常に表示する */
/* タブレット・スマホ：他ページと同じホバー／フォーカス線 */
@media(max-width:1100px){
  .sf-header .nav-menu a:not(.active-nav):not(.sf-nav-shop):not(.sf-nav-recruit):hover,
  .sf-header .nav-menu a:not(.active-nav):not(.sf-nav-shop):not(.sf-nav-recruit):focus-visible{
    color:var(--red);
    background-image:linear-gradient(var(--gold),var(--gold));
    background-repeat:no-repeat;
    background-position:8px bottom;
    background-size:calc(100% - 16px) 3px;
  }
}

/* 期間限定1件：黒い案内面を左、商品画像を右にしたタイルレイアウト */
.sf-seasonal-grid--single{display:block}
.sf-seasonal-grid--single .sf-menu-main{
  width:100%;
  max-width:none;
  height:auto;
  min-height:0;
  margin:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  grid-template-rows:1fr;
}
.sf-seasonal-grid--single .sf-menu-main img{
  width:100%;
  height:auto;
  min-height:0;
  aspect-ratio:640/470;
  align-self:center;
  object-fit:cover;
  grid-column:2;
  grid-row:1;
}
.sf-seasonal-grid--single .sf-menu-main>div{
  position:static;
  min-height:0;
  padding:30px 34px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  grid-column:1;
  grid-row:1;
}
@media(max-width:1100px){
  .sf-seasonal-grid--single .sf-menu-main{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  }
}
@media(max-width:768px){
  .sf-seasonal-grid--single .sf-menu-main{
    display:flex;
    flex-direction:column;
  }
  .sf-seasonal-grid--single .sf-menu-main img{
    height:auto;
    aspect-ratio:640/470;
    order:2;
  }
  .sf-seasonal-grid--single .sf-menu-main>div{
    padding:30px 22px;
    order:1;
  }
}

/* 中間幅：PCナビを読みやすい太さと間隔で統一 */
@media(min-width:1101px) and (max-width:1320px){
  .sf-header .nav-menu a:not(.sf-nav-shop):not(.sf-nav-recruit){font-size:13px;font-weight:800}
}

/* 全ページ共通ヘッダー：site3/contact/index.html と同じ位置基準 */
@media(min-width:1321px){
  .sf-header-inner{width:min(100%,1440px);max-width:1440px;height:88px;padding:0 36px;display:grid;grid-template-columns:250px minmax(0,1fr);gap:36px}
  .sf-logo{width:244px;min-width:0}
  .sf-header-inner>.nav-menu{width:100%;margin-left:0}
  .sf-header .nav-menu ul{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:0}
  .sf-header .nav-menu li{min-width:0;margin:0}
  .sf-header .nav-menu a{min-height:88px;padding:10px 5px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:900;line-height:1.48;text-align:center}
  .sf-header .nav-menu a:not(.sf-nav-shop):not(.sf-nav-recruit){padding:10px 5px;font-size:14px;font-weight:900}
  .sf-header .nav-menu .sf-nav-shop,.sf-header .nav-menu .sf-nav-recruit{min-height:46px;margin:21px 3px;padding:8px 15px}
}
@media(min-width:1101px) and (max-width:1320px){
  .sf-header-inner{width:min(100%,1440px);max-width:1440px;height:88px;padding:0 10px;display:grid;grid-template-columns:190px minmax(0,1fr);gap:10px}
  .sf-logo{width:190px;min-width:0}
  .sf-header-inner>.nav-menu{width:100%;margin-left:0}
  .sf-header .nav-menu ul{display:flex;align-items:center;justify-content:flex-end;gap:8px}
  .sf-header .nav-menu li{flex:0 0 auto;margin:0}
  .sf-header .nav-menu a{min-height:88px;padding:10px 5px;display:flex;align-items:center;justify-content:center;line-height:1.35;text-align:center}
  .sf-header .nav-menu a:not(.sf-nav-shop):not(.sf-nav-recruit){padding:10px 5px}
  .sf-header .nav-menu .sf-nav-shop,.sf-header .nav-menu .sf-nav-recruit{min-height:46px;margin:0 3px;padding:8px 15px}
}
@media(max-width:1100px){.sf-header-inner{display:flex}}

/* 通販・採用ボタン：マウス／キーボード選択時の動き */
.sf-header .nav-menu .sf-nav-shop,.sf-header .nav-menu .sf-nav-recruit{transition:transform .2s ease,box-shadow .2s ease,color .18s ease,background-color .18s ease}
.sf-header .nav-menu .sf-nav-shop:hover,.sf-header .nav-menu .sf-nav-shop:focus-visible,.sf-header .nav-menu .sf-nav-recruit:hover,.sf-header .nav-menu .sf-nav-recruit:focus-visible{transform:translateY(-3px);box-shadow:0 9px 18px rgba(0,0,0,.2)}
@media(hover:none){.sf-header .nav-menu .sf-nav-shop:hover,.sf-header .nav-menu .sf-nav-recruit:hover{transform:none;box-shadow:none}}
@media(prefers-reduced-motion:reduce){.sf-header .nav-menu .sf-nav-shop,.sf-header .nav-menu .sf-nav-recruit{transition:none}.sf-header .nav-menu .sf-nav-shop:hover,.sf-header .nav-menu .sf-nav-shop:focus-visible,.sf-header .nav-menu .sf-nav-recruit:hover,.sf-header .nav-menu .sf-nav-recruit:focus-visible{transform:none}}
