main #sec_01 .h-mv .h-mv-item_02 {
  line-height: 0;
}
/*
 * MV の見出しアイコン。共通CSSは幅（5.93vw / 最大104px）で指定しているが、
 * このページのアイコンは 190x148 の横長で、他ページの icon-location.png
 * （208x296 の縦長）と縦横比が違うため、同じ幅だと高さが 148px に対し 81px と低くなる。
 * 他ページと高さを揃えるため、こちらは高さ基準で指定する。
 * 値は共通CSSの幅に 296/208 を掛けたもの（104px→148px / 5.93vw→8.44vw / 52px→74px）。
 */
main #sec_01 .h-mv .h-mv-item_01 .h-mv-h2 .ttl-img {
  width: 100%;
  max-width: none;
  min-width: 0;
  text-align: center;
}
main #sec_01 .h-mv .h-mv-item_01 .h-mv-h2 .ttl-img img {
  display: inline-block;
  width: auto;
  height: clamp(74px, 8.44vw, 148px);
}
main #sec_02,
main #sec_03,
main #sec_04 {
  padding: 100px 30px;
}
main #sec_03,
main #sec_04 {
  position: relative;
}
/* セクション間の罫線。デザイン指定は緑（#94D526）で、全幅ではなく 1920 中 1480 のコンテンツ幅 */
main #sec_03::before,
main #sec_04::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(1480px, 77.1%);
  height: 1px;
  background: #94D526;
}
main #sec_02 .h_04-wrap,
main #sec_03 .h_04-wrap,
main #sec_04 .h_04-wrap {
  position: relative;
  margin-bottom: 68px;
}
main #sec_02 .h_04,
main #sec_03 .h_04,
main #sec_04 .h_04 {
  position: relative;
  z-index: 1;
  margin: 0;
  color: #05894A;
  line-height: 1.6;
}
/* 装飾アイコンは見出しの背面に重ねる（デザインの重なりを再現） */
main #sec_02 .ttl-img,
main #sec_03 .ttl-img,
main #sec_04 .ttl-img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  text-align: center;
  line-height: 0;
  pointer-events: none;
}
main #sec_02 .ttl-img img,
main #sec_03 .ttl-img img,
main #sec_04 .ttl-img img {
  width: auto;
  height: 130px;
}
/*
 * 本文と写真の間隔。本文は <br class="pc"> で行が固定されるため、
 * 列幅を % で切ると列の中に空きが残り、gap を減らしても見た目が詰まらない。
 * 本文列を文字幅ぴったりにして、gap がそのまま見た目の間隔になるようにする。
 */
main #sec_02 .tm-contents-r {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8%;
  max-width: 1230px;
}
main #sec_02 .item-txt-wrap {
  flex: 0 0 auto;
  min-width: 0;
}
main #sec_02 .item-pho {
  flex: 1 1 0;
  max-width: 51%;
  min-width: 0;
}
main #sec_02 .item-txt,
main #sec_04 .item-txt {
  margin-bottom: 34px;
  font-size: clamp(0.875rem, 1.4vw, 1.25rem);
}
main #sec_02 .item-txt:last-child {
  margin-bottom: 0;
}
main #sec_02 .item-pho img {
  display: block;
  border-radius: 20px;
}
main #sec_03 .item-img-wrap {
  width: 100%;
  max-width: 1230px;
  margin: auto;
  line-height: 0;
}
main #sec_04 .item-img-wrap {
  width: 100%;
  max-width: 987px;
  margin: auto;
  line-height: 0;
}
/* 推進体制図の補足文。図版と同じ幅で図の下に置く */
main #sec_04 .item-txt-wrap {
  max-width: 987px;
  margin: 48px auto 0;
}
main #sec_04 .item-txt {
  margin-bottom: 0;
}
@media screen and (max-width: 768px) {
  main #sec_01 .h-mv {
    aspect-ratio: 750 / 724;
  }
  /* SP も共通CSS（幅 13.55%）に 296/208 を掛けた高さに揃える */
  main #sec_01 .h-mv .h-mv-item_01 .h-mv-h2 .ttl-img img {
    height: 19.28vw;
  }
  main #sec_02,
  main #sec_03,
  main #sec_04 {
    padding: 62px 15px;
  }
  /* SP の罫線は 375 中 330 */
  main #sec_03::before,
  main #sec_04::before {
    width: 88%;
  }
  main #sec_02 .h_04-wrap,
  main #sec_03 .h_04-wrap,
  main #sec_04 .h_04-wrap {
    margin-bottom: 42px;
  }
  main #sec_02 .ttl-img img,
  main #sec_03 .ttl-img img,
  main #sec_04 .ttl-img img {
    height: 70px;
  }
  /*
   * 共通CSSの下限 1rem のままだと 320px 幅で見出しが 16.64px になり、
   * WCAG の「大きな文字」(18.66px 以上の太字) を外れて 4.5:1 が必要になる。
   * 見出し色 #05894A は白背景で 4.48:1 のため僅かに届かない。
   * サイト共通の色は変えず、下限を 20px に上げて大きな文字の基準を満たす。
   * 5.2vw が 20px を超える 385px 幅以上では従来と変わらない。
   */
  main #sec_02 .h_04 span,
  main #sec_03 .h_04 span,
  main #sec_04 .h_04 span {
    font-size: clamp(1.25rem, 5.2vw, 3rem);
  }
  main #sec_02 .tm-contents-r {
    flex-direction: column;
    gap: 28px;
  }
  main #sec_02 .item-txt-wrap,
  main #sec_02 .item-pho {
    flex: none;
    width: 100%;
    max-width: 100%;
  }
  /* SP は写真を本文より先に置く（デザインの並び順） */
  main #sec_02 .item-pho {
    order: -1;
  }
  main #sec_02 .item-txt,
  main #sec_04 .item-txt {
    font-size: clamp(0.875rem, 3.65vw, 1.75rem);
  }
  main #sec_04 .item-txt-wrap {
    margin-top: 32px;
  }
  main #sec_03 .field-contents-wrap {
    margin: 0 -15px;
  }
}
