@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@500;600;700&family=Noto+Sans+JP:wght@400;500;700&display=swap');
 
:root{
  --mk-bg:        #1b1815;
  --mk-bg-2:      #242019;
  --mk-bg-3:      #2c2720;
  --mk-gold:      #d4af5e;
  --mk-gold-br:   #f3deA0;
  --mk-gold-br2:  #f3dea0;
  --mk-gold-deep: #9c7a2c;
  --mk-cream:     #efe6d2;
  --mk-text:      #ece7df;
  --mk-text-dim:  #b6ad9c;
  --mk-red:       #c23b2c;
  --mk-serif:  "Shippori Mincho","Yu Mincho",YuMincho,"Hiragino Mincho ProN",serif;
  --mk-sans:   "Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;
  --mk-max: 1280px;
}
 
/* ---- リセット（Cocoonでは既存スタイルと衝突する箇所のみ最小限に）---- */
.content {margin-top: 2em;}
.main {padding: 0;}
.mk-root *{box-sizing:border-box;}
.mk-root{
  color:var(--mk-text);
  font-family:var(--mk-sans);
  line-height:1.7;
  position:relative;
  overflow:hidden;
}
.mk-root img{max-width:100%;display:block;}
.mk-root a{color:inherit;text-decoration:none;}
#footer {
  display:none;
}

/* ===== gtranslate表示調整 ===== */
.gtranslate_wrapper {
  background-color: #000;
  display: flex;
  justify-content: flex-end;
}

/* ===== 金の装飾スワール（シグネチャー要素）===== */
.page .entry-content, .category-news-post { position:relative; background-color:var(--mk-bg); border-radius:6px; }
.page .entry-content::before, .category-news-post::before {
  content:""; position:absolute; inset:0;
  z-index:0; pointer-events:none; opacity:.45;   /* 濃さは opacity で調整 */
  background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1280 900' preserveAspectRatio='xMidYMin slice'><defs><linearGradient id='g' x1='0' y1='0' x2='1' y2='1'><stop offset='0' stop-color='%23f6e6b6'/><stop offset='.5' stop-color='%23d4af5e'/><stop offset='1' stop-color='%239c7a2c'/></linearGradient><filter id='b'><feGaussianBlur stdDeviation='2.2'/></filter></defs><g fill='none' stroke='url(%23g)' filter='url(%23b)' opacity='.85'><path d='M-20,60 C260,-70 560,10 700,120' stroke-width='1.4' opacity='.6'/><path d='M1320,80 C1120,200 980,360 760,300' stroke-width='1.4' opacity='.6'/><path d='M120,760 C40,640 140,520 300,560 C460,600 420,760 260,760' stroke-width='2.2' opacity='.7'/><path d='M1160,820 C1260,700 1160,560 1000,600' stroke-width='2.2' opacity='.7'/></g></svg>") top center;
  background-size:cover;
}
.page .entry-content > *, .category-news-post > * { position:relative; z-index:1; }  /* 本文を装飾の上に */

