@charset "utf-8";

.block-campaign-detail-header {
  position: relative;

  .item-img {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .item-img picture {
    display: block;
    width: 100%;
    height: 100%;
  }

  .item-img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .item-content {
    position: relative;
    height: 100%;

    .block-container {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      height: 100%;
      text-align: center;
      margin-top: 5.5rem;
    }
  }
}

.block-campaign-detail-limit {
  background-color: var(--cl-bk);
  color: #ffffff;

  .block-container {
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-align: center;

    dd {
      span {
        font-weight: 400;
        font-family: var(--ff-num);
      }
    }
  }
}

/* 早原追加分 */
.amount input {
  display: inline;
}

@media all and (min-width: 768px) {
  .block-campaign-detail-header {
    height: 560px;

    .item-content {
      padding-top: 46px;

      .ttl-h1 {
        margin-bottom: 40px;
      }

      .bd_bgi{
        /* 早原追加分 */
        font-size: 1.8rem;
        line-height: 1.666;
        background-image: url(../../img/campaign/bd30_2025/bdgift_bg_pc_2025.jpg);
      }

      #put_into_cart {
        text-align: center;
      }
    }
  }

  .block-campaign-detail-limit {
    .block-container {
      height: 80px;
      /* 早原追加分 */
      display: none;

      dl {
        display: flex;
        align-items: baseline;
        font-size: 2.4rem;

        dd {
          margin-left: 6px;
          span {
            margin: 0 5px;
            font-size: 4rem;
          }
        }
      }
    }
  }

  .block-campaign-detail-top-btn,
  .block-campaign-detail-bot-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    /* margin-top: 100px; */
    /* 早原追加分 */
    margin-top: 4em;
  }

  .block-campaign-detail-top-btn a,
  .block-campaign-detail-bot-btn a {
    width: 440px;
    height: 60px;
    font-size: 2rem;
  }
}

@media all and (max-width: 767px) {
  .block-campaign-detail-header {
    height: 128.2vw;

    .item-content {
      .ttl-h1 {
        margin-bottom: 30px;
        line-height: 1.333;
      }

      .item-comment {
        font-size: 1.4rem;
        line-height: 1.571;
        /* 早原追加分 */
        /* margin: 4rem; */
        margin-top: 50px;
        background-image: url(../../img/campaign/bd30_2025/bdgift_bg_sp_2025.jpg);
      }
    }
  }

  .block-campaign-detail-limit {
    .block-container {
      height: 90px;
      line-height: 1.3;
      display: none;

      dl {
        font-size: 2rem;

        dd {
          margin-left: 6px;
          span {
            margin: 0 5px;
            font-size: 3rem;
          }
        }
      }
    }
  }

  .block-campaign-detail-top-btn,
  .block-campaign-detail-bot-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 64px;
  }
}

.block-campaign-detail-link {
  position: relative;
  border: 1px solid var(--cl-gr-1);

  h2 {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: 0;
    width: 100%;
    font-family: var(--ff-serif);
    font-weight: 400;

    span {
      background-color: #ffffff;
    }
  }
}

.block-campaign-detail-link-items {
  display: flex;
  flex-wrap: wrap;

  img {
    display: block;
    width: 100%;
    height: auto;
  }
}

@media all and (min-width: 768px) {
  .block-campaign-detail-link {
    margin-top: 116px;
    padding: 80px;

    h2 {
      top: -24px;

      span {
        padding: 0 26px;
        font-size: 2.8rem;
      }
    }
  }

  .block-campaign-detail-link-items {
    li {
      width: calc((100% - 64px) / 3);

      &:not(:nth-child(3n)) {
        margin-right: 32px;
      }

      &:not(:nth-child(-n + 3)) {
        margin-top: 32px;
      }

      a {
        display: block;
        overflow: hidden;

        img {
          transition: transform 0.3s;
        }

        &:hover img {
          transform: scale(1.07);
        }
      }
    }
  }
}

@media all and (max-width: 767px) {
  .block-campaign-detail-link {
    margin-top: 84px;
    padding: 54px 20px 20px;

    h2 {
      top: -24px;

      span {
        padding: 0 16px;
        font-size: 2.2rem;
        text-align: center;
        line-height: 1.333;
      }
    }
  }

  .block-campaign-detail-link-items {
    justify-content: space-between;

    li {
      width: calc((100% - 10px) / 2);

      &:not(:nth-child(-n + 2)) {
        margin-top: 10px;
      }

      a {
        display: block;
      }
    }
  }
}

.block-campaign-detail-l-img {
  img {
    display: block;
    width: 100%;
    height: auto;
  }
}

@media all and (max-width: 767px) {
  .block-campaign-detail-l-img {
    margin: 0 -20px;
  }
}

.block-campaign-detail-list {
  ul {
    display: flex;
    flex-wrap: wrap;

    img {
      display: block;
      width: 100%;
      height: auto;
    }

    .list-comment {
      font-weight: 700;
    }

    .list-color_select {
      background-color: var(--cl-gn-bg);

      > dl {
        dt {
          font-weight: 700;
        }
      }

      .list-color_select-items {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;

        input[type="radio"] + label {
          display: flex;
          align-items: center;
          width: 100%;
          padding: 0;
          background-color: #ffffff;
          font-weight: 400;
          line-height: 1.333;

          &::after {
            content: "";
            display: block;
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            border: 2px solid var(--cl-gn);
            opacity: 0;
            transition: opacity 0.12s;
          }

          .color-chip.has-border {
            border: 1px solid var(--cl-gr-1);
          }
        }

        input[type="radio"]:checked + label {
          &::after {
            opacity: 1;
          }
        }

        input[type="radio"] + label::before {
          content: none;
        }
      }
    }
  }
  ul.list-position-center { 
    justify-content: center;}
}

@media all and (min-width: 768px) {
  .block-campaign-detail-narrow-container {
    width: 1100px;
    margin-right: auto;
    margin-left: auto;
  }

  .block-campaign-detail-list {
    ul {
      > li {
        .list-comment {
          text-align: center;
        }

        .list-color_select {
          margin-top: 15px;
          padding: 24px;

          > dl {
            display: flex;

            dt {
              flex-shrink: 0;
            }

            dd {
              margin-left: 7px;
            }
          }

          .list-color_select-items {
            margin-top: 12px;

            li {
              width: calc((100% - 10px) / 2);
              min-height: 56px;

              input[type="radio"] + label {
                height: 100%;
                min-width: 56px;
                padding: 10px;
                font-size: 1.6rem;

                .color-chip {
                  flex-shrink: 0;
                  width: 24px;
                  height: 24px;
                  margin-right: 16px;
                  border-radius: 24px;
                }
              }
            }
          }

          /* 早原追加分 */
          .list-color_select-items_icon {
            width: auto;
            margin-left: 1rem;
          }
        }

        .list-btn {
          &:not(:first-child) {
            margin-top: 24px;
          }

          .btn-rd,
          .btn-bdr-bg-rd,
          .btn-bdr-bg-wht {
            width: 100%;
            height: auto;
            min-height: 56px;
            font-size: 2rem;
            line-height: 1.333;
          }

          .btn-rd:not(:first-child),
          .btn-bdr-bg-rd:not(:first-child) {
            margin-top: 16px;
          }
        }
      }
    }

    ul.col-2 {
      > li {
        width: calc((100% - 80px) / 2);

        &:not(:nth-child(2n)) {
          margin-right: 80px;
        }

        &:not(:nth-child(-n + 2)) {
          margin-top: 80px;
        }

        .list-detail {
          margin-top: 40px;
        }
      }
    }

    ul.col-3 {
      > li {
        width: calc((100% - 80px) / 3);

        &:not(:nth-child(3n)) {
          margin-right: 40px;
        }

        &:not(:nth-child(-n + 3)) {
          margin-top: 64px;
        }

        .list-detail {
          margin-top: 32px;
        }
      }
    }
  }
}

@media all and (max-width: 767px) {
  .block-campaign-detail-list {
    ul {
      > li {
        width: 100%;

        &:not(:nth-child(-n + 1)) {
          margin-top: 30px;
        }

        .list-detail {
          margin-top: 16px;
        }

        .list-comment {
          font-size: 1.4rem;
          line-height: 1.333;
        }

        .list-color_select {
          margin-top: 14px;
          padding: 10px;

          > dl {
            font-size: 1.4rem;

            dd {
              margin-top: 2px;
              font-size: 1.5rem;
              line-height: 1.333;
            }
          }

          .list-color_select-items {
            margin-top: 10px;

            li { 
              width: calc((100% - 10px) / 2);
              /* width: 100%; */

              input[type="radio"] + label {
                min-height: 44px;
                padding: 8px 10px;
                font-size: 1.4rem;
                line-height: 1.333;

                .color-chip {
                  flex-shrink: 0;
                  width: 16px;
                  height: 16px;
                  margin-right: 10px;
                  border-radius: 16px;
                }
              }
              &:not(:nth-child(-n + 1)){
                margin-top: 0;}
            }

            li + li {
              margin-top: 10px;
            }
          }

          /* 早原追加分 */
          .list-color_select-items_icon {
            width: auto;
            margin-left: 1rem;
          }
        }

        .list-btn {
          &:not(:first-child) {
            margin-top: 16px;
          }

          .btn-rd,
          .btn-bdr-bg-rd {
            height: auto;
            min-height: 44px;
            line-height: 1.333;
          }

          .btn-rd:not(:first-child),
          .btn-bdr-bg-rd:not(:first-child) {
            margin-top: 10px;
          }
        }
      }
    }
  }
}

.block-campaign-detail-ttl_bnr {
  img {
    display: block;
    width: 100%;
    height: auto;
  }
}

.block-campaign-detail-caution {
  /* border: 1px solid var(--cl-rd); */
  font-size: 1.4rem;
  line-height: 1.444;

  li {
    position: relative;
    padding-left: 32px;
  }

  li::before {
    display: block;
    position: absolute;
    left: 0;
  }

  ul {
    li::before {
      content: "";
      top: 8px;
      width: 8px;
      height: 8px;
      border-radius: 8px;
      background-color: var(--cl-gn);
    }
  }

  ol {
    counter-reset: listnum;

    li::before {
      content: counter(listnum) ".";
      top: 0;
      left: 0;
      font-size: 2rem;
      font-family: var(--ff-num);
      counter-increment: listnum;
    }
  }
}

@media all and (min-width: 768px) {
  .block-campaign-detail-caution {
    /* padding: 80px 90px; */

    li + li {
      margin-top: 22px;
    }
  }
}

@media all and (max-width: 767px) {
  .block-campaign-detail-caution {
    /* padding: 24px 16px; */
    font-size: 1.25rem;

    li + li {
      margin-top: 16px;
    }
  }
}

.block-campaign-detail-bg-container {
  background-color: var(--cl-gn-bg);
}

.block-campaign-detail-wt-box {
  background-color: #ffffff;
}

@media all and (min-width: 768px) {
  .block-campaign-detail-bg-container {
    padding: 80px 0;
  }

  .block-campaign-detail-wt-box {
    padding: 80px;
  }
}

@media all and (max-width: 767px) {
  .block-campaign-detail-bg-container {
    margin-right: -20px;
    margin-left: -20px;
    padding: 32px 20px;
  }

  .block-campaign-detail-wt-box {
    padding: 16px;
  }
}

.block-campaign-detail-goods_detail {
  .item-img img {
    display: block;
    width: 100%;
    height: auto;
  }

  .item-catch,
  .item-ttl {
    font-weight: 700;
  }

  .item-catch {
    sup {
      font-size: 60%;
      vertical-align: super;
    }
  }

  .item-annotation {
    color: var(--cl-gr-txt);
    font-size: 1.4rem;
    line-height: 1.571;
  }

  .item-date {
    border-top: 2px solid var(--cl-rd);
    border-bottom: 2px solid var(--cl-rd);
    color: var(--cl-rd);
    font-weight: 600;
  }

  .item-color_select {
    background-color: var(--cl-gn-bg);

    > dl {
      dt {
        font-weight: 700;
      }
    }
  }

  .item-color_select-items {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;

    input[type="radio"] + label {
      display: flex;
      align-items: center;
      width: 100%;
      padding: 0;
      background-color: #ffffff;
      font-weight: 400;
      line-height: 1.333;

      &::after {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border: 2px solid var(--cl-gn);
        opacity: 0;
        transition: opacity 0.12s;
      }

      .color-chip.has-border {
        border: 1px solid var(--cl-gr-1);
      }
    }

    input[type="radio"]:checked + label {
      &::after {
        opacity: 1;
      }
    }

    input[type="radio"] + label::before {
      content: none;
    }
  }

  .item-price {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    font-family: var(--ff-num);

    > li {
      position: relative;
    }

    .item-price-catch {
      position: relative;

      span {
        display: block;
        position: absolute;
        top: 0;
        left: 50%;
        letter-spacing: 0.016em;
        transform: translate(-50%, 0);
        white-space: nowrap;
      }
    }

    .item-price-line {
      display: flex;
      align-items: center;
      color: var(--cl-rd);

      .item-price-value {
        span {
          display: flex;
          align-items: center;
          justify-content: center;
          border: 1px solid var(--cl-rd);
          color: var(--cl-rd);
          text-align: center;
          line-height: 1;
        }
      }

      .item-price-ttl {
        font-weight: 700;
        letter-spacing: 0.04em;
      }

      .item-price-price {
        font-weight: 500;
        letter-spacing: 0.04em;
      }

      .item-price-price .tax {
        font-weight: 700;
        letter-spacing: 0.1em;
      }
    }
  }

  .item-default-price {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    font-family: var(--ff-num);
    text-align: right;
    letter-spacing: 0.04em;

    dd {
      position: relative;

      &::before {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: var(--cl-bk);
      }
    }
  }

  .item-note {
    color: var(--cl-gr-txt);
  }
}

.block-campaign-detail-goods_set-list {
  > li {
    position: relative;

    .list-circle,
    .list-off {
      position: absolute;
    }

    .list-circle {
      display: flex;
      align-items: center;
      justify-content: center;
      left: 50%;
      background-color: #ffffff;
      font-family: var(--ff-serif);
      font-weight: 600;
      line-height: 1;
      letter-spacing: 0;
    }

    .list-off {
      background-image: url(../../img/campaign/flag_gn.png);
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
      color: #ffffff;
      font-family: var(--ff-num);
      font-weight: 500;
      text-align: center;
      line-height: 1.2;
      letter-spacing: 0.04em;
    }
  }
}

@media all and (min-width: 768px) {
  .block-campaign-detail-goods_detail {
    display: flex;
    justify-content: space-between;

    .item-img {
      width: 420px;
    }

    .item-detail {
      width: 636px;
    }

    .item-catch {
      font-size: 1.8rem;
    }

    .item-ttl {
      margin-top: 12px;
      font-size: 3rem;
    }

    .item-comment {
      margin-top: 22px;
      font-size: 1.8rem;
      line-height: 1.444;
    }

    .item-info {
      margin-top: 28px;

      > div {
        display: flex;
        margin-right: -3px;

        dt {
          position: relative;
          width: 160px;
          padding-right: 1em;
          letter-spacing: 0.06em;

          &::before {
            content: "：";
            display: block;
            position: absolute;
            top: 0;
            right: 0;
          }
        }

        dd {
          width: calc(100% - 160px);
          padding-left: 7px;
          font-family: var(--ff-num);
          letter-spacing: 0.05em;

          p + p {
            margin-top: 5px;
          }
        }
      }

      > div + div {
        margin-top: 12px;
      }
    }

    .item-annotation {
      margin-top: 20px;
    }

    .item-date {
      display: flex;
      align-items: center;
      justify-content: center;
      margin-top: 22px;
      padding: 7px 0;
      font-size: 1.8rem;

      .txt-no {
        letter-spacing: 0.04em;
      }

      .txt-s {
        font-size: 1.2rem;
      }
    }

    .item-cart {
      a,
      button {
        width: 100%;
        height: 60px;
        font-size: 2rem;
      }

      a:not(:first-child),
      button:not(:first-child) {
        margin-top: 16px;
      }
    }

    .item-date + .item-cart {
      margin-top: 16px;
    }

    .item-color_select {
      margin-top: 23px;
      padding: 24px;

      > dl {
        display: flex;
        font-size: 1.8rem;

        dt {
          flex-shrink: 0;
        }

        dd {
          margin-left: 7px;
        }
      }

      .item-color_select-items {
        margin-top: 16px;

        li {
          width: calc((100% - 10px) / 2);
          min-height: 56px;

          input[type="radio"] + label {
            height: 100%;
            min-width: 56px;
            padding: 10px;
            font-size: 1.6rem;

            .color-chip {
              flex-shrink: 0;
              width: 24px;
              height: 24px;
              margin-right: 16px;
              border-radius: 24px;
            }
          }
        }
      }
    }

    .item-price {
      margin-top: 24px;

      > li + li {
        margin-top: 10px;
      }

      .item-price-catch {
        width: 140px;
        height: 24px;
      }

      .item-price-line {
        height: 44px;

        .item-price-value {
          span {
            width: 140px;
            height: 30px;
            font-size: 1.6rem;
            letter-spacing: 0.04em;
          }
        }

        .item-price-ttl {
          margin: 0 20px;
          font-size: 2rem;
        }

        .item-price-price {
          font-size: 3.4rem;
        }

        .item-price-price .tax {
          margin-left: -4px;
          font-size: 1.2rem;
        }
      }
    }

    .item-default-price {
      margin-top: 8px;
      height: 23px;
      font-size: 1.8rem;

      dd {
        margin-left: 10px;

        .tax {
          margin-left: -4px;
          font-size: 1rem;
        }
      }
    }

    .item-default-price + .item-btn {
      margin-top: 24px;
    }

    .item-note {
      margin-top: 14px;
      font-size: 1.4rem;
    }
  }

  .block-campaign-detail-goods_set-list {
    margin-top: 90px;

    > li {
      padding: 70px 54px 30px;
      border: 10px solid var(--cl-gn-bg);

      .block-campaign-detail-goods_detail {
        .item-img {
          width: 380px;
        }

        .item-detail {
          width: 556px;
        }
      }

      .list-circle {
        top: -55px;
        width: 100px;
        height: 100px;
        margin-left: -50px;
        border: 10px solid var(--cl-gn-bg);
        border-radius: 100px;
        font-size: 3.6rem;
      }

      .list-off {
        top: -10px;
        right: 45px;
        width: 100px;
        height: 120px;
        padding-top: 15px;
        font-size: 2.4rem;

        span {
          font-size: 3.6rem;
        }
      }
    }

    > li + li {
      margin-top: 90px;
    }
  }
}

