/* H1サイトタイトル重複修正 */
.sng-header-logo .sng-logo-text {
    display: none;
}

/* ===== CLS対策：広告コンテナのサイズ固定 ===== */

/* PC広告（728x90 レクタングル等） */
.adsense-wrap,
.ad-wrap,
[class*="ad-"],
[class*="ads-"] {
  min-height: 90px;
}

/* レクタングル広告（300x250） */
ins.adsbygoogle[data-ad-slot] {
  display: block;
  min-height: 250px;
}

/* モバイル広告 */
@media (max-width: 768px) {
  ins.adsbygoogle[data-ad-slot] {
    min-height: 100px;
  }
}

/* AnyMind360対応 */
[id^="anymind"],
[class^="anymind"] {
  min-height: 250px;
  display: block;
}

/* ===== CLS対策：画像レイアウトシフト防止 ===== */

img {
  height: auto;
  max-width: 100%;
}

/* アイキャッチ画像 */
.eye-catch img,
.post-thumbnail img,
.wp-post-image {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

/* ===== CLS対策：フォント読み込み時のレイアウトシフト防止 ===== */

@font-face {
  font-display: swap;
}

body {
  font-display: swap;
}

/* ===== LCP対策：ヒーロー画像・メインビジュアルの優先読み込み ===== */

.eye-catch,
.hero,
.main-visual {
  content-visibility: auto;
  contain-intrinsic-size: 0 400px;
}

/* レンダリングブロック軽減 */
* {
  -webkit-font-smoothing: antialiased;
}

/* ===== CLS対策：広告系要素の包括的サイズ固定 ===== */

/* Google AdSense */
ins.adsbygoogle {
  display: block !important;
  min-height: 90px;
}

/* レクタングル（300x250）が多い場合 */
.entry-content ins.adsbygoogle,
.sidebar ins.adsbygoogle {
  min-height: 250px;
}

/* モバイルはバナーサイズ */
@media (max-width: 767px) {
  ins.adsbygoogle {
    min-height: 100px;
  }
}

/* AnyMind360 */
[id*="anymind"],
[class*="anymind"],
[id*="anyad"],
[class*="anyad"],
[id*="any-"],
[class*="any-"] {
  display: block !important;
  min-height: 250px;
}

/* iframeで埋め込まれる広告全般 */
.entry-content iframe[id*="google"],
.entry-content iframe[src*="googlesyndication"],
.entry-content iframe[src*="doubleclick"],
.widget iframe {
  min-height: 250px;
  display: block;
}

/* Criteo / Rubicon */
[id*="criteo"],
[class*="criteo"],
[id*="rubicon"],
[class*="rp_"] {
  display: block !important;
  min-height: 250px;
}