/* LEAP FAQ Style — /faq/（body.leap-faq-page）だけに適用。
   LEAP TOP／/contact/／/shop/ と同じトーン・タイポグラフィを踏襲。
   質問見出しごとにバラついていた装飾（クラス指定/インラインcolor指定/指定なし混在）を
   ここで一括して上書きし、見た目だけを統一する。文章・リンク先・HTML構造は変更しない。 */

body.leap-faq-page{
  --lf-white:#ffffff;
  --lf-ivory:#f7f5f0;
  --lf-deep-green:#1c3327;
  --lf-brown:#4a3626;
  --lf-ink:#211e1a;
  --lf-muted:#5c574d;
  --lf-line:#e4ded1;
  --lf-serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;
  --lf-serif-en:"Cormorant Garamond",var(--lf-serif);
  --lf-sans:"Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans JP",sans-serif;
  --lf-ease:cubic-bezier(.16,.7,.2,1);
}

body.leap-faq-page main,
body.leap-faq-page main.wp-block-group{
  background:var(--lf-ivory);
  padding-bottom:120px;
}

/* --- タイトル「FAQ」 --- */
body.leap-faq-page .wp-block-post-title{
  font-family:var(--lf-serif-en);
  font-weight:500;
  font-size:clamp(38px,4.4vw,56px);
  letter-spacing:.04em;
  color:var(--lf-ink);
}

/* --- 本文コンテナ --- */
body.leap-faq-page .entry-content{
  max-width:820px;
  margin-inline:auto !important;
  padding-inline:clamp(20px,5vw,32px);
  color:var(--lf-ink);
  font-family:var(--lf-sans);
}
body.leap-faq-page .entry-content.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){
  max-width:none;
  margin-left:0 !important;
  margin-right:0 !important;
}

/* --- 「よくあるご質問」見出し --- */
body.leap-faq-page .entry-content h2.wp-block-heading{
  font-family:var(--lf-serif);
  font-weight:700;
  font-size:22px;
  letter-spacing:.02em;
  color:var(--lf-ink);
  margin:0 0 4px;
  padding-bottom:14px;
  border-bottom:2px solid var(--lf-deep-green);
}

/* --- 目次リスト：カード化して見やすく --- */
body.leap-faq-page .entry-content ul.wp-block-list{
  list-style:none;
  padding:6px 0 !important;
  margin:0;
  background:var(--lf-white);
  border:1px solid var(--lf-line);
  border-radius:10px;
  overflow:hidden;
}
body.leap-faq-page .entry-content ul.wp-block-list li{
  padding:0 !important;
  border-bottom:1px solid var(--lf-line);
}
body.leap-faq-page .entry-content ul.wp-block-list li:last-child{
  border-bottom:0;
}
body.leap-faq-page .entry-content ul.wp-block-list li a{
  display:flex;
  align-items:center;
  gap:10px;
  padding:14px 20px;
  font:500 14.5px/1.5 var(--lf-sans);
  color:var(--lf-ink) !important;
  text-decoration:none !important;
  transition:background-color .25s var(--lf-ease), color .25s var(--lf-ease), padding-left .25s var(--lf-ease);
}
body.leap-faq-page .entry-content ul.wp-block-list li a::before{
  content:"→";
  color:var(--lf-deep-green);
  font-weight:700;
  flex:0 0 auto;
}
body.leap-faq-page .entry-content ul.wp-block-list li a:hover{
  background:var(--lf-ivory);
  color:var(--lf-deep-green) !important;
  padding-left:24px;
}

/* --- 区切り線（緑色でインライン指定されている「・・・」行）はトーンを揃えるだけに留める --- */
body.leap-faq-page .entry-content p.wp-block-paragraph span[style*="26, 61, 40"]{
  letter-spacing:.15em;
}