@media all and (max-width: 767px) {
  .block-campaign-detail-bg-container {
    .ttl-h2 {
      margin-bottom: 22px;
    }
  }

  .block-campaign-detail-goods_detail {
    .item-detail {
      margin-top: 16px;
    }

    .item-catch {
      font-size: 1.8rem;
    }

    .item-ttl {
      margin-top: 8px;
      font-size: 2.4rem;
    }

    .item-comment {
      margin-top: 14px;
    }

    .item-info {
      margin-top: 22px;

      > div {
        dt {
          position: relative;
          font-weight: 700;

          &::after {
            content: "：";
          }
        }

        dd {
          margin-top: 5px;
          padding-left: 1em;
          font-family: var(--ff-num);

          p + p {
            margin-top: 8px;
          }
        }
      }

      > div + div {
        margin-top: 12px;
      }
    }

    .item-annotation {
      margin-top: 14px;
    }

    .item-date {
      margin-top: 16px;
      padding: 6px 0;
      font-size: 1.8rem;
      text-align: center;

      .txt-no {
        letter-spacing: 0.04em;
      }

      .txt-s {
        font-size: 1.2rem;
      }
    }

    .item-cart {
      a:not(:first-child),
      button:not(:first-child) {
        margin-top: 10px;
      }
    }

    .item-date + .item-cart {
      margin-top: 16px;
    }

    .item-color_select {
      margin-top: 14px;
      padding: 10px;

      > dl {
        font-size: 1.4rem;

        dd {
          margin-top: 2px;
          font-size: 1.5rem;
          line-height: 1.333;
        }
      }

      .item-color_select-items {
        margin-top: 10px;

        li {
          width: 100%;

          input[type="radio"] + label {
            min-height: 44px;
            padding: 8px 10px;
            font-size: 1.4rem;
            line-height: 1.333;

            .color-chip {
              flex-shrink: 0;
              width: 16px;
              height: 16px;
              margin-right: 10px;
              border-radius: 16px;
            }
          }
        }

        li + li {
          margin-top: 10px;
        }
      }
    }

    .item-price {
      margin-top: 16px;

      > li + li {
        margin-top: 10px;
      }

      .item-price-catch {
        width: 130px;
        height: 28px;
        font-size: 1.4rem;
      }

      .item-price-line {
        flex-wrap: wrap;
        justify-content: flex-start;

        .item-price-value {
          display: flex;
          align-items: center;
          justify-content: flex-start;
          width: 100%;

          span {
            width: 130px;
            height: 30px;
            font-size: 1.6rem;
            letter-spacing: 0.04em;
          }
        }

        .item-price-ttl {
          margin: 0 10px 0 auto;
          font-size: 1.6rem;
        }

        .item-price-price {
          font-size: 2.8rem;
        }

        .item-price-price .tax {
          margin-left: -4px;
          font-size: 1rem;
        }
      }
    }

    .item-default-price {
      margin-top: 5px;
      height: 22px;
      font-size: 1.5rem;

      dd {
        margin-left: 10px;

        .tax {
          margin-left: -4px;
          font-size: 1rem;
        }
      }
    }

    .item-default-price + .item-btn {
      margin-top: 16px;
    }

    .item-note {
      margin-top: 12px;
      font-size: 1.2rem;
      line-height: 1.333;
      letter-spacing: 0.04em;
    }
  }

  .block-campaign-detail-goods_set-list {
    margin-top: 90px;

    > li {
      padding: 46px 16px 16px;
      border: 5px solid var(--cl-gn-bg);

      .list-circle {
        top: -38px;
        width: 70px;
        height: 70px;
        margin-left: -35px;
        border: 5px solid var(--cl-gn-bg);
        border-radius: 70px;
        font-size: 2.8rem;
      }

      .list-off {
        top: -5px;
        right: 5px;
        width: 60px;
        height: 72px;
        padding-top: 9px;
        font-size: 1.4rem;
        line-height: 1.1;

        span {
          font-size: 2.4rem;
        }
      }
    }

    > li + li {
      margin-top: 90px;
    }
  }
}

.block-campaign-detail-goods_list-items {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;

  > li {
    position: relative;

    .list-catch {
      position: relative;
      font-weight: 700;
      text-align: center;

      &::before {
        content: "＼";
      }

      &::after {
        content: "／";
      }
    }

    .list-main {
      position: relative;
      background-color: #ffffff;
      filter: drop-shadow(0px 3px 10px rgba(0, 0, 0, 0.1));

      .list-detail {
        display: block;
      }

      .list-category {
        position: absolute;

        span {
          display: flex;
          align-items: flex-end;
          font-family: var(--ff-serif);
          line-height: 1;
          writing-mode: vertical-rl;
          text-orientation: upright;
        }
      }

      .list-img {
        margin: 0 auto;
        img {
          display: block;
          width: 100%;
          height: auto;
        }
      }

      .list-icon {
        display: flex;
        flex-wrap: wrap;

        li {
          margin: 5px 5px 0 0;
        }

        span {
          display: flex;
          align-items: center;
          justify-content: center;
          height: 20px;
          padding: 0 6px;
          border: 1px solid #6c7a56;
          background-color: #ffffff;
          color: var(--cl-gn);
          font-size: 1.1rem;
          text-align: center;
          line-height: 1;
          letter-spacing: 0.04em;
        }
      }

      .list-contents {
        color: var(--cl-gr-txt);
      }

      .list-badge {
        position: absolute;
      }
    }

    .list-cart {
      background-color: var(--cl-gn-bg);
      font-family: var(--ff-num);

      .list-cart-message {
        color: var(--cl-rd);
        font-weight: 500;
        text-align: right;
        letter-spacing: 0.04em;
      }

      .list-price {
        display: flex;
        align-items: baseline;
        justify-content: flex-end;
        color: var(--cl-rd);
        letter-spacing: 0.04em;

        dt {
          font-weight: 700;
        }

        dd {
          font-weight: 500;

          .tax {
            font-weight: 700;
          }
        }
      }

      .list-price-default {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        letter-spacing: 0.04em;

        p {
          position: relative;

          &::before {
            content: "";
            display: block;
            position: absolute;
            top: 50%;
            left: 0;
            width: 100%;
            height: 1px;
            background-color: var(--cl-bk);
          }
        }
      }

      .list-cart-btn {
        a,
        button {
          width: 100%;
          height: auto;

          &:not(:first-child) {
            margin-top: 16px;
          }
        }
      }
    }
  }
}

@media all and (min-width: 768px) {
  .block-campaign-detail-goods_list .ttl-h2 {
    margin-bottom: 44px;
  }

  .block-campaign-detail-goods_list-items {
    > li {
      .list-catch {
        font-size: 2rem;
      }

      .list-main {
        margin-top: 24px;

        .list-category {
          top: 24px;
          left: 24px;
          width: 20px;

          span {
            font-size: 1.8rem;
          }
        }

        .list-img {
          overflow: hidden;

          img {
            transition: transform 0.3s;
          }
        }

        .list-icon {
          padding: 0 35px 0 40px;
        }

        .list-name {
          margin-top: 14px;
          padding: 0 40px;
        }

        .list-contents {
          margin-top: 10px;
          padding: 0 40px;
        }

        .list-badge {
          top: -20px;
          right: -20px;
        }
      }

      .list-main:hover {
        .list-img {
          img {
            transform: scale(1.07);
          }
        }
      }
    }
  }

  .block-campaign-detail-goods_list-items.col-3 {
    > li {
      width: calc((100% - 80px) / 3);

      .list-main {
        .list-detail {
          padding: 20px 0 24px;
        }

        .list-img {
          width: 280px;
        }

        .list-icon {
          margin: 19px 0 0;
        }

        .list-name {
          font-size: 2rem;
        }

        .list-contents {
          font-size: 1.2rem;
        }
      }

      .list-cart {
        padding: 24px 40px;

        .list-cart-message {
          font-size: 1.6rem;
        }

        .list-price {
          margin-top: 3px;

          dt {
            font-size: 1.8rem;
          }

          dd {
            margin-left: 10px;
            font-size: 3rem;

            .tax {
              margin-left: -2px;
              font-size: 1.2rem;
            }
          }
        }

        .list-price-default {
          font-size: 1.6rem;

          .tax {
            margin-left: -2px;
            font-size: 1rem;
          }
        }

        .list-cart-btn {
          margin-top: 10px;

          a,
          button {
            min-height: 50px;
            font-size: 1.8rem;
          }
        }
      }
    }

    > li:not(:nth-child(3n)) {
      margin-right: 40px;
    }

    > li:not(:nth-child(-n + 3)) {
      margin-top: 80px;
    }
  }

  .block-campaign-detail-goods_list-items.col-2 {
    > li {
      width: calc((100% - 80px) / 2);

      .list-catch {
        font-size: 2.4rem;
      }

      .list-main {
        .list-detail {
          padding: 20px 0 40px;
        }

        .list-img {
          width: 400px;
        }

        .list-icon {
          margin: 35px 0 0;
        }

        .list-name {
          font-size: 2.4rem;
        }

        .list-contents {
          font-size: 1.4rem;
        }
      }

      .list-cart {
        padding: 40px;

        .list-cart-message {
          font-size: 1.8rem;
        }

        .list-price {
          margin-top: 2px;

          dt {
            font-size: 2rem;
          }

          dd {
            margin-left: 20px;
            font-size: 3.4rem;

            .tax {
              margin-left: -2px;
              font-size: 1.2rem;
            }
          }
        }

        .list-price-default {
          font-size: 1.8rem;

          .tax {
            margin-left: -2px;
            font-size: 1rem;
          }
        }

        .list-cart-btn {
          margin-top: 20px;

          a,
          button {
            min-height: 60px;
            font-size: 2rem;
          }
        }
      }
    }

    > li:not(:nth-child(2n)) {
      margin-right: 80px;
    }

    > li:not(:nth-child(-n + 2)) {
      margin-top: 80px;
    }
  }
}

/* 早原追加分 */
@media all and (min-width: 768px) {
  .btn_incart {
    text-align: center;
    margin: 0 35%;
  }

  .mobile-images {
    display: none;
  }

  .pc-images {
    /* display: none; */
    text-align: center;
  }

  .y_cream_cp_img1 {
    margin-top: 8rem;
  }

  .y_cream_text {
    line-height: 1.5;
    padding: 10px;
    width: 134%;
    margin: 0 74.5rem;
  }
}

/* productのindex.cssより */
  .block-goods-list-container, .block-top-voice-item .list-content {
    display: block;
    width: 100%;
    background-color: #ffffff;
    /* filter: drop-shadow(0px 3px 10px rgba(0, 0, 0, 0.1)); */
  }

  .block-goods-list-container,
.block-top-voice-item .list-content {
  display: block;
  width: 49.25%;
  background-color: #ffffff;
  filter: drop-shadow(0px 3px 10px rgba(0, 0, 0, 0.1));
  margin: 0 32.5rem;
  text-align: center;
}

.block-top-voice-item .list-content {
  height: 100%;
  padding: 20px 16px 24px;
}

.block-goods-list-detail {
  display: block;
  position: relative;
}

.block-goods-list-detail:hover {
  color: var(--cl-bk);
}

.block-goods-list-icon-1 {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 9;
}

.block-goods-list-icon-1 > span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 21px;
  padding-left: 2px;
  background-color: var(--cl-rd);
  color: #ffffff;
  font-size: 1.1rem;
  font-family: var(--ff-num);
}

.block-goods-list-category {
  position: absolute;
  top: 16px;
  left: 24rem;
  width: 20px;
}

.block-goods-list-category span {
  display: flex;
  align-items: flex-end;
  font-size: 1.4rem;
  font-family: var(--ff-serif);
  line-height: 1;
  writing-mode: vertical-rl;
  text-orientation: upright;
}

.block-goods-list-img {
  padding: 20px 45px 0 35px;
}

.block-goods-list-icon-2 {
  display: flex;
  flex-wrap: wrap;
  margin: 11px 0 0;
  padding: 0 11px 0 16px;
}

.block-goods-list-icon-2 li {
  margin: 5px 5px 0 0;
}

.block-goods-list-icon-2 span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 20px;
  padding: 2px 6px;
  border: 1px solid #6c7a56;
  background-color: #ffffff;
  color: var(--cl-gn);
  font-size: 1.1rem;
  text-align: center;
  line-height: 1;
  letter-spacing: 0.04em;
}

.block-goods-list-name {
  margin-top: 10px;
  padding: 0 16px;
  font-size: 1.8rem;
  line-height: 1.444;
}

.block-goods-list-contents {
  margin-top: 5px;
  padding: 0 16px;
  color: var(--cl-gr-txt);
  font-size: 1.1rem;
  font-family: var(--ff-num);
}

.block-goods-list-comment {
  margin-top: 16px;
  padding: 0 16px;
  font-size: 1.3rem;
  line-height: 1.538;
}

.block-goods-list-annotation {
  margin-top: 8px;
  padding: 0 16px;
  font-size: 1.2rem;
  /* text-align: right; */
  /* 早原追加分 */
  color: var(--cl-gr-txt);
  font-size: 1.1rem;
  font-family: var(--ff-num);
}

.block-goods-list-tag {
  display: flex;
  flex-wrap: wrap;
  margin-top: 16px;
  /* padding: 0 16px; */
  padding: 0 10rem;
  font-size: 1.1rem;
  color: var(--cl-gr-txt);
  letter-spacing: 0;
}

.block-goods-list-tag li:not(:last-child) {
  position: relative;
  margin-right: 17px;
}

.block-goods-list-tag li:not(:last-child)::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: -8px;
  width: 1px;
  height: 11px;
  margin-top: -5px;
  background-color: var(--cl-gr-1);
}

.block-goods-list-cart {
  /* 早原追加分 */
  /* margin-top: -11px; */
  /* margin-top: 16px; */
  padding: 0 16px 16px;
}

.block-goods-list-cart-normal {
  margin-top: 14px;
  padding-top: 10px;
  border-top: 1px solid var(--cl-gr-1);
}

