/* 西濃 獣害パトロール事業サイト 共通スタイル
   基調カラー: navy / cream / gold
   ------------------------------------------------ */
:root{
  --navy:      #14264a;   /* 主色（信頼・落ち着き） */
  --navy-deep: #0e1b38;
  --navy-soft: #24406f;
  --cream:     #f8f4ea;   /* 背景（やわらかさ） */
  --cream-2:   #fffdf7;
  --gold:      #c9a227;   /* 差し色（品位・アクセント） */
  --gold-soft: #e6cf82;
  --ink:       #23262d;   /* 本文 */
  --ink-soft:  #55606f;
  --line:      #e4ddc9;
  --maxw:      1080px;
  --radius:    14px;
  --shadow:    0 8px 30px rgba(20,38,74,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,system-ui,sans-serif;
  color:var(--ink);
  background:var(--cream);
  line-height:1.8;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{color:var(--navy-soft);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 20px}

/* ---- ヘッダー ---- */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(248,244,234,.92);
  backdrop-filter:saturate(1.2) blur(6px);
  border-bottom:1px solid var(--line);
}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--navy);letter-spacing:.02em}
.brand .mark{width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,var(--navy),var(--navy-soft));
  display:grid;place-items:center;color:var(--gold-soft);font-size:16px}
.nav{display:flex;gap:22px;font-size:.94rem;font-weight:600}
.nav a{color:var(--navy)}
@media(max-width:640px){ .nav{display:none} }

/* ---- ボタン ---- */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:14px 26px;border-radius:999px;font-weight:700;font-size:1rem;
  border:2px solid transparent;cursor:pointer;transition:.18s;text-decoration:none;
}
.btn-gold{background:var(--gold);color:#3a2f06}
.btn-gold:hover{background:var(--gold-soft);text-decoration:none;transform:translateY(-1px)}
.btn-navy{background:transparent;color:var(--cream);border-color:var(--gold-soft)}
.btn-navy:hover{background:rgba(255,255,255,.08);text-decoration:none}
.btn-ghost{background:#fff;color:var(--navy);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--gold);text-decoration:none}

/* ---- ヒーロー ---- */
.hero{
  background:
    radial-gradient(1200px 500px at 80% -10%, rgba(201,162,39,.18), transparent 60%),
    linear-gradient(160deg,var(--navy-deep),var(--navy) 60%,var(--navy-soft));
  color:var(--cream);
  padding:84px 0 92px;
}
.hero .eyebrow{color:var(--gold-soft);font-weight:700;letter-spacing:.18em;font-size:.82rem;margin:0 0 18px}
.hero h1{font-size:clamp(2rem,4.4vw,3.3rem);line-height:1.35;margin:0 0 20px;font-weight:900;letter-spacing:.01em}
.hero h1 .accent{color:var(--gold-soft)}
.hero .tagline{font-size:clamp(1.1rem,2.2vw,1.4rem);font-weight:700;color:var(--gold-soft);margin:0 0 20px;letter-spacing:.01em}
.hero .lead{font-size:1.12rem;max-width:640px;color:#e9e6da;margin:0 0 34px}
.hero .cta-row{display:flex;gap:14px;flex-wrap:wrap}

/* ---- 汎用セクション ---- */
.section{padding:74px 0;border-top:1px solid var(--line)}
.section.alt{background:var(--cream-2)}
/* セクションの境目に、中央にゴールドの短線を添えた区切りライン */
.section{position:relative}
.section::before{
  content:"";position:absolute;top:-1px;left:50%;transform:translateX(-50%);
  width:56px;height:3px;border-radius:3px;background:var(--gold);
}
.section-head{max-width:720px;margin:0 auto 46px;text-align:center}
.section-head .tag{color:var(--gold);font-weight:800;letter-spacing:.14em;font-size:.8rem}
.section-head h2{font-size:clamp(1.5rem,3vw,2.1rem);color:var(--navy);margin:.4em 0 .3em;font-weight:800}
.section-head p{color:var(--ink-soft);margin:0}

/* ---- リフレーム帯 ---- */
.reframe{background:var(--navy);color:var(--cream);text-align:center;padding:66px 0}
.reframe .big{font-size:clamp(1.6rem,3.6vw,2.6rem);font-weight:900;line-height:1.5;margin:0}
.reframe .big .accent{color:var(--gold-soft)}
.reframe p{color:#d8d4c6;max-width:660px;margin:20px auto 0}

/* ---- 3枚カード ---- */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:820px){ .cards{grid-template-columns:1fr} }
.card{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:30px 26px;box-shadow:var(--shadow);
}
.card .ico{width:52px;height:52px;border-radius:12px;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--navy),var(--navy-soft));color:var(--gold-soft);font-size:24px;margin-bottom:16px}
.card h3{margin:.2em 0 .5em;color:var(--navy);font-size:1.2rem}
.card p{margin:0;color:var(--ink-soft);font-size:.98rem}

/* ---- 補助金 中立紹介 ---- */
.subsidy{background:var(--cream-2)}
.subsidy .box{
  background:#fff;border:1px solid var(--line);border-left:6px solid var(--gold);
  border-radius:var(--radius);padding:30px 30px;box-shadow:var(--shadow);
  display:flex;gap:26px;align-items:center;flex-wrap:wrap;justify-content:space-between;
}
.subsidy .box p{margin:0;max-width:620px;color:var(--ink-soft)}
.subsidy .box strong{color:var(--navy)}

/* ---- 信頼の根拠 ---- */
.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:8px}
@media(max-width:820px){ .trust-grid{grid-template-columns:1fr} }
.trust{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px 22px}
.trust .k{color:var(--gold);font-weight:800;font-size:.8rem;letter-spacing:.1em}
.trust h4{margin:.3em 0 .3em;color:var(--navy);font-size:1.06rem}
.trust p{margin:0;color:var(--ink-soft);font-size:.92rem}

/* ---- フッター ---- */
.site-footer{background:var(--navy-deep);color:#cfd4e0;padding:52px 0 34px;font-size:.92rem}
.site-footer .cols{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}
.site-footer h5{color:#fff;margin:0 0 12px;font-size:1rem}
.site-footer a{color:var(--gold-soft)}
.site-footer .fine{margin-top:26px;padding-top:18px;border-top:1px solid rgba(255,255,255,.12);color:#8b93a7;font-size:.82rem}

/* ---- 汎用ユーティリティ ---- */
.center{text-align:center}
.mt-lg{margin-top:34px}
.note{font-size:.86rem;color:var(--ink-soft)}
