/**
 * 見出しタイポグラフィ（くらもと日の出準拠）
 * https://www.kuramotohinode.com/
 *
 * 本文 15px ベース / くらもと日の出は本文 1.125rem（18px）相当
 */

:root {
  --suzuwa-h1-size: 2.25rem;
  --suzuwa-h2-size: 1.5rem;
  --suzuwa-h3-size: 1.25rem;
  --suzuwa-h4-size: 1.125rem;
  --suzuwa-h5-size: 20px;
  --suzuwa-h6-size: 16px;
  --suzuwa-heading-color: #000;
  --suzuwa-heading-lh: 1.5;
  --suzuwa-heading-ls: 0.2em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  color: var(--suzuwa-heading-color);
}

/* セクション見出し（TOP各ブロック h2） */
.suzuwa-section__title,
.suzuwa-page-hero__title {
  font-family: var(--font-mincho);
  font-size: var(--suzuwa-h1-size);
  font-weight: 400;
  line-height: var(--suzuwa-heading-lh);
  letter-spacing: var(--suzuwa-heading-ls);
  color: var(--suzuwa-heading-color);
}

.suzuwa-section__title--left {
  text-align: left;
}

/* 親テーマ・ブロックの見出し下装飾（青線等）を無効化 */
body.suzuwa-site .section-title::after,
body.suzuwa-site .vk_block-title::after,
body.suzuwa-site h1.wp-block-heading::after,
body.suzuwa-site h2.wp-block-heading::after,
body.suzuwa-site h3.wp-block-heading::after,
body.suzuwa-site h4.wp-block-heading::after,
body.suzuwa-site h5.wp-block-heading::after,
body.suzuwa-site h6.wp-block-heading::after,
body.suzuwa-site .entry-title::after,
body.suzuwa-site .vk_post__title::after {
  display: none !important;
  content: none !important;
}

/* 見出し下アンダーライン（#c8860a・スクロールで表示） */
.suzuwa-heading-line,
.suzuwa-section__title,
.suzuwa-page-hero__title {
  position: relative;
  border-bottom: none !important;
  text-decoration: none !important;
}

.suzuwa-heading-line::after,
.suzuwa-section__title::after,
.suzuwa-page-hero__title::after {
  content: '';
  display: block;
  width: 100%;
  height: 1.5px;
  margin-top: 0.5rem;
  background-color: #c8860a;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.85s cubic-bezier(0.4, 0, 0.2, 1);
}

.suzuwa-heading-line.is-line-visible::after,
.suzuwa-section__title.is-line-visible::after,
.suzuwa-page-hero__title.is-line-visible::after {
  transform: scaleX(1);
}

/* お知らせ・ブログ・店舗情報など中央見出し：中央から左右へ */
.suzuwa-section__header--center .suzuwa-section__title::after {
  transform-origin: center center;
}

/* 名物・PHILOSOPHY：左から右（ブログに近い見え方になるようやや遅め） */
.suzuwa-specialty .suzuwa-section__title::after,
.suzuwa-philosophy .suzuwa-section__title::after {
  transform-origin: left center;
  transition: transform 1.2s cubic-bezier(0.4, 0, 0.2, 1);
}

/* 下層ページヒーロー h1 */
.suzuwa-page-hero__inner .suzuwa-page-hero__title {
  display: inline-block;
  margin: 0;
}

/* 記事・固定ページ本文 */
.suzuwa-entry__content h1,
.suzuwa-entry__content h2,
.suzuwa-entry__content h3,
.suzuwa-entry__content h4,
.suzuwa-entry__content h5,
.suzuwa-entry__content h6,
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6,
.post_text h1,
.post_text h2,
.post_text h3,
.post_text h4,
.post_text h5,
.post_text h6 {
  font-family: var(--font-mincho);
  font-weight: 400;
  color: var(--suzuwa-heading-color);
}

