/* =========================================
   Sticky Header Shell (Hero固定)
   ========================================= */

.hero-sticky-shell {
  position: sticky;
  top: 0;
  z-index: 40;
  margin-top: 0;
  padding-top: max(6px, env(safe-area-inset-top));
  background:
    linear-gradient(
      180deg,
      rgba(241, 242, 246, 0.96) 0%,
      rgba(241, 242, 246, 0.92) 70%,
      rgba(241, 242, 246, 0.84) 100%
    );
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-bottom: 1px solid rgba(20, 24, 34, 0.05);
}

/* heroの内側余白を少し整理（固定時に詰まりすぎない） */
.hero-sticky-shell .hero-title-row {
  margin-bottom: 6px;
}

.hero-sticky-shell .hero-sub {
  margin-bottom: 8px;
}

/* 選択中都道府県の下に少し余白 */
.hero-sticky-shell .selected-pref-wrap {
  margin-bottom: 8px;
}

/* スクロール時に見出しがヘッダーに隠れないように */
.section-title[id] {
  scroll-margin-top: 170px;
}

/* 画面幅ごとの微調整 */
@media (max-width: 640px) {
  .hero-sticky-shell {
    padding-top: max(4px, env(safe-area-inset-top));
  }

  .section-title[id] {
    scroll-margin-top: 160px;
  }
}

/* 議員向けサービス CTA（収益導線・全ページ共通ヘッダー） */
.hero-giin-cta{
  order:99;margin-left:6px;display:inline-flex;align-items:center;gap:4px;
  padding:6px 13px;background:linear-gradient(180deg,#e8a33d,#d98a2b);
  color:#fff !important;font-size:12px;font-weight:800;border-radius:999px;
  text-decoration:none;white-space:nowrap;line-height:1.2;
  box-shadow:0 1px 5px rgba(217,138,43,.4);
}
.hero-giin-cta:hover{filter:brightness(1.06);}
@media (max-width:480px){.hero-giin-cta{padding:5px 10px;font-size:11px;margin-left:4px;}}
