:root {
      --taya-gold-solid: #bfa86f;
    }

    .taya-lp.solid-theme {
      background-color: #fdfdfd;
      color: #333;
    }

    /* 2カラムレイアウト（左：ビジュアル、右：テキスト＆商品） */
    .block-2col {
      display: flex;
      align-items: flex-start;
      gap: 40px;
      margin-bottom: 50px;
    }

    .block-visual {
      flex: 1;
    }

    .block-visual img {
      width: 100%;
      height: auto;
      display: block;
      box-shadow: 0 10px 30px rgba(0,0,0,0.1);
    }

    .block-text {
      flex: 1;
    }

    /* 右ブロック内の商品グリッド（5列） */
.arrow-right-grid {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  row-gap: 2px !important;    /* ★上下の間隔を2pxに強制 */
  column-gap: 8px !important; /* 左右の間隔 */
  margin: 20px 0 !important;
}

/* 写真のすぐ下に文字を密着させる */
.arrow-right-grid .item-info {
  margin-top: 0 !important;
  padding-top: 2px !important;
}

    /* カラー選択エリア（四角チップ） */
    .selection-grid-color {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 20px 15px;
      margin: 40px auto;
    }

    .color-item {
      display: flex;
      flex-direction: column;
      align-items: center;
      width: 75px;
      cursor: pointer;
    }

    .color-box {
      width: 55px;
      height: 55px;
      border-radius: 4px;
      border: 2px solid #eee;
      transition: 0.3s;
      margin-bottom: 8px;
    }

    .color-item:hover .color-box,
    .color-item.active .color-box {
      border-color: var(--taya-gold-solid);
      transform: translateY(-3px);
    }

    .color-item span {
      font-size: 11px;
      color: #666;
    }

    /* SOLD OUT オーバーレイ */
    .solid-theme .img-wrap {
      position: relative;
      overflow: hidden;
    }

    .solid-theme .soldout-overlay {
      position: absolute;
      top: 0; left: 0; width: 100%; height: 100%;
      display: flex; align-items: center; justify-content: center;
      z-index: 5;
      pointer-events: none;
    }

    .solid-theme .soldout-overlay span {
      background: rgba(0, 0, 0, 0.75);
      color: #fff;
      padding: 3px 8px;
      font-size: 10px;
      letter-spacing: 0.05em;
    }

    /* スマホ対応 */
    @media screen and (max-width: 768px) {
      .block-2col {
        flex-direction: column;
      }
      .arrow-right-grid {
        grid-template-columns: repeat(4, 1fr);
      }
      .color-item { width: 65px; }
      .color-box { width: 45px; height: 45px; }
    }