.block-goods-list-normal-price {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.block-goods-list-normal-price dt {
  font-size: 1.4rem;
  font-weight: 700;
}

.block-goods-list-normal-price dd {
  font-size: 2.4rem;
  font-family: var(--ff-num);
  font-weight: 500;
  letter-spacing: 0;
}

.block-goods-list-normal-price dd .tax {
  margin-left: -5px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.block-goods-list-member-price {
  margin-top: -3px;
  color: var(--cl-rd);
}

.block-goods-list-member-price dt {
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.block-goods-list-member-price dd {
  font-size: 1.4rem;
  font-family: var(--ff-num);
  font-weight: 600;
  text-align: right;
  letter-spacing: 0.04em;
}

.block-goods-list-member-price dd .tax {
  margin-left: -5px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.block-goods-list-cart-regular {
  width: auto;
  margin: 0 10rem;
}

.block-goods-list-cart-regular-ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 30px;
  margin: 0 -16px;
  background-color: var(--cl-rd);
  color: #ffffff;
  font-size: 1.5rem;
  font-weight: 700;
  text-align: center;
  line-height: 1;
}

.block-goods-list-value-price,
.block-goods-list-value-second-price {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 38px;
  margin-top: 5px;
}

.block-goods-list-value-price {
  /* margin-top: 16px; */
  color: var(--cl-rd);
  /* width: 24rem; */
  margin: 0 0 0 auto;
}
.block-goods-list-value-price .zero dt {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 70px;
  height: 38px;
  padding-top: 1px;
  /* border: 1px solid var(--cl-rd); */
  font-size: 1.4rem;
  font-family: var(--ff-num);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: 0.04em;

  .first {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
}

.block-goods-list-value-price dt,
.block-goods-list-value-second-price dt {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 70px;
  height: 38px;
  padding-top: 1px;
  border: 1px solid var(--cl-rd);
  font-size: 1.4rem;
  font-family: var(--ff-num);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: 0.04em;

  .first {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
}

.block-goods-list-value-second-price dt {
  border: none;
  background-color: #f0f0f0;
}

.block-goods-list-value-price dd,
.block-goods-list-value-second-price dd {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-end;
  font-size: 3rem;
  font-family: var(--ff-num);
  font-weight: 500;
  text-align: right;
  letter-spacing: 0;
}

.block-goods-list-value-second-price dd {
  font-size: 2.4rem;
  letter-spacing: 0.02em;
}

.block-goods-list-value-price dd .tax,
.block-goods-list-value-second-price dd .tax {
  margin-left: -5px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.y_tax {
  margin-left: -5px;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.1em;
}

.block-goods-list-price-sub {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-end;
  margin-top: 6px;
  font-size: 1.2rem;
  font-family: var(--ff-num);
  text-align: right;
  letter-spacing: -0.02em;

  .off {
    margin-left: 2px;
    font-size: 1.3rem;
    letter-spacing: 0.01em;
  }

  .tax {
    margin-left: -3px;
    font-size: 0.8rem;
  }
}

.block-goods-list-normal-price + .block-goods-list-price-sub {
  margin-top: 0;
}

.block-goods-list-cart-btn {
  display: flex;
  align-items: center;
  /* margin-top: 6px; */
}

.block-goods-list-cart-btn .num {
  width: 50px;
}

.block-goods-list-cart-btn .num select {
  width: 100%;
  height: 56px;
  padding: 0 17px 0 0;
  border: 1px solid var(--cl-gr-1);
  border-radius: 0;
  background-image: url(../../img/common/arw_select.png);
  background-position: center right 9px;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  font-size: 1.4rem;
  font-family: var(--ff-num);
  font-weight: 300;
  text-align: center;
}

.block-goods-list-cart-btn .btn {
  width: calc(100% - 60px);
  margin-left: auto;
}

.block-goods-list-cart-btn.btn-only .btn {
  width: 100%;
}

.block-goods-list-cart-btn .btn button {
  display: block;
  position: relative;
  width: 100%;
  height: 40px;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  font-size: 1.4rem;
  font-weight: 700;
  cursor: pointer;
}

.block-goods-list-cart-normal .block-goods-list-cart-btn .btn button {
  background-color: #fff2f3;
}

.block-goods-list-cart-regular .block-goods-list-cart-btn .btn button {
  background-color: var(--cl-rd);
  color: white;
}

.block-goods-list-cart-btn .btn button > span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.block-goods-list-cart-normal .block-goods-list-cart-btn .btn button > span {
  border: 1px solid var(--cl-rd);
  color: var(--cl-rd);
}

.block-goods-list-cart-regular .block-goods-list-cart-btn .btn button > span {
  border: 1px solid var(--cl-rd);
  color: #ffffff;
}

.block-prod_list .block-goods-list-items {
  flex-wrap: wrap;
}

.block-prod_list-annotation,
.block-prod-detail-desc-annotation {
  color: var(--cl-rd);
}

.block-prod_list-annotation p,
.block-prod-detail-desc-annotation p {
  position: relative;
  padding-left: 1.6em;
}

.block-prod_list-annotation p::before,
.block-prod-detail-desc-annotation p::before {
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}

.block-goods-list-set {
  margin-top: 16px;
  padding: 0 16px;
}

.block-goods-list-set-item {
  padding: 12px 16px;
  border: 1px solid var(--cl-gr-1);
}

.block-goods-list-set-item + .block-goods-list-set-item {
  position: relative;
  margin-top: 28px;
}

.block-goods-list-set-item + .block-goods-list-set-item::before {
  content: "";
  display: block;
  position: absolute;
  top: -20px;
  left: 50%;
  width: 12px;
  height: 12px;
  margin-left: -6px;
  background-image: url(../../img/common/icon_set_plus.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.block-goods-list-set-item p:nth-child(1) {
  font-size: 1.6rem;
}

.block-goods-list-set-item p:nth-child(2) {
  margin-top: 2px;
  font-size: 1.1rem;
  font-family: var(--ff-num);
  color: var(--cl-gr-txt);
}

.block-goods-list-bulk-price {
  font-family: var(--ff-num);
  font-weight: 500;
  text-align: right;
  letter-spacing: 0.04em;
}

.block-goods-list-bulk-price dt {
  color: var(--cl-rd);
  font-size: 1.3rem;
}

.block-goods-list-bulk-price dd {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-start;
  line-height: 1.333;
}

.block-goods-list-bulk-price .price-default {
  position: relative;
  font-size: 1.4rem;
}

.block-goods-list-bulk-price .price-default .tax {
  margin-left: -2px;
  font-size: 1rem;
  letter-spacing: 0.1em;
}

.block-goods-list-bulk-price .price-default::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--cl-bk);
}

.block-goods-list-bulk-price .price-sale {
  color: var(--cl-rd);
  font-size: 2.4rem;
}

.block-goods-list-bulk-price .price-sale .qty {
  margin-right: 10px;
  font-size: 1.6rem;
  font-weight: 700;
}

.block-goods-list-bulk-price .price-sale .tax {
  margin-left: -2px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}
/* productのindex.cssより */

@media all and (max-width: 767px) {
  /* 早原追加分 */
  .item-content .block-container {
    margin-top: 11rem;
  }

  .btn_incart {
    text-align: center;
  }

  .mobile-images {
    display: block;
  }

  .pc-images {
    display: none;
    /* text-align: center; */
  }
}

#matome_table_area {
  color: blue;
}

@media all and (max-width: 767px) {
  .block-campaign-detail-goods_list .ttl-h2 {
    margin-bottom: 22px;
  }

  .block-campaign-detail-narrow-container {
    margin-top: 110px;
  }

  .block-campaign-detail-goods_list-items {
    justify-content: space-between;

    > li {
      width: calc((100% - 10px) / 2);

      &:not(:nth-child(-n + 2)) {
        margin-top: 40px;
      }

      .list-catch {
        display: flex;
        align-items: flex-end;
        justify-content: center;
        padding: 0 1em;
        font-size: 1.4rem;

        &::before,
        &::after {
          display: block;
          position: absolute;
          bottom: 0;
        }

        &::before {
          left: 0;
        }

        &::after {
          right: 0;
        }
      }

      .list-main {
        margin-top: 8px;

        .list-detail {
          padding-bottom: 12px;
        }

        .list-category {
          top: 10px;
          left: 10px;
          height: 127px;

          span {
            font-size: 1.3rem;
          }
        }

        .list-img {
          padding: 20px 30px 0;
        }

        .list-icon {
          margin: 5px 0 0;
          padding: 0 5px 0 10px;

          span {
            height: auto;
            padding: 1px 6px;
            min-height: 20px;
          }
        }

        .list-name {
          margin-top: 11px;
          padding: 0 10px;
          font-size: 1.6rem;
          line-height: 1.5;
        }

        .list-contents {
          margin-top: 3px;
          padding: 0 10px;
          font-size: 1.1rem;
          letter-spacing: 0.04em;
        }

        .list-badge {
          top: -10px;
          right: -10px;
        }

        .list-badge img {
          width: 60px;
        }
      }

      .list-cart {
        padding: 10px;

        .list-cart-message {
          font-size: 1.2rem;
          line-height: 1.333;
        }

        .list-price {
          margin-top: 4px;

          dt {
            font-size: 1.2rem;
          }

          dd {
            margin-left: 10px;
            font-size: 1.7rem;

            .tax {
              margin-left: -4px;
              font-size: 1rem;
            }
          }
        }

        .list-price-default {
          font-size: 1.2rem;

          .tax {
            margin-left: -3px;
            font-size: 0.8rem;
          }
        }

        .list-cart-btn {
          margin-top: 10px;

          a,
          button {
            min-height: 40px;
            font-size: 1.4rem;
            line-height: 1.333;

            &:not(:first-child) {
              margin-top: 10px;
            }

            span {
              padding: 5px 10px;
            }
          }
        }
      }
    }
  }

  .block-goods-list-container,
  .block-top-voice-item .list-content {
    display: block;
    width: 100%;
    background-color: #ffffff;
    filter: drop-shadow(0px 3px 10px rgba(0, 0, 0, 0.1));
    margin: auto;
    text-align: center;
  }

  .y_cream_text {
    line-height: 1.5;
    margin-left: 12rem;
    margin-top: 5px;
    /* padding: 10px; */
    /* width: 49.25%; */
    /* margin: 0 32.5rem; */
  }

  .block-goods-list-cart-regular {
    width: auto;
    margin: 0;
  }

  .block-goods-list-tag {
    display: flex;
    flex-wrap: wrap;
    margin-top: 16px;
    /* padding: 0 16px; */
    padding: 0;
    font-size: 1.1rem;
    color: var(--cl-gr-txt);
    letter-spacing: 0;
  }

  .block-goods-list-category {
    position: absolute;
    top: 16px;
    left: 11rem;
    width: 20px;
  }
}

/* 早原追加分 */
/* 縦タイトル */

.block-top-vert-ttl-content {
  position: relative;
}

.block-top-vert-ttl-content h2 {
  margin: 0;
  padding: 0;
  font-family: var(--ff-serif);
  font-weight: 400;
}

@media all and (min-width: 768px) {
  .block-top-vert-ttl-content {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
  }

  .block-top-vert-ttl-content h2 {
    display: flex;
    align-items: flex-end;
    width: 100px;
    font-size: 2.8rem;
    line-height: 1;
    writing-mode: vertical-rl;
    text-orientation: upright;
  }

  .block-top-vert-ttl-content .block-top-vert-ttl-content-body + h2 {
    align-items: flex-start;
  }

  .block-top-vert-ttl-content-body {
    /* width: calc(100% - 100px); */
    /* 早原追加分 */
    width: calc(96% - 106px);
    padding-top: 40px;
  }
}

@media all and (max-width: 767px) {
  .block-top-vert-ttl-content h2 {
    font-size: 2rem;
    text-align: center;
  }

  .block-top-vert-ttl-content-body {
    margin-top: 32px;
  }
}

.block-top-bnr-list a,
.block-top-bnr-list img {
  display: block;
  width: 100%;
  height: auto;
}

@media all and (min-width: 768px) {
  .block-top_bnr {
    margin-top: 120px;
  }

  .block-prod_list + .block-top_bnr {
    margin-top: 100px;
  }

  .block-top-bnr-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .block-top-bnr-list li {
    width: calc((100% - 40px) / 2);
  }

  .block-top-bnr-list li:not(:nth-child(-n + 2)) {
    margin-top: 40px;
  }

  .block-top-bnr-list a {
    overflow: hidden;
  }

  .block-top-bnr-list img {
    transition: transform 0.3s;
  }

  .block-top-bnr-list a:hover img {
    transform: scale(1.04);
  }
}

@media all and (max-width: 767px) {
  .block-top_bnr {
    position: relative;
    margin-top: 80px;
  }

  .block-top_bnr::before,
  .block-top_bnr::after {
    content: "";
    display: block;
    position: absolute;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
  }

  .block-top_bnr::before {
    top: -74px;
    left: -6px;
    width: 100px;
    height: 101px;
    background-image: url(../../img/top/sp/leaf_2.png);
  }

  .block-top_bnr::after {
    bottom: -43px;
    right: 8px;
    width: 78px;
    height: 69px;
    background-image: url(../../img/top/sp/leaf_3.png);
  }

  .block-top-bnr-list li + li {
    margin-top: 16px;
  }
}

.block-top-voice {
  background-color: #eaf3ea;
}

@media all and (min-width: 768px) {
  .block-top-popular {
    margin-top: 120px;
  }

  .block-top-voice {
    margin-top: 120px;
    padding: 80px 0;
  }
}

@media all and (max-width: 767px) {
  .block-top-popular {
    margin-top: 80px;
  }

  .block-top-voice {
    margin-top: 80px;
    padding: 50px 0;
  }
}

.block-top-vert-ttl-content .block-goods-list,
.block-top-voice-list {
  padding: 20px 0 40px;
}

.block-goods-list-items,
.block-top-voice-items {
  display: flex;
}

.block-goods-list-item,
.block-top-voice-item {
  position: relative;
  width: 50rem;
  height: 100%;
  margin: 0 -35%;
  padding-left: 24px;
}

.block-goods-list-item:last-child,
.block-top-voice-item:last-child {
  margin-right: 24px;
}

.block-prod_list .block-goods-list-item:last-child {
  margin-right: 0;
}

.block-goods-list-container,
.block-top-voice-item .list-content {
  display: block;
  width: 133%;
  margin: 0 157.2%;
  background-color: #ffffff;
  filter: drop-shadow(0px 3px 10px rgba(0, 0, 0, 0.1));
}

.block-top-voice-item .list-content {
  height: 100%;
  padding: 20px 16px 24px;
}

.block-goods-list-detail {
  display: block;
  position: relative;
}

.block-goods-list-detail:hover {
  color: var(--cl-bk);
}

.block-goods-list-icon-1 {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 9;
}

.block-goods-list-icon-1 > span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 21px;
  padding-left: 2px;
  background-color: var(--cl-rd);
  color: #ffffff;
  font-size: 1.1rem;
  font-family: var(--ff-num);
}

.block-goods-list-category {
  position: absolute;
  top: 16px;
  left: 16px;
  width: 20px;
}

.block-goods-list-category span {
  display: flex;
  align-items: flex-end;
  font-size: 1.4rem;
  font-family: var(--ff-serif);
  line-height: 1;
  writing-mode: vertical-rl;
  text-orientation: upright;
}

.block-goods-list-img {
  padding: 20px 45px 0 35px;
}

.block-goods-list-icon-2 {
  display: flex;
  flex-wrap: wrap;
  margin: 11px 0 0;
  padding: 0 11px 0 16px;
}

.block-goods-list-icon-2 li {
  margin: 5px 5px 0 0;
}

.block-goods-list-icon-2 span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 20px;
  padding: 2px 6px;
  border: 1px solid #6c7a56;
  background-color: #ffffff;
  color: var(--cl-gn);
  font-size: 1.1rem;
  text-align: center;
  line-height: 1;
  letter-spacing: 0.04em;
}

.block-goods-list-name {
  margin-top: 10px;
  padding: 0 16px;
  font-size: 1.8rem;
  line-height: 1.444;
}

.block-goods-list-contents {
  margin-top: 5px;
  padding: 0 16px;
  color: var(--cl-gr-txt);
  font-size: 1.1rem;
  font-family: var(--ff-num);
  /* 早原追加分 */
  color: black;
  font-size: 11px;
}

.block-goods-list-comment {
  margin-top: 16px;
  padding: 0 16px;
  font-size: 1.3rem;
  line-height: 1.538;
}

.block-goods-list-annotation {
  margin-top: 8px;
  padding: 0 16px;
  font-size: 1.2rem;
  /* text-align: right; */
  /* 早原追加分 */
  color: var(--cl-gr-txt);
  font-size: 1.1rem;
  font-family: var(--ff-num);
}

.block-goods-list-tag {
  display: flex;
  flex-wrap: wrap;
  margin-top: 16px;
  padding: 0 16px;
  font-size: 1.1rem;
  color: var(--cl-gr-txt);
  letter-spacing: 0;
}

.block-goods-list-tag li:not(:last-child) {
  position: relative;
  margin-right: 17px;
}

.block-goods-list-tag li:not(:last-child)::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: -8px;
  width: 1px;
  height: 11px;
  margin-top: -5px;
  background-color: var(--cl-gr-1);
}

.block-goods-list-cart {
  /* 早原追加分 */
  /* margin-top: -11px; */
  margin-top: 16px;
  padding: 0 16px 16px;
}

.block-goods-list-cart-normal {
  margin-top: 14px;
  padding-top: 10px;
  border-top: 1px solid var(--cl-gr-1);
}

.block-goods-list-normal-price {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.block-goods-list-normal-price dt {
  font-size: 1.4rem;
  font-weight: 700;
}

.block-goods-list-normal-price dd {
  font-size: 2.4rem;
  font-family: var(--ff-num);
  font-weight: 500;
  letter-spacing: 0;
}

.block-goods-list-normal-price dd .tax {
  margin-left: -5px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.block-goods-list-member-price {
  margin-top: -3px;
  color: var(--cl-rd);
}

.block-goods-list-member-price dt {
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.block-goods-list-member-price dd {
  font-size: 1.4rem;
  font-family: var(--ff-num);
  font-weight: 600;
  text-align: right;
  letter-spacing: 0.04em;
}

.block-goods-list-member-price dd .tax {
  margin-left: -5px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.block-goods-list-cart-regular-ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 30px;
  margin: 0 -16px;
  background-color: var(--cl-rd);
  color: #ffffff;
  font-size: 1.5rem;
  font-weight: 700;
  text-align: center;
  line-height: 1;
}

.block-goods-list-value-price,
.block-goods-list-value-second-price {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 38px;
  margin-top: 5px;
}

.block-goods-list-value-price {
  margin-top: 16px;
  color: var(--cl-rd);
}

.block-goods-list-value-price dt,
.block-goods-list-value-second-price dt {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 70px;
  height: 38px;
  padding-top: 1px;
  border: 1px solid var(--cl-rd);
  font-size: 1.4rem;
  font-family: var(--ff-num);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: 0.04em;

  .first {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
}

.block-goods-list-value-second-price dt {
  border: none;
  background-color: #f0f0f0;
}

.block-goods-list-value-price dd,
.block-goods-list-value-second-price dd {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-end;
  font-size: 3rem;
  font-family: var(--ff-num);
  font-weight: 500;
  text-align: right;
  letter-spacing: 0;
}

.block-goods-list-value-second-price dd {
  font-size: 2.4rem;
  letter-spacing: 0.02em;
}

.block-goods-list-value-price dd .tax,
.block-goods-list-value-second-price dd .tax {
  margin-left: -5px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.block-goods-list-price-sub {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-end;
  margin-top: 6px;
  font-size: 1.2rem;
  font-family: var(--ff-num);
  text-align: right;
  letter-spacing: -0.02em;

  .off {
    margin-left: 2px;
    font-size: 1.3rem;
    letter-spacing: 0.01em;
  }

  .tax {
    margin-left: -3px;
    font-size: 0.8rem;
  }
}

.block-goods-list-normal-price + .block-goods-list-price-sub {
  margin-top: 0;
}

.block-goods-list-cart-btn {
  display: flex;
  align-items: center;
  /* margin-top: 6px; */
}

.block-goods-list-cart-btn .num {
  width: 50px;
  margin-top: 24px;
}


.block-goods-list-cart-btn .btn {
  width: calc(100% - 60px);
  margin-left: auto;
}

.block-goods-list-cart-btn.btn-only .btn {
  width: 100%;
}

.block-goods-list-cart-btn .btn button {
  display: block;
  position: relative;
  width: 100%;
  height: 40px;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  font-size: 1.4rem;
  font-weight: 700;
  cursor: pointer;
}

.block-goods-list-cart-normal .block-goods-list-cart-btn .btn button {
  background-color: #fff2f3;
}

.block-goods-list-cart-regular .block-goods-list-cart-btn .btn button {
  background-color: var(--cl-rd);
}

.block-goods-list-cart-btn .btn button > span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.block-goods-list-cart-normal .block-goods-list-cart-btn .btn button > span {
  border: 1px solid var(--cl-rd);
  color: var(--cl-rd);
}

.block-goods-list-cart-regular .block-goods-list-cart-btn .btn button > span {
  border: 1px solid var(--cl-rd);
  color: #ffffff;
}

.block-prod_list .block-goods-list-items {
  flex-wrap: wrap;
}

.block-prod_list-annotation,
.block-prod-detail-desc-annotation {
  color: var(--cl-rd);
}

.block-prod_list-annotation p {
  position: relative;
  padding-left: 1.6em;
}

.block-prod-detail-desc-annotation p {
  position: relative;
  padding-left: 1.6em;
}

.block-prod_list-annotation p::before,
.block-prod-detail-desc-annotation p::before {
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}

.block-goods-list-set {
  margin-top: 16px;
  padding: 0 16px;
}

.block-goods-list-set-item {
  padding: 12px 16px;
  border: 1px solid var(--cl-gr-1);
}

.block-goods-list-set-item + .block-goods-list-set-item {
  position: relative;
  margin-top: 28px;
}

.block-goods-list-set-item + .block-goods-list-set-item::before {
  content: "";
  display: block;
  position: absolute;
  top: -20px;
  left: 50%;
  width: 12px;
  height: 12px;
  margin-left: -6px;
  background-image: url(../../img/common/icon_set_plus.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.block-goods-list-set-item p:nth-child(1) {
  font-size: 1.6rem;
}

.block-goods-list-set-item p:nth-child(2) {
  margin-top: 2px;
  font-size: 1.1rem;
  font-family: var(--ff-num);
  color: var(--cl-gr-txt);
}

.block-goods-list-bulk-price {
  font-family: var(--ff-num);
  font-weight: 500;
  text-align: right;
  letter-spacing: 0.04em;
}

.block-goods-list-bulk-price dt {
  color: var(--cl-rd);
  font-size: 1.3rem;
}

.block-goods-list-bulk-price dd {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-start;
  line-height: 1.333;
}

.block-goods-list-bulk-price .price-default {
  position: relative;
  font-size: 1.4rem;
}

.block-goods-list-bulk-price .price-default .tax {
  margin-left: -2px;
  font-size: 1rem;
  letter-spacing: 0.1em;
}

.block-goods-list-bulk-price .price-default::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--cl-bk);
}

.block-goods-list-bulk-price .price-sale {
  color: var(--cl-rd);
  font-size: 2.4rem;
}

.block-goods-list-bulk-price .price-sale .qty {
  margin-right: 10px;
  font-size: 1.6rem;
  font-weight: 700;
}

.block-goods-list-bulk-price .price-sale .tax {
  margin-left: -2px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

@media all and (min-width: 768px) {
  .block-goods-list-container .block-goods-list-img {
    overflow: hidden;
  }

  .block-goods-list-container img {
    display: block;
    /* width: 100%; */
    margin: 0 19rem;
    height: auto;
    transition: transform 0.3s;
  }

  .block-goods-list-container a:hover img {
    transform: scale(1.04);
  }

  .block-goods-list-cart-btn .btn button::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform: scale(0.7);
    opacity: 0;
    transition: transform 0.3s, opacity 0.2s;
  }

  .block-goods-list-cart-normal .block-goods-list-cart-btn .btn button::before {
    background-color: #fde8e9;
  }

  .block-goods-list-cart-regular .block-goods-list-cart-btn .btn button::before {
    background-color: #d12726;
  }

  .block-goods-list-cart-btn .btn button:hover::before {
    transform: scale(1);
    opacity: 1;
  }

  .block-list_tab + .block-prod_list {
    margin-top: 64px;
  }

  .block-list_bulk-top + .block-prod_list {
    margin-top: 100px;
  }

  .block-prod_list .block-goods-list-item {
    width: 290px;
    padding-left: 0;
  }

  .block-prod_list .block-goods-list-item:not(:nth-child(4n)) {
    margin-right: 40px;
  }

  .block-prod_list .block-goods-list-item:not(:nth-child(-n + 4)) {
    margin-top: 40px;
  }

  .block-prod_list .block-goods-list-img {
    padding: 20px 40px 0;
  }

  .block-prod_list-annotation,
  .block-prod-detail-desc-annotation {
    margin-top: 36px;
    font-size: 1.4rem;
    line-height: 1.714;
  }

  .block-goods-list-cart-regular {
    .block-goods-list-normal-price {
      margin-bottom: 3px;
    }

    .block-goods-list-normal-price dt {
      font-size: 1.4rem;
    }

    .block-goods-list-normal-price dd {
      margin-left: 0.2em;
      font-size: 1.4rem;
    }

    .block-goods-list-normal-price dd .tax {
      font-size: 1rem;
    }
  }
}

@media all and (max-width: 767px) {
  .block-list_tab + .block-prod_list {
    margin-top: 40px;
  }

  .block-prod_list .block-goods-list-items {
    justify-content: space-between;
  }

  .block-prod_list .block-goods-list-item {
    width: calc((100% - 16px) / 2);
    padding-left: 0;
  }

  .block-prod_list .block-goods-list-item:not(:nth-child(-n + 2)) {
    margin-top: 16px;
  }

  .block-prod_list .block-goods-list-container {
    filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.1));
  }

  .block-prod_list .block-goods-list-category {
    top: 10px;
    left: 10px;
    height: 127px;
  }

  .block-prod_list .block-goods-list-category span {
    font-size: 1.3rem;
  }

  .block-prod_list .block-goods-list-img {
    padding: 20px 30px 0;
  }

  .block-prod_list .block-goods-list-icon-2 {
    margin: 5px 0 0;
    padding: 0 5px 0 10px;
  }

  .block-prod_list .block-goods-list-name {
    /* 早原追加分 */
    margin-top: 3px;
    /* margin-top: 11px; */
    padding: 0 10px;
    font-size: 1.6rem;
    line-height: 1.5;
  }

  .block-prod_list .block-goods-list-contents {
    margin-top: 3px;
    padding: 0 10px;
    letter-spacing: 0.04em;
    /* 早原追加分 */
    color: black;
  }

  .block-prod_list .block-goods-list-comment {
    margin-top: 8px;
    padding: 0 10px;
    display: -webkit-box;
    font-weight: 500;
    text-decoration: none;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    overflow: hidden;
  }

  .block-prod_list .block-goods-list-annotation {
    margin-top: 1px;
    padding: 0 10px;
    /* font-size: 1rem; */
    /* 早原追加分 */
    color: var(--cl-gr-txt);
    font-size: 1.1rem;
    font-family: var(--ff-num);
  }

  .block-prod_list .block-goods-list-tag {
    padding: 0 10px;
  }

  .block-prod_list .block-goods-list-cart {
    padding: 0 10px 10px;
  }

  .block-prod_list .block-goods-list-cart-regular-ttl {
    height: 28px;
    margin: 0 -10px;
    padding-left: 6px;
    font-size: 1.3rem;
    letter-spacing: 0.04em;
    font-size: 75%;
  }

  .block-goods-list-value-price,
  .block-goods-list-value-second-price {
    flex-wrap: wrap;
    height: auto;
  }

  .block-goods-list-value-price {
    margin-top: 10px;
  }

  .block-prod_list .block-goods-list-normal-price {
    flex-wrap: wrap;
  }

  .block-prod_list .block-goods-list-normal-price dt {
    width: 100%;
    font-size: 1.2rem;
    line-height: 1;
  }

  .block-prod_list .block-goods-list-normal-price dd {
    width: 100%;
    margin-top: 3px;
    font-size: 1.8rem;
    text-align: right;
    letter-spacing: 0.04em;
  }

  .block-prod_list .block-goods-list-member-price {
    margin-top: 0;
  }

  .block-prod_list .block-goods-list-member-price dt,
  .block-prod_list .block-goods-list-member-price dd {
    font-size: 1rem;
  }

  .block-prod_list .block-goods-list-member-price dd .tax {
    font-size: 0.8rem;
  }

  .block-goods-list-price-sub {
    margin-top: 0;
    font-size: 1rem;

    .off {
      font-size: 1.1rem;
    }
  }

  .block-prod_list .block-goods-list-cart-btn .num {
    width: 40px;
  }

  .block-prod_list .block-goods-list-cart-btn .num select {
    height: 25px;
    padding-left: 0;
    background-position: center right 6px;
    background-size: 6px 4px;
    font-size: 1.3rem;
    text-align: center;
    letter-spacing: 0.04em;
  }

  .block-prod_list .block-goods-list-cart-btn .btn {
    width: calc(100% - 45px);
  }

  .block-prod_list .block-goods-list-cart-btn.btn-only .btn {
    width: 100%;
  }

  .block-prod_list .block-goods-list-cart-btn .btn button {
    height: 25px;
    font-size: 1.2rem;
    letter-spacing: 0.04em;
  }

  .block-prod_list .block-goods-list-cart-normal + .block-goods-list-cart-regular {
    padding-top: 10px;
  }

  .block-prod_list .block-goods-list-value-price dt,
  .block-prod_list .block-goods-list-value-second-price dt {
    flex-direction: row;
    width: auto;
    height: 16px;
    padding: 0 4px;
    font-size: 1rem;

    .first {
      font-size: 1rem;
    }
  }

  .block-prod_list .block-goods-list-value-price dd {
    width: 100%;
    font-size: 2rem;
    text-align: right;
    letter-spacing: 0.04em;
  }

  .block-prod_list .block-goods-list-value-price dd .tax {
    margin-left: -6px;
  }

  .block-prod_list .block-goods-list-value-second-price dd {
    width: 100%;
    margin-top: 4px;
    font-size: 1.8rem;
    text-align: right;
    letter-spacing: 0.04em;
  }

  .block-prod_list .block-goods-list-value-second-price {
    margin-top: 4px;
    font-size: 1rem;
    line-height: 1;
  }

  .block-prod_list .block-goods-list-set {
    margin-top: 8px;
    padding: 0 10px;
  }

  .block-prod_list .block-goods-list-set-item {
    padding: 8px 10px;
  }

  .block-prod_list .block-goods-list-set-item + .block-goods-list-set-item {
    margin-top: 22px;
  }

  .block-prod_list .block-goods-list-set-item + .block-goods-list-set-item::before {
    top: -17px;
  }

  .block-prod_list .block-goods-list-set-item p:nth-child(1) {
    font-size: 1.3rem;
    line-height: 1.384;
    letter-spacing: 0.04em;
  }

  .block-prod_list .block-goods-list-set-item p:nth-child(2) {
    line-height: 1.454;
  }

  .block-prod_list .block-goods-list-bulk-price dt {
    margin-left: -4px;
    font-size: 1.2rem;
    letter-spacing: -0.04em;
    white-space: nowrap;
  }

  .block-prod_list .block-goods-list-bulk-price .price-default {
    font-size: 1rem;
  }

  .block-prod_list .block-goods-list-bulk-price .price-default .tax {
    font-size: 0.8rem;
  }

  .block-goods-list-bulk-price .price-sale {
    font-size: 1.8rem;
    letter-spacing: 0;
  }

  .block-goods-list-bulk-price .price-sale .qty {
    margin-right: 4px;
    font-size: 1.3rem;
    display: none;
  }

  .block-goods-list-bulk-price .price-sale .tax {
    margin-left: -4px;
  }

  .block-prod_list-annotation,
  .block-prod-detail-desc-annotation {
    margin-top: 34px;
    font-size: 1.1rem;
  }

  /* 早原追加分 */
  .block-prod_list-annotation:first-child {
    display: none;
  }

  #Anker1 > .ttl-h2 {
    margin-top: 32px;
  }

  .block-list_bulk-price_list .block-prod_list-annotation {
    margin-top: 24px;
  }

  .block-goods-list-cart-regular {
    .block-goods-list-normal-price {
      flex-wrap: nowrap;
      margin-bottom: 2px;
    }

    .block-goods-list-normal-price dt {
      width: auto;
      font-size: 1rem;
    }

    .block-goods-list-normal-price dd {
      width: auto;
      margin: 1px 0 0 0.3em;
      font-size: 1rem;
    }

    .block-goods-list-normal-price dd .tax {
      font-size: 0.8rem;
    }
  }
}

.block-top-popular-annotation {
  margin-top: 24px;
  color: var(--cl-gr-txt);
  font-size: 1.2rem;
  text-align: right;
}

.block-top-voice-item .list-img {
  width: 190px;
  margin: 0 auto;
}

.block-top-voice-item .list-img img {
  display: block;
  width: 100%;
  height: auto;
}

.block-top-voice-item .list-ttl {
  margin-top: 24px;
  font-size: 1.8rem;
  line-height: 1.444;
}

.block-top-voice-item .list-age {
  margin-top: 2px;
  color: var(--cl-gr-txt);
  font-size: 1.1rem;
  font-family: var(--ff-num);
}

.block-top-voice-item .list-ttl {
  margin-top: 14px;
  font-size: 1.3rem;
}

.block-top-voice-item .list-comment {
  margin-top: 8px;
  color: var(--cl-gr-txt);
  font-size: 1.2rem;
}

@media all and (min-width: 768px) {
  .block-top-popular .block-top-vert-ttl-content-body,
  .block-top-voice .block-top-vert-ttl-content-body {
    padding-top: 16px;
  }

  .block-top-popular-list,
  .block-top-voice-list-wrapper {
    position: relative;
    margin: 0 -10px 0 -8px;
  }

  .block-gl-ctrl .swiper-button-prev,
  .block-tv-ctrl .swiper-button-prev {
    left: -12px;
  }

  .block-gl-ctrl .swiper-button-next,
  .block-tv-ctrl .swiper-button-next {
    right: -10px;
  }

  .block-gl-ctrl .swiper-scrollbar.swiper-scrollbar-horizontal,
  .block-tv-ctrl .swiper-scrollbar.swiper-scrollbar-horizontal {
    width: 800px;
    margin: 0 auto;
  }
}

@media all and (max-width: 767px) {
  .block-goods-list,
  .block-top-voice-list {
    padding-bottom: 32px;
  }

  .block-top-popular .block-top-vert-ttl-content-body,
  .block-top-voice .block-top-vert-ttl-content-body {
    margin: 12px -20px 0;
  }

  .block-gl-ctrl .swiper-button-next,
  .block-gl-ctrl .swiper-button-prev,
  .block-tv-ctrl .swiper-button-next,
  .block-tv-ctrl .swiper-button-prev {
    display: none;
  }

  .block-gl-ctrl .swiper-scrollbar.swiper-scrollbar-horizontal,
  .block-tv-ctrl .swiper-scrollbar.swiper-scrollbar-horizontal {
    width: 240px;
    margin: 0 auto;
  }

  .block-top-popular-annotation,
  .block-top-popular .block-arw-btn {
    padding: 0 20px;
  }
}

.block-top-faq-list {
  border-top: 1px solid var(--cl-gr-1);
}

.block-top-faq-list-item {
  border-bottom: 1px solid var(--cl-gr-1);
}

.block-top-faq-list-item dt,
.block-top-faq-list-item dd > div {
  position: relative;
}

.block-top-faq-list-item dt {
  cursor: pointer;
}

.block-top-faq-list-item dd {
  display: none;
}

.block-top-faq-list-item dt::before,
.block-top-faq-list-item dd > div::before {
  display: block;
  position: absolute;
  font-family: var(--ff-num);
}

.block-top-faq-list-item dt::before {
  content: "Q.";
  color: var(--cl-gn);
}

.block-top-faq-list-item dd > div::before {
  content: "A.";
  color: var(--cl-rd);
}

.block-top-faq-list-item dt::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
}

.block-top-faq-list-item dd > div p + p {
  margin-top: 1.5em;
}

.block-top-faq-list-item dd > div a {
  text-decoration: underline;
}

.block-top-faq-list-item dd > div .annotation {
  font-size: 1.4rem;
  color: var(--cl-gr-txt);
}

.block-top-faq-list-item dd > div sup {
  font-size: 60%;
}

@media all and (min-width: 768px) {
  .block-top-faq {
    margin-top: 120px;
  }

  .block-top-faq-list-item {
    padding: 32px 0;
  }

  .block-top-faq-list-item dt {
    padding: 0 40px 0 72px;
    font-size: 1.8rem;
  }

  .block-top-faq-list-item dd {
    padding-top: 26px;
    font-size: 1.6rem;
    line-height: 1.571;
  }

  .block-top-faq-list-item dd > div {
    padding: 0 40px 0 72px;
  }

  .block-top-faq-list-item dt::before,
  .block-top-faq-list-item dd > div::before {
    left: 22px;
    font-size: 2.2rem;
  }

  .block-top-faq-list-item dt::before {
    top: 50%;
    transform: translate(0, -50%);
  }

  .block-top-faq-list-item dd > div::before {
    top: -5px;
  }

  .block-top-faq-list-item dt::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 10px;
    width: 11px;
    height: 7px;
    margin-top: -3px;
    background-image: url(../../img/common/sp/arw_down.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    transition: transform 0.12s;
  }

  .block-top-faq-list-item dt.is-open::after {
    transform: rotate(180deg);
  }

  .block-top-faq-list-item dd > div a[href^="tel:"] {
    text-decoration: none;
  }
}

@media all and (max-width: 767px) {
  .block-top-faq {
    margin-top: 80px;
  }

  .block-top-faq-list-item {
    padding: 16px 0;
  }

  .block-top-faq-list-item dt {
    padding: 0 36px 0 42px;
    font-size: 1.6rem;
  }

  .block-top-faq-list-item dd {
    padding-top: 20px;
    font-size: 1.4rem;
    line-height: 1.571;
  }

  .block-top-faq-list-item dd > div {
    padding: 0 10px 0 42px;
  }

  .block-top-faq-list-item dt::before,
  .block-top-faq-list-item dd > div::before {
    left: 10px;
    font-size: 2rem;
  }

  .block-top-faq-list-item dt::before {
    top: 50%;
    transform: translate(0, -50%);
  }

  .block-top-faq-list-item dd > div::before {
    top: -2px;
  }

  .block-top-faq-list-item dt::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 10px;
    width: 11px;
    height: 7px;
    margin-top: -3px;
    background-image: url(../../img/common/sp/arw_down.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    transition: transform 0.12s;
  }

  .block-top-faq-list-item dt.is-open::after {
    transform: rotate(180deg);
  }

  .block-top-faq-list-item dd > div .annotation {
    font-size: 1.2rem;
  }
}

/* MV ALL */

.block-list_all-mv,
.block-list_regular-mv,
.block-list_bulk-mv {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.block-list_all-mv::before,
.block-list_regular-mv::before,
.block-list_bulk-mv::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.block-list_all-mv .block-container,
.block-list_regular-mv .block-container,
.block-list_bulk-mv .block-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  height: 100%;
}

.block-list_all-mv h1,
.block-list_regular-mv h1,
.block-list_bulk-mv h1 {
  margin: 0;
  padding: 0;
  font-family: var(--ff-serif);
  font-weight: 500;
  line-height: 1;
}

.block-list_all-mv-annnotation {
  color: var(--cl-gr-txt);
  font-size: 1.2rem;
}

@media all and (min-width: 768px) {
  .block-list_all-mv {
    width: 100%;
    height: 400px;
    background-image: url(../../img/products/list_all_mv.jpg);
  }

  .block-list_all-mv::before {
    left: 50%;
    width: 1920px;
    height: 447px;
    margin-left: -960px;
    background-image: url(../../img/products/list_all_mv_leaf.png);
  }

  .block-list_regular-mv {
    width: 100%;
    height: 460px;
    background-image: url(../../img/products/list_regular_mv.jpg);
  }

  .block-list_regular-mv::before {
    left: 50%;
    width: 1920px;
    height: 481px;
    margin-left: -960px;
    background-image: url(../../img/products/list_regular_mv_leaf.png);
  }

  .block-list_bulk-mv {
    width: 100%;
    height: 460px;
    background-image: url(../../img/products/list_bulk_mv.jpg);
  }

  .block-list_bulk-mv::before {
    left: 50%;
    width: 1920px;
    height: 487px;
    margin-left: -960px;
    background-image: url(../../img/products/list_bulk_mv_leaf.png);
  }

  .block-list_all-mv .block-container,
  .block-list_regular-mv .block-container,
  .block-list_bulk-mv .block-container {
    padding-top: 54px;
  }

  .block-list_all-mv h1,
  .block-list_regular-mv h1,
  .block-list_bulk-mv h1 {
    font-size: 3.4rem;
  }

  .block-list_all-mv-comment {
    margin-top: 40px;
    font-size: 1.8rem;
    line-height: 1.777;
  }

  .block-list_all-mv-comment sup {
    font-size: 60%;
  }

  .block-list_all-mv-annnotation {
    margin-top: 18px;
  }

  .block-list_regular-mv-content {
    width: 419px;
    margin-top: 22px;
  }

  .block-list_bulk-mv-content-img {
    margin-top: 4px;
  }

  .block-list_bulk-mv-content-img img {
    display: block;
    height: auto;
  }

  .block-list_bulk-mv-content-comment {
    margin-top: 8px;
    font-size: 1.8rem;
    text-align: center;
  }
}

@media all and (max-width: 767px) {
  .block-list_all-mv {
    width: 100vw;
    height: 87.18vw;
    background-image: url(../../img/products/sp/list_all_mv.jpg);
  }

  .block-list_all-mv::before {
    left: 0;
    width: 100vw;
    height: 95.9vw;
    background-image: url(../../img/products/sp/list_all_mv_leaf.png);
  }

  .block-list_regular-mv {
    width: 100vw;
    height: 87.18vw;
    background-image: url(../../img/products/sp/list_regular_mv.jpg);
  }

  .block-list_regular-mv::before {
    left: 0;
    width: 100vw;
    height: 91.02vw;
    background-image: url(../../img/products/sp/list_regular_mv_leaf.png);
  }

  .block-list_bulk-mv {
    width: 100vw;
    height: 100vw;
    background-image: url(../../img/products/sp/list_bulk_mv.jpg);
  }

  .block-list_bulk-mv::before {
    left: 0;
    width: 100vw;
    height: 102.3vw;
    background-image: url(../../img/products/sp/list_bulk_mv_leaf.png);
  }

  .block-list_all-mv .block-container {
    position: relative;
    padding-bottom: 12px;
  }

  .block-list_regular-mv .block-container,
  .block-list_bulk-mv .block-container {
    position: relative;
    padding-top: 26px;
  }

  .block-list_all-mv h1,
  .block-list_regular-mv h1,
  .block-list_bulk-mv h1 {
    font-size: 2.8rem;
    text-align: center;
  }

  .block-list_regular-mv h1 {
    line-height: 1.142;
  }

  .block-list_all-mv-comment {
    margin-top: 15px;
    font-size: 1.4rem;
    text-align: center;
    line-height: 1.571;
  }

  .block-list_all-mv-comment sup {
    font-size: 60%;
  }

  .block-list_all-mv-annnotation {
    position: absolute;
    left: 20px;
    bottom: 22px;
    width: calc(100% - 40px);
    line-height: 1.333;
    letter-spacing: 0.08em;
  }

  .block-list_regular-mv-content {
    width: 74.35vw;
    margin-top: 10px;
  }

  .block-list_regular-mv-content-link .block-arw-btn {
    margin-top: 16px;
  }

  .block-list_bulk-mv-content-img {
    width: 63.07vw;
    margin: 18px auto 0;
  }

  .block-list_bulk-mv-content-img img {
    display: block;
    height: auto;
  }

  .block-list_bulk-mv-content-comment {
    font-size: 1.4rem;
    text-align: center;
    line-height: 1.571;
  }
}

/* regular header */

.block-list_regular-header h2 {
  font-family: var(--ff-serif);
  font-weight: 500;
  text-align: center;
}

.block-list_regular-header p {
  text-align: center;
}

@media all and (min-width: 768px) {
  .block-list_regular-header {
    margin-top: 80px;
  }

  .block-list_regular-header h2 {
    font-size: 2.8rem;
    line-height: 1;
  }

  .block-list_regular-header p {
    margin-top: 30px;
    font-size: 1.8rem;
  }
}

@media all and (max-width: 767px) {
  .block-list_regular-header {
    margin-top: 64px;
  }

  .block-list_regular-header h2 {
    font-size: 2.4rem;
    line-height: 1.333;
  }

  .block-list_regular-header p {
    margin-top: 20px;
    font-size: 1.4rem;
  }
}

/* block-list_tab */

@media all and (min-width: 768px) {
  .block-list_all-mv + .block-list_tab {
    margin-top: 80px;
  }

  .block-list_regular-header + .block-list_tab {
    margin-top: 64px;
  }

  .block-list_tab-items {
    display: flex;
    border-bottom: 1px solid var(--cl-gr-1);
    font-size: 1.6rem;
    color: var(--cl-gr-txt);
    line-height: 1;
  }

  .block-list_tab-item {
    position: relative;
  }

  .block-list_tab-item + .block-list_tab-item {
    margin-left: 40px;
  }

  .block-list_tab-item.is-active::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: var(--cl-bk);
  }

  .block-list_tab-item a {
    display: block;
    padding-bottom: 18px;
    color: var(--cl-gr-txt);
  }

  .block-list_tab-item.is-active a {
    color: var(--cl-bk);
    font-weight: 700;
  }
}

@media all and (max-width: 767px) {
  .block-list_all-mv + .block-list_tab {
    margin-top: 64px;
  }

  .block-list_regular-header + .block-list_tab {
    margin-top: 40px;
  }

  .block-list_tab-items {
    display: flex;
    flex-wrap: wrap;
    margin: -11px -5px 0 0;
  }

  .block-list_tab-item {
    margin: 11px 5px 0 0;
  }

  .block-list_tab-item a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 29px;
    padding: 0 7px 0 8px;
    background-color: var(--cl-gn-bg);
    color: var(--cl-gr-txt);
    font-size: 1.4rem;
    letter-spacing: 0.04em;
  }

  .block-list_tab-item.is-active a {
    background-color: var(--cl-bk);
    color: #ffffff;
    font-weight: 700;
  }
}

/* bulk list */

.block-list_bulk-anker {
  background-color: var(--cl-lgn);
}

.block-list_bulk-anker-items {
  display: flex;
  align-items: center;
  justify-content: center;
}

.block-list_bulk-anker-item + .block-list_bulk-anker-item {
  position: relative;
}

.block-list_bulk-anker-item + .block-list_bulk-anker-item::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  width: 1px;
  background-color: #bfccbf;
}

