.article-wysiwyg h4:not([class]) {
  margin: 2em 0 1em;
}
.article-single-panel__table__head {
  padding-right: 1.5em;
}
#yamaya_cts table td, th {
  border-left: none;
  border-right: none;
  border-top: none;
}	
  /* --- 基本リセット --- */
  * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }

  /* --- アイテムリスト（コンテナ） --- */
  .product-list, .product-list-2 {
    display: grid;
    gap: 15px; /* アイテム間の余白 */
    list-style: none;
    max-width: 1200px;
    margin: 0 auto;
  }

  /* PC向けレイアウト (768px以上) */
  @media (min-width: 768px) {
    .product-list {
      grid-template-columns: repeat(3, 1fr); /* 3カラム */
    }
    .product-list-2 {
      grid-template-columns: repeat(2, 1fr); /* 2カラム */
    }
}

  /* --- アイテムカード（共通） --- */
  .card {
    border: 1px solid #ddd;
    border-radius: 4px; /* 角丸 */
    overflow: hidden;
    background-color: #fff;
    display: flex;
    transition: opacity 0.3s ease; 
    text-decoration: none;
    color: inherit;
    cursor: pointer;
  }

/* オンマウス時：不透明度を下げる */
  .card:hover {
    opacity: 0.6; 
  }

  /* クリック時：少し濃さを戻す（押した感触） */
  .card:active {
    opacity: 0.8;
    transition-duration: 0.3s;
  }

  /* Active状態のデザイン（SPサンプルのグレー背景） */
  .card.active {
    background-color: #f0f0f0; /* グレーの背景 */
    border-color: #ccc; /* 枠線を少し濃く */
  }

  /* --- 画像エリア --- */
  .card-image {
    position: relative;
    width: 100%;
    /* アスペクト比 3:2 を維持 */
    aspect-ratio: 3 / 2;
  }

  .card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* 比率を保ちつつエリアを埋める */
    display: block;
  }

  /* --- テキストエリア --- */
  .card-body {
    padding: 15px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
  }

  .card-title {
    font-size: 14px !important;
    font-weight: bold;
    line-height: 1.4;
    /*margin-bottom: 8px;*/
  }

  .card-price {
    font-size: 14px;
    color: #666;
  }

  /* --- SP向けスタイル (767px以下) --- */
  @media (max-width: 767px) {
    .card {
      flex-direction: row; /* 横並び（左画像、右テキスト） */
      align-items: center; /* 垂直方向中央揃え */
    }

    .card-image {
      width: 35%; /* 画像の幅（全体の35%） */
      flex-shrink: 0; /* 画像が縮まないようにする */
      aspect-ratio: 3 / 2; /* ここでも比率を維持 */
      /* 画像自体の角丸などが必要ならここに記述 */
    }

    .card-body {
      padding: 10px 15px;
      text-align: left;
    }
  }

  /* --- PC向けスタイル (768px以上) --- */
  @media (min-width: 768px) {
    .card {
      flex-direction: column; /* 縦並び（上画像、下テキスト） */
      height: 100%; /* 高さを揃える */
    }
    
    .card-image {
      width: 100%;
    }
  }