/* ==========================================================================
   OMOtenashi ページ別プレビュー（?omote=1 のとき body.omote-preview に適用）
   通常表示には影響しない。承認後にプレフィックスを外せば本番化できる。
   ========================================================================== */

/* ---------- ハイブリッド配色 ----------
   土台＝暖かい生成り（料理が美味しそうに見える）、文字＝濃紺(#1b1714)、
   差し色＝ブランド青(#548eb0 / #e8f0f4)、評価★＝金。青は「面」でなく「差し色」。
   グローバルスキンの accent(primary) だけ青へ上書き（neutral=地色は暖色のまま）。 */
body.omote-preview {
  --color-primary-50:#f5f9fb; --color-primary-100:#e8f0f4; --color-primary-200:#dae7ee;
  --color-primary-300:#bcd2e0; --color-primary-400:#8ab2c9; --color-primary-500:#548eb0;
  --color-primary-600:#548eb0; --color-primary-700:#548eb0; --color-primary-800:#548eb0; --color-primary-900:#548eb0;
  /* テーマで未定義だったコンテナ幅変数を補完（max-width が効かず左寄り/全幅になっていた） */
  --container-xl: 1200px;
  --container-2xl: 1360px;
}

/* ---------- 一覧（/places/）カードグリッド ---------- */
.omote-preview .listing-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(258px, 1fr)) !important;
  gap: 18px !important;
}
@media (max-width: 600px) {
  .omote-preview .listing-grid { grid-template-columns: 1fr 1fr !important; gap: 12px !important; }
}

.omote-preview .store-card {
  background: #fffdf9 !important;
  border: 1px solid #d8ccb9 !important;
  border-radius: 2px !important;
  box-shadow: none !important;
  overflow: hidden;
  transition: border-color .2s ease, transform .3s ease;
}
.omote-preview .store-card:hover {
  border-color: #548eb0 !important;       /* hover は青の差し色 */
  transform: translateY(-2px);
}

.omote-preview .store-card__media {
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: 0 !important;
  background: #3c342d;                      /* 画像背景は中立ダーク（写真を冷やさない） */
}
.omote-preview .store-card__media-img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform .6s ease;
}
.omote-preview .store-card:hover .store-card__media-img { transform: scale(1.05); }

.omote-preview .store-card__price-badge {
  background: rgba(27,23,20,.78) !important;
  color: #f5f0e7 !important;
  border-radius: 2px !important;
  font-size: 11px; letter-spacing: .04em;
}
.omote-preview .store-card__video-badge {
  background: rgba(84,142,176,.92) !important;   /* 動画バッジは青の差し色 */
  color: #fff !important;
  border-radius: 2px !important;
}