@media all and (min-width: 768px) {
  .block-list_bulk-anker-items {
    height: 100px;
  }

  .block-list_bulk-anker-item + .block-list_bulk-anker-item {
    margin-left: 201px;
  }

  .block-list_bulk-anker-item + .block-list_bulk-anker-item::before {
    height: 30px;
    margin-top: -15px;
    left: -100px;
  }

  .block-list_bulk-anker-item a {
    font-size: 1.8rem;
  }
}

@media all and (max-width: 767px) {
  .block-list_bulk-anker-items {
    height: 70px;
  }

  .block-list_bulk-anker-item {
    width: 50%;
    text-align: center;
  }

  .block-list_bulk-anker-item + .block-list_bulk-anker-item::before {
    height: 38px;
    margin-top: -19px;
    left: 0;
  }

  .block-list_bulk-anker-item a {
    font-size: 1.6rem;
    text-align: center;
  }
}

.block-list_bulk-top-list {
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.block-list_bulk-top-list-item {
  position: relative;
  background-color: #ffffff;
}

.block-list_bulk-top-list-item .list-tag {
  display: flex;
}

.block-list_bulk-top-list-item .list-tag > span {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #4e6441;
  background-color: #ffffff;
  color: #4e6441;
  font-family: var(--ff-num);
  font-weight: 700;
  letter-spacing: 0.04em;
}

.block-list_bulk-top-list-item .list-off {
  display: flex;
  align-items: center;
  font-family: var(--ff-num);
}

.block-list_bulk-top-list-item .list-off dt {
  font-weight: 700;
  letter-spacing: 0.04em;
}

.block-list_bulk-top-list-item .list-off dd {
  color: var(--cl-rd);
  font-weight: 500;
  letter-spacing: 0;
}

.block-list_bulk-top-list-item .list-content {
  font-family: var(--ff-num);
  font-weight: 700;
  letter-spacing: 0.04em;
}

.block-list_bulk-top-list-item .list-price_btn {
  display: flex;
  align-items: flex-end;
}

.block-list_bulk-top-list-item .list-price {
  font-family: var(--ff-num);
  line-height: 1;
}

.block-list_bulk-top-list-item .list-price .price-default {
  text-decoration: line-through;
  letter-spacing: 0.04em;
}

.block-list_bulk-top-list-item .list-price .price-sale {
  color: var(--cl-rd);
  font-weight: 500;
  letter-spacing: -0.02em;
}

.block-list_bulk-top-list-item .list-price .price-sale .tax {
  font-weight: 700;
  letter-spacing: 0.1em;
}

.block-list_bulk-top-list-item .list-btn button {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 0;
  border: none;
  background-color: var(--cl-rd);
  color: #ffffff;
  cursor: pointer;
}

.block-list_bulk-top-list-item .list-btn button span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: #ffffff;
  font-weight: 700;
}

