/* =========================================================
   コーポレートテーマ（コロワイド風）
   style.css の上に重ねて読み込む。外せば元のデザインに戻る。
   ========================================================= */
:root{
  --ink:#191919;
  --sub:#666;
  --line:#e5e5e5;
  --bg-soft:#f4f4f4;
  --side:200px;
}
body{font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN",sans-serif;letter-spacing:.04em;color:var(--ink)}

/* ---------- 文字の太さを落ち着かせる ---------- */
h1,h2,h3,h4,.lead,.store-name,.store-catch,.philo-main,.team-copy,.vgrid h3,.mv p,.job-type,
.reason h3,.point h3,.b-txt h3,.msg-body h2,.message h2,.goal h3,.h2-catch,.rc .rh h1,.rc .ceo h2,
.big-cta h2,.yp-menu li,.jpL,.co,.shop-name,.fc-model h3,.support h3,.flow li strong,.want h3,.place h3{font-weight:700 !important}
.lead{font-size:clamp(20px,2.4vw,28px)}

/* ---------- 見出し：英字を大きく、日本語を小さく ---------- */
.ttl{gap:14px;align-items:baseline;margin-bottom:40px}
.ttl .en{order:-1;font-family:"Montserrat",sans-serif;font-weight:600;font-size:clamp(30px,3.6vw,44px);letter-spacing:.01em;color:var(--ink);text-transform:capitalize}
.ttl h2{font-size:13px !important;font-weight:500 !important;color:var(--sub);letter-spacing:.1em}
.philo .ttl .en,.history .ttl .en,.road .ttl .en,.recruit .ttl .en{color:#fff}
.philo .ttl h2,.history .ttl h2,.road .ttl h2,.recruit .ttl h2{color:#aaa !important}

/* ---------- 遊びの要素を控えめに ---------- */
.band,.band+.band,.store-band{transform:none !important;width:100% !important;margin-left:0 !important;background:transparent;padding:0}
.band .track figure{border-radius:0}
.hero-photo figure{transform:none;border-radius:0;box-shadow:none}
.hero-photo .sticker{border-radius:0;transform:none;width:auto;height:auto;padding:10px 16px;left:0;bottom:0;font-size:12px;line-height:1.5}
.free span,.free span:nth-child(even){transform:none;border-radius:2px;font-size:13px;font-weight:700;padding:7px 14px;background:#fff;color:var(--ink);border:1px solid var(--line)}
.hot{animation:none;border-radius:2px}
.pill,.more,.store-btns .pill{border-radius:2px}
.more{background:var(--ink);padding:15px 30px 15px 34px}
.more:hover{box-shadow:none;transform:none;background:var(--accent)}
.more i{background:transparent;color:#fff;width:auto}
.tags span{border-radius:2px}
.shop-links a{border-radius:2px}
.job,.reason,.point figure,.dish,.place,.fc-model,.support div,.want>div,.mv div,.vgrid,.define,.brand,.other,.job-gallery figure,.space-photo,.ceo-photo,.msg-imgs figure,.person figure{border-radius:0 !important}
.job{border-top-width:3px}
.to-top{border-radius:0}
.pickup{border-radius:0}
.reveal{transform:translateY(20px)}

/* ---------- デスクトップ：左の縦型メニュー ---------- */
@media (min-width:1025px){
  header#hd{inset:0 auto 0 0;width:var(--side);background:#fff;border-right:1px solid var(--line);border-bottom:0;backdrop-filter:none}
  header#hd .hd{flex-direction:column;align-items:stretch;height:100%;padding:36px 24px 28px;gap:0}
  header#hd .brand-logo{align-self:center}
  header#hd .brand-logo img{height:38px}
  header#hd .gnav{flex-direction:column;gap:0;margin:auto 0}
  header#hd .gnav a{flex-direction:row;justify-content:center;font-size:13px;font-weight:500;padding:13px 0}
  header#hd .gnav a small{display:none}
  header#hd .gnav a:hover{color:var(--accent)}
  header#hd .hd-btns{margin:0;flex-direction:column;gap:0;border-top:1px solid var(--line)}
  header#hd .hd-btns .pill{background:transparent;color:var(--ink);font-weight:500;font-size:13px;padding:14px 0;border-bottom:1px solid var(--line)}
  header#hd .hd-btns .pill:hover{color:var(--accent);transform:none}
  main,footer{margin-left:var(--side)}
  .rc .fixed-apply{left:calc(var(--side) + 16px)}
}

/* ---------- トップ：左右分割の最初の画面 ---------- */
.hero2{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;background:#fff}
.h2-photo{position:sticky;top:0;height:100vh;overflow:hidden}
.h2-photo img{width:100%;height:100%;object-fit:cover}
.h2-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.45))}
.h2-word{position:absolute;left:8%;bottom:14%;z-index:1;color:#fff}
.h2-word span{display:block;font-family:"Montserrat",sans-serif;font-weight:600;font-size:clamp(64px,8.5vw,128px);line-height:1;letter-spacing:.01em}
.h2-word small{display:block;font-size:14px;font-weight:700;margin-top:10px;letter-spacing:.08em}
.h2-body{padding:clamp(60px,9vh,110px) clamp(24px,5vw,72px) 80px;display:flex;flex-direction:column;justify-content:center}
.h2-catch{font-size:clamp(28px,3vw,40px);line-height:1.5;letter-spacing:.04em}
.h2-catch em{font-style:normal;color:var(--accent)}
.h2-text{margin-top:22px;font-size:14.5px;line-height:2.1;color:#333}
.h2-tiles{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:34px}
.h2-tiles a{position:relative;display:block;aspect-ratio:16/8;overflow:hidden}
.h2-tiles img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.h2-tiles a:hover img{transform:scale(1.05)}
.h2-tiles span{position:absolute;right:0;bottom:0;background:rgba(255,255,255,.95);color:var(--ink);font-size:13px;font-weight:700;padding:8px 14px}
.h2-tiles span::after{content:" →";color:var(--accent)}
.h2-pick{margin-top:44px;background:var(--bg-soft);padding:26px 26px 14px}
.h2-pick-ttl{font-family:"Montserrat",sans-serif;font-weight:600;font-size:28px;line-height:1;margin-bottom:10px}
.h2-pick-ttl small{font-family:"Noto Sans JP";font-size:12px;font-weight:500;color:var(--sub);margin-left:10px}
.h2-pick a{display:grid;grid-template-columns:86px 58px 1fr;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid #ddd;font-size:13.5px}
.h2-pick a:last-child{border-bottom:0}
.h2-pick time{font-family:"Montserrat",sans-serif;color:var(--sub);font-size:12.5px}
.h2-pick .cat{border:1px solid var(--accent);color:var(--accent);font-size:11px;text-align:center;padding:1px 0}
.h2-pick a:hover span:last-child{color:var(--accent)}
@media (max-width:1024px){
  .hero2{grid-template-columns:1fr;padding-top:72px}
  .h2-photo{position:relative;height:56vh}
}
@media (max-width:760px){
  .h2-photo{height:48vh}
  .h2-pick a{grid-template-columns:80px 1fr;row-gap:4px}
  .h2-pick a span:last-child{grid-column:1/-1}
}

/* ---------- セクションの区切りを白／グレーで ---------- */
.message{background:#fff}
.message .bg-word{color:rgba(0,0,0,.03)}
.menu-sec,.jobs,.recruit+.jobs{background:var(--bg-soft)}
.news-list a{padding:20px 6px}
.news-list .cat{border-radius:0}

/* ---------- 店舗ページ・採用ページの最初の画面 ---------- */
.store-hero{padding-top:90px}
.store-label{letter-spacing:.2em}
.rc .rh-mosaic{transform:none;inset:0;opacity:.35}
.rc .rh-col img{border-radius:0}
.rc .rh h1{font-size:clamp(40px,6vw,84px)}
.ttl .en{display:inline-block;text-transform:lowercase}
.ttl .en::first-letter{text-transform:uppercase}

/* ---------- 最初の画面：動画風スライド ---------- */
.h2-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.reel{position:absolute;inset:0;overflow:hidden;background:#111}
.reel figure{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1.4s ease}
.reel figure.on{opacity:1}
.reel figure img{width:100%;height:100%;object-fit:cover;transform:scale(1.02)}
.reel figure.on img{animation:kb 7s ease-out forwards}
.reel figure:nth-child(even).on img{animation-name:kb2}
@keyframes kb{from{transform:scale(1.02) translate(0,0)}to{transform:scale(1.16) translate(-2%,-1.5%)}}
@keyframes kb2{from{transform:scale(1.16) translate(2%,1%)}to{transform:scale(1.03) translate(0,0)}}
.reel figcaption{position:absolute;right:20px;top:22px;z-index:2;color:#fff;font-size:12px;font-weight:700;letter-spacing:.1em;background:rgba(0,0,0,.35);padding:6px 12px;opacity:0;transform:translateY(-6px);transition:all .8s .5s}
.reel figure.on figcaption{opacity:1;transform:none}
.reel-bar{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(255,255,255,.2);z-index:3}
.reel-bar i{display:block;height:100%;width:0;background:var(--accent)}
.h2-photo::after{z-index:1}
.h2-word{z-index:2}
@media (prefers-reduced-motion:reduce){.reel figure.on img{animation:none}}

/* ---------- 店舗ページ：Instagramリール ---------- */
.ig-sec{background:var(--bg-soft);padding:80px 0}
.ig-lead{font-size:14px;color:var(--sub);margin:-18px 0 26px}
.ig-lead a{color:var(--accent);font-weight:700;margin-left:10px}
.ig-reels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
.ig-reels .instagram-media,.ig-reels iframe{min-width:0 !important;width:100% !important;max-width:100% !important;margin:0 !important;border-radius:0 !important}
.ig-reels blockquote.instagram-media{background:#fff;padding:40px 16px;text-align:center;font-size:13px}
@media (max-width:900px){
  .ig-reels{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:8px}
  .ig-reels>*{flex:0 0 82%;scroll-snap-align:start}
}
.ig-reels{overflow:hidden}
.ig-reels>*{max-width:100%;overflow:hidden}
.fc-desc{font-size:15px;line-height:2;margin:4px 0 22px;max-width:860px}
.place .go{margin-top:12px;font-size:13px;font-weight:700;color:var(--accent)}
.msg-links{margin-top:0}
.msg-links a{aspect-ratio:16/7}
.msg-links span{font-size:15px;padding:12px 20px}
.rc .place,.place{color:inherit}
/* 採用：数字は5つ */
.rc .nums{grid-template-columns:repeat(5,1fr)}
.rc .num .v{font-size:clamp(34px,3.4vw,52px);white-space:nowrap}
@media (max-width:1024px){.rc .nums{grid-template-columns:repeat(2,1fr)}.rc .num:last-child{grid-column:1/-1}}
.to-top{box-shadow:0 0 0 2px #fff}
@media (max-width:760px){
  .h2-pick a{grid-template-columns:auto auto 1fr;column-gap:10px}
  .h2-pick .cat{padding:1px 8px}
}

/* ---------- お取り寄せ（BASE） ---------- */
.shop-sec{background:#fff;padding:90px 0}
.shop-note{font-size:13px;color:var(--accent);font-weight:700;margin:14px 0 22px}
.shop-lead{text-align:center;font-size:15px;line-height:1.9;margin:-10px 0 40px}
.shop-items{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.shop-item{background:var(--bg,#F6F4F1);display:flex;flex-direction:column}
.shop-item figure{margin:0;aspect-ratio:4/3;overflow:hidden}
.shop-item figure img{width:100%;height:100%;object-fit:cover}
.shop-item .body{padding:24px 24px 28px}
.shop-item h3{font-size:20px;font-weight:700;margin:0 0 10px}
.shop-item p{font-size:14px;line-height:1.9;color:#333;margin:0 0 18px}
.shop-buy{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.shop-buy a{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px;background:#fff;border:1px solid #ddd;padding:14px 16px;color:inherit;text-decoration:none;transition:border-color .2s}
.shop-buy a:hover{border-color:var(--accent)}
.shop-buy b{font-size:15px}
.shop-buy span{font-family:"Montserrat",sans-serif;font-weight:700;font-size:17px}
.shop-buy i{font-style:normal;font-size:12px;font-weight:700;color:#fff;background:var(--accent);padding:6px 10px}
.shop-sec .shop-note{text-align:center;color:#555;font-weight:400;line-height:1.9;margin:28px 0 24px}
@media (max-width:760px){.shop-items{grid-template-columns:1fr}.shop-buy a{gap:10px;padding:12px}}
/* 作り方 */
.howto{margin-top:64px;background:var(--bg,#F6F4F1);padding:48px 40px}
.howto-head{text-align:center;margin-bottom:36px}
.howto-head .en{font-family:"Montserrat",sans-serif;font-weight:700;font-size:12px;letter-spacing:.2em;color:var(--accent);margin:0}
.howto-head h3{font-size:clamp(22px,2.6vw,30px);font-weight:700;margin:6px 0}
.howto-head p{font-size:14px;margin:0}
.howto-cols{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.howto-col{background:#fff}
.howto-col figure{margin:0;position:relative;aspect-ratio:4/3;overflow:hidden}
.howto-col figure img{width:100%;height:100%;object-fit:cover}
.howto-col figcaption{position:absolute;left:0;right:0;bottom:0;padding:40px 20px 16px;background:linear-gradient(transparent,rgba(0,0,0,.7));color:#fff}
.howto-col figcaption b{display:block;font-size:22px}
.howto-col figcaption span{font-size:13px}
.howto-steps{list-style:none;counter-reset:st;margin:0;padding:20px 22px 26px}
.howto-steps li{counter-increment:st;position:relative;padding:14px 0 14px 50px;border-bottom:1px solid #eee}
.howto-steps li:last-child{border-bottom:0}
.howto-steps li::before{content:counter(st);position:absolute;left:0;top:12px;width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;font-family:"Montserrat",sans-serif;font-weight:700;display:grid;place-items:center}
.howto-steps b{font-size:16px}
.howto-steps p{font-size:13.5px;line-height:1.8;color:#444;margin:4px 0 0}
.howto-tips{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#333;margin-top:32px}
.howto-tips div{background:#161616;color:#fff;padding:22px}
.howto-tips h4{font-size:15px;margin:0 0 8px;border-bottom:1px solid #444;padding-bottom:8px}
.howto-tips p{font-size:13px;line-height:1.8;margin:0;color:#ddd}
.howto-tips p b{font-size:20px;color:#fff;margin-left:6px}
.howto-note{font-size:12px;color:#666;text-align:center;margin:16px 0 0}
@media (max-width:760px){.howto{padding:32px 16px;margin-left:-4px;margin-right:-4px}.howto-cols,.howto-tips{grid-template-columns:1fr}}
.shop-item .shop-fu{font-size:12px;color:#777;margin:12px 0 0}
.shop-top{background:var(--bg,#F6F4F1)}
.shop-top .shop-item{background:#fff}
/* お取り寄せのボタンは全ページ SeTオレンジで統一 */
.shop-sec .shop-buy i,.shop-sec .pill.accent{background:#E8711A;border-color:#E8711A}
.shop-sec .shop-buy a:hover{border-color:#E8711A}
.shop-sec .pill.accent:hover{background:#C95A0C;border-color:#C95A0C}
.shop-item .shop-allergy{font-size:12.5px;color:#333;margin:8px 0 0;line-height:1.7}
.shop-allergy b{display:inline-block;font-size:11px;font-weight:700;border:1px solid #bbb;padding:1px 6px;margin-right:8px}
/* メディア掲載・取材 */
.media-sec{background:#fff;padding:90px 0}
.media-wrap{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:center}
.media-video{background:#000;aspect-ratio:16/9}
.media-video video{width:100%;height:100%;display:block}
.media-cat{font-size:12px;font-weight:700;color:var(--accent);letter-spacing:.1em;margin:0 0 8px}
.media-body h3{font-size:22px;font-weight:700;margin:0 0 12px}
.media-body p{font-size:14.5px;line-height:1.9;color:#333}
.press-req{margin-top:56px;background:var(--bg,#F6F4F1);padding:44px 32px;text-align:center}
.press-req .en{font-family:"Montserrat",sans-serif;font-weight:700;font-size:12px;letter-spacing:.2em;color:var(--accent);margin:0}
.press-req h3{font-size:clamp(20px,2.4vw,26px);font-weight:700;margin:8px 0 14px}
.press-req p{font-size:14.5px;line-height:1.9;max-width:640px;margin:0 auto 22px}
.press-req .press-note{font-size:12px;color:#666;margin:16px auto 0}
@media (max-width:760px){.media-wrap{grid-template-columns:1fr;gap:20px}.press-req{padding:32px 18px}}
.media-photo{position:relative;margin:0;aspect-ratio:16/10;overflow:hidden}
.media-photo img{width:100%;height:100%;object-fit:cover}
.media-badge{position:absolute;left:0;top:0;background:var(--accent);color:#fff;font-family:"Montserrat",sans-serif;font-weight:700;font-size:12px;letter-spacing:.15em;padding:8px 14px}
.media-body .store-btns{margin-top:18px}
.media-video{position:relative}.media-video video{object-fit:contain}
/* 新ロゴ（2026.10） */
.brand-logo img{height:44px}
.ft .brand-logo img{height:120px}
@media (min-width:1025px){header#hd .brand-logo img{height:46px}}
@media (max-width:760px){.brand-logo img{height:38px}.ft .brand-logo img{height:104px}}
.about-logo{display:block;width:220px;max-width:60%;height:auto;margin:6px 0 28px}
/* 採用：チーム写真（縦長） */
.team-band{display:grid;grid-template-columns:300px 1fr;gap:36px;align-items:center;margin:32px 0;background:var(--bg,#F6F4F1);padding:28px}
.team-band figure{margin:0;aspect-ratio:3/4;overflow:hidden}
.team-band img{width:100%;height:100%;object-fit:cover;object-position:center 70%}
.team-band .en{font-family:"Montserrat",sans-serif;font-weight:700;font-size:12px;letter-spacing:.2em;color:var(--accent);margin:0 0 6px}
.team-band h4{font-size:20px;font-weight:700;margin:0 0 12px}
.team-band p{font-size:14.5px;line-height:1.9;margin:0}
@media (max-width:760px){.team-band{grid-template-columns:1fr;gap:18px;padding:18px}.team-band figure{max-width:300px;margin:0 auto;width:100%}}
/* イベント出店 */
.ev-report{padding:80px 0}
.ev-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ev-grid figure{margin:0}
.ev-grid img{width:100%;display:block;object-fit:cover}
.ev-main img{aspect-ratio:3/4}
.ev-side{display:grid;gap:20px}
.ev-side img{aspect-ratio:3/2}
.ev-grid figcaption{font-size:13px;color:#555;margin-top:8px}
.ev-menu{margin-top:40px;border-left:4px solid var(--accent);padding:6px 0 6px 20px}
.ev-menu .en{font-family:"Montserrat",sans-serif;font-weight:700;font-size:12px;letter-spacing:.2em;color:var(--accent);margin:0}
.ev-menu h3{font-size:24px;font-weight:700;margin:6px 0 10px}
.ev-menu h3 small{display:inline-block;font-size:14px;margin-left:10px;color:#555}
.ev-menu p{font-size:14.5px;line-height:1.9;margin:0}
.ev-points{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ev-points>div{background:#fff;padding:26px 22px}
.ev-points b{font-family:"Montserrat",sans-serif;font-size:28px;color:var(--accent)}
.ev-points h4{font-size:17px;font-weight:700;margin:8px 0}
.ev-points p{font-size:14px;line-height:1.85;margin:0}
@media (max-width:760px){.ev-grid,.ev-points{grid-template-columns:1fr}.ev-main img{aspect-ratio:4/5}}
.ev-grid figure{height:auto!important;overflow:visible!important}
.ev-grid figcaption{position:static!important;display:block;background:none!important;padding:0!important}
.ev-links{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:40px}
.ev-grid img{height:auto!important}
.ev-menus{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.ev-dish{background:var(--bg,#F6F4F1)}
.ev-dish figure{margin:0;aspect-ratio:4/3;overflow:hidden}
.ev-dish img{width:100%;height:100%;object-fit:cover}
.ev-dish .en,.ev-record .en{font-family:"Montserrat",sans-serif;font-weight:700;font-size:12px;letter-spacing:.2em;color:var(--accent);margin:18px 22px 0}
.ev-dish h3{font-size:22px;font-weight:700;margin:4px 22px 8px}
.ev-dish p:last-child{font-size:14px;line-height:1.85;margin:0 22px 24px}
.ev-record{margin-top:40px;border-left:4px solid var(--accent);padding:4px 0 4px 20px}
.ev-record .en{margin:0}
.ev-record h3{font-size:22px;font-weight:700;margin:4px 0 12px}
.ev-record ul{list-style:none;padding:0;margin:0}
.ev-record li{font-size:16px;font-weight:700;padding:10px 0;border-bottom:1px solid #e5e5e5}
.ev-record time{font-family:"Montserrat",sans-serif;color:var(--accent);margin-right:16px}
@media (max-width:760px){.ev-menus{grid-template-columns:1fr}}
.ev-year{display:grid;grid-template-columns:64px 1fr;gap:10px;padding:14px 0;border-bottom:1px solid #e5e5e5}
.ev-year:last-child{border-bottom:0}
.ev-year>time{font-family:"Montserrat",sans-serif;font-weight:700;font-size:18px;color:var(--accent);padding-top:6px}
.ev-record .ev-year li{border-bottom:0;padding:6px 0;font-size:15px;line-height:1.5}
.ev-record .ev-year li small{display:block;font-size:12px;font-weight:400;color:#777}
@media (min-width:761px){.ev-menus{grid-template-columns:repeat(3,1fr)}}
/* 地図：Googleマップで開くボタン */
.map{position:relative}
.map-link{position:absolute;left:12px;bottom:12px;z-index:2;background:#161616;color:#fff!important;font-size:13px;font-weight:700;padding:10px 14px;text-decoration:none}
.map-link:hover{background:var(--accent)}
/* Instagramが読み込めないときのリンクカード */
.ig-fallback blockquote.instagram-media{display:flex!important;align-items:center;justify-content:center;min-height:260px;margin:0!important;background:linear-gradient(135deg,#f58529,#dd2a7b 50%,#8134af)!important;border:0!important;border-radius:0!important;padding:20px!important}
.ig-fallback blockquote.instagram-media a{color:#fff!important;font-weight:700;font-size:15px;text-decoration:none;text-align:center}
.ig-fallback blockquote.instagram-media a::before{content:"▶";display:block;font-size:34px;margin-bottom:10px}
/* 採用ヒーロー：写真1枚 */
.rh-single{display:block!important}
.rh-single img{width:100%;height:100%;object-fit:cover;display:block}
.other .other-logo{display:grid;place-items:center;background:#fff;padding:14px}
.other .other-logo img{width:100%;height:100%;object-fit:contain}
.howto-title{background:#161616;color:#fff;padding:18px 22px}
.howto-title b{display:block;font-size:22px}
.howto-title span{font-size:13px;color:#ddd}
.bg.bg-solid{background:linear-gradient(135deg,#161616 0%,#3a1a0a 100%)}
/* トップ最初の画面：会社説明＋2ボタン */
.h2-lead{position:absolute;left:8%;right:8%;top:9%;z-index:2;color:#fff}
.h2-lead p{display:inline-block;background:rgba(22,22,22,.78);font-size:clamp(15px,1.6vw,19px);font-weight:700;padding:8px 14px;margin:0}
.h2-lead small{display:block;margin-top:8px;font-size:12px;font-weight:700;text-shadow:0 1px 4px rgba(0,0,0,.6)}
.h2-cta{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap}
.h2-cta .pill{min-width:200px;justify-content:center;text-align:center;padding:16px 26px;font-size:15px}
.h2-sublinks{display:flex;flex-wrap:wrap;gap:6px 22px;margin:16px 0 0;font-size:13px}
.h2-sublinks a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.h2-sublinks a:hover{color:var(--accent)}
.h2-text{margin-top:26px}
@media (max-width:760px){
  .h2-photo{height:34vh}
  .h2-catch{font-size:30px!important}
  .h2-body{padding-top:22px!important}
  .h2-cta{margin-top:18px;gap:10px}
  .h2-cta .pill{flex:1;min-width:0;padding:14px 10px;font-size:14px}
  .h2-word span{font-size:44px}
  .h2-word{bottom:10%}
  .reel figcaption{display:none}
}
.shop-sub{font-size:12.5px;color:#666;margin:10px 0 0}
.shop-sub a{color:#555;text-decoration:underline;text-underline-offset:3px}
.shop-sub a:hover{color:var(--accent)}
.shop-buy i{background:none!important;color:var(--accent)!important;font-size:16px!important;padding:0!important}
.btn-sub{font-size:12.5px;color:#666;margin:12px 0 0;line-height:1.8}
.btn-sub a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.btn-sub.on-dark{color:#fff}
.store-cta .btn-sub{text-align:center}
.place .place-logo{display:grid;place-items:center;background:#fff;aspect-ratio:16/9}
.place .place-logo img{width:auto!important;height:70%!important;object-fit:contain}
.ev-nophoto{aspect-ratio:4/3;display:grid;place-items:center;background:#e9e6e1;color:#888;font-size:13px;font-weight:700;letter-spacing:.1em}
.msg-imgs:has(figure:only-child){grid-template-columns:1fr}
.rc .num .v.v-text{font-family:"Noto Sans JP";font-weight:900;font-size:clamp(24px,3vw,34px)!important;line-height:1.3}
/* FC：酒場あらた */
.terms-h{font-size:18px;font-weight:700;margin:0 0 14px;padding-left:12px;border-left:4px solid var(--accent)}
.fc-sales{background:#161616;color:#fff;padding:22px 26px;margin:20px 0}
.fc-sales .k{font-size:13px;font-weight:700;color:#ddd;margin:0}
.fc-sales .v{font-family:"Montserrat",sans-serif;font-weight:700;font-size:clamp(40px,5vw,56px);line-height:1.1;color:var(--accent);margin:6px 0}
.fc-sales .v small{font-family:"Noto Sans JP";font-size:18px;color:#fff;margin-left:4px}
.fc-sales .n{font-size:12px;color:#bbb;margin:0}
/* FCページ：魅力づけ */
.fc-facts{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:8px}
.fc-facts li{display:flex;align-items:baseline;gap:10px;font-size:14px;font-weight:700}
.fc-facts b{font-family:"Montserrat",sans-serif;font-size:24px;color:var(--accent);min-width:70px}
.fc-proof{background:#161616;color:#fff}
.fc-proof .ttl h2,.fc-proof .ttl .en{color:#fff}
.fc-proof-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#333}
.fc-proof-grid>div{background:#161616;padding:26px 22px}
.fc-proof-grid .k{font-size:13px;color:#ccc;margin:0}
.fc-proof-grid .v{font-family:"Montserrat",sans-serif;font-weight:700;font-size:clamp(36px,4vw,52px);color:var(--accent);margin:6px 0;line-height:1.1}
.fc-proof-grid .v small{font-family:"Noto Sans JP";font-size:16px;color:#fff;margin-left:4px}
.fc-proof-grid .v.v-text{font-family:"Noto Sans JP";font-size:clamp(22px,2.4vw,28px)}
.fc-proof-grid .n{font-size:12px;color:#aaa;margin:0}
.fc-proof-note{font-size:12px;color:#aaa;margin:16px 0 0}
.fc-compare{overflow-x:auto;margin:0 0 56px}
.fc-compare table{width:100%;min-width:560px;border-collapse:collapse;background:#fff;font-size:14px}
.fc-compare th,.fc-compare td{border:1px solid #e5e5e5;padding:12px 14px;text-align:center;vertical-align:middle}
.fc-compare thead th{background:#161616;color:#fff;font-weight:700}
.fc-compare thead th:last-child{background:var(--accent)}
.fc-compare tbody th{background:#f6f4f1;font-weight:700;white-space:nowrap}
.fc-compare small{font-size:11px}
.fc-compare-note{font-size:12px;color:#666;margin:8px 0 0}
.fc-fixed{position:fixed;left:16px;right:84px;bottom:16px;z-index:45;display:none;background:var(--accent);color:#fff!important;text-align:center;font-weight:900;padding:15px;border-radius:99px;box-shadow:0 10px 24px rgba(232,113,26,.4);transform:translateY(calc(100% + 40px));transition:transform .35s}
.fc-fixed.show{transform:none}
@media (max-width:760px){.fc-proof-grid{grid-template-columns:1fr 1fr}.fc-fixed{display:block}}
@media (max-width:760px){.fc-proof-grid>div{padding:20px 14px}.fc-proof-grid .v{font-size:32px;white-space:nowrap}.fc-proof-grid .v small{font-size:13px}.fc-proof-grid .v.v-text{font-size:19px;white-space:normal}}
/* FC：先着特典・説明会 */
.fc-camp{background:var(--bg,#F6F4F1)}
.fc-camp-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.fc-camp-card{background:#fff;padding:30px 28px;border-top:4px solid var(--accent)}
.fc-camp-card .en{font-family:"Montserrat",sans-serif;font-weight:700;font-size:12px;letter-spacing:.2em;color:var(--accent);margin:0}
.fc-camp-card h3{font-size:clamp(21px,2.4vw,26px);font-weight:900;line-height:1.4;margin:8px 0 14px}
.fc-camp-card .big{font-size:15px;font-weight:700;line-height:1.9;margin:0 0 10px}
.fc-camp-card .big b{color:var(--accent);font-size:20px}
.fc-camp-card .n{font-size:12.5px;color:#666;line-height:1.8;margin:0}
.fc-camp-card .store-btns{margin-top:18px}
@media (max-width:760px){.fc-camp-grid{grid-template-columns:1fr}}
.job-gallery:has(> figure:only-child){display:block}
.job-gallery:has(> figure:only-child) figure{aspect-ratio:16/9;height:auto}
@media (max-width:760px){
  .fc-compare table{min-width:0;font-size:12px;table-layout:fixed}
  .fc-compare th,.fc-compare td{padding:9px 5px}
  .fc-compare thead th:first-child,.fc-compare tbody th{width:74px;white-space:normal}
}
/* ロゴ（明朝版） */
.brand-logo img{height:40px}
@media (min-width:1025px){header#hd .brand-logo img{height:auto;width:100%;max-width:180px}}
.ft .brand-logo img{height:150px}
@media (max-width:760px){.brand-logo img{height:34px}.ft .brand-logo img{height:130px}}
/* プライバシーポリシー */
.policy .wrap{max-width:820px}
.policy h2{font-size:19px;font-weight:700;margin:44px 0 12px;padding-left:12px;border-left:4px solid var(--accent)}
.policy p,.policy li{font-size:15px;line-height:2}
.policy ul{padding-left:1.4em;margin:8px 0}
.policy .company-table{margin-top:12px}
.policy-date{margin-top:28px;color:#666;font-size:13px!important}