.omote-preview .store-card__body { padding: 14px 16px 16px !important; }
.omote-preview .store-card__genre {
  color: #6297b7 !important;               /* ジャンルの小見出し＝青 */
  font-size: 11px; letter-spacing: .14em;
}
.omote-preview .store-card__name {
  font-family: "Shippori Mincho", "Noto Serif JP", serif !important;
  font-size: 18px !important; line-height: 1.45 !important;
  letter-spacing: .02em; color: #1b1714 !important;   /* 店名＝濃紺 */
  margin: .3rem 0 .45rem !important;
}
.omote-preview .store-card__info { color: #3c342d !important; }
/* Google評価の星(金)はそのまま維持 */

/* ---------- 見出し・並べ替え・絞り込み ---------- */
.omote-preview .page-title {
  font-family: "Shippori Mincho", "Noto Serif JP", serif !important;
  letter-spacing: .04em;
}
.omote-preview .sort-select {
  border: 1px solid #d8ccb9 !important;
  border-radius: 2px !important;
  background: #fffdf9 !important;
  color: #1b1714 !important;
}
.omote-preview .filter-tag {
  background: #1b1714 !important;          /* 選択チップ＝濃紺 */
  color: #f5f0e7 !important;
  border-radius: 2px !important;
}

/* ---------- ページネーション ---------- */
.omote-preview .pagination .page-numbers {
  border: 1px solid #d8ccb9 !important;
  border-radius: 2px !important;
  color: #1b1714 !important;
  background: #fffdf9 !important;
}
.omote-preview .pagination .page-numbers.current {
  background: #1b1714 !important; color: #f5f0e7 !important; border-color: #1b1714 !important;
}
.omote-preview .pagination a.page-numbers:hover {
  border-color: #548eb0 !important; color: #548eb0 !important;   /* hover＝青 */
}

/* ==========================================================================
   トップ（front-page）おもてなし調
   ========================================================================== */
/* ヒーロー */
.omote-preview .hero__badge {
  background: rgba(84,142,176,.92) !important;   /* バッジ＝青の差し色 */
  color: #fff !important;
  border-radius: 2px !important;
  letter-spacing: .14em;
}
.omote-preview .hero__title {
  font-family: "Shippori Mincho", "Noto Serif JP", serif !important;
  font-weight: 800 !important;
  letter-spacing: .06em;
  line-height: 1.32 !important;
}
.omote-preview .hero__overlay {
  background: linear-gradient(180deg, rgba(27,23,20,.28), rgba(27,23,20,.58)) !important;  /* 写真の上は中立ダーク */
}
.omote-preview .hero__subtitle { letter-spacing: .04em; }

/* 検索ガラス → 生成りのきれいな枠に */
.omote-preview .hero__search-glass {
  background: rgba(245,240,231,.97) !important;
  border: 1px solid #d8ccb9 !important;
  border-radius: 3px !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  box-shadow: 0 12px 34px rgba(27,23,20,.20) !important;
}
.omote-preview .hero__search-inner input,
.omote-preview .hero__search-field input {
  color: #1b1714 !important;
  font-family: "Shippori Mincho", "Noto Serif JP", serif !important;
}
.omote-preview .hero__search-divider { background: #d8ccb9 !important; }
.omote-preview .hero__search-submit {
  background: #548eb0 !important;          /* 主要CTA＝ブランド青 */
  color: #fff !important;
  border-radius: 2px !important;
  letter-spacing: .16em;
}
.omote-preview .hero__search-submit:hover { background: #6297b7 !important; }

/* セクション見出し（明朝＋青の小見出し） */
.omote-preview .section__title,
.omote-preview .fp-section-title,
.omote-preview .location-search__title,
.omote-preview .featured__name {
  font-family: "Shippori Mincho", "Noto Serif JP", serif !important;
  letter-spacing: .04em;
}
.omote-preview .section__desc { color: #6297b7 !important; letter-spacing: .08em; }
.omote-preview .featured__badge { background: rgba(84,142,176,.92) !important; border-radius: 2px !important; }

/* ==========================================================================
   ブランド色 #e8f0f4 を「面」で少しだけ（料理写真のない機能エリア限定）
   ========================================================================== */
/* トップ：探すエリア（現在地/エリアから探す）を淡い青の帯に。カードは白で抜く。 */
.omote-preview .location-search { background: #e8f0f4 !important; }
.omote-preview .location-search__card {
  background: #fffdf9 !important;
  border: 1px solid #c0d5e2 !important;
  border-radius: 3px !important;
}
/* 一覧：ページ見出しの帯を淡い青に（カードの写真からは離れている） */
.omote-preview .page-title-area {
  background: #e8f0f4 !important;
  border-bottom: 1px solid #c0d5e2 !important;
}

/* ---------- ヘッダーロゴ差し替え（おもてなし①）表示切替 ----------
   通常/スクロール時＝カラー版、透過ヘッダー（トップのヒーロー上）＝白版。 */
.omote-preview .omote-logo--white { display: none; }
.omote-preview .site-header--transparent .omote-logo--color { display: none; }
.omote-preview .site-header--transparent .omote-logo--white { display: block; }

/* 英字版ロゴ（ホーム ?omote=1 プレビュー）— Orbitron＋Nova Square＋波線 */
.omote-latin{display:inline-flex;flex-direction:column;align-items:center;line-height:1;text-decoration:none;}
.omote-latin .ol-row{white-space:nowrap;line-height:1;}
.omote-latin .ol-omo{font-family:'Orbitron',sans-serif;font-weight:700;letter-spacing:.02em;}
.omote-latin .ol-ten{font-family:'Nova Square',sans-serif;font-weight:400;letter-spacing:.01em;}
.omote-latin .ol-tilde{display:block;width:90%;height:5px;margin-top:1px;}
/* 色（濃＝ヘッダーソリッド / 白＝ヘッダー透過・フッター） */
.omote-latin.omote-logo--color .ol-omo{color:#243842;} .omote-latin.omote-logo--color .ol-ten{color:#2f6f8c;}
.omote-latin.omote-logo--white .ol-omo,.omote-latin--footer .ol-omo{color:#ffffff;}
.omote-latin.omote-logo--white .ol-ten,.omote-latin--footer .ol-ten{color:#aed0de;}
/* ヘッダーのサイズ（ロゴ枠 約36px に収める） */
.site-header__logo .omote-latin .ol-omo{font-size:19px;}
.site-header__logo .omote-latin .ol-ten{font-size:17px;}
/* フッターのサイズ */
.site-footer__logo .omote-latin .ol-omo{font-size:22px;}
.site-footer__logo .omote-latin .ol-ten{font-size:20px;}
/* 編集型ホームのヘッダーは明るい背景なので、白ロゴだと消える → 常に濃色ロゴを表示（白は隠す）。
   ロゴデザインは変えず表示切替のみ。英字版・ひらがな版どちらにも効く。ヘッダー透過(--transparent)時も濃色を強制。 */
.omote-preview.home-omote .omote-logo--white{display:none !important;}
.omote-preview.home-omote img.omote-logo--color{display:block !important;}
.omote-preview.home-omote .omote-latin.omote-logo--color{display:inline-flex !important;}
/* 編集型ホーム：透過ヘッダーの黒30%オーバーレイ(rgba(0,0,0,.3))をやめて白ヘッダーに。
   明るいヒーローだとグレーに見えていたため。ナビ/ハンバーガーは濃色にして白地で見えるように。 */
.omote-preview.home-omote .site-header--transparent{background:rgba(255,255,255,0.92) !important;box-shadow:0 1px 8px rgba(0,0,0,0.04) !important;}
/* ホーム横幅統一＝フル幅：コンテンツ背景(ベージュ)を画面端まで広げ、フル幅の帯と揃える（文字/カードは中央寄せのまま） */
.omote-preview.home-omote #content.site-content{background:#f6f2ea !important;}
/* コンテンツとフッターの間の白い余白を除去（フッターの上マージン var(--space-20) が原因だった） */
.omote-preview.home-omote .site-footer,
.omote-preview.cocoico-detail-page .site-footer,
.omote-preview.cocoico-listing-page .site-footer{margin-top:0 !important;}
/* メニューのアンダーラインを全項目で統一：現在ページの常時下線をやめ、全項目ホバー時のみ伸ばす */
.omote-preview .site-header--transparent .site-header__menu li.current-menu-item > a::after,
.omote-preview .site-header--transparent .site-header__menu li.current_page_item > a::after{width:0 !important;left:50% !important;}
.omote-preview .site-header--transparent .site-header__menu li.current-menu-item > a:hover::after,
.omote-preview .site-header--transparent .site-header__menu li.current_page_item > a:hover::after{width:60% !important;left:20% !important;}
.omote-preview.home-omote .site-header--transparent .site-header__menu li a{color:#243842 !important;}
.omote-preview.home-omote .site-header--transparent .site-header__hamburger,
.omote-preview.home-omote .site-header--transparent .site-header__hamburger::before,
.omote-preview.home-omote .site-header--transparent .site-header__hamburger::after{background:#243842 !important;}

/* ---------- ヘッダー検索バー（プレビュー）：白でスタイリッシュに ----------
   白地＋極薄ボーダー＋柔らかい影。全状態（通常/透過/スクロール）共通。 */
.omote-preview .header-search-form {
  background: #ffffff !important;
  border: 1px solid rgba(20,35,44,0.10) !important;
  box-shadow: 0 2px 12px rgba(20,35,44,0.07) !important;
  border-radius: 9999px !important;
  overflow: hidden !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
.omote-preview .header-search-form__input {
  padding-left: 22px !important;
  border: 0 !important;
  background: transparent !important;
  color: #1b1714 !important;
}
.omote-preview .header-search-form__input::placeholder { color: #9aa5ab !important; }
/* 右の丸ボタン：アクセント青＋白アイコン */
.omote-preview .header-search-form__btn { background: var(--color-primary-500) !important; color: #ffffff !important; }
.omote-preview .header-search-form__btn i { color: #ffffff !important; }

/* ---------- 左寄りになる問題の修正（プレビュー・対象ページのみ） ----------
   Astra の .ast-container が max-width:1240px だが margin:auto が外れて左寄せに
   なっていた。一覧＋固定ページ(問合せ/規約/プライバシー)で中央寄せを強制
   （個別店舗/トップには影響させない）。 */
.omote-preview.cocoico-listing-page #content.site-content,
.omote-preview.cocoico-listing-page #content > .ast-container,
.omote-preview.page-template-page-contact #content.site-content,
.omote-preview.page-template-page-contact #content > .ast-container,
.omote-preview.page-template-page-terms #content.site-content,
.omote-preview.page-template-page-terms #content > .ast-container,
.omote-preview.page-template-page-privacy-policy #content.site-content,
.omote-preview.page-template-page-privacy-policy #content > .ast-container {
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ---------- ホーム(透過/スクロール)ヘッダーでも白を維持（cocoico標準の半透明を上書き） ---------- */
.omote-preview .site-header--transparent .header-search-form,
.omote-preview .site-header--scrolled .header-search-form {
  background: #ffffff !important;
  border: 1px solid rgba(20,35,44,0.10) !important;
}
.omote-preview .site-header--transparent .header-search-form__input,
.omote-preview .site-header--scrolled .header-search-form__input {
  color: #1b1714 !important;
}
.omote-preview .site-header--transparent .header-search-form__input::placeholder,
.omote-preview .site-header--scrolled .header-search-form__input::placeholder {
  color: #9aa5ab !important;
}
.omote-preview .site-header--transparent .header-search-form__btn,
.omote-preview .site-header--scrolled .header-search-form__btn {
  background: var(--color-primary-500) !important;
}

/* ---------- お問い合わせ：種別セレクトの文字見切れ修正 ----------
   .contact-form__select の行高/高さ不足で「選択してください」が縦に切れていた。 */
.omote-preview .contact-form__select {
  line-height: 1.6 !important;
  height: auto !important;
  min-height: 48px !important;
  padding-top: 11px !important;
  padding-bottom: 11px !important;
}

/* ==========================================================================
   新ホーム（?omote=1）デザイン  .fp-omote 専用（既存ホームには影響なし）
   ========================================================================== */
.home-omote #content > .ast-container{display:block!important;max-width:1240px!important;width:100%!important;margin-left:auto!important;margin-right:auto!important;}
.home-omote{overflow-x:hidden;}
/* コンテンツ枠の下余白を除去し、デザイン面（紺帯/温かい紙地）がフッターまで隙間なく届くように
   （ホーム＝紺帯とフッターの間の薄帯対策／個別店舗＝下部の白い余白対策） */
.omote-preview.home-omote #content.site-content,
.omote-preview.home-omote #content > .ast-container,
.omote-preview.cocoico-detail-page #content.site-content,
.omote-preview.cocoico-detail-page #content > .ast-container{padding-bottom:0!important;}
.fp-omote{background:#f6f2ea;color:#243842;font-family:"Zen Kaku Gothic New","Noto Sans JP",sans-serif;line-height:1.8;}
/* 帯（ピックアップ/CTA）だけ全幅に（コンテナ中央寄せ前提のフルブリード） */
.fp-omote .fpo-pick,.fp-omote .fpo-cta{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);}
.fp-omote .mincho{font-family:"Shippori Mincho","Noto Serif JP",serif;}
.fp-omote .fpo-wrap{max-width:1180px;margin:0 auto;padding:0 24px;}
.fp-omote .fpo-eye{font-size:11px;letter-spacing:.22em;color:#2f6f8c;font-weight:500;}
.fp-omote .fpo-center{text-align:center;}
.fp-omote .fpo-uline{display:block;width:300px;max-width:80%;height:9px;}
/* スマホでは波線（ホームのヒーロー＋個別店舗の見出し横）を非表示 */
@media(max-width:768px){.fp-omote .fpo-uline,.ssv2 .tilde{display:none !important;}}
.fp-omote .fpo-h2{font-size:26px;letter-spacing:.06em;font-weight:600;margin:0;}
.fp-omote .fpo-sub{font-size:12px;letter-spacing:.08em;color:#2f6f8c;margin-top:4px;}
.fp-omote .fpo-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:20px;}
.fp-omote .fpo-more{display:inline-flex;align-items:center;gap:6px;color:#2f6f8c;font-size:13px;letter-spacing:.06em;text-decoration:none;}
.fp-omote .fpo-sec{padding:46px 0;}

/* hero */
.fp-omote .fpo-hero{padding:50px 0 44px;}
.fp-omote .fpo-hero__grid{display:grid;grid-template-columns:1.25fr 1fr;gap:34px;align-items:center;}
.fp-omote .fpo-title{font-size:clamp(34px,5vw,50px);line-height:1.26;letter-spacing:.04em;font-weight:700;margin:14px 0 0;}
.fp-omote .fpo-uline{margin:18px 0 0;}
.fp-omote .fpo-lead{font-size:14.5px;color:#5e6b62;margin:18px 0 24px;max-width:30em;}
.fp-omote .fpo-search{display:flex;align-items:center;background:#fffdf9;border:1px solid #e2dccd;border-radius:5px;padding:6px 6px 6px 16px;max-width:540px;}
.fp-omote .fpo-search__field{display:flex;align-items:center;gap:9px;flex:1;color:#8a958c;min-width:0;}
.fp-omote .fpo-search__field:first-of-type{flex:1.9;}
.fp-omote .fpo-search__field:last-of-type{flex:1;}
.fp-omote .fpo-search__field input{border:0;background:transparent;outline:none;font-size:13.5px;font-family:inherit;color:#243842;width:100%;}
.fp-omote .fpo-search__div{width:1px;height:22px;background:#e2dccd;margin:0 6px;}
.fp-omote .fpo-search__btn{flex-shrink:0;background:#2f6f8c;color:#fff;border:0;border-radius:3px;padding:11px 20px;font-size:13px;letter-spacing:.1em;font-family:inherit;cursor:pointer;}
.fp-omote .fpo-search__btn:hover{background:#1f566d;}
.fp-omote .fpo-hero__media{position:relative;display:block;border-radius:6px;overflow:hidden;aspect-ratio:4/5;box-shadow:0 20px 44px rgba(36,56,66,.16);}
.fp-omote .fpo-hero__media img{width:100%;height:100%;object-fit:cover;display:block;}
.fp-omote .fpo-hero__cap{position:absolute;left:0;right:0;bottom:0;padding:16px 18px;color:#fff;background:linear-gradient(180deg,rgba(20,30,35,0),rgba(20,30,35,.78));display:flex;flex-direction:column;gap:2px;}
.fp-omote .fpo-hero__cap-eye{font-size:12px;letter-spacing:.04em;opacity:.92;}
.fp-omote .fpo-hero__cap-eye .ol-omo{font-family:'Orbitron',sans-serif;font-weight:700;}
.fp-omote .fpo-hero__cap-eye .ol-ten{font-family:'Nova Square',sans-serif;font-weight:400;}
.fp-omote .fpo-hero__cap .mincho{font-size:18px;letter-spacing:.04em;}

/* play button */
.fp-omote .fpo-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.94);display:flex;align-items:center;justify-content:center;color:#243842;}

/* categories */
.fp-omote .fpo-cats{display:grid;grid-template-columns:repeat(7,1fr);gap:12px;}
@media(max-width:1000px){.fp-omote .fpo-cats{grid-template-columns:repeat(4,1fr);}}
@media(max-width:600px){.fp-omote .fpo-cats{grid-template-columns:repeat(3,1fr);}}
.fp-omote .fpo-cat{position:relative;display:block;aspect-ratio:3/4;border-radius:4px;overflow:hidden;}
.fp-omote .fpo-cat img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease;}
.fp-omote .fpo-cat:hover img{transform:scale(1.05);}
.fp-omote .fpo-cat__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,30,35,.05),rgba(20,30,35,.55));}
.fp-omote .fpo-cat__name{position:absolute;left:14px;bottom:13px;color:#fff;font-size:17px;letter-spacing:.08em;}
/* エリアから探す（都道府県チップ） */
.fp-omote .fpo-areas{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
@media(max-width:680px){.fp-omote .fpo-areas{grid-template-columns:repeat(2,1fr);}}
.fp-omote .fpo-area{display:flex;align-items:center;justify-content:center;padding:18px 10px;background:#fffdf9;border:1px solid #e2d8c7;border-radius:3px;font-family:"Shippori Mincho","Noto Serif JP",serif;font-size:16px;letter-spacing:.06em;color:#243842;text-decoration:none;transition:.2s;}
.fp-omote .fpo-area:hover{border-color:#2f6f8c;color:#2f6f8c;}

/* 現在地から探す */
.fp-omote .fpo-nearby .nearby-prompt{background:#fffdf9;border:1px solid #e7e0d2;border-radius:5px;padding:34px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:13px;}
.fp-omote .nearby-prompt__icon{width:60px;height:60px;border-radius:50%;background:#e8f0f4;display:flex;align-items:center;justify-content:center;}
.fp-omote .nearby-prompt__text{font-size:14px;color:#5e6b62;margin:0;}
.fp-omote .nearby-prompt__btn{display:inline-flex;align-items:center;gap:8px;background:#2f6f8c;color:#fff;border:0;border-radius:3px;padding:12px 24px;font-size:13.5px;letter-spacing:.08em;font-family:inherit;cursor:pointer;}
.fp-omote .nearby-prompt__btn:hover{background:#1f566d;}
.fp-omote .nearby-grid{margin-top:18px;}

/* featured pickup */
.fp-omote .fpo-pick{background:#eef3f0;border-top:1px solid #e1e7e2;border-bottom:1px solid #e1e7e2;}
.fp-omote .fpo-feature{margin-top:22px;display:grid;grid-template-columns:1.2fr 1fr;background:#fffdf9;border:1px solid #e7e0d2;border-radius:4px;overflow:hidden;}
.fp-omote .fpo-feature__media{position:relative;display:block;aspect-ratio:16/10;}
.fp-omote .fpo-feature__media img{width:100%;height:100%;object-fit:cover;display:block;}
.fp-omote .fpo-feature__badge{position:absolute;top:12px;left:12px;background:#2f6f8c;color:#fff;font-size:10px;letter-spacing:.16em;padding:4px 10px;border-radius:2px;}
.fp-omote .fpo-feature__info{padding:24px 26px;}
.fp-omote .fpo-feature__name{font-size:24px;letter-spacing:.04em;margin:6px 0 10px;}
.fp-omote .fpo-rate{display:flex;align-items:center;gap:7px;margin-bottom:12px;}
.fp-omote .fpo-stars{color:#d8a23a;font-size:14px;letter-spacing:-1px;}
.fp-omote .fpo-rate__num{font-size:15px;}
.fp-omote .fpo-rate__lbl{font-size:11px;color:#8a958c;border-left:1px solid #e0d8c8;padding-left:7px;}
.fp-omote .fpo-tags{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px;}
.fp-omote .fpo-tag{font-size:11px;letter-spacing:.04em;color:#5e7682;border:1px solid #d6e0e6;background:#fff;padding:3px 9px;border-radius:2px;}
.fp-omote .fpo-feature__desc{font-size:13px;color:#5e6b62;margin:0 0 18px;}
.fp-omote .fpo-btn{display:inline-flex;align-items:center;gap:7px;background:#2f6f8c;color:#fff;border-radius:3px;padding:11px 20px;font-size:13px;letter-spacing:.1em;text-decoration:none;}
.fp-omote .fpo-btn:hover{background:#1f566d;}

/* latest cards reuse .store-card / .listing-grid (既存スタイル) */
.fp-omote .fpo-cards{margin-top:4px;}

/* CTA */
.fp-omote .fpo-cta{background:#243842;color:#fff;text-align:center;padding:50px 24px;}
.fp-omote .fpo-cta__title{font-size:28px;letter-spacing:.08em;font-weight:600;margin:0 0 8px;color:#fff;}
.fp-omote .fpo-cta__sub{font-size:13px;color:#c4d2da;letter-spacing:.06em;margin:0 0 22px;}
.fp-omote .fpo-cta__btn{display:inline-flex;align-items:center;gap:8px;background:#fff;color:#243842;border-radius:3px;padding:12px 26px;font-size:13px;letter-spacing:.1em;text-decoration:none;}

/* responsive */
@media(max-width:820px){
  /* 透過ヘッダーに小見出しが潜らないよう、ヒーロー上余白を確保 */
  .fp-omote .fpo-hero{padding-top:88px;}
  .fp-omote .fpo-hero__grid{grid-template-columns:1fr;gap:24px;}
  .fp-omote .fpo-hero__media{aspect-ratio:16/10;}
  .fp-omote .fpo-feature{grid-template-columns:1fr;}
}

/* ==========================================================================
   /places 店舗一覧 新デザイン（?omote=1 → body.places-omote）。現状ライブは維持。
   ========================================================================== */
.places-omote{--color-primary-500:#2f6f8c;--color-primary-600:#1f566d;}
/* 見出し帯 */
.places-omote .page-title-area{background:#eef3f0!important;border-bottom:1px solid #e1e7e2!important;}
.places-omote .page-title{font-family:"Shippori Mincho","Noto Serif JP",serif!important;letter-spacing:.06em!important;color:#243842!important;}
.places-omote .sort-select{background:#fffdf9!important;border:1px solid #d9d0bf!important;border-radius:3px!important;color:#3c4d56!important;}
/* カード */
.places-omote .store-card{border-color:#e7e0d2!important;border-radius:3px!important;}
.places-omote .store-card:hover{border-color:#2f6f8c!important;}
.places-omote .store-card__genre{color:#2f6f8c!important;letter-spacing:.14em!important;}
.places-omote .store-card__name{color:#243842!important;}
.places-omote .store-card__video-badge{background:rgba(47,111,140,.93)!important;}
/* 絞り込みサイドバー */
.places-omote .filter-section__title{font-family:"Shippori Mincho","Noto Serif JP",serif!important;font-size:14px!important;letter-spacing:.06em!important;color:#243842!important;}
.places-omote .video-toggle{background:#fffdf9!important;border:1px solid #e7e0d2!important;border-radius:3px!important;}
/* 動画フィルタの折り返し対策（「動画で雰囲気を確認」が途中で改行されるのを防ぐ） */
.places-omote .video-toggle__inner{display:flex!important;align-items:center!important;gap:12px!important;flex-wrap:nowrap!important;}
.places-omote .video-toggle__label{display:flex!important;align-items:center!important;gap:10px!important;flex:1 1 auto!important;min-width:0!important;}
.places-omote .video-toggle__icon{flex:0 0 auto!important;}
.places-omote .video-toggle__text{min-width:0!important;}
.places-omote .video-toggle__text strong{white-space:nowrap!important;}
.places-omote .video-toggle__text span{display:block!important;white-space:nowrap!important;font-size:11px!important;letter-spacing:0!important;}
.places-omote .toggle-switch{flex:0 0 auto!important;}
.places-omote .filter-tag{background:#243842!important;color:#f3ece0!important;border-radius:2px!important;}
/* ページネーション */
.places-omote .pagination .page-numbers{border:1px solid #d9d0bf!important;border-radius:3px!important;color:#3c4d56!important;background:#fffdf9!important;}
.places-omote .pagination .page-numbers.current{background:#243842!important;color:#fff!important;border-color:#243842!important;}
.places-omote .pagination a.page-numbers:hover{border-color:#2f6f8c!important;color:#2f6f8c!important;}

/* 「店舗を探す」ウィジェット見出し：青地に黒文字になっていたので白に（h3のテーマ色を上書き） */
.omote-preview .sidebar-search__title{color:#ffffff !important;}