.block-list_bulk-top-list-item .list-btn button::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #d12726;
  transform: scale(0.7);
  opacity: 0;
}

.block-list_bulk-top-list-item .list-badge,
.block-list_bulk-top-list-item .list-img {
  position: absolute;
}

.block-list_bulk-top-list-item .list-badge {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: var(--cl-rd);
  color: #ffffff;
  font-family: var(--ff-num);
  text-align: center;
  line-height: 1.3;
}

.block-list_bulk-top-list-item .list-badge span:nth-child(1) {
  font-weight: 500;
  letter-spacing: -0.02em;
}

.block-list_bulk-top-list-item .list-badge span:nth-child(2) {
  font-weight: 700;
}

@media all and (min-width: 768px) {
  .block-list_bulk-top {
    margin-top: 80px;
  }

  .block-list_bulk-top + .block-list_bulk-top {
    margin-top: 40px;
  }

  .block-list_bulk-top-list {
    display: flex;
    justify-content: flex-end;
    position: relative;
    width: 1180px;
    height: 294px;
    padding: 40px;
  }

  .block-list_bulk-top-list.content-1 {
    background-image: url(../../img/products/list_bulk_top_bg_1.jpg);
  }

  .block-list_bulk-top-list.content-2 {
    background-image: url(../../img/products/list_bulk_top_bg_2.jpg);
  }

  .block-list_bulk-top-list::before {
    content: "";
    display: block;
    position: absolute;
    top: -40px;
    left: 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
  }

  .block-list_bulk-top-list.content-1::before {
    width: 1179px;
    height: 397px;
    background-image: url(../../img/products/list_bulk_top_leaf_1.png);
  }

  .block-list_bulk-top-list.content-2::before {
    width: 1240px;
    height: 389px;
    background-image: url(../../img/products/list_bulk_top_leaf_2.png);
  }

  .block-list_bulk-top-list-items {
    display: flex;
  }

  .block-list_bulk-top-list-item {
    width: 406px;
    height: 100%;
    padding: 24px;
  }

  .block-list_bulk-top-list-item + .block-list_bulk-top-list-item {
    margin-left: 40px;
  }

  .block-list_bulk-top-list-item .list-tag > span {
    padding: 0 6px 0 7px;
    height: 30px;
    font-size: 1.4rem;
  }

  .block-list_bulk-top-list-item .list-off {
    margin-top: 0;
  }

  .block-list_bulk-top-list-item .list-off dt {
    width: 136px;
    font-size: 1.8rem;
    line-height: 1.222;
  }

  .block-list_bulk-top-list-item .list-off dd {
    width: calc(100% - 136px);
    font-size: 5.2rem;
  }

  .block-list_bulk-top-list-item .list-off dd .percent {
    font-size: 3.6rem;
  }

  .block-list_bulk-top-list-item .list-off dd .off {
    font-size: 3.4rem;
    letter-spacing: 0.04em;
  }

  .block-list_bulk-top-list-item .list-content {
    margin-top: -10px;
    font-size: 1.4rem;
  }

  .block-list_bulk-top-list-item .list-price .price-default {
    font-size: 1.4rem;
  }

  .block-list_bulk-top-list-item .list-price .price-sale {
    margin-top: 3px;
    font-size: 2.8rem;
  }

  .block-list_bulk-top-list-item .list-price .price-sale .tax {
    font-size: 1rem;
  }

  .block-list_bulk-top-list-item .list-btn {
    margin-left: auto;
  }

  .block-list_bulk-top-list-item .list-btn button {
    width: 198px;
    height: 40px;
  }

  .block-list_bulk-top-list-item .list-btn button::before {
    transition: transform 0.3s, opacity 0.2s;
  }

  .block-list_bulk-top-list-item .list-btn button:hover::before {
    transform: scale(1);
    opacity: 1;
  }

  .block-list_bulk-top-list-item .list-btn button span {
    font-size: 1.4rem;
  }

  .block-list_bulk-top-list-item .list-badge {
    top: 30px;
    right: -10px;
    width: 80px;
    height: 80px;
    padding-top: 2px;
    border-radius: 80px;
  }

  .block-list_bulk-top-list-item .list-badge span:nth-child(1) {
    font-size: 1.8rem;
  }

  .block-list_bulk-top-list-item .list-badge span:nth-child(2) {
    font-size: 1.4rem;
  }

  .block-list_bulk-top-list-item .list-img {
    top: -24px;
    right: -20px;
  }
}

@media all and (max-width: 767px) {
  .block-list_bulk-top {
    margin-top: 64px;
  }

  .block-list_bulk-top + .block-list_bulk-top {
    margin-top: 40px;
  }

  .block-list_bulk-top .block-top-vert-ttl-content {
    /* 早原修正分 */
    /* display: flex; */
    align-items: flex-start;
    justify-content: flex-start;
    margin: 0 -10px;
  }

  .block-list_bulk-top .block-top-vert-ttl-content h2 {
    display: flex;
    align-items: flex-end;
    width: 50px;
    font-size: 2rem;
    line-height: 1;
    writing-mode: vertical-rl;
    text-orientation: upright;
    /* 早原追加分 */
    display: none;
  }

  .block-list_bulk-top .block-top-vert-ttl-content .block-top-vert-ttl-content-body + h2 {
    align-items: flex-start;
  }

  .block-list_bulk-top .block-top-vert-ttl-content-body {
    /* 早原修正分 */
    /* width: calc(100% - 30px); */
    margin: 0 10px;
    /* margin-top: 0; */
    padding-top: 30px;
  }

  .block-list_bulk-top-list {
    width: 100%;
    padding: 40px 10px 20px;
    background-size: cover;
  }

  .block-list_bulk-top-list.content-1 {
    background-image: url(../../img/products/sp/list_bulk_top_bg_1.jpg);
  }

  .block-list_bulk-top-list.content-2 {
    background-image: url(../../img/products/sp/list_bulk_top_bg_2.jpg);
  }

  .block-list_bulk-top-list-item {
    width: 100%;
    height: 100%;
    padding: 12px 16px 16px 12px;
  }

  .block-list_bulk-top-list-item + .block-list_bulk-top-list-item {
    margin-top: 30px;
  }

  .block-list_bulk-top-list-item::before {
    content: "";
    display: block;
    position: absolute;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
  }

  .block-list_bulk-top-list.content-1 .block-list_bulk-top-list-item:nth-child(1):before {
    top: -98px;
    width: 85px;
    height: 93px;
    background-image: url(../../img/products/sp/list_bulk_top_leaf_1_1.png);
  }

  .block-list_bulk-top-list.content-1 .block-list_bulk-top-list-item:nth-child(2):before {
    bottom: -45px;
    right: 44px;
    width: 55px;
    height: 61px;
    background-image: url(../../img/products/sp/list_bulk_top_leaf_1_2.png);
  }

  .block-list_bulk-top-list.content-2 .block-list_bulk-top-list-item:nth-child(1):before {
    top: -86px;
    left: 16px;
    width: 84px;
    height: 95px;
    background-image: url(../../img/products/sp/list_bulk_top_leaf_2_1.png);
  }

  .block-list_bulk-top-list.content-2 .block-list_bulk-top-list-item:nth-child(2):before {
    bottom: -53px;
    right: -20px;
    width: 91px;
    height: 94px;
    background-image: url(../../img/products/sp/list_bulk_top_leaf_2_2.png);
  }

  .block-list_bulk-top-list-item .list-tag > span {
    padding: 0 6px 0 7px;
    height: 26px;
    font-size: 1.2rem;
  }

  .block-list_bulk-top-list-item .list-off {
    margin-top: 0;
  }

  .block-list_bulk-top-list-item .list-off dt {
    width: 110px;
    font-size: 1.4rem;
    line-height: 1.222;
  }

  .block-list_bulk-top-list-item .list-off dd {
    width: calc(100% - 110px);
    font-size: 4.2rem;
  }

  .block-list_bulk-top-list-item .list-off dd .percent {
    font-size: 3.2rem;
  }

  .block-list_bulk-top-list-item .list-off dd .off {
    font-size: 2.4rem;
    letter-spacing: 0.04em;
  }

  .block-list_bulk-top-list-item .list-content {
    margin-top: -2px;
    font-size: 1.4rem;
  }

  .block-list_bulk-top-list-item .list-price_btn {
    margin-top: 4px;
  }

  .block-list_bulk-top-list-item .list-price {
    flex-shrink: 0;
  }

  .block-list_bulk-top-list-item .list-price .price-default {
    font-size: 1.3rem;
  }

  .block-list_bulk-top-list-item .list-price .price-sale {
    margin-top: 5px;
    font-size: 2rem;
  }

  .block-list_bulk-top-list-item .list-price .price-sale .tax {
    font-size: 1rem;
  }

  .block-list_bulk-top-list-item .list-btn {
    flex-shrink: 1;
    margin-left: 2px;
    width: 100%;
  }

  .block-list_bulk-top-list-item .list-btn button {
    width: 100%;
    height: 40px;
  }

  .block-list_bulk-top-list-item .list-btn button span {
    font-size: 1.4rem;
  }

  .block-list_bulk-top-list-item .list-badge {
    top: 18px;
    right: -5px;
    width: 60px;
    height: 60px;
    padding-top: 6px;
    border-radius: 60px;
  }

  .block-list_bulk-top-list-item .list-badge span:nth-child(1),
  .block-list_bulk-top-list-item .list-badge span:nth-child(2) {
    font-size: 1.3rem;
  }

  .block-list_bulk-top-list-item .list-img {
    top: -19px;
    right: 5px;
  }

  .block-list_bulk-top-list-item .list-img img {
    display: block;
    width: auto;
    height: 64px;
  }
}

@media all and (min-width: 768px) {
  .block-prod_list + .ttl-h2 {
    margin-top: 100px;
  }
}

@media all and (max-width: 767px) {
  .block-prod_list + .ttl-h2 {
    margin-top: 80px;
  }
}

/* list_bulk-price_list */

.block-list_bulk-price_list-item {
  border-bottom: 1px solid var(--cl-gr-1);
}

.block-list_bulk-price_list-item .list-box-1 img {
  display: block;
  -webkit-border-before-width: 100%;
  height: auto;
}

.block-list_bulk-price_list-item .list-category {
  font-size: 1.4rem;
  font-family: var(--ff-serif);
  font-weight: 500;
}

.block-list_bulk-price_list-item .list-name {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.444;
}

.block-list_bulk-price_list-item .list-contents {
  /* 早原修正分 */
  /* color: var(--cl-gr-txt); */
  color: black;
  /* font-size: 1.1rem; */
  font-size: 11px;
  font-family: var(--ff-num);
}

.block-list_bulk-price_list-item .list-comment {
  font-size: 1.3rem;
  line-height: 1.538;
}

.block-list_bulk-price_list-item .list-tag {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.1rem;
  color: var(--cl-gr-txt);
  letter-spacing: 0;
}

.block-list_bulk-price_list-item .list-tag li:not(:last-child) {
  position: relative;
  margin-right: 17px;
}

.block-list_bulk-price_list-item .list-tag li:not(:last-child)::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: -8px;
  width: 1px;
  height: 11px;
  margin-top: -5px;
  background-color: var(--cl-gr-1);
}

.block-list_bulk-price_list-item .list-box-3 {
  background-color: var(--cl-gn-bg);
}

.block-list_bulk-price_list-item .list-qty select {
  width: 100%;
  height: 40px;
  padding: 0 17px 0 0;
  border: 1px solid var(--cl-gr-1);
  border-radius: 0;
  background-image: url(../../img/common/arw_select.png);
  background-position: center right 9px;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  font-size: 1.4rem;
  font-family: var(--ff-num);
  font-weight: 300;
  text-align: center;
}

.block-list_bulk-price_list-item .list-price {
  font-family: var(--ff-num);
}

.block-list_bulk-price_list-item .list-price-item {
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  letter-spacing: 0.04em;
}

