/* 補助金.com 機能ページ共通フィーチャーヒーロー
   2026-05-25 オーナー指示「各機能の最初の画面に画像をつけて質素なイメージを排して」
   配置: 各機能ページの <h1> 直下に <section class="hj-feature-hero" data-fh="..."> として挿入
   data-fh の値で背景画像を切替:
     map      = 地域比較・移住系
     docs     = 書類・出典系
     calc     = 計算・家計系
     search   = 検索・探す系
     mobile   = 連絡・スマホ系
*/
.hj-feature-hero{
  position:relative;
  overflow:hidden;
  border-radius:16px;
  background:linear-gradient(135deg, rgba(31,77,140,.86) 0%, rgba(31,77,140,.62) 65%, rgba(31,77,140,.42) 100%);
  color:#fff;
  padding:42px 28px 38px;
  margin:8px 0 24px;
  min-height:200px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 6px 22px rgba(31,77,140,.18);
}
.hj-feature-hero::before{
  content:"";
  position:absolute; inset:0;
  background-size:cover; background-position:center;
  z-index:0;
  opacity:.55;
  filter:saturate(.85);
}
.hj-feature-hero[data-fh="map"]::before    { background-image:url('img/hero/1513407030348-c983a97b98d8.jpg'); }
.hj-feature-hero[data-fh="docs"]::before   { background-image:url('img/hero/1775163024488-e88e4a71179f.jpg'); }
.hj-feature-hero[data-fh="calc"]::before   { background-image:url('img/hero/1709880945165-d2208c6ad2ec.jpg'); }
.hj-feature-hero[data-fh="search"]::before { background-image:url('img/hero/1697301439916-169bd6844842.jpg'); }
.hj-feature-hero[data-fh="mobile"]::before { background-image:url('img/hero/1673287281533-8fde21b57c99.jpg'); }
.hj-feature-hero::after{
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(135deg, rgba(22,63,115,.78) 0%, rgba(31,77,140,.55) 60%, rgba(31,77,140,.30) 100%);
  z-index:1;
}
.hj-feature-hero > *{ position:relative; z-index:2; }
.hj-feature-hero .fh-badge{
  display:inline-block;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.35);
  color:#fff;
  font-size:.78rem;
  font-weight:700;
  padding:4px 12px;
  border-radius:999px;
  margin-bottom:10px;
  letter-spacing:.05em;
  backdrop-filter:blur(4px);
}
.hj-feature-hero h1,
.hj-feature-hero .fh-title{
  font-size:clamp(1.5rem, 1.1rem + 1.8vw, 2.4rem);
  font-weight:800;
  line-height:1.35;
  margin:0 0 10px;
  color:#fff;
  letter-spacing:-.01em;
  text-shadow:0 1px 4px rgba(0,0,0,.18);
}
.hj-feature-hero .fh-lead,
.hj-feature-hero p{
  font-size:clamp(.92rem, .85rem + .35vw, 1.05rem);
  line-height:1.75;
  margin:0;
  color:#f5f8fb;
  max-width:62ch;
  text-shadow:0 1px 3px rgba(0,0,0,.20);
}
.hj-feature-hero .fh-lead strong,
.hj-feature-hero p strong{ color:#fff; }
@media(max-width:560px){
  .hj-feature-hero{ padding:30px 18px 26px; border-radius:12px; min-height:170px; }
}
@media print{
  .hj-feature-hero{ display:none !important; }
}
