/* ==========================================================
   base.css — 変数 / リセット / 全体タイポグラフィ
   ========================================================== */
:root{
  --navy:#1b2b4b;
  --navy-dark:#131f38;
  --gold:#c9a15a;
  --gold-dark:#b8863a;
  --cream:#f7f4ee;
  --line-green:#06c755;
  --orange:#d9822b;
  --text:#33312c;
  --muted:#7a7568;
  --border:#e4ddcf;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{
  font-family:"Hiragino Sans","Yu Gothic",-apple-system,BlinkMacSystemFont,sans-serif;
  color:var(--text);
  background:#fff;
  line-height:1.7;
}
a{text-decoration:none;color:inherit;}

/* ===== リンク・ボタン全般の共通ホバー/タップアニメーション ===== */
a.pill-btn,
a.method-card,
a.quick-row,
a.cat-chip,
a.case-scroll-item,
a.case-card,
a.article-card,
a.related-card,
a.service-more,
a.num,
a.num2,
.cta-buttons a,
.cta-buttons > div a,
.step-item a,
.navbar a,
.foot-links a{
  transition:opacity .2s ease;
}
a.pill-btn:hover,     a.pill-btn:active,
a.method-card:hover,  a.method-card:active,
a.quick-row:hover,    a.quick-row:active,
a.cat-chip:hover,     a.cat-chip:active,
a.case-scroll-item:hover, a.case-scroll-item:active,
a.case-card:hover,    a.case-card:active,
a.article-card:hover, a.article-card:active,
a.related-card:hover, a.related-card:active,
a.service-more:hover, a.service-more:active,
a.num:hover,          a.num:active,
a.num2:hover,         a.num2:active,
.cta-buttons a:hover,  .cta-buttons a:active{
  opacity:.7;
}

img{max-width:100%;display:block;}
ul,ol{list-style:none;}
table{border-collapse:collapse;width:100%;}
button{font-family:inherit;cursor:pointer;}

.breadcrumb{padding:14px 40px;font-size:13px;color:var(--muted);border-bottom:1px solid var(--border);}
.breadcrumb a{color:var(--gold-dark);}

main{max-width:1100px;margin:0 auto;padding:56px 40px 80px;}
.narrow main, main.narrow{max-width:960px;}

@media screen and (max-width: 860px) {
	main {
		padding: 10% 5% 12%;
	}
}

.section-title{
  font-size:22px;font-weight:700;color:var(--navy);
  display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:14px;
}
.section-title::before,.section-title::after{content:"";width:44px;height:1px;background:var(--gold);}
.section-lead{text-align:center;max-width:680px;margin:0 auto 40px;color:var(--muted);font-size:14px;}

.note-box{
  display:flex;gap:16px;align-items:flex-start;background:var(--cream);border:1px solid var(--border);
  border-radius:10px;padding:22px 26px;margin-bottom:40px;
}
.note-box .ic{
  width:44px;height:44px;border-radius:50%;background:#fff;border:1.5px solid var(--gold);
  display:flex;align-items:center;justify-content:center;color:var(--gold-dark);font-size:18px;flex-shrink:0;
}
.note-box p{font-size:13px;color:var(--muted);}

.sticky{position:sticky;top:20px;}

/* 全画面メニュー表示中は背面のスクロールを止める */
body.kkm-nav-open{overflow:hidden;}