.block-list_bulk-price_list-item .list-price-item.item-sale {
  color: var(--cl-rd);
}

.block-list_bulk-price_list-item .list-price-item dt {
  font-size: 1.4rem;
  font-weight: 500;
  text-align: right;
}

.block-list_bulk-price_list-item .list-price-item dd {
  font-size: 2rem;
  font-weight: 500;
}

.block-list_bulk-price_list-item .list-price-item dd .tax {
  font-size: 1rem;
  font-weight: 700;
}

.block-list_bulk-price_list-cart {
  display: flex;
  align-items: center;
  justify-content: center;
}

.block-list_bulk-price_list-cart button {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 0;
  border: none;
  background-color: var(--cl-rd);
  color: #ffffff;
  cursor: pointer;
}

.block-list_bulk-price_list-cart button span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: #ffffff;
  font-weight: 700;
}

.block-list_bulk-price_list-cart button::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #d12726;
  transform: scale(0.7);
  opacity: 0;
}

@media all and (min-width: 768px) {
  .block-list_bulk-price_list {
    margin-top: 48px;
  }

  .block-list_bulk-price_list-item {
    display: flex;
    align-items: center;
    padding: 16px 0;
  }

  .block-list_bulk-price_list-item .list-box-1 {
    width: 170px;
    padding: 10px;
  }

  .block-list_bulk-price_list-item .list-box-2 {
    width: calc(100% - 600px);
    padding: 0 40px;
  }

  .block-list_bulk-price_list-item .list-box-3 {
    width: 430px;
  }

  .block-list_bulk-price_list-item .list-name {
    margin-top: 7px;
  }

  .block-list_bulk-price_list-item .list-contents {
    margin-top: 4px;
  }

  .block-list_bulk-price_list-item .list-comment {
    margin-top: 12px;
  }

  .block-list_bulk-price_list-item .list-tag {
    margin-top: 13px;
  }

  .block-list_bulk-price_list-item .list-box-3 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 170px;
    padding: 14px 20px;
  }

  .block-list_bulk-price_list-item .list-qty {
    width: 60px;
  }

  .block-list_bulk-price_list-item .list-price {
    width: calc(100% - 60px);
  }

  .block-list_bulk-price_list-item .list-price-item dt {
    margin-right: 6px;
  }

  .block-list_bulk-price_list-cart {
    margin-top: 64px;
  }

  .block-list_bulk-price_list-cart button {
    width: 400px;
    height: 64px;
    font-size: 2rem;
  }

  .block-list_bulk-price_list-cart button::before {
    transition: transform 0.3s, opacity 0.2s;
  }

  .block-list_bulk-price_list-cart button:hover::before {
    transform: scale(1);
    opacity: 1;
  }
}

@media all and (max-width: 767px) {
  .block-list_bulk-price_list {
    margin-top: 20px;
  }

  .block-list_bulk-price_list-item {
    margin: 0 -20px;
    padding: 20px;
  }

  .block-list_bulk-price_list-item .list-box-1 {
    display: flex;
  }

  .block-list_bulk-price_list-item .list-img {
    width: 100px;
    padding: 10px;
  }

  .block-list_bulk-price_list-item .list-box-2-1 {
    width: calc(100% - 100px);
    padding-left: 16px;
  }

  .block-list_bulk-price_list-item .list-name {
    margin-top: 5px;
  }

  .block-list_bulk-price_list-item .list-contents {
    margin-top: 5px;
  }

  .block-list_bulk-price_list-item .list-comment {
    margin-top: 12px;
  }

  .block-list_bulk-price_list-item .list-tag {
    margin-top: 6px;
  }

  .block-list_bulk-price_list-item .list-box-3 {
    margin-top: 5px;
    padding: 5px;
  }

  .block-list_bulk-price_list-item .list-qty {
    display: flex;
    justify-content: flex-end;
  }

  .block-list_bulk-price_list-item .list-qty select {
    width: 80px;
  }

  .block-list_bulk-price_list-item .list-price {
    margin-top: 0px;
    line-height: 1.1;
  }

  .block-list_bulk-price_list-item .list-price-item dt {
    margin-right: 10px;
  }

  .block-list_bulk-price_list-cart {
    margin-top: 40px;
  }

  .block-list_bulk-price_list-cart button {
    width: 100%;
    height: 60px;
    font-size: 2rem;
  }
}

/* 商品詳細 */

.block-prod-detail-icon {
  display: flex;
  flex-wrap: wrap;
  margin: -5px -5px 0 0;
}

.block-prod-detail-icon li {
  margin: 5px 5px 0 0;
}

.block-prod-detail-icon li span {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 20px;
  padding: 0 6px;
  border: 1px solid #6c7a56;
  background-color: #ffffff;
  color: var(--cl-gn);
  font-size: 1.1rem;
  letter-spacing: 0.04em;
}

.block-prod-detail-name {
  margin-top: 13px;
  font-family: var(--ff-serif);
  font-weight: 500;
}

.block-prod-detail-sales_name {
  margin-top: 8px;
  font-size: 1.3rem;
}

.block-prod-detail-tag {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.1rem;
  color: var(--cl-gr-txt);
  letter-spacing: 0;
}

.block-prod-detail-tag li:not(:last-child) {
  position: relative;
  margin-right: 17px;
}

.block-prod-detail-tag li:not(:last-child)::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: -8px;
  width: 1px;
  height: 11px;
  margin-top: -5px;
  background-color: var(--cl-gr-1);
}

.block-prod-detail-contents {
  color: var(--cl-gr-txt);
  font-size: 1.3rem;
  font-family: var(--ff-num);
}

.block-prod-detail-cart {
  background-color: var(--cl-gn-bg);
}

.block-prod-detail-cart-size > dt,
.block-prod-detail-cart-purchase > dt {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1;
}

.block-prod-detail-cart-size > dd ul {
  display: flex;
  flex-wrap: wrap;
  margin: -10px -10px 0 0;
}

.block-prod-detail-cart-size > dd ul li {
  margin: 10px 10px 0 0;
}

.block-prod-detail-cart-purchase > dd ul li + li {
  margin-top: 16px;
}

.block-prod-detail-cart-size > dd ul li input[type="radio"] + label,
.block-prod-detail-cart-purchase > dd ul li input[type="radio"] + label {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  background-color: #ffffff;
  font-size: 1.6rem;
  font-family: var(--ff-num);
  font-weight: 500;
  cursor: pointer;
}

.block-prod-detail-cart-size > dd ul li input[type="radio"] + label {
  letter-spacing: 0.04em;
}

.block-prod-detail-cart-purchase > dd ul li input[type="radio"] + label {
  align-items: flex-start;
}

.block-prod-detail-cart-size > dd ul li input[type="radio"] + label {
  min-width: 77px;
  height: 40px;
  padding: 0 15px 0 46px;
}

.block-prod-detail-cart-size > dd ul li input[type="radio"] + label::before,
.block-prod-detail-cart-purchase > dd ul li input[type="radio"] + label::before {
  top: 50%;
  left: 16px;
  margin-top: -10px;
}

.block-prod-detail-cart-purchase > dd ul li input[type="radio"] + label::before {
  left: 12px;
}

.block-prod-detail-cart-size > dd ul li input[type="radio"] + label::after,
.block-prod-detail-cart-purchase > dd ul li input[type="radio"] + label::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 2px solid var(--cl-gn);
  background: none;
  opacity: 0;
  transition: opacity 0.12s;
}

.block-prod-detail-cart-purchase > dd ul li.item-regular input[type="radio"] + label::after {
  border-color: var(--cl-rd);
}

.block-prod-detail-cart-size > dd ul li input[type="radio"]:checked + label::after,
.block-prod-detail-cart-purchase > dd ul li input[type="radio"]:checked + label::after {
  opacity: 1;
}

.block-prod-detail-cart-purchase .list-ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 220px;
  height: 30px;
  background-color: #e5eae8;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}

.block-prod-detail-cart-purchase .item-regular .list-ttl {
  background-color: var(--cl-rd);
  color: #ffffff;
}

.block-prod-detail-cart-purchase .list-price {
  width: 100%;

  > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 30px;

    & + div {
      margin-top: 10px;
    }

    dt {
      font-size: 1.6rem;
      font-weight: 700;
    }

    dd {
      font-size: 3rem;
      text-align: right;
      letter-spacing: 0.04em;

      .tax {
        margin-left: -5px;
        font-size: 1rem;
        font-weight: 700;
        letter-spacing: 0.1em;
      }
    }
  }
}

.block-prod-detail-cart-purchase .list-sub {
  width: 100%;
  margin-top: 8px;
  font-size: 1.4rem;
  font-family: var(--ff-num);
  font-weight: 500;
  text-align: right;

  .tax {
    margin-left: -4px;
    font-size: 1rem;
  }
}

.block-prod-detail-cart-purchase .list-first-off + .list-sub {
  margin-top: 2px;
}

.block-prod-detail-cart-purchase .item-regular .list-price {
  dt {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 30px;
    font-size: 1.4rem;

    .off {
      margin-left: 5px;
      font-weight: 600;
      letter-spacing: 0.04em;
    }
  }

  dd {
    font-size: 2.4rem;
    font-weight: 500;
    letter-spacing: 0;
  }

  .list-first {
    dt {
      div {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 30px;
        letter-spacing: 0;

        &:first-child {
          width: 120px;
          border: 1px solid var(--cl-rd);
          background-color: #ffffff;
          color: var(--cl-rd);

          .txt {
            font-size: 1.4rem;
            font-weight: 700;
            letter-spacing: 0.1em;
          }

          .off {
            margin-left: 5px;
            font-size: 1.6rem;
            font-weight: 600;
          }
        }
      }
    }

    dd {
      margin-left: auto;
      color: var(--cl-rd);
      font-size: 3rem;
    }
  }
}

.block-prod-detail-cart-purchase .item-normal .list-price {
  & > div {
    dd {
      line-height: 1;
    }
  }
}

.block-prod-detail-cart-purchase .list-first-off {
  width: 100%;
  margin-top: 5px;
  color: var(--cl-rd);
  font-size: 1.6rem;
  font-weight: 500;
  text-align: right;
}

.block-prod-detail-cart-help a {
  position: relative;
  color: #999999;
  font-size: 1.3rem;
  letter-spacing: 0.04em;
}

.block-prod-detail-cart-help a::before {
  content: "";
  display: inline-block;
  position: relative;
  top: 3px;
  width: 16px;
  height: 16px;
  margin-right: 7px;
  background-image: url(../../img/products/icon_help.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.block-prod-detail-cart-btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.block-prod-detail-cart-btn .item-select select {
  width: 100%;
  padding: 0 22px 0 0;
  border: 1px solid var(--cl-gr-1);
  border-radius: 0;
  background-image: url(../../img/common/arw_select.png);
  background-position: center right 17px;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  font-size: 1.6rem;
  font-family: var(--ff-num);
  font-weight: 300;
  text-align: center;
}

.block-prod-detail-cart-btn .item-btn button {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 0;
  border: none;
  background-color: var(--cl-rd);
  color: #ffffff;
  cursor: pointer;
}

.block-prod-detail-cart-btn .item-btn button span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: #ffffff;
  font-weight: 700;
}

.block-prod-detail-cart-btn .item-btn button::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #d12726;
  transform: scale(0.7);
  opacity: 0;
}

.block-prod-detail-cart-present {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.block-prod-detail-cart-present .item-img img {
  display: block;
  width: 100%;
  height: auto;
}

.block-prod-detail-cart-present .item-comment {
  position: relative;
  background-color: #e5eae8;
  font-size: 1.4rem;
  line-height: 1.428;
}

.block-prod-detail-cart-present .item-comment::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: -10px;
  width: 15px;
  height: 18px;
  margin-top: -9px;
  background-color: #e5eae8;
  clip-path: polygon(0% 50%, 15px 0%, 15px 18px);
}

.block-prod-detail-bnr img {
  display: block;
  width: 100%;
  height: auto;
}

.block-prod-detail-img-main {
  position: relative;
}

.block-prod-detail-img-main-items {
  display: flex;
}

.block-prod-detail-img-main-items img {
  display: block;
  width: 100%;
  height: auto;
}

.block-prod-detail-img-thumb-items li {
  cursor: pointer;
}

.block-prod-detail-img-main-items .list-video,
.block-prod-detail-img-thumb-items .list-video {
  display: flex;
  align-items: center;
  justify-content: center;
}

.block-prod-detail-img-main-items .list-video video,
.block-prod-detail-img-thumb-items .list-video video {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/ 9;
}

.block-prod-detail-img-thumb-items .list-img img,
.block-prod-detail-img-thumb-items .list-video video {
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.block-prod-detail-img-thumb-items {
  display: flex;
}

.block-prod-detail-img-thumb-items .list-video {
  position: relative;
}

.block-prod-detail-img-thumb-items .list-video::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
}

.swiper-scrollbar.swiper-scrollbar-horizontal.swiper-scrollbar-gt {
  width: 100%;
  background-color: transparent;
}

@media all and (min-width: 768px) {
  .block-prod-detail {
    margin-top: 93px;
  }

  .block-prod-detail-main {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
  }

  .block-prod-detail-img {
    width: 600px;
  }

  .block-prod-detail-img-main {
    padding: 20px;
  }

  .block-prod-detail-img-main-items .list-video {
    width: 560px;
    height: 560px;
  }

  .swiper-button-prev-gt {
    left: -20px;
  }

  .swiper-button-next-gt {
    right: -20px;
  }

  .block-prod-detail-img-thumb {
    margin-top: 24px;
  }

  .block-prod-detail-img-thumb-items li {
    width: 78px;
    height: 78px;
  }

  .block-prod-detail-img-thumb-items li:not(:last-child) {
    margin-right: 9px;
  }

  .block-prod-detail-img-thumb-items .list-img img,
  .block-prod-detail-img-thumb-items .list-video video {
    width: 78px;
  }

  .block-prod-detail-img-thumb-items .list-video::after {
    background-image: url(../../img/common/icon_btn_play.png);
    background-size: 40px;
  }

  .swiper-scrollbar.swiper-scrollbar-horizontal.swiper-scrollbar-gt {
    margin-top: 16px;
  }

  .block-prod-detail-content {
    width: 580px;
  }

  .block-prod-detail-name {
    font-size: 2.4rem;
  }

  .block-prod-detail-sales_name {
    margin-top: 8px;
  }

  .block-prod-detail-tag {
    margin-top: 12px;
  }

  .block-prod-detail-contents {
    margin-top: 12px;
  }

  .block-prod-detail-contents p + p {
    margin-top: 6px;
  }

  .block-prod-detail-cart {
    margin-top: 24px;
    padding: 40px;
  }

  .block-prod-detail-cart-purchase {
    margin-top: 22px;
  }

  .block-prod-detail-cart-size > dd,
  .block-prod-detail-cart-purchase > dd {
    margin-top: 13px;
  }

  .block-prod-detail-cart-purchase > dd ul {
    align-items: flex-end;
  }

  .block-prod-detail-cart-purchase > dd ul li {
    width: 100%;
  }

  .block-prod-detail-cart-purchase > dd ul li input[type="radio"] + label {
    width: 100%;
    height: 90px;
    padding: 16px 20px 16px 51px;
  }

  .block-prod-detail-cart-purchase > dd ul li.item-regular input[type="radio"] + label {
    height: auto;
  }

  .block-prod-detail-cart-purchase .list-price dt {
    font-size: 1.4rem;
    text-align: center;
  }

  .block-prod-detail-cart-purchase .list-regular {
    width: 100%;
    margin-top: auto;
    padding: 0 10px;
  }

  .block-prod-detail-cart-purchase .list-regular dd {
    margin-top: 3px;
    text-align: right;
  }

  .block-prod-detail-cart-purchase .list-second {
    margin-top: auto;
    text-align: center;
  }

  .block-prod-detail-cart-help {
    margin-top: 12px;
  }

  .block-prod-detail-cart-btn {
    margin-top: 22px;
  }

  .block-prod-detail-cart-btn .item-select {
    width: 80px;
  }

  .block-prod-detail-cart-btn .item-select select {
    height: 70px;
  }

  .block-prod-detail-cart-btn .item-btn button {
    width: 410px;
    height: 70px;
    font-size: 2rem;
  }

  .block-prod-detail-cart-btn .item-btn button::before {
    transition: transform 0.3s, opacity 0.2s;
  }

  .block-prod-detail-cart-btn .item-btn button:hover::before {
    transform: scale(1);
    opacity: 1;
  }

  .block-prod-detail-cart-present {
    margin-top: 16px;
  }

  .block-prod-detail-cart-present .item-img {
    width: 53px;
  }

  .block-prod-detail-cart-present .item-comment {
    width: 430px;
    padding: 11px 20px 10px;
  }

  .block-prod-detail-bnr {
    margin-top: 40px;
  }

  .block-prod-detail-bnr li + li {
    margin-top: 10px;
  }

  .block-prod-detail-bnr a {
    display: block;
    overflow: hidden;
  }

  .block-prod-detail-bnr img {
    transition: transform 0.3s;
  }

  .block-prod-detail-bnr a:hover img {
    transform: scale(1.04);
  }
}

