img.hero-wide{
  width:100% !important;
  height:auto !important;
  max-height:28vh !important;   /* 文字が潰れる場合は 22〜32vhで調整 */
  object-fit:contain !important;
  display:block !important;
  margin:0 auto !important;
}
@media (min-width:768px){
  img.hero-wide{ max-height:38vh !important; }
}


/* 余白と横スクロール保険（任意） */
section.hero .wrap {
  padding: 0 12px !important;
}
html, body { overflow-x: hidden; }
/* ヒーロー画像を“横長＝横いっぱい”で表示 */
.hero img.hero-wide {
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  display: block !important;
  margin: 0 auto !important;
  object-fit: contain !important; /* 画像の縦横比を維持して全体を収める */
}

/* 画像の周りのラッパーが幅や高さを縛らないよう保険 */
section.hero .wrap.center {
  max-width: 100% !important;
  padding: 0 12px !important;
}
