/* タブ見出しは非表示のまま */
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs{ display:none !important; }

/* 説明・追加情報は非表示、レビューのみ表示 */
body.single-product .woocommerce-tabs #tab-description,
body.single-product .woocommerce-tabs #tab-additional_information,
body.single-product .woocommerce-Tabs-panel--description,
body.single-product .woocommerce-Tabs-panel--additional_information{
  display:none !important;
}
body.single-product .woocommerce div.product .woocommerce-tabs #tab-reviews{
  display:block !important;
}
/* 追加情報タブ見出しを強制的に非表示 */
body.single-product li#tab-title-additional_information,
body.single-product li.additional_information_tab {
  display: none !important;
}

/* 追加情報の内容パネルを強制的に非表示 */
body.single-product #tab-additional_information,
body.single-product .woocommerce-Tabs-panel--additional_information {
  display: none !important;
}
/* レビューパネルを常に表示状態にする */
body.single-product #tab-reviews,
body.single-product .woocommerce-Tabs-panel--reviews {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* 非表示用のクラスが付いても無視する */
body.single-product #tab-reviews.panel,
body.single-product .woocommerce-Tabs-panel.woocommerce-Tabs-panel--reviews {
  display: block !important;
}
.woocommerce-js div.product form.cart .variations label {
display: none;
}
.wp-block-latest-posts .wp-block-latest-posts__post-date, .wp-block-latest-posts .wp-block-latest-posts__post-author {
    font-size: 0.6rem;
}
.woocommerce-js div.product .woocommerce-tabs .shop_attributes td {
display: none;
}
.woocommerce-js div.product .woocommerce-tabs .shop_attributes th {
display: none;
}
/* 1) ホームの記事本文内だけに限定して、縦の余白だけゼロ */
.home .entry-content p > img,
.home .entry-content figure,
.home .entry-content .wp-block-image {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.home .entry-content img { display: block; }

/* 2) 空段落/改行だけの段落は非表示（白帯の温床） */
.home .entry-content p:empty,
.home .entry-content p br:only-child { display: none !important; }

/* 3) ヒーローバナーの親ブロックに "hero-slider" を付けて、高さを予約 */
@media (max-width: 768px) {
  .hero-slider { aspect-ratio: 16 / 9; overflow: hidden; }
  .hero-slider img { width: 100%; height: 100%; object-fit: cover; display: block; }
}

/* 4) スライダーのページネーション（ドット）が作る下の余白を潰す */
.home .swiper-pagination,
.home .swiper-pagination-bullets,
.home .slick-dots {
  margin: 0 !important;
  padding: 0 !important;
  bottom: 0 !important;      /* スライダー内に収める */
}

/* 5) さらに確実に：バナー直下だけ詰めたい時に使うユーティリティ（任意） */
.no-gap-bottom { margin-bottom: 0 !important; padding-bottom: 0 !important; }
.no-gap-top    { margin-top: 0 !important;    padding-top: 0 !important; }
/* 商品ページの「関連商品」セクションを非表示 */
body.single-product .related.products,
body.single-product section.related,
body.single-product .related-products,
body.single-product div.related {
  display: none !important;
}
/* Jetpack 関連記事を非表示 */
#jp-relatedposts {
  display: none !important;
}
/* ===== モバイルでも左動画・右サムネ列（右端ピッタリ） ===== */
@media (max-width: 768px) {

  /* 親：2カラムのグリッド（右列の幅は好みで変えてOK） */
  .hero-columns{
    display: grid !important;
    grid-template-columns: minmax(0,1fr) 118px; /* ←110–140pxで調整 */
    column-gap: 12px;
    align-items: center;          /* 縦位置を中央に揃える */
    width: 100%;
  }

  /* 左：動画を大きく */
  .hero-left .wp-block-video{
    width: 100% !important;
    aspect-ratio: 16/9;           /* もう少し背高にしたければ 16/8.8 等 */
    overflow: hidden;
    margin: 0;
  }
  .hero-left .wp-block-video video,
  .hero-video, .hero-video video{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    max-width: none !important;
  }

  /* 右：縦サムネ列を“右端にピッタリ”寄せる */
  .hero-right{
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    align-items: flex-end !important;  /* ★右端に寄せる本体 */
    row-gap: 10px;
    padding-right: 0 !important;       /* 念のため余計な右paddingを無効化 */
  }

  /* 画像ブロック自体も右寄せにする（テーマの中央寄せを上書き） */
  .hero-right .wp-block-image{
    margin: 0 !important;
    width: 100%;
    display: flex !important;
    justify-content: flex-end !important;  /* ★これで右端へ */
  }

  /* 画像そのもの。列幅いっぱいにしたいなら100%のままでOK */
  .hero-right .wp-block-image img{
    width: 100% !important;   /* サムネを少し小さくしたいなら 90〜95% に */
    height: auto !important;
    display: block !important;
    margin: 0 !important;     /* 中央寄せ用marginを完全に無効化 */
  }
}
/* REGULAR → オレンジ背景・白文字 */
.sm-rank-badge.sm-rank-regular {
  color: #fff;
  background: #ff7f32;   /* オレンジ (#ff7f32) */
  border-color: #ff7f32;
}

/* SILVER → グレー背景・白文字 */
.sm-rank-badge.sm-rank-silver {
  color: #fff;
  background: #9e9e9e;   /* シルバー風 */
  border-color: #9e9e9e;
}

/* GOLD → ゴールド背景・白文字 */
.sm-rank-badge.sm-rank-gold {
  color: #fff;
  background: #d4af37;   /* ゴールド */
  border-color: #d4af37;
}

/* BLACK → 黒グラデーション背景・白文字 */
.sm-rank-badge.sm-rank-black {
  color: #fff;
  background: linear-gradient(45deg, #000, #333);
  border-color: #000;
}
.new-label {
  background: #ff5722; /* オレンジ系 */
  color: #fff;
  font-size: 0.7em;
  font-weight: bold;
  padding: 2px 6px;
  margin-left: 6px;
  border-radius: 4px;
  text-transform: uppercase;
}
/* チェックアウトページのクーポン案内を非表示 */
.woocommerce-form-coupon-toggle {
  display: none !important;
}
/* 在庫表示の「有効:」だけ非表示 */
.ast-stock-avail {
  display: none !important;
}
.past-hits-wrapper {
  display: flex;
  gap: 20px;
}

.past-hit-image img {
  max-width: 300px;
  border: 3px solid #ccc;
  border-radius: 8px;
}

.past-hit-list li {
  cursor: pointer;
  margin-bottom: 8px;
  list-style: none;
  transition: color 0.2s;
}

.past-hit-list li:hover {
  color: #0056b3;
}

.past-hit-list li.active {
  font-weight: bold;
  color: #d6336c;
}
/* スマホでは縦並び＆画像を少し小さく */
@media (max-width: 768px) {
  .past-hits-wrapper {
    flex-direction: column;
    align-items: center;
  }

  .past-hit-image img {
    max-width: 70%; /* 画像を少し小さめに（70%に変更） */
    margin-bottom: 12px;
  }

  .past-hit-list {
    width: 90%;
    padding: 0;
  }

  .past-hit-list li {
    font-size: 0.85rem; /* リストも少し小さめに */
    margin-bottom: 6px;
  }
}
@media (max-width: 768px) {
  .past-hit-image img {
    display: block;
    margin: 0 auto; /* ←これで左右中央揃え */
    max-width: 70%; /* サイズは前回の調整を維持 */
  }
}
@media (max-width: 768px) {
  .past-hit-list {
    width: 98%;           /* 横幅を画面幅に近づける */
    padding-left: 5px;    /* 左右の余白を減らす */
    padding-right: 5px;
    margin: 0 auto;       /* 中央寄せを維持 */
  }

  .past-hit-list li {
    line-height: 1.4;     /* 行間を少し詰める（好みに応じて調整） */
  }
}
/* モバイルでブログ・お知らせを非表示 */
@media (max-width: 768px) {
  .wp-block-group.alignwide.is-vertical.is-content-justification-left.is-layout-flow {
    display: none !important;
  }
}
/* 共通バッジ */
.sm-sale-badge {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 8px 14px;
    font-size: 16px;
    font-weight: bold;
    border-radius: 6px;
    text-align: center;
    animation: blink 1.5s infinite;
}
.sm-sale-badge .line1 { font-size: 18px; margin-bottom: 2px; }
.sm-sale-badge .line2 { font-size: 14px; }

/* 色分け */
.sm-sale-badge.red { background: #e60023; color: #fff; }
.sm-sale-badge.silver { background: #9e9e9e; color: #fff; }
.sm-sale-badge.gold { background: #d4af37; color: #fff; }
.sm-sale-badge.black { background: #000; color: #fff; }

/* Sold Out 専用 */
.sm-sale-badge.soldout {
    background: #444;
    color: #fff;
    font-size: 20px;
    padding: 10px 16px;
    animation: none; /* 点滅しない */
}
/* 商品カードの画像エリアをバッジ用に相対配置に */
.wc-block-grid__product .wc-block-grid__product-image { position: relative; }
/* 全体レイアウト */
.past-hits-wrapper {
  display: flex;
  gap: 30px;
  align-items: flex-start;
}

/* 左の画像 */
.past-hit-image img {
  max-width: 320px;
  height: auto;
  border-radius: 6px;
}

/* 右のリスト（ここがスクロール） */
.past-hit-list {
  max-height: 520px;        /* ← 好きな高さに調整可 */
  overflow-y: auto;
  padding-right: 10px;
  margin: 0;
  list-style: none;
}

/* リストの見た目 */
.past-hit-list li {
  cursor: pointer;
  padding: 6px 0;
  border-bottom: 1px solid #eee;
  font-size: 15px;
}

.past-hit-list li:hover {
  color: #c62828;
  text-decoration: underline;
}

/* スクロールバーを少しだけ綺麗に（Chrome系） */
.past-hit-list::-webkit-scrollbar {
  width: 6px;
}
.past-hit-list::-webkit-scrollbar-thumb {
  background: #ccc;
  border-radius: 4px;
}

/* スマホ対応 */
@media (max-width: 768px) {
  .past-hits-wrapper {
    flex-direction: column;
  }

  .past-hit-list {
    max-height: 300px;
  }

  .past-hit-image img {
    max-width: 100%;
  }
}
.comment-form-author,
.comment-form-email,
.comment-form-url {
  display: none !important;
}
/* コメントの「名前（ニックネーム）」欄だけは表示する（CSSで消していても復活） */
.comment-form-author,
.comment-form-author * {
  display: block !important;
  visibility: visible !important;
  height: auto !important;
  opacity: 1 !important;
}

/* メール/サイトは非表示のままにしたい場合（必要なら） */
.comment-form-email,
.comment-form-url {
  display: none !important;
}
/* 商品カードを基準にする */
.woocommerce ul.products li.product {
  position: relative !important;
}

/* 在庫切れ表示：元の帯っぽい見た目を保ったまま中央へ */
.woocommerce ul.products li.product .sm-sale-badge.soldout,
.woocommerce ul.products li.product .ast-shop-product-out-of-stock,
.woocommerce ul.products li.product .stock.out-of-stock,
.woocommerce ul.products li.product .out-of-stock,
.woocommerce ul.products li.product [class*="soldout"],
.woocommerce ul.products li.product [class*="sold-out"],
.woocommerce ul.products li.product [class*="out-of-stock"] {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  bottom: auto !important;
  transform: translate(-50%, -50%) !important;
  z-index: 999 !important;
  margin: 0 !important;

  /* 細くならないように帯の幅を確保 */
  display: block !important;
  width: 78% !important;
  max-width: 78% !important;
  text-align: center !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
}