@media all and (max-width: 767px) {
  .block-prod-detail {
    margin-top: 24px;
  }

  .block-prod-detail-name {
    font-size: 2.2rem;
  }

  .block-prod-detail-tag {
    margin-top: 8px;
  }

  .block-prod-detail-contents {
    margin-top: 7px;
  }

  .block-prod-detail-contents p + p {
    margin-top: 3px;
  }

  .block-prod-detail-img {
    margin: 16px -20px 0;
  }

  .block-prod-detail-img-main {
    width: calc(100vw - 40px);
    margin: 0 auto;
  }

  .block-prod-detail-img-main-items .list-video {
    width: calc(100vw - 40px);
    height: calc(100vw - 40px);
  }

  .swiper-button-prev-gt {
    left: -10px;
  }

  .swiper-button-next-gt {
    right: -10px;
  }

  .block-prod-detail-img-thumb {
    margin-top: 24px;
  }

  .block-prod-detail-img-thumb-items li {
    width: 50px;
    height: 50px;
  }

  .block-prod-detail-img-thumb-items li:not(:last-child) {
    margin-right: 5px;
  }

  .block-prod-detail-img-thumb-items .list-img img,
  .block-prod-detail-img-thumb-items .list-video video {
    width: 50px;
  }

  .block-prod-detail-img-thumb-items .list-video::after {
    background-image: url(../../img/common/icon_btn_play.png);
    background-size: 30px;
  }

  .swiper-scrollbar.swiper-scrollbar-horizontal.swiper-scrollbar-gt {
    width: calc(100% - 40px);
    margin: 10px auto 0;
  }

  .block-prod-detail-cart {
    margin: 40px -20px 0;
    padding: 24px 20px;
  }

  .block-prod-detail-cart-size > dd,
  .block-prod-detail-cart-purchase > dd {
    margin-top: 11px;
  }

  .block-prod-detail-cart-purchase {
    margin-top: 18px;
  }

  .block-prod-detail-cart-purchase > dd ul li {
    width: 100%;
    margin-top: 14px;
  }

  .block-prod-detail-cart-purchase > dd ul li + li {
    margin-top: 10px;
  }

  .block-prod-detail-cart-purchase .list-price dt {
    font-size: 1.3rem;
  }

  .block-prod-detail-cart-size > dd,
  .block-prod-detail-cart-purchase > dd {
    margin-top: 11px;
  }

  .block-prod-detail-cart-purchase > dd ul li input[type="radio"] + label {
    width: 100%;
    min-height: 70px;
    padding: 12px 5px 12px 44px;
  }

  .block-prod-detail-cart-purchase .list-ttl {
    width: 180px;
    height: 26px;
    font-size: 1.3rem;
  }

  .block-prod-detail-cart-purchase .list-price {
    > div {
      height: 25px;

      & + div {
        margin-top: 9px;
      }

      dt {
        font-size: 1.4rem;
        font-weight: 700;
      }

      dd {
        font-size: 2.4rem;
        letter-spacing: 0.04em;

        .tax {
          margin-left: -5px;
          font-size: 1rem;
          font-weight: 700;
          letter-spacing: 0.1em;
        }
      }
    }
  }

  .block-prod-detail-cart-purchase .item-regular .list-price {
    .list-first {
      dt {
        height: 20px;

        div {
          display: flex;
          align-items: center;
          justify-content: center;
          height: 24px;
          padding: 0 4px;
          letter-spacing: 0;

          &:first-child {
            width: auto;
            border: 1px solid var(--cl-rd);
            background-color: #ffffff;
            color: var(--cl-rd);

            .txt {
              font-size: 1.2rem;
              font-weight: 700;
              letter-spacing: 0.1em;
            }

            .off {
              margin-left: 0;
              font-size: 1.4rem;
              font-weight: 600;
            }
          }
        }
      }

      dd {
        color: var(--cl-rd);
        font-size: 2.4rem;
      }
    }
  }

  .block-prod-detail-cart-purchase .list-first-off {
    font-size: 1.4rem;
  }

  .block-prod-detail-cart-purchase .list-sub {
    font-size: 1.3rem;
    letter-spacing: 0;

    .tax {
      font-size: 0.8rem !important;
    }
  }

  .block-prod-detail-cart-purchase .list-second {
    width: 100%;
    text-align: right;
  }

  .block-prod-detail-cart-help {
    margin-top: 7px;
  }

  .block-prod-detail-cart-btn {
    margin-top: 14px;
  }

  .block-prod-detail-cart-btn .item-select {
    width: 70px;
  }

  .block-prod-detail-cart-btn .item-select select {
    height: 60px;
  }

  .block-prod-detail-cart-btn .item-btn {
    width: calc(100% - 80px);
  }

  .block-prod-detail-cart-btn .item-btn button {
    width: 100%;
    height: 60px;
    font-size: 1.8rem;
  }

  .block-prod-detail-cart-present {
    margin-top: 16px;
  }

  .block-prod-detail-cart-present .item-img {
    width: 46px;
  }

  .block-prod-detail-cart-present .item-comment {
    width: calc(100% - 56px);
    padding: 6px 16px 5px;
  }

  .block-prod-detail-bnr {
    margin-top: 40px;
  }

  .block-prod-detail-bnr li + li {
    margin-top: 10px;
  }

  .block-goods-list-container,
  .block-top-voice-item .list-content {
  display: block;
  width: 78%;
  margin-left: 10.7rem;
  background-color: #ffffff;
  filter: drop-shadow(0px 3px 10px rgba(0, 0, 0, 0.1));
}
}

.block-prod-detail-desc-item {
  border-top: 1px solid var(--cl-gr-1);
}

.block-prod-detail-desc-item > dt {
  display: flex;
  align-items: center;
  position: relative;
  font-weight: 500;
}

.block-prod-detail-desc-item > dt.js-desc-switch {
  cursor: pointer;
}

.block-prod-detail-desc-item > dt.js-desc-switch::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  width: 21px;
  height: 12px;
  margin-top: -6px;
  background-image: url(../../img/common/arw_detail_desc.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  transform: rotate(180deg);
  transition: transform 0.12s;
}

.block-prod-detail-desc-item > dt.js-desc-switch.is-open::after {
  transform: rotate(0);
}

.block-prod-detail-desc-item .ttl-h2-gn {
  color: var(--cl-gn);
  font-weight: 700;
  text-align: center;
  line-height: 1.307;
}

.block-prod-detail-desc-item p + p {
  margin-top: 1.6em;
}

.block-prod-detail-desc-message {
  font-size: 1.6rem;
}

.block-prod-detail-desc-point h3 {
  font-family: var(--ff-num);
  font-weight: 500;
  text-align: center;
}

.block-prod-detail-desc-point-item .list-point {
  display: flex;
  align-items: baseline;
  justify-content: center;
  color: var(--cl-gn);
  font-size: 1.8rem;
  font-family: var(--ff-num);
  font-weight: 700;
  text-align: center;
}

.block-prod-detail-desc-point-item .list-point .line {
  margin-left: 0.5em;
  font-weight: 400;
  font-style: italic;
}

.block-prod-detail-desc-point-item .list-point .no {
  margin-left: 10px;
  font-size: 3.4rem;
}

.block-prod-detail-desc-point-item .list-ttl {
  font-weight: 700;
  text-align: center;
}

.block-prod-detail-desc-point-item .list-ttl {
  margin-top: 22px;
  font-size: 2.2rem;
  line-height: 1.454;
}

.block-prod-detail-desc-point-item .list-img-l img {
  display: block;
  width: 100%;
  height: auto;
}

.block-prod-detail-desc-point-item .list-comment {
  font-size: 1.6rem;
}

.block-prod-detail-desc-point-item p.annotation {
  color: var(--cl-gr-txt);
  font-size: 1.2rem;
}

.block-prod-detail-desc-point-item .list-tag-ttl {
  font-size: 1.6rem;
  font-weight: 700;
}

.block-prod-detail-desc-point-item .list-tag {
  display: flex;
  flex-wrap: wrap;
}

.block-prod-detail-desc-point-item .list-tag span {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #6c7a56;
  color: var(--cl-gn);
  font-size: 1.4rem;
}

.block-prod-detail-desc-point-item .list-img-parl-ttl {
  display: flex;
  justify-content: space-between;
}

.block-prod-detail-desc-point-item .list-img-parl-ttl-img img {
  display: block;
  width: 100%;
  height: auto;
}

.block-prod-detail-desc-point-item .list-img-parl-ttl-ttl {
  font-weight: 700;
}

.block-prod-detail-desc-point-item .list-img-before {
  display: flex;
}

.block-prod-detail-desc-point-item .list-img-before li + li {
  position: relative;
}

.block-prod-detail-desc-point-item .list-img-before li + li::before {
  content: "";
  display: block;
  position: absolute;
  background-color: #d7ded7;
}

.block-prod-detail-desc-point-item .list-img-before_after-ttl {
  font-family: var(--ff-num);
  font-weight: 700;
  text-align: center;
}

.block-prod-detail-desc-point-item .list-img-before_after-img img {
  display: block;
  width: 100%;
  height: auto;
}

.block-prod-detail-desc-point-item .list-img-2col {
  display: flex;
  justify-content: space-between;
}

.block-prod-detail-desc-point-item .list-img-2col img {
  display: block;
  width: 100%;
  height: auto;
}

.block-prod-detail-desc-point-item .list-img-parl {
  display: flex;
}

.block-prod-detail-desc-point-item .list-img-parl img {
  display: block;
  width: 100%;
  height: auto;
}

@media all and (min-width: 768px) {
  .block-prod-detail-desc {
    margin-top: 100px;
  }

  .block-prod-detail-desc-item > dt {
    min-height: 80px;
    padding: 24px 60px 24px 40px;
    font-size: 1.8rem;
  }

  .block-prod-detail-desc-item > dt.js-desc-switch::after {
    right: 40px;
  }

  .block-prod-detail-desc-item > dd {
    padding: 40px 40px 80px;
  }

  .block-prod-detail-desc-item .ttl-h2-gn {
    margin-bottom: 36px;
    font-size: 2.8rem;
  }

  .block-prod-detail-desc-message {
    line-height: 1.875;
  }

  .block-prod-detail-desc-point {
    margin-top: 80px;
  }

  .block-prod-detail-desc-point h3 {
    font-size: 2.4rem;
    line-height: 1.666;
  }

  .block-prod-detail-desc-point-items {
    margin-top: 64px;
  }

  .block-prod-detail-desc-point-item {
    /* width: 1000px; */
    /* 早原調整分 */
    width: 700px;
    margin: 0 auto;
  }

  .block-prod-detail-desc-point-item + .block-prod-detail-desc-point-item {
    margin-top: 80px;
  }

  .block-prod-detail-desc-point-item .list-img-l {
    margin: 40px 0 0;
  }

  .block-prod-detail-desc-point-item .list-comment {
    margin-top: 32px;
    line-height: 1.875;
  }

  .block-prod-detail-desc-point-item .list-comment p + p.annotation {
    margin-top: 14px;
  }

  .block-prod-detail-desc-point-item .list-tag-ttl {
    margin-top: 34px;
  }

  .block-prod-detail-desc-point-item .list-tag {
    justify-content: center;
    margin-top: 14px;
  }

  .block-prod-detail-desc-point-item .list-tag span {
    width: 207px;
    height: 40px;
    margin: 16px 5px 0 5px;
    letter-spacing: 0.04em;
  }

  .block-prod-detail-desc-point-item .list-img-parl-ttl {
    align-items: center;
    margin-top: 70px;
  }

  .block-prod-detail-desc-point-item .list-img-parl-ttl + .list-img-parl-ttl {
    margin-top: 0;
  }

  .block-prod-detail-desc-point-item .list-img-parl-ttl-img img {
    width: 400px;
  }

  .block-prod-detail-desc-point-item .list-img-parl-ttl-detail {
    width: 540px;
  }

  .block-prod-detail-desc-point-item .list-img-parl-ttl-ttl {
    font-size: 2rem;
  }

  .block-prod-detail-desc-point-item .list-img-parl-ttl .list-comment {
    margin-top: 16px;
  }

  .block-prod-detail-desc-point-item .list-img-before {
    justify-content: center;
    margin-top: 70px;
  }

  .block-prod-detail-desc-point-item .list-img-before li + li {
    margin-left: 110px;
  }

  .block-prod-detail-desc-point-item .list-img-before li + li::before {
    bottom: 120px;
    left: -70px;
    width: 30px;
    height: 60px;
    clip-path: polygon(30px 50%, 0% 0%, 0% 60px);
  }

  .block-prod-detail-desc-point-item .list-img-before_after-ttl {
    font-size: 2rem;
  }

  .block-prod-detail-desc-point-item .list-img-before_after-img {
    width: 300px;
    margin-top: 18px;
  }

  .block-prod-detail-desc-point-item .list-img-2col {
    margin-top: 70px;
  }

  .block-prod-detail-desc-point-item .list-img-2col li {
    width: calc((100% - 40px) / 2);
  }

  .block-prod-detail-desc-point-item .list-img-parl {
    justify-content: space-between;
    margin-top: 70px;
  }

  .block-prod-detail-desc-point-item .list-ttl + .list-img-parl {
    margin-top: 64px;
  }

  .block-prod-detail-desc-point-item .list-img-parl .list-img-parl-detail {
    width: 456px;
  }

  .block-prod-detail-desc-point-item .list-img-parl .list-img-parl-detail .list-comment {
    margin-top: 0;
  }

  .block-prod-detail-desc-point-item .list-img-parl .list-img-parl-img {
    width: 480px;
  }
}

@media all and (max-width: 767px) {
  
.block-goods-list-cart-btn .num select {
  height: 44px;
}

.block-goods-list-cart-btn .num {
  margin-top:16px;
}

  .block-prod-detail-desc {
    margin: 80px -20px 0;
  }

  .block-prod-detail-desc-item > dt {
    min-height: 70px;
    padding: 22px 50px 22px 20px;
    font-size: 1.6rem;
  }

  .block-prod-detail-desc-item > dt.js-desc-switch::after {
    right: 20px;
  }

  .block-prod-detail-desc-item > dd {
    padding: 32px 20px 64px;
  }

  .block-prod-detail-desc-item .ttl-h2-gn {
    margin-bottom: 22px;
    font-size: 2.6rem;
  }

  .block-prod-detail-desc-message {
    line-height: 1.5;
  }

  .block-prod-detail-desc-point {
    margin-top: 40px;
  }

  .block-prod-detail-desc-point h3 {
    font-size: 2.2rem;
    line-height: 1.454;
  }

  .block-prod-detail-desc-point-items {
    margin-top: 40px;
  }

  .block-prod-detail-desc-point-item + .block-prod-detail-desc-point-item {
    margin-top: 64px;
  }

  .block-prod-detail-desc-point-item .list-img-l {
    width: 100%;
    margin: 24px auto 0;
  }

  .block-prod-detail-desc-point-item .list-comment {
    margin-top: 20px;
    line-height: 1.5;
  }

  .block-prod-detail-desc-point-item .list-comment p + p.annotation {
    margin-top: 7px;
  }

  .block-prod-detail-desc-point-item .list-tag-ttl {
    margin-top: 14px;
  }

  .block-prod-detail-desc-point-item .list-tag {
    justify-content: space-between;
  }

  .block-prod-detail-desc-point-item .list-tag span {
    width: calc((100% - 10px) / 2);
    height: 40px;
    margin: 10px 0 0;
    letter-spacing: 0;
  }

  .block-prod-detail-desc-point-item .list-img-parl-ttl {
    margin-top: 24px;
  }

  .block-prod-detail-desc-point-item .list-img-parl-ttl-img img {
    width: 120px;
  }

  .block-prod-detail-desc-point-item .list-img-parl-ttl-detail {
    width: calc(100% - 136px);
  }

  .block-prod-detail-desc-point-item .list-img-parl-ttl-ttl {
    font-size: 1.6rem;
  }

  .block-prod-detail-desc-point-item .list-img-parl-ttl .list-comment {
    margin-top: 6px;
    font-size: 1.4rem;
    line-height: 1.571;
    letter-spacing: 0.04em;
  }

  .block-prod-detail-desc-point-item .list-img-before {
    justify-content: space-between;
    margin-top: 24px;
  }

  .block-prod-detail-desc-point-item .list-img-before li {
    width: calc((100% - 40px) / 2);
  }

  .block-prod-detail-desc-point-item .list-img-before li + li::before {
    top: calc(50% - 8px);
    left: -28px;
    width: 16px;
    height: 30px;
    clip-path: polygon(16px 50%, 0% 0%, 0% 30px);
  }

  .block-prod-detail-desc-point-item .list-img-before_after-ttl {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    height: 24px;
    font-size: 1.2rem;
    line-height: 1.1;
  }

  .block-prod-detail-desc-point-item .list-img-before_after-img {
    width: 100%;
  }

  .block-prod-detail-desc-point-item .list-img-2col {
    margin-top: 24px;
  }

  .block-prod-detail-desc-point-item .list-img-2col li {
    width: calc((100% - 10px) / 2);
  }

  .block-prod-detail-desc-point-item .list-img-parl {
    flex-direction: column;
    margin-top: 24px;
  }

  .block-prod-detail-desc-point-item .list-img-parl .list-img-parl-detail {
    width: 100%;
    order: 20;
  }

  .block-prod-detail-desc-point-item .list-img-parl .list-img-parl-img {
    width: 100%;
    order: 10;
  }
}

.block-prod-detail-desc-flow-list > li {
  position: relative;
}

.block-prod-detail-desc-flow-list .list-step {
  font-size: 1.6rem;
  font-family: var(--ff-num);
  font-weight: 700;
  line-height: 1.1;
}

.block-prod-detail-desc-flow-list .list-img {
  position: relative;
}

.block-prod-detail-desc-flow-list .list-img img {
  display: block;
  width: 100%;
  height: auto;
}

.block-prod-detail-desc-flow-list > li:not(:first-child) .list-img::before {
  content: "";
  display: block;
  position: absolute;
  background-color: #d7ded7;
}

.block-prod-detail-desc-flow-list .list-comment {
  font-size: 1.6rem;
  line-height: 1.625;
}

.block-prod-detail-desc-howto-video .item-ttl {
  text-align: center;
}

.block-prod-detail-desc-howto-video .item-video iframe {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
}

.block-prod-detail-desc-step-message {
  font-size: 1.6rem;
}

.block-prod-detail-desc-active_ingredient-list .list-img img {
  display: block;
  width: 100%;
  height: auto;
}

.block-prod-detail-desc-active_ingredient-list .list-ttl {
  font-size: 1.6rem;
  font-weight: 700;
}

.block-prod-detail-desc-other_ingredients {
  font-size: 1.6rem;
}

@media all and (min-width: 768px) {
  .block-prod-detail-desc-flow-list {
    display: flex;
  }

  .block-prod-detail-desc-flow-list:not(:first-child) {
    margin-top: 40px;
  }

  .block-prod-detail-desc-flow-list > li {
    width: calc((100% - 192px) / 4);
  }

  .block-prod-detail-desc-flow-list > li:not(:nth-child(4n)) {
    margin-right: 64px;
  }

  .block-prod-detail-desc-flow-list > li:not(:first-child) .list-img::before {
    top: 50%;
    left: -44px;
    width: 20px;
    height: 40px;
    margin-top: -20px;
    clip-path: polygon(20px 50%, 0% 0%, 0% 40px);
  }

  .block-prod-detail-desc-flow-list .list-step {
    display: flex;
    justify-content: center;
    height: 37px;
    text-align: center;
  }

  .block-prod-detail-desc-flow-list .list-comment {
    margin-top: 22px;
  }

  .block-prod-detail-desc-flow-list .list-comment.is-center {
    text-align: center;
  }

  .block-prod-detail-desc-howto-video:not(:first-child) {
    margin-top: 80px;
  }

  .block-prod-detail-desc-howto-video .item-ttl {
    font-size: 2.4rem;
    line-height: 1.666;
  }

  .block-prod-detail-desc-howto-video .item-video {
    width: 800px;
    margin: 40px auto 0;
  }

  .block-prod-detail-desc-step-message {
    line-height: 1.825;
  }

  .block-prod-detail-desc-active_ingredient-list {
    display: flex;
    flex-wrap: wrap;
  }

  .block-prod-detail-desc-active_ingredient-list > li {
    width: 200px;
  }

  .block-prod-detail-desc-active_ingredient-list > li:not(:nth-child(5n)) {
    margin-right: 40px;
  }

  .block-prod-detail-desc-active_ingredient-list > li:not(:nth-child(-n + 5)) {
    margin-top: 40px;
  }

  .block-prod-detail-desc-active_ingredient-list .list-ttl {
    margin-top: 20px;
  }

  .block-prod-detail-desc-active_ingredient-list .list-comment {
    margin-top: 18px;
    font-size: 1.4rem;
    line-height: 1.714;
  }

  .block-prod-detail-desc-other_ingredients {
    line-height: 1.875;
  }
}