/* --- 質問見出し（h4）：装飾のバラつきを打ち消して統一 --- */
body.leap-faq-page .entry-content h4.wp-block-heading,
body.leap-faq-page .entry-content h4.wp-block-heading span{
  color:var(--lf-deep-green) !important;
}
body.leap-faq-page .entry-content h4.wp-block-heading{
  font-family:var(--lf-serif);
  font-weight:700;
  font-size:clamp(18px,2vw,21px);
  letter-spacing:.02em;
  line-height:1.5;
  margin:0 0 2px;
  scroll-margin-top:24px;
}

/* --- 通常の本文段落 --- */
body.leap-faq-page .entry-content p.wp-block-paragraph{
  font:400 14.5px/1.9 var(--lf-sans);
  color:var(--lf-ink);
}
body.leap-faq-page .entry-content p.wp-block-paragraph strong{
  color:var(--lf-deep-green);
  font-weight:700;
}
body.leap-faq-page .entry-content p.wp-block-paragraph a{
  color:var(--lf-deep-green);
  font-weight:600;
  text-decoration:none;
  border-bottom:1px solid #1c332733;
}
body.leap-faq-page .entry-content p.wp-block-paragraph a:hover{
  border-bottom-color:var(--lf-deep-green);
}

/* --- 「▶︎」+ ショップボタンの行：縦位置を揃える --- */
body.leap-faq-page .entry-content .wp-block-group:has(> .wp-block-buttons){
  align-items:center !important;
  gap:12px;
}
body.leap-faq-page .entry-content .wp-block-group:has(> .wp-block-buttons) > p.wp-block-paragraph{
  color:var(--lf-deep-green);
  font-size:15px;
  margin:0;
  flex:0 0 auto;
}

/* --- ボタン統一：is-style-fill / is-style-outline / 無指定 が混在しているのを1つの見た目に --- */
body.leap-faq-page .entry-content .wp-block-button .wp-block-button__link{
  background:var(--lf-deep-green) !important;
  color:var(--lf-white) !important;
  border:0 !important;
  border-radius:999px !important;
  padding:9px 22px !important;
  font:600 13px/1.4 var(--lf-sans) !important;
  letter-spacing:.02em;
  box-shadow:none !important;
  transition:background-color .3s var(--lf-ease), transform .3s var(--lf-ease);
}
body.leap-faq-page .entry-content .wp-block-button .wp-block-button__link:hover{
  background:#254a37 !important;
  transform:translateY(-2px);
}
/* 発送・賞味期限セクションの見出し的ボタン（is-style-outline, フォントサイズ大）は少し大きめの表示に */
body.leap-faq-page .entry-content .wp-block-button.is-style-outline .wp-block-button__link{
  padding:11px 26px !important;
  font-size:14.5px !important;
}

/* --- 最短発送日の案内ボックス（📌の3行）：背景を効かせて視認性アップ --- */
body.leap-faq-page .entry-content > .wp-block-group[style*="border-width"]{
  background:var(--lf-white) !important;
  border-color:var(--lf-line) !important;
}
body.leap-faq-page .entry-content > .wp-block-group[style*="border-width"] p.wp-block-paragraph{
  font-size:13.5px;
  margin:0 0 8px;
}
body.leap-faq-page .entry-content > .wp-block-group[style*="border-width"] p.wp-block-paragraph:last-child{
  margin-bottom:0;
}

/* ============ タブレット（980px） ============ */
@media (max-width:980px){
  body.leap-faq-page main,
  body.leap-faq-page main.wp-block-group{ padding-bottom:96px; }
}

/* ============ スマホ（767px） ============ */
@media (max-width:767px){
  body.leap-faq-page .entry-content{ padding-inline:18px; }
  body.leap-faq-page .entry-content ul.wp-block-list li a{ padding:12px 16px; font-size:14px; }
  body.leap-faq-page .entry-content .wp-block-button .wp-block-button__link{
    display:block;
    text-align:center;
  }
}