/* ===== ヒーロー ===== */
.mk-hero{position:relative;z-index:3;}
.mk-hero-inner{margin:0 auto; background-color: #fff;}
.mk-hero-img{
  width:100%;height:auto;display:block;
  border-radius:6px;
  box-shadow:0 20px 60px rgba(0,0,0,.55);
  filter: brightness(0.40);
  opacity: 0.75;
}
/* 金色の光の筋アニメーション（画像の上に重ねて流す）*/
.mk-hero-fx{
  position:absolute;inset:0;width:100%;height:100%;
  border-radius:6px;pointer-events:none;
  mix-blend-mode:screen;z-index:2;
}
 
/* ===== 2カラム特集 ===== */
.mk-features{position:relative;z-index:3;
  max-width:var(--mk-max);margin:0 auto;
  display:grid;grid-template-columns:1fr 1fr;gap:48px;
  padding:54px 32px 10px;}
.mk-feature{position:relative; width: 100% !important; }
.mk-feature-no{
  font-family:var(--mk-serif);font-weight:700;font-style:italic;
  font-size:clamp(22px,2.6vw,34px);
  background:linear-gradient(180deg,#f6e6b6,#d4af5e);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  display:inline-flex;align-items:center;gap:14px;margin:0 0 14px;
}
.mk-feature-no::after{content:"";flex:1;min-width:60px;height:2px;
  background:linear-gradient(90deg,var(--mk-gold),transparent);}
.mk-feature p{color:var(--mk-text);margin:0;}

/* 右寄せの矢印 */
.mk-feature .has-text-align-right.wp-block-paragraph {
    margin: 2em;
    display: flex;
    justify-content: flex-end;
}

/* リンク本体：元テキストを消して MORE+矢印の土台にする */
.mk-feature .has-text-align-right.wp-block-paragraph a{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:.7em;
  width:auto;
  height:auto;
  padding:.2em 0;
  font-family:var(--mk-serif);
  font-size:0;                       /* 元の「私たちの歴史→」を隠す */
  text-decoration:none;
  transition:transform .4s cubic-bezier(.2,1,.2,1);
}

/* MORE の文字（::before を文字用に転用） */
.mk-feature .has-text-align-right.wp-block-paragraph a::before{
  content:"MORE";
  position:relative;
  top:auto;left:auto;
  width:auto;height:auto;
  font-size:14px;
  font-weight:700;
  letter-spacing:.2em;
  background:linear-gradient(90deg,#f6e6b6,#d4af5e);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  transform:none;
  transition:all .4s cubic-bezier(.2,1,.2,1);
}

/* 矢印（線＋ヘッドを mask で一体成形。::after を転用） */
/* 矢印：線は mask、ヘッドは clip-path の2要素構成にせず、
   1要素で「線＋ヘッド」を background で描く方式に変更 */
.mk-feature .has-text-align-right.wp-block-paragraph a::after{
  content:"";
  position:relative;
  top:auto;right:auto;
  display:inline-block;
  font-size:14px;
  width:13em;
  height:9px;                        /* ヘッドの高さ分を確保 */
  border:0;
  transform:none;
  background:linear-gradient(90deg,#f6e6b6,#d4af5e);
  -webkit-mask:
    linear-gradient(#000 0 0) left center / 100% 2px no-repeat,
    linear-gradient(to top right, transparent 35%, #000 35% 65%, transparent 65%) right top / 10px 4.5px no-repeat,
    linear-gradient(to bottom right, transparent 35%, #000 35% 65%, transparent 65%) right bottom / 10px 4.5px no-repeat;
  mask:
    linear-gradient(#000 0 0) left center / 100% 2px no-repeat,
    linear-gradient(to top right, transparent 35%, #000 35% 65%, transparent 65%) right top / 10px 4.5px no-repeat,
    linear-gradient(to bottom right, transparent 35%, #000 35% 65%, transparent 65%) right bottom / 10px 4.5px no-repeat;
  transition:all .4s cubic-bezier(.2,1,.2,1);
}

/* ホバー：全体が右へ寄り、線が伸びて光る */
.mk-feature .has-text-align-right.wp-block-paragraph a:hover::before{
  -webkit-text-fill-color:#fff;
  color:#fff;
  background:none;
  text-shadow:0 0 8px rgba(243,222,160,.85),0 0 2px rgba(255,255,255,.6);
  filter:none;
}
.mk-feature .has-text-align-right.wp-block-paragraph a:hover::after{
  width:15em;
  background:linear-gradient(90deg,#f6e6b6,#fff);
  filter:drop-shadow(0 0 6px rgba(243,222,160,.7));
}
  
/* ===== 加盟店一覧アコーディオン（Cocoonトグルボックス） ===== */
.home .entry-content .toggle-box {
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 5vw, 2.5rem);
  border: 0;
  background: transparent;
}
.home .entry-content .toggle-box .toggle-button {
  position: relative;
  display: block;
  width: 15em;
  height: 15em;
  margin: 0 auto;
  background: linear-gradient(180deg, #f6e6b6, #d4af5e 60%, #a8822f);
  border: 0;
  cursor: pointer;
  /* --- 招き猫を作るマスクの指定 --- */
  -webkit-mask-image: url("images/lucky-cat.svg");
  mask-image: url("images/lucky-cat.svg");
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  /* ---------------------------------- */
  transition: filter .3s ease, transform .3s ease;
}
.home .entry-content .toggle-box .toggle-button:hover {
  filter: drop-shadow(0 8px 16px rgba(0, 0, 0, .6)) brightness(1.06);
  opacity: 1;
  transform: translateY(-2px);
}
.home .entry-content .toggle-box .toggle-button::before {
  content: attr(data-row-count);
  position: absolute;
  top: 50%;
  left: 46%;
  transform: translateX(-50%);
  font-family: var(--mk-serif);
  font-size: 4em; /* 大きく配置 */
  font-weight: 900;
  color: #fff;
  opacity: 0.95; /* 透かしのように薄くする */
  pointer-events: none; /* クリックの邪魔にならないようにする */
}
.home .entry-content .toggle-box .toggle-checkbox:checked ~ .toggle-content {
  padding: 1em 0;
  background: var(--mk-bg-2);
  border: 0;
  border-top: 0;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}
.home .entry-content .toggle-box table {
  margin: 0;
  border-collapse: collapse;
  background: transparent;
  border: 1px solid rgba(212, 175, 94, .25);
  border-radius: 6px;
  overflow: hidden;
}
.home .entry-content .toggle-box tbody td a {
  background: linear-gradient(180deg, #f6e6b6, #d4af5e) !important;
  -webkit-background-clip: text !important;
  color: transparent !important;
  text-decoration: none !important;
}
.home .entry-content .toggle-box thead {
  border-bottom: 0;
}
.home .entry-content .toggle-box th {
  background: linear-gradient(180deg, #f6e6b6, #d4af5e 60%, #a8822f);
  color: #1b1815 !important;
  font-family: var(--mk-serif, "Shippori Mincho", serif);
  font-weight: 700;
  letter-spacing: .04em;
}
.home .entry-content .toggle-box td,
.home .entry-content .toggle-box th {
  padding: .8em 1em;
  border: 1px solid rgba(212, 175, 94, .2);
  color: var(--mk-text);
}
.home .entry-content .toggle-box tbody tr {
  background: var(--mk-bg-2);
}
.home .entry-content .toggle-box tbody tr:nth-child(2n) {
  background: var(--mk-bg-3);
}
.home .entry-content .toggle-box tbody tr:hover {
  background: rgba(212, 175, 94, .12);
}
@media screen and (max-width: 480px) {
  .home .entry-content .toggle-box .toggle-button {
    padding: 14px 48px 14px 18px;
    letter-spacing: .08em;
  }
  .home .entry-content .toggle-box td,
  .home .entry-content .toggle-box th {
    padding: .6em;
    font-size: 14px;
  }
}

/* ===== 記事一覧 ===== */
/* 1. カード全体のコンテナとリンクの調整 */
.mk-feature .new-list-box {
    background: transparent;
    border: none;
    padding: 0;
}
.mk-feature .new-entry-cards .new-entry-card-link {
    background-color: var(--mk-bg-2, #242019); /* 背景より一段明るいダークブラウン */
    border: 1px solid rgba(212, 175, 94, 0.25); /* ゴールド系の半透明な枠線 */
    border-radius: 8px;
    margin-bottom: 14px;
    padding: 12px;
    transition: all 0.3s ease;
}
.mk-feature .new-entry-cards .new-entry-card-link:hover {
    background-color: var(--mk-bg-3, #2c2720);
    border-color: var(--mk-gold, #d4af5e);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.4);
}
/* 2. 内部要素・テキストのカラー調整 */
.mk-feature .new-entry-card {
    background: transparent !important;
    border: none !important;
}
.mk-feature .new-entry-card-title {
    color: var(--mk-text, #ece7df) !important; /* クリーム系の明るい文字色 */
    font-size: 16px;
    font-weight: 600;
}
.mk-feature .new-entry-card-snippet {
    color: var(--mk-text-dim, #b6ad9c) !important; /* 少しトーンを落とした文字色 */
    font-size: 13px;
    margin-top: 4px;
}
.mk-feature .new-entry-card-post-date{
	color: var(--mk-text, #ece7df) !important; /* クリーム系の明るい文字色 */
}
/* 3. 右側の矢印アイコン（.card-arrow）のカラー調整 */
.mk-feature .new-entry-cards.card-arrow .new-entry-card-link::after {
    color: var(--mk-gold, #d4af5e); /* 矢印をゴールドに変更 */
    right: 16px;
}
/* 4. サムネイル（No Image画像など）の角丸調整 */
.mk-feature .new-entry-card-thumb img {
    border-radius: 4px;
}

/* ===== 広告店紹介（カルーセル）===== */
.mk-ad-swiper{ 
  padding:0.5em;
  padding-bottom: 35px !important; /* ドットが下に入るスペースを確保 */
}
/* カード共通のカスタマイズ */
.mk-ad-swiper .mk-card{ 
  position: relative;
  border:1px solid rgba(212,175,94,.25);
  border-radius:8px;
  overflow:hidden;
  transition:all 0.3s ease;
}
.mk-ad-swiper .mk-card:hover{
  transform:translateY(-4px);
  border-color:var(--mk-gold,#d4af5e);
  box-shadow:0 8px 20px rgba(0,0,0,.45);
}
.mk-ad-swiper .mk-card a{ display:block; text-decoration:none; }
.mk-ad-swiper .mk-card-img{ aspect-ratio:4/3; background:#2a2622; }
.mk-ad-swiper .mk-card-img img{ width:100%; height:100%; object-fit:cover; display:block; }
.mk-ad-swiper .mk-card-cap{ background:linear-gradient(180deg, #f6e6b6, #d4af5e); padding:10px 12px; font-size:14px; text-align:center; }
.mk-ad-swiper .mk-card-badge {
  position: absolute;
  top: 12px;       /* 上からの位置 */
  left: 0;         /* 左からの位置（左端ピッタリ） */
  z-index: 10;     /* 画像や他の要素より前面に出す */
  background: linear-gradient(135deg, #ff512f, #dd2476); /* 目立つ赤〜オレンジのグラデーション */
  color: #ffffff;  /* 文字色は白 */
  font-size: 13px; /* 少し小さめに */
  font-weight: bold;
  padding: 6px 14px 6px 10px;
  border-radius: 0 20px 20px 0; /* 右側だけ丸くしてリボン風に */
  box-shadow: 0 3px 6px rgba(0,0,0,0.3); /* 影をつけて立体感を出す */
  pointer-events: none; /* バッジ部分をホバー/クリックしてもリンクが反応するようにする */
}
.mk-ad-swiper .swiper-button-prev, .mk-ad-swiper .swiper-button-next{ color:var(--mk-gold); }
.mk-ad-swiper .swiper-pagination { bottom: 0px !important; }
.mk-ad-swiper .swiper-pagination-bullet{ background:var(--mk-cream); }
.mk-ad-swiper .swiper-pagination-bullet-active{ background:var(--mk-gold); }
/* 矢印ボタン共通のカスタマイズ */
.mk-stores .mk-arw {
  width: 2.5em;
  height: 2.5em;
  background:var(--mk-gold-br2);
  color:var(--mk-gold);
  border: 1px solid #333333; /* サイトに合わせた濃いめのボーダー */
  border-radius: 50%;        /* 真ん丸にする */
  transition: all 0.3s ease;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08); /* ほんのり影をつけて高級感を */
}
.mk-stores .mk-arw::after {
  font-size: 16px !important;
  font-weight: bold;
}

/* ===== フッター ===== */
.mk-footer{position:relative;
  display:grid;grid-template-columns:320px 1fr auto;align-items:center;gap:30px;
  background:var(--mk-bg-2);border-top:1px solid rgba(212,175,94,.25);}
.mk-footer-map{
  align-self:stretch;min-height:150px;
  background:linear-gradient(135deg,#e9d8a6,#cdb066 60%,#b4923f);
  position:relative;overflow:hidden;
}
.mk-footer-info{padding:26px 0;}
.mk-footer-info h2{
  font-family:var(--mk-serif);font-weight:600;font-size:22px;color:#fff;
  margin:0 0 12px;letter-spacing:.06em;
}
.mk-footer-info p{margin:2px 0;font-size:14px;color:var(--mk-text-dim);}
.mk-footer-info .mk-tel{color:var(--mk-gold-br);font-size:15px;letter-spacing:.04em;}
.mk-social{display:flex;gap:14px;padding:0 36px;}
.mk-social a{
  width:44px;height:44px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(180deg,#e7cd86,#c39b46);color:#1b1815;
  font-weight:700;font-size:15px;transition:transform .25s;
  text-decoration: none !important;
}
.mk-social a:hover{transform:translateY(-3px);}
 
/* ===== ニュース記事 ===== */
.category-news-post.article {
  margin-bottom: 0 !important;
  border-radius: 8px 8px 0 0;
}
.category-news-post .entry-title {
  font-family:var(--mk-serif);font-weight:700;font-style:italic;
  font-size:clamp(22px,2.6vw,34px);
  background:linear-gradient(180deg,#f6e6b6,#d4af5e);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  display:inline-flex;align-items:center;gap:14px;margin:0 0 14px;
  margin: 1em;
}
.category-news-post .entry-content {
  color: var(--mk-text) !important;
  padding: 2em;
  margin-bottom: 0;
}
/* 1. エリア全体の背景と文字色を統一 */
.category-news-post ~ .under-entry-content {
    background-color: var(--mk-bg);
    color: var(--mk-text);
    padding: 30px 20px;
    border-radius: 0 0 8px 8px;
	margin-bottom: 1em;
}
/* 2. 前の記事・次の記事ナビ（pager-post-navi）のカスタマイズ */
.category-news-post ~ .under-entry-content .pager-post-navi { margin-top: 0 !important;}
.category-news-post ~ .under-entry-content .pager-post-navi.post-navi-square a {
    background-color: var(--mk-bg-2);
    border: 1px solid rgba(212, 175, 94, 0.25) !important;
    color: var(--mk-text) !important;
    transition: all 0.3s ease;
}
/* 記事ナビのホバー時：メインのカード一覧（.new-entry-card-link:hover）と挙動を統一 */
.category-news-post ~ .under-entry-content .pager-post-navi.post-navi-square a:hover {
    background-color: var(--mk-bg-3, #2c2720);
    border-color: var(--mk-gold, #d4af5e) !important;
    box-shadow: 0 5px 15px rgba(0,0,0,0.4);
}
/* ナビ内の矢印アイコンとテキストの色調整 */
.category-news-post ~ .under-entry-content .pager-post-navi a .iconfont {
    color: var(--mk-gold, #d4af5e) !important;
}
.category-news-post ~ .under-entry-content .prev-post-title, .category-news-post ~ .under-entry-content .next-post-title {
    color: var(--mk-text, #ece7df);
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
@media screen and (min-width:1024px){
  /* ===== ヘッダー ===== */
  #header-in .logo-header{ display:none !important; }
  /* メニュー全体を中央寄せのflexにする */
  #navi .navi-in > ul{
    display:flex; justify-content:center; align-items:center; flex-wrap:nowrap;
  }
  /* 中央に挿入したHTMLロゴ */
  #navi .navi-in > ul > li.mk-center-logo{
    width:auto !important;          /* Cocoonの固定幅を打ち消す */
    height:auto; margin:0 32px;     /* ロゴ左右の余白 */
    background:transparent !important;
  }
  .mk-logo{text-align:center;line-height:1.05;}
  .mk-logo .mk-logo-icon{
    font-size:13px;color:var(--mk-gold-br);letter-spacing:.3em;
    font-family:var(--mk-serif);
  }
  .mk-logo .mk-logo-en{
    font-family:var(--mk-serif);font-weight:700;font-size:30px;
    letter-spacing:.18em;
    background:linear-gradient(180deg,#f6e6b6,#d4af5e 60%,#a8822f);
    -webkit-background-clip:text;background-clip:text;color:transparent;
  }
  /* 突出が見切れないように、ヘッダーのはみ出しを許可 */
  #navi, #navi .navi-in, #navi .navi-in > ul{ overflow:visible; }
  #navi .navi-in{ position:relative; }   /* 突出の位置基準 */
  /* ロゴ下の半円の突出 */
  .mk-center-logo::after{
    content:"";
    position:absolute;
    left:50%; top:100%;
    transform:translateX(-51%);
    width:15em; height:2em;             /* 幅 = 高さ×2 で正円の下半分 */
    background:#000;                    /* ← ヘッダーと同じ色に合わせる */
    border-radius:0 0 50% 50% / 0 0 100% 100%;
    z-index:6;
  }
  /* 通常メニュー項目の和風ゴールド（任意） */
  #navi .navi-in .item-label{
    font-family:"Yu Mincho","YuMincho",serif; letter-spacing:.06em;
  }
  /* ホバーで金グラデーションの下線 */
  #navi .navi-in a{ position: relative; }
  #navi .navi-in a::after{
    content:""; position:absolute; left:12%; bottom:8px;
    width:76%; height:2px;
    background: linear-gradient(90deg,#f6e6b6,#d4af5e,#9c7a2c);
    transform: scaleX(0); transition:.3s;
  }
  #navi .navi-in a:hover::after{ transform: scaleX(1); }
  /* ロゴには下線を表示しない */
  #navi .navi-in > ul > li.mk-center-logo a:hover::after{transform: scaleX(0); }
}
@media screen and (max-width:1023px){

  /* === モバイルメニュー（SlickNav）を和風ゴールドに === */

  /* メニューバー全体 */
  .slicknav_menu{
    background: #000;
    border-bottom:1px solid rgba(212,175,94,.25);
    padding:0;
  }

  /* MENUボタン */
  .slicknav_btn{
    background:transparent; margin:8px 14px; padding:8px 12px;
    border:1px solid rgba(212,175,94,.45); border-radius:4px;
  }
  .slicknav_menutxt{
    color:#d4af5e; font-family:"Yu Mincho","YuMincho",serif;
    font-weight:700; letter-spacing:.25em; font-size:13px;
  }

  /* ハンバーガーの3本線を金色に */
  .slicknav_icon-bar{
    background-color:#d4af5e !important; box-shadow:none !important;
    width:20px; height:2px; transition:transform .3s, opacity .3s;
  }
  /* 開いたとき×印に変形（数値はバー間隔に合わせ微調整可） */
  .slicknav_open .slicknav_icon-bar:nth-child(1){ transform:translateY(6px) rotate(45deg); }
  .slicknav_open .slicknav_icon-bar:nth-child(2){ opacity:0; }
  .slicknav_open .slicknav_icon-bar:nth-child(3){ transform:translateY(-6px) rotate(-45deg); }

  /* 展開パネル */
  .slicknav_nav{
    background:linear-gradient(180deg,#1b1815,#13110e);
    margin:0; padding:0; border-top:1px solid rgba(212,175,94,.25);
  }
  .slicknav_nav li{ border-bottom:1px solid rgba(212,175,94,.12); }
  .slicknav_nav li:last-child{ border-bottom:0; }

  /* 各項目 */
  .slicknav_nav a{
    margin:0; padding:14px 22px; border-radius:0;
    background:transparent !important; transition:background .25s;
  }
  .slicknav_nav a:hover, .slicknav_nav a:focus{
    background:rgba(212,175,94,.08) !important;
  }
  .slicknav_nav .item-label{
    font-family:"Yu Mincho","YuMincho",serif;
    font-size:16px; letter-spacing:.08em; color:#e8e2d4;
    position:relative; padding-left:18px;
  }
  /* 行頭に金のアクセント */
  .slicknav_nav .item-label::before{
    content:"✦"; position:absolute; left:0; top:50%;
    transform:translateY(-50%); color:#d4af5e; font-size:10px;
  }
  .slicknav_nav a:hover .item-label{ color:#f6e6b6; }
}
@media(max-width:835px){
  .content {margin-top: 0;}
  main.main {padding: 0; margin-top: 0; z-index: auto !important;}
  .page .entry-content{margin-bottom: 1em; margin-left: 0.5em; margin-right: 0.5em;}
  .category-news-post.article {margin-top: 1em; margin-left: 0.5em; margin-right: 0.5em;}
  .site-name-text {
	color:var(--mk-gold-br) !important;
	letter-spacing:.3em;
    font-family:var(--mk-serif); }
  .mk-nav{grid-template-columns:1fr;gap:14px;text-align:center;padding:16px;}
  .mk-nav ul{justify-content:center;flex-wrap:wrap;}
  .mk-nav .mk-nav-left,.mk-nav .mk-nav-right{justify-content:center;}
  .mk-logo{order:-1;}
  .mk-features{grid-template-columns:1fr;gap:34px;}
  .mk-carousel-track{grid-template-columns:1fr 1fr;}
  .mk-footer{grid-template-columns: 1fr; gap: 20px; padding: 20px; text-align: center;}
  .mk-footer-map{height: 200px; min-height: auto;}
  .mk-footer-map img {width: 100%; height: 100%; object-fit: cover; display: block;}
  .mk-social{padding:0 0 26px;justify-content:center;}
}
@media(max-width:520px){
  .mk-carousel-track{grid-template-columns:1fr;}
}
@media(prefers-reduced-motion:reduce){
  .mk-card-img,.mk-social a{transition:none;}
}

/* =============================================================================
   店舗LP用スタイル  ―  Cocoon / 投稿ページ専用
   -----------------------------------------------------------------------------
   ■ スコープ
     すべて「.category-landingpage-post」配下に限定しています。
     → スラッグが "landingpage-post" のカテゴリーに入れた投稿だけに適用され、
       通常の投稿・他ページには一切影響しません。

   ■ 使い方（非エンジニア向け）
     ブロックを選択 →「設定」→「高度な設定」→「追加CSSクラス」に
     下記の "lp-◯◯" を入力するだけ。複数入れる時は半角スペース区切り。
       例）lp-section lp-bg

   ■ まず最初にやること
     1. 店舗LPの投稿に「加盟店」カテゴリーを追加する
     2. 投稿のレイアウトを「1カラム」にする（Cocoon設定 or 投稿の設定）
     3. セクションになるグループブロックは「幅:全幅」にする（横いっぱいの背景帯用）

   ■ 配色・フォントを変えたい時
     下の【①カスタマイズ変数】の値を店舗ごとのページにあるカスタムCSS上で変更してください。
============================================================================= */
/* =========================================================
   Landing Page  ―  category-landingpage-post
   既存のクラス名（.lp-hero / .lp-cards / .lp-info など）は
   そのまま使えます。子テーマCSS末尾に貼り替えてください。
   ========================================================= */

.category-landingpage-post{
  /* ---- カラートークン（ここを変えれば全体の色が変わります）---- */
  --lp-accent:#1f7a6d;          /* メインカラー */
  --lp-accent-2:#caa765;        /* アクセント（ゴールド） */
  --lp-accent-dark:#12534a;
  --lp-accent-soft:#eef5f3;
  --lp-ink:#23302c;
  --lp-muted:#6b756f;
  --lp-bg:#ffffff;
  --lp-bg-soft:#f7f5ef;
  --lp-line:#e8e4d9;

  /* ---- レイアウト・装飾トークン ---- */
  --lp-content:1100px;
  --lp-narrow:760px;
  --lp-gutter:clamp(1.25rem,5vw,3rem);
  --lp-pad-y:clamp(4rem,9vw,7rem);
  --lp-pad-y-tight:clamp(2.25rem,5vw,3.25rem);
  --lp-radius:18px;
  --lp-radius-sm:12px;
  --lp-shadow:0 18px 50px -24px rgba(20,40,35,.32);
  --lp-shadow-sm:0 8px 24px -14px rgba(20,40,35,.28);

  --lp-serif:"Shippori Mincho","Yu Mincho",YuMincho,"Hiragino Mincho ProN",serif;
  --lp-sans:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
}

/* テーマ既定の見出し装飾をリセット */
.category-landingpage-post .article-header{display:none}
.category-landingpage-post .lp-section :where(h2,h3,h4){
  border:0;background:none;padding-left:0;margin-top:0;
}
.category-landingpage-post .entry-content{
  font-family:var(--lp-sans);
  color:var(--lp-ink);
  line-height:1.95;
  font-size:16px;
  margin:0;
  background:var(--lp-bg);
  -webkit-font-smoothing:antialiased;
}
.category-landingpage-post .lp-section,
.category-landingpage-post .lp-section *{box-sizing:border-box}

/* =========================================================
   セクション共通
   ========================================================= */
.category-landingpage-post .lp-section{
  position:relative;
  padding:var(--lp-pad-y) var(--lp-gutter);
}
.category-landingpage-post .lp-section>*{
  max-width:var(--lp-content);
  margin-inline:auto;
}
.category-landingpage-post .lp-tight{
  padding-block:var(--lp-pad-y-tight);
}
.category-landingpage-post .lp-narrow>*{max-width:var(--lp-narrow)}
.category-landingpage-post .lp-center{text-align:center}

.category-landingpage-post .lp-bg{background:var(--lp-bg-soft)}
.category-landingpage-post .lp-bg-soft{background:var(--lp-accent-soft)}
.category-landingpage-post .lp-bg-accent{
  background:
    radial-gradient(120% 120% at 0% 0%,rgba(255,255,255,.10),transparent 55%),
    linear-gradient(135deg,var(--lp-accent),var(--lp-accent-dark));
  color:#fff;
}
.category-landingpage-post .lp-bg-accent :where(h1,h2,h3,h4,h5,p,li,a,span){color:#fff}

/* セクション間を細い罫で柔らかく区切る */
.category-landingpage-post .lp-section + .lp-section:not(.lp-bg):not(.lp-bg-soft):not(.lp-bg-accent)::before{
  content:"";position:absolute;left:50%;top:0;transform:translateX(-50%);
  width:min(100% - 2*var(--lp-gutter),var(--lp-content));
  height:1px;background:var(--lp-line);
}

/* =========================================================
   ヒーロー
   ========================================================= */
.category-landingpage-post .lp-hero{
  min-height:clamp(460px,76vh,720px);
  display:flex;align-items:center;justify-content:center;text-align:center;
}
.category-landingpage-post .lp-hero.wp-block-cover .wp-block-cover__background{
  background:linear-gradient(180deg,rgba(18,28,25,.30),rgba(18,28,25,.62)) !important;
  opacity:1 !important;
}
.category-landingpage-post .lp-hero .wp-block-cover__inner-container{
  max-width:var(--lp-content);
  padding-inline:var(--lp-gutter);
}
.category-landingpage-post .lp-hero :where(h1,h2,p){
  color:#fff !important;text-shadow:0 2px 18px rgba(0,0,0,.45);
}
.category-landingpage-post .lp-hero :where(h1,h2){
  margin:0 0 .45em;
  font-family:var(--lp-serif);
  font-weight:700;
  font-size:clamp(2rem,5.6vw,3.6rem);
  line-height:1.28;
  letter-spacing:.05em;
}
.category-landingpage-post .lp-hero p:not(.lp-eyebrow){
  margin:0 auto 1.8em;max-width:34em;
  font-size:clamp(1rem,2.2vw,1.22rem);
  font-weight:400;letter-spacing:.02em;
}

/* =========================================================
   見出し
   ========================================================= */
.category-landingpage-post .lp-eyebrow{
  display:block;margin:0 0 .8rem;text-align:center;
  font-size:.78rem;font-weight:700;letter-spacing:.32em;
  text-transform:uppercase;color:var(--lp-accent-2);
}
.category-landingpage-post .lp-hero .lp-eyebrow{
  color:#f4e6c4 !important;text-shadow:0 2px 12px rgba(0,0,0,.4);
}
.category-landingpage-post .entry-content .lp-heading{
  border:0;background:none;padding:0;
  margin:0 auto clamp(2rem,4vw,3rem);
  max-width:var(--lp-content);text-align:center;
  font-family:var(--lp-serif);
  font-size:clamp(1.6rem,3.8vw,2.4rem);
  font-weight:700;line-height:1.4;letter-spacing:.04em;
  color:var(--lp-ink);
}
.category-landingpage-post .entry-content .lp-heading::after{
  content:"";display:block;width:2.6em;height:3px;
  margin:1rem auto 0;border-radius:2px;
  background:linear-gradient(90deg,var(--lp-accent),var(--lp-accent-2));
}
.category-landingpage-post .lp-bg-accent .lp-heading,
.category-landingpage-post .lp-bg-accent .lp-eyebrow{color:#fff}
.category-landingpage-post .lp-bg-accent .lp-heading::after{
  background:rgba(255,255,255,.85);
}
.category-landingpage-post .lp-lead{
  margin:-1rem auto 2.4rem;max-width:var(--lp-narrow);
  text-align:center;font-size:1.1rem;color:var(--lp-muted);
}

/* =========================================================
   情報テーブル（.lp-info）
   ========================================================= */
.category-landingpage-post .lp-info table{
  width:100%;border-collapse:separate;border-spacing:0;
  background:#fff;border:1px solid var(--lp-line);
  border-radius:var(--lp-radius);overflow:hidden;
  box-shadow:var(--lp-shadow-sm);
}
.category-landingpage-post .lp-info :where(td,th){
  padding:1.05em 1.4em;border-top:1px solid var(--lp-line);
  text-align:left;vertical-align:top;line-height:1.75;
}
.category-landingpage-post .lp-info tr:first-child :where(td,th){border-top:0}
.category-landingpage-post .lp-info :where(td,th):first-child{
  width:32%;background:var(--lp-bg-soft);
  border-left:3px solid var(--lp-accent);
  font-weight:700;color:var(--lp-ink);white-space:nowrap;
}
@media (max-width:600px){
  .category-landingpage-post .lp-info :where(td,th):first-child{
    width:38%;white-space:normal;
  }
}

/* =========================================================
   カード（.lp-cards）
   ========================================================= */
.category-landingpage-post .lp-cards.column-wrap{gap:1.5rem}
.category-landingpage-post .lp-cards.column-wrap>div{
  position:relative;overflow:hidden;
  background:#fff;border:1px solid var(--lp-line);
  border-radius:var(--lp-radius);padding:2rem 1.8rem;
  box-shadow:var(--lp-shadow-sm);
  transition:transform .35s cubic-bezier(.2,1,.2,1),box-shadow .35s ease,border-color .35s ease;
}
.category-landingpage-post .lp-cards.column-wrap>div::before{
  content:"";position:absolute;inset:0 0 auto 0;height:4px;
  background:linear-gradient(90deg,var(--lp-accent),var(--lp-accent-2));
  transform:scaleX(0);transform-origin:left;
  transition:transform .4s cubic-bezier(.2,1,.2,1);
}
.category-landingpage-post .lp-cards.column-wrap>div:hover{
  transform:translateY(-6px);
  border-color:transparent;
  box-shadow:var(--lp-shadow);
}
.category-landingpage-post .lp-cards.column-wrap>div:hover::before{transform:scaleX(1)}
.category-landingpage-post .lp-cards.column-wrap>div h3{
  margin:.3rem 0 .55rem;font-family:var(--lp-serif);
  font-size:1.22rem;font-weight:700;letter-spacing:.02em;
}
.category-landingpage-post .lp-cards.column-wrap>div p:not(.lp-icon){
  margin-bottom: 3em;color:var(--lp-muted);font-size:.98rem;
}
.category-landingpage-post .lp-cards.column-wrap>div:empty{display:none}

/* カード内の画像を上端まで馴染ませる */
.category-landingpage-post .lp-cards.column-wrap>div .wp-block-image{
  margin:-2rem -1.8rem 1.4rem;border-radius:0;overflow:hidden;
}
.category-landingpage-post .lp-cards.column-wrap>div .wp-block-image img{
  width:100%;aspect-ratio:4/3;object-fit:cover;display:block;
}

.category-landingpage-post .lp-icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:64px;height:64px;margin-bottom:1rem;border-radius:50%;
  background:var(--lp-accent-soft);color:var(--lp-accent);font-size:1.7rem;
  box-shadow:inset 0 0 0 1px rgba(31,122,109,.12);
}

/* =========================================================
   ギャラリー（.lp-gallery）
   ========================================================= */
.category-landingpage-post .lp-gallery :where(figure,.wp-block-image){
  overflow:hidden;border-radius:var(--lp-radius);margin:0;
  box-shadow:var(--lp-shadow-sm);
}
.category-landingpage-post .lp-gallery img{
  display:block;width:100%;height:100%;object-fit:cover;
  transition:transform .55s cubic-bezier(.2,1,.2,1);
}
.category-landingpage-post .lp-gallery :where(figure,.wp-block-image):hover img{
  transform:scale(1.06);
}

/* =========================================================
   ★ 動画セクション（.lp-video）  ―  新規追加
   YouTube/Vimeo 埋め込み・自前動画どちらにも対応
   ========================================================= */
.category-landingpage-post .lp-video.wp-block-embed{margin:0 auto;}
.category-landingpage-post .lp-video .wp-block-embed__wrapper{margin:0 auto;}
.category-landingpage-post .lp-video .video-container{
  max-width:none;width:100%;margin:0 auto;
}
.category-landingpage-post .lp-video .video,
.category-landingpage-post .lp-video .lp-video-frame{
  position:relative;border-radius:var(--lp-radius);overflow:hidden;
  box-shadow:var(--lp-shadow);background:#0c1411;
}
.category-landingpage-post .lp-video .lp-video-frame{aspect-ratio:16/9}
/* ゴールドの細枠で上質感を演出 */
.category-landingpage-post .lp-video .video::after,
.category-landingpage-post .lp-video .lp-video-frame::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  border-radius:inherit;box-shadow:inset 0 0 0 3px rgba(202,167,101,.45);
}
/* iframe / video を枠いっぱいに */
.category-landingpage-post .lp-video :where(.video,.lp-video-frame) iframe,
.category-landingpage-post .lp-video :where(.video,.lp-video-frame) video{
  position:absolute;inset:0;width:100%;height:100%;border:0;display:block;object-fit:cover;
}

/* =========================================================
   CTA ボタン
   ========================================================= */
.category-landingpage-post .lp-cta .wp-block-button__link,
.category-landingpage-post a.lp-cta{
  display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  padding:1em 2.6em;border:0;border-radius:999px;
  background:linear-gradient(135deg,var(--lp-accent),var(--lp-accent-dark)) !important;
  color:#fff !important;font-weight:700;font-size:1.05rem;letter-spacing:.04em;
  text-decoration:none;box-shadow:var(--lp-shadow-sm);
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
.category-landingpage-post .lp-cta .wp-block-button__link:hover,
.category-landingpage-post a.lp-cta:hover{
  transform:translateY(-3px);filter:brightness(1.05);
  box-shadow:0 18px 40px -16px rgba(20,40,35,.5);
}
.category-landingpage-post .lp-cta-outline .wp-block-button__link,
.category-landingpage-post a.lp-cta-outline{
  display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  padding:.95em 2.4em;border:2px solid var(--lp-accent);border-radius:999px;
  background:transparent !important;color:var(--lp-accent) !important;
  font-weight:700;letter-spacing:.04em;text-decoration:none;
  transition:background .2s ease,color .2s ease,transform .2s ease;
}
.category-landingpage-post .lp-cta-outline .wp-block-button__link:hover,
.category-landingpage-post a.lp-cta-outline:hover{
  background:var(--lp-accent) !important;color:#fff !important;transform:translateY(-3px);
}
.category-landingpage-post :where(.lp-cta,.lp-cta-outline) .wp-block-button__link:focus-visible{
  outline:3px solid var(--lp-accent-2);outline-offset:3px;
}

/* 追従CTAバー（モバイル） */
.category-landingpage-post .lp-cta-bar{display:none}
@media (max-width:782px){
  .category-landingpage-post .lp-cta-bar{
    display:flex;gap:.6rem;position:fixed;left:0;right:0;bottom:0;z-index:9999;
    padding:.6rem .8rem calc(.6rem + env(safe-area-inset-bottom));
    background:rgba(255,255,255,.94);backdrop-filter:blur(10px);
    box-shadow:0 -8px 24px -10px rgba(0,0,0,.28);margin-bottom:0;
  }
  .category-landingpage-post .lp-cta-bar .wp-block-buttons{width:100%;gap:.6rem}
  .category-landingpage-post .lp-cta-bar .wp-block-button{flex:1;margin:0}
  .category-landingpage-post .lp-cta-bar .wp-block-button__link{
    width:100%;padding:.95em 1em;border-radius:14px;box-shadow:none;
  }
  body:has(.lp-cta-bar) .mk-footer{
    padding-bottom:calc(5.5rem + env(safe-area-inset-bottom));
  }
}

/* =========================================================
   地図・区切り線・フッター連携
   ========================================================= */
.category-landingpage-post .lp-map iframe{
  display:block;width:100%;aspect-ratio:16/9;border:0;
  border-radius:var(--lp-radius);box-shadow:var(--lp-shadow-sm);
}
.category-landingpage-post .lp-divider{
  border:0;height:3px;width:56px;margin:2.2rem auto;border-radius:2px;
  background:linear-gradient(90deg,var(--lp-accent),var(--lp-accent-2));
}

.category-landingpage-post.article{margin-bottom:0 !important;border-radius:18px 18px 0 0}
.category-landingpage-post~.under-entry-content{
  background:var(--lp-bg-soft);padding:1.25em 3em;
}

/* =========================================================
   入場アニメーション（控えめ）
   ========================================================= */
@media (prefers-reduced-motion:no-preference){
  @supports (animation-timeline:view()){
    .category-landingpage-post .lp-section>*{
      animation:lp-rise both;
      animation-timeline:view();
      animation-range:entry 0% cover 22%;
    }
    @keyframes lp-rise{
      from{opacity:0;transform:translateY(26px)}
      to{opacity:1;transform:none}
    }
  }
}