@media all and (max-width: 767px) {
  .block-prod-detail-desc-flow-list:not(:first-child) {
    margin-top: 24px;
  }

  .block-prod-detail-desc-flow-list > li {
    display: grid;
    grid-template-columns: 120px 1fr;
    grid-template-rows: auto 1fr;
    grid-auto-columns: 1fr;
    grid-auto-rows: 1fr;
    gap: 0px 0px;
    grid-auto-flow: row;
    grid-template-areas:
      "list-img list-step"
      "list-img list-comment";
  }

  .block-prod-detail-desc-flow-list .list-img {
    grid-area: list-img;
  }

  .block-prod-detail-desc-flow-list .list-step {
    grid-area: list-step;
  }

  .block-prod-detail-desc-flow-list .list-comment {
    grid-area: list-comment;
  }

  .block-prod-detail-desc-flow-list > li + li {
    margin-top: 35px;
  }

  .block-prod-detail-desc-flow-list > li:not(:first-child) .list-img::before {
    top: -25px;
    left: 50%;
    width: 30px;
    height: 15px;
    margin-left: -15px;
    clip-path: polygon(50% 15px, 0% 0%, 30px 0%);
  }

  .block-prod-detail-desc-flow-list .list-step {
    padding-left: 16px;
  }

  .block-prod-detail-desc-flow-list .list-comment {
    margin-top: 10px;
    padding-left: 16px;
  }

  .block-prod-detail-desc-howto-video:not(:first-child) {
    margin-top: 40px;
  }

  .block-prod-detail-desc-howto-video .item-ttl {
    font-size: 2.2rem;
    line-height: 1.454;
  }

  .block-prod-detail-desc-howto-video .item-video {
    width: 100%;
    margin-top: 22px;
  }

  .block-prod-detail-desc-step-message {
    line-height: 1.5;
  }

  .block-prod-detail-desc-active_ingredient-list > li {
    display: flex;
    justify-content: space-between;
  }

  .block-prod-detail-desc-active_ingredient-list > li + li {
    margin-top: 24px;
  }

  .block-prod-detail-desc-active_ingredient-list .list-img {
    width: 120px;
  }

  .block-prod-detail-desc-active_ingredient-list .list-detail {
    width: calc(100% - 136px);
  }

  .block-prod-detail-desc-active_ingredient-list .list-comment {
    margin-top: 10px;
    font-size: 1.6rem;
    line-height: 1.625;
  }
}

/* カテゴリー */

.block-top-category {
  background-color: var(--cl-gn-bg);
}

.block-top-category-items {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  text-align: center;
}

.block-top-category-item .list-img {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  background-color: #ffffff;
}

.block-top-category-item .list-img img {
  display: block;
  height: auto;
}

@media all and (min-width: 768px) {
  .block-top-category {
    margin-top: 120px;
    padding: 80px 0;
  }

  .block-top-category-item {
    width: 170px;
  }

  .block-top-category-item .list-img {
    width: 150px;
    height: 150px;
    border-radius: 150px;
  }

  .block-top-category-item .list-ttl {
    margin-top: 22px;
    font-size: 1.6rem;
  }
}

@media all and (max-width: 767px) {
  .block-top-category {
    margin-top: 80px;
    padding: 50px 0;
  }

  .block-top-category-item {
    width: calc(((100vw - 40px) - 32px) / 3);
  }

  .block-top-category-item:not(:nth-child(-n + 3)) {
    margin-top: 22px;
  }

  .block-top-category-item .list-img {
    width: calc(((100vw - 40px) - 32px) / 3);
    height: calc(((100vw - 40px) - 32px) / 3);
    border-radius: calc(((100vw - 40px) - 32px) / 3);
  }

  .block-top-category-item .list-ttl {
    margin-top: 12px;
    font-size: 1.4rem;
    line-height: 1.571;
    letter-spacing: 0.04em;
  }
}

/* 合わせて買いたい */

.block-prod-detail-together-list-wrapper {
  position: relative;
}

.block-prod-detail-together-list-items {
  display: flex;
}

.block-prod-detail-together-item {
  width: 208px;
}

.block-prod-detail-together-item a {
  display: block;
  position: relative;
}

.block-prod-detail-together-item .list-img {
  position: relative;
  padding: 20px;
  overflow: hidden;
}

.block-prod-detail-together-item .list-img::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--cl-gr-1);
}

.block-prod-detail-together-item .list-img img {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
}

.block-prod-detail-together-item .list-icon-1 {
  position: absolute;
  top: 0;
  right: 0;
}

.block-prod-detail-together-item .list-icon-1 > span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 21px;
  padding-left: 2px;
  background-color: var(--cl-rd);
  color: #ffffff;
  font-size: 1.1rem;
  font-family: var(--ff-num);
}

.block-prod-detail-together-item .list-detail {
  margin-top: 16px;
}

.block-prod-detail-together-item .list-icon-2 {
  display: flex;
  flex-wrap: wrap;
  margin: -5px -5px 0 0;
}

.block-prod-detail-together-item .list-icon-2 li {
  margin: 5px 5px 0 0;
}

.block-prod-detail-together-item .list-icon-2 span {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 20px;
  padding: 0 6px;
  border: 1px solid #6c7a56;
  background-color: #ffffff;
  color: var(--cl-gn);
  font-size: 1.1rem;
  letter-spacing: 0.04em;
}

.block-prod-detail-together-item .list-name {
  margin-top: 14px;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.444;
}

.block-prod-detail-together-item .list-tag {
  display: flex;
  flex-wrap: wrap;
  margin-top: 4px;
  font-size: 1.1rem;
  color: var(--cl-gr-txt);
  letter-spacing: 0;
}

.block-prod-detail-together-item .list-tag li:not(:last-child) {
  position: relative;
  margin-right: 17px;
}

.block-prod-detail-together-item .list-tag li:not(:last-child)::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: -8px;
  width: 1px;
  height: 11px;
  margin-top: -5px;
  background-color: var(--cl-gr-1);
}

.block-prod-detail-together-item .list-price {
  margin-top: 14px;
  font-size: 1.8rem;
  font-family: var(--ff-num);
  font-weight: 500;
  letter-spacing: 0.04em;
}

.block-prod-detail-together-item .list-price .tax {
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

@media all and (min-width: 768px) {
  .block-prod-detail-together {
    margin-top: 100px;
  }

  .block-prod-detail-together-list-wrapper {
    padding: 0 40px;
  }

  .block-prod-detail-together-item {
    margin-right: 40px;
  }

  .block-prod-detail-together-item .list-img img {
    transition: transform 0.3s;
  }

  .block-prod-detail-together-item a:hover .list-img img {
    transform: scale(1.04);
  }
}

@media all and (max-width: 767px) {
  .block-prod-detail-together-list-wrapper {
    margin: 0 -20px;
  }

  .block-prod-detail-together {
    margin-top: 80px;
  }

  .block-prod-detail-together-item {
    margin-left: 16px;
  }

  .block-prod-detail-together-item:first-child {
    margin-left: 20px;
  }

  .block-prod-detail-together-item:last-child {
    margin-right: 20px;
  }
}

/* 関連コラム */

.block-prod-detail-related_column-list-wrapper {
  position: relative;
}

.block-prod-detail-related_column-item {
  width: 270px;
}

.block-prod-detail-related_column-item a {
  display: block;
}

.block-prod-detail-related_column-item .list-img img {
  display: block;
  width: 100%;
  height: auto;
}

.block-prod-detail-related_column-item .list-detail {
  margin-top: 16px;
}

.block-prod-detail-related_column-item .list-tag {
  display: flex;
  flex-wrap: wrap;
  margin: -5px -5px 0 0;
}

.block-prod-detail-related_column-item .list-tag span {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 19px;
  margin: 5px 5px 0 0;
  padding: 0 6px;
  background-color: #eef1ef;
  color: var(--cl-gr-txt);
  font-size: 1.1rem;
  letter-spacing: 0.04em;
}

.block-prod-detail-related_column-item .list-ttl {
  display: -webkit-box;
  margin-top: 14px;
  font-size: 1.6rem;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  line-clamp: 3;
  -webkit-line-clamp: 3;
}

@media all and (min-width: 768px) {
  .block-prod-detail-related_column {
    margin-top: 140px;
  }

  .block-prod-detail-related_column-list {
    padding: 0 40px;
  }

  .block-prod-detail-related_column-item {
    margin-right: 40px;
  }

  .block-prod-detail-related_column-item .list-img {
    overflow: hidden;
  }

  .block-prod-detail-related_column-item .list-img img {
    transition: transform 0.3s;
  }

  .block-prod-detail-related_column-item a:hover .list-img img {
    transform: scale(1.04);
  }

  .block-together_list-ctrl .swiper-scrollbar.swiper-scrollbar-horizontal,
  .block-related_column-ctrl .swiper-scrollbar.swiper-scrollbar-horizontal {
    width: 800px;
    margin: 40px auto 0;
  }
}

@media all and (max-width: 767px) {
  .block-prod-detail-related_column-list-wrapper {
    margin: 0 -20px;
  }

  .block-prod-detail-related_column {
    margin-top: 80px;
  }

  .block-prod-detail-related_column-item {
    margin-left: 16px;
  }

  .block-prod-detail-related_column-item:first-child {
    margin-left: 20px;
  }

  .block-prod-detail-related_column-item:last-child {
    margin-right: 20px;
  }

  .block-together_list-ctrl .swiper-button-prev,
  .block-together_list-ctrl .swiper-button-next,
  .block-related_column-ctrl .swiper-button-prev,
  .block-related_column-ctrl .swiper-button-next {
    display: none;
  }

  .block-together_list-ctrl .swiper-scrollbar.swiper-scrollbar-horizontal,
  .block-related_column-ctrl .swiper-scrollbar.swiper-scrollbar-horizontal {
    width: 240px;
    margin: 32px auto 0;
  }
}

@media all and (min-width: 768px) {
}

@media all and (max-width: 767px) {
  .block-goods-list-cart {
    /* 早原追加分 */
    margin-top: -11px;
    /* margin-top: 16px; */
    padding: 0 16px 16px;
  }
}

/*カワゾエ美白ジェル追加*/

.commitment__title {
  background: url(../../img/products/wh_gel50/bg_green.png) center top no-repeat !important;
  background-size: cover;
}

.commitment__content {
  width: 644px;
  height: 378px;
  background: url(../../img/products/wh_gel50/bg_frame.png) center top no-repeat!important;
  background-size: contain;
  margin: 0 auto;
  text-align: center;
  padding-bottom: 15px;
}

.point {
  background: linear-gradient(to bottom, #fff, #FEF9EA, #F4D4D5 10%, #F4D4D5 20%, #F4D4D5 90%, #fff 100%)!important;
  background-size: cover;
  padding-bottom: 1rem;
}

.staff_voice {
  background-color: #FFFDEA;
  padding-bottom: 1.5rem;
}

.block-campaign-detail-normal-container .block-campaign-detail-caution-bkred{ 
  padding: 2em 3em;
  border: 1px solid var(--cl-rd);
  max-width: 798px;
  width: 100%;
  margin: auto;
}

.block-campaign-detail-normal-container .block-campaign-detail-caution-bkred .caution-bkred-title{
  display: block;
  background: var(--cl-rd);
  color: #fff;
  font-size: 2rem;
  font-weight: 600;
  text-align: center;
  padding: .8em 0;
  width: 100%;
  margin: 0 auto 1em;
}

.block-campaign-detail-normal-container .block-campaign-detail-caution-bkred p.caution-bkred-subtitle{
  text-align: center;
  font-size: 2rem;
  width: fit-content;
  margin: 1em auto;
  display: block;
}

.block-campaign-detail-normal-container .block-campaign-detail-caution-bkred p.caution-bkred-subtitle span{
  border-bottom: 1px solid var(--cl-bk);
  display: inline;
  line-height: 1.8;
  padding: 6px;
}

@media (max-width: 767px) {
  .block-campaign-detail-normal-container .block-campaign-detail-caution-bkred{ 
    padding: 2em 5%;
  }
}
#page-wrinkle {
  position: relative;

  & .block-product-container {
    padding-top: 50px;
  }
  .block-product-detail__caption{
    text-align: right;
    line-height: 1.2;}
  .block-product-detail__x-small{
    font-size: 1.25rem;
    letter-spacing: 0;
    padding: 2px;}

  .block-product-detail__fv {
    background: #0f2b2d;
    color: #fff;
  }

  .block-product-detail__fv-intro {
    padding: 3em 12% 6em;
    position: relative;

    & .icon-wrinkle-pkg{
      position: absolute;
      bottom: -100px;
      right: -150px;
      transform: rotate(0deg);
      width: 300px;}

    & h2 {
      margin-bottom: 1.2em;
      font-size: 3rem;
      letter-spacing: 3px;
    }

    & p {
      line-height: 1.8;
      font-weight: 600;
    }
  }

  .block-product-detail__feature {
    padding: 1em 5%;
    background: #254645;
  }
    & .block-product-detail__feature-flex-bg-gn{
    background: #dcece5d1;
    padding: 2em 5%;}

  .block-product-detail__direct{
    padding: 1em 5% 5em;
    background: #254645;
    text-align: center;}
  .block-product-detail__direct-img{
    width: 94%;
    margin: auto;}
    .block-product-detail__direct-btn span{
      display: inline-block;
      align-items: center;
      width: 100%;
      max-width: 500px;
      text-align: center;
      background: linear-gradient(133deg, #9e823c, #e5c12d, #725c16);
      border-radius: 999px;
      padding: 8px;
      border: 4px solid #bdad6e;
      color: #fff;
      font-weight: 800;
      font-size: 2.8rem;
      letter-spacing: 2px;
      text-shadow: 0px 1px 11px #8b721b;
  }
  .block-product-detail__direct-btn a{
    position: relative;
  }
  .block-product-detail__direct-btn a::before {
    display: block;
    content: '';
    position: absolute;
    top: calc((50% - 20px) / 2);
    left: 30px;
    width: 20px;
    height: 20px;
    border-radius: 50%;  
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    background: #fff;
  }
  .block-product-detail__direct-btn a::after {
    display: block;
    content: "";
    position: absolute;
    top: calc((50% - 10px) / 2);
    left:38px;
    width: 7px;
    height: 10px;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
    background: #ac8d3a;
  }
  .block-product-detail__feature-container {
    position: relative;
    background: #fff;
    padding: 3em 7%;

    & .block-product-detail__feature-icon-abslt{
      position: absolute;
      top: -35px;
      left: -30px;
      width: 200px;
    }
    & .icon-cleanface{
      position: absolute;
      bottom: 0;
      right: -220px;
      width: 380px;
    } 
    & .icon-wrinkle-pkg02{
      position: absolute;
      bottom: -100px;
      right: -125px;
      width: 360px;
    }
  }

  h3 img, h2 img, .block-product-detail__feature img {
    width: 100%;
  }
  & .block-product-detail__feature-flex-bottom-line{
    border-bottom: 1px dashed #ccc;
    padding-bottom: 2em;}
    
  & .block-product-detail__feature-h2-ttl{
    background: var(--cl-gn);
   font-size: 2.8rem;
   margin-bottom: 1em;
   letter-spacing: 2px;
   text-align: center;
   color: #fff;
   padding: 12px;}
    
  & .block-product-detail__feature-h3-ttl{
    color: var(--cl-gn);
    font-size: 2.4rem;
    margin-bottom: .8em;
    border-left: 6px solid var(--cl-gn);
    padding-left: 15px;}

  & .block-product-detail__feature-flex {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 3em;

    & .block-product-detail__feature-img {
      flex: 0 0 40%;
    }
    & .block-product-detail__feature-img25 {
      flex: 0 0 25%;
    }

    & .block-product-detail__feature-txt75 {
      flex: 0 0 calc(75% - 3em);
      line-height: 1.6;}

    & .block-product-detail__feature-txt {
      flex: 0 0 calc(60% - 3em);
      line-height: 1.6;
      position: relative;

      & .icon-wrinkle-pkg03 {
        position: absolute;
        width: 240px;
        bottom: -20px;
        right: -20px;
      }

      & .block-product-detail__feature-txt-icon{
        display: inline-flex;
        align-items: center;
        justify-content: flex-start;
        margin: 9px 0;
        gap: 6px;

        & span{
          background: #d3f4d4;
          padding: 2px 1em;
          border-radius: 999px;
          white-space: nowrap;
          display: inline-flex;
          align-items: center;
          justify-content: center;
          width: fit-content;
          font-weight: 800;
          font-size: 2.25rem;
      }
    }
    }
    
  } 
  .block-product-detail__feature{
  background: #254645;}
}

@media (max-width: 767px){
  #page-wrinkle{
    & .block-container-sp{
      padding: 0;
      background: #0D292C;
    }
  & .block-product-detail__fv-intro{
    padding: 1em 5% 250px;
    & h2 {
      margin-bottom: 1em;
      font-size: 2.5rem;
    }
      & p {
        letter-spacing: 0px;
      }
      & .icon-wrinkle-pkg{
        bottom: 0;
        right: auto;
        width: 235px;
        left: 50%;
        transform: translateX(-50%);
      }
    }
    & .block-product-detail__feature{
      padding: 2em 3%;
    }
    & .block-product-detail__feature-h2-ttl{
      font-size: 2.6rem;}
    & .block-product-detail__direct-btn{
      padding: 0 5%;
      & span{
        font-size: 2rem;
      }
    }
    .block-product-detail__direct-btn a::before {
      left: 20px;
    }
    .block-product-detail__direct-btn a::after {
      left: 27px;
    }
    & .block-product-detail__feature-img25{
      padding: 0 15%;
    }
    & .block-product-detail__feature-container {
      padding: 1em 3%;
      & .block-product-detail__feature-icon-abslt {
        top: -35px;
        left: 5px;
        width: 120px;
      }
      & .icon-cleanface{
        position: static;
        width: 100%;
      }
      & .icon-wrinkle-pkg02{ 
        position: static;
        margin-top: 1em;
        width: 100%;
      }
    }
    & .block-product-detail__feature-flex {
      & .block-product-detail__feature-txt {
        & .icon-wrinkle-pkg03 {
          position: static;
          width: 60%;
          margin: auto;
        }
      }
    }
    & .block-product-detail__feature-flex{
      gap:1em;
      flex-direction: column;
      & .block-product-detail__feature-txt{
        line-height: 1.5;
      }
    }
    & .block-product-detail__direct{
      padding: 0 0 4em;
    }
    .block-product-detail__x-small {
      font-size: 1.1rem
    }
    & .block-product-detail__feature-flex {
      & .block-product-detail__feature-txt {
          & .block-product-detail__feature-txt-icon {
              & span{ 
          padding: 2px 5%; 
          font-size: 2rem;
        }
      }
    
  }}
}