.suzuwa-entry__content h1,
.entry-content h1,
.post_text h1 {
  margin: 0 0 20px;
  font-size: var(--suzuwa-h1-size);
  line-height: var(--suzuwa-heading-lh);
  letter-spacing: var(--suzuwa-heading-ls);
}

.suzuwa-entry__content h2,
.suzuwa-entry__content h3,
.suzuwa-entry__content h4,
.suzuwa-entry__content h5,
.suzuwa-entry__content h6,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6,
.post_text h2,
.post_text h3,
.post_text h4,
.post_text h5,
.post_text h6 {
  margin-top: 0;
  margin-bottom: 35px;
  padding: 0;
  background: none;
  border: none;
}

.suzuwa-entry__content h2,
.entry-content h2,
.post_text h2 {
  font-size: var(--suzuwa-h2-size);
  line-height: var(--suzuwa-heading-lh);
  letter-spacing: var(--suzuwa-heading-ls);
}

.suzuwa-entry__content h3,
.entry-content h3,
.post_text h3 {
  font-size: var(--suzuwa-h3-size);
  line-height: var(--suzuwa-heading-lh);
  letter-spacing: var(--suzuwa-heading-ls);
}

.suzuwa-entry__content h4,
.entry-content h4,
.post_text h4 {
  font-size: var(--suzuwa-h4-size);
  line-height: 1.6;
  letter-spacing: var(--suzuwa-heading-ls);
}

.suzuwa-entry__content h4::before,
.suzuwa-entry__content h4::after,
.entry-content h4::before,
.entry-content h4::after,
.post_text h4::before,
.post_text h4::after {
  display: none;
  content: none;
}

.suzuwa-entry__content h5,
.entry-content h5,
.post_text h5 {
  font-size: var(--suzuwa-h5-size);
  line-height: 1.6;
  letter-spacing: var(--suzuwa-heading-ls);
}

.suzuwa-entry__content h6,
.entry-content h6,
.post_text h6 {
  font-size: var(--suzuwa-h6-size);
  line-height: 1.6;
  letter-spacing: var(--suzuwa-heading-ls);
}

/* ブロックエディタ見出し */
.section-title,
.vk_block-title,
h1.wp-block-heading,
h2.wp-block-heading,
h3.wp-block-heading,
h4.wp-block-heading,
h5.wp-block-heading,
h6.wp-block-heading {
  font-family: var(--font-mincho);
  font-weight: 400;
  line-height: var(--suzuwa-heading-lh);
  letter-spacing: var(--suzuwa-heading-ls);
  color: var(--suzuwa-heading-color);
}

h1.wp-block-heading,
.section-title {
  font-size: var(--suzuwa-h1-size);
}

h2.wp-block-heading,
.vk_block-title {
  font-size: var(--suzuwa-h2-size);
}

h3.wp-block-heading {
  font-size: var(--suzuwa-h3-size);
}

h4.wp-block-heading {
  font-size: var(--suzuwa-h4-size);
}

h5.wp-block-heading {
  font-size: var(--suzuwa-h5-size);
}

h6.wp-block-heading {
  font-size: var(--suzuwa-h6-size);
}

.entry-header .entry-title,
.vk_post__title {
  color: var(--suzuwa-heading-color);
}

/* 哲学セクション副見出し */
.suzuwa-philosophy__subtitle {
  font-size: var(--suzuwa-h3-size);
  letter-spacing: var(--suzuwa-heading-ls);
}

@media (max-width: 768px) {
  :root {
    --suzuwa-h1-size: 1.625rem;
    --suzuwa-h2-size: 1.375rem;
    --suzuwa-h3-size: 1.125rem;
    --suzuwa-h4-size: 1rem;
    --suzuwa-h5-size: 18px;
    --suzuwa-h6-size: 15px;
  }

  .suzuwa-section__title,
  .suzuwa-page-hero__title {
    font-size: 1.5rem;
  }
}
