@charset "utf-8";

:root {
  --c-red: #d73b06;
  --c-orange: #d68f5e;
  --c-light-yellow: #f5f2eb;
  --c-blue: #2b5684;
  --c-dark-blue: #004b7c;
  --c-green: #3c7d22;
  --c-gray: #7e7e7e;
  --c-black: #333333;
  --c-white: #ffffff;
  --c-light-border: #d3d4d5;
}

/* common */
.flickity-prev-next-button.previous {
  left: 0 !important;
}
.flickity-prev-next-button.next {
  right: 0 !important;
}

/* top-page */
body.template-index {
  background-color: var(--c-light-yellow);
}

/* page-title */
h1.page__title {
  font-size: 34px;
  font-weight: 700;
  line-height: 1.5;

  span {
    font-size: 16px;
    display: block;
  }
}

/* section-title */
.section__header-stack {
  margin: 0 auto;
}
.section__header {
  position: relative;

  &::after {
    position: absolute;
    font-size: 13px;
    font-weight: 600;
    bottom: 14px;
    left: 50%;
    transform: translateX(-50%);
    color: var(--c-red);

    @media screen and (max-width: 640px) {
      font-size: 10px;
      bottom: 0;
    }
  }
  h2 {
    font-weight: 700;
    font-size: 28px;
    color: var(--c-red);
    margin: 0 auto 40px !important;
    position: relative;

    @media screen and (max-width: 768px) {
      margin: 0 auto 35px !important;
    }

    @media screen and (max-width: 640px) {
      margin: 0 auto 15px !important;
      font-size: 22px;
    }

    &::before {
      content: "";
      position: absolute;
      display: inline-block;
      width: 25px;
      border-top: solid 1px var(--c-red);
      top: 50%;
      left: -40px;
    }

    &::after {
      content: "";
      position: absolute;
      display: inline-block;
      width: 25px;
      border-top: solid 1px var(--c-red);
      top: 50%;
      right: -40px;
    }
  }
}

/* search & discovery */
.collection__filter-group-list,
.collection-drawer {
  .collection__filter-group {
    border-bottom: 1px solid var(--c-light-border);
    padding: 10px 0;

    .color-swatch-list--large {
      display: flex;
      flex-direction: column;
      align-items: baseline;
    }
    .color-swatch-list [data-tooltip]::before,
    .color-swatch-list [data-tooltip]::after {
      content: none !important;
    }
    .color-swatch__item {
      position: relative;
      border-radius: 50%;

      &::before {
        position: absolute;
        content: "";
        width: 200px;
        top: -5px;
        left: 28px;
        font-size: 14px;
      }
    }

    .color-swatch[data-tooltip="ブラック"] .color-swatch__item::before {
      content: "ブラック";
    }
    .color-swatch[data-tooltip="ブラック"] span,
    input[value="ブラック"] + label .color-swatch__item {
      background-color: #000;
    }

    .color-swatch[data-tooltip="ホワイト"] .color-swatch__item::before {
      content: "ホワイト";
    }
    .color-swatch[data-tooltip="ホワイト"] span,
    input[value="ホワイト"] + label .color-swatch__item {
      background-color: #fbfbfb;
    }

    .color-swatch[data-tooltip="グレー"] .color-swatch__item::before {
      content: "グレー";
    }
    .color-swatch[data-tooltip="グレー"] span,
    input[value="グレー"] + label .color-swatch__item {
      background-color: #7b7b7b;
    }

    .color-swatch[data-tooltip="ベージュ"] .color-swatch__item::before {
      content: "ベージュ";
    }
    .color-swatch[data-tooltip="ベージュ"] span,
    input[value="ベージュ"] + label .color-swatch__item {
      background-color: #f5f5dc;
    }

    .color-swatch[data-tooltip="ブラウン"] .color-swatch__item::before {
      content: "ブラウン";
    }
    .color-swatch[data-tooltip="ブラウン"] span,
    input[value="ブラウン"] + label .color-swatch__item {
      background-color: #74320e;
    }

    .color-swatch[data-tooltip="レッド"] .color-swatch__item::before {
      content: "レッド";
    }
    .color-swatch[data-tooltip="レッド"] span,
    input[value="レッド"] + label .color-swatch__item {
      background-color: #d91733;
    }

    .color-swatch[data-tooltip="グリーン"] .color-swatch__item::before {
      content: "グリーン";
    }
    .color-swatch[data-tooltip="グリーン"] span,
    input[value="グリーン"] + label .color-swatch__item {
      background-color: #518d09;
    }

    .color-swatch[data-tooltip="ブルー"] .color-swatch__item::before {
      content: "ブルー";
    }
    .color-swatch[data-tooltip="ブルー"] span,
    input[value="ブルー"] + label .color-swatch__item {
      background-color: #3d77bd;
    }

    .color-swatch[data-tooltip="パープル"] .color-swatch__item::before {
      content: "パープル";
    }
    .color-swatch[data-tooltip="パープル"] span,
    input[value="パープル"] + label .color-swatch__item {
      background-color: #7a039b;
    }

    .color-swatch[data-tooltip="ピンク"] .color-swatch__item::before {
      content: "ピンク";
    }
    .color-swatch[data-tooltip="ピンク"] span,
    input[value="ピンク"] + label .color-swatch__item {
      background-color: #fca2b3;
    }

    .color-swatch[data-tooltip="イエロー"] .color-swatch__item::before {
      content: "イエロー";
    }
    .color-swatch[data-tooltip="イエロー"] span,
    input[value="イエロー"] + label .color-swatch__item {
      background-color: #ffd702;
    }

    .color-swatch[data-tooltip="オレンジ"] .color-swatch__item::before {
      content: "オレンジ";
    }
    .color-swatch[data-tooltip="オレンジ"] span,
    input[value="オレンジ"] + label .color-swatch__item {
      background-color: #d2691f;
    }

    .color-swatch[data-tooltip="マルチ"] .color-swatch__item::before {
      content: "マルチ";
    }
    .color-swatch[data-tooltip="マルチ"] span,
    input[value="マルチ"] + label .color-swatch__item {
      background: linear-gradient(135deg, #d91733 50%, #3d77bd 50%);
    }

    .color-swatch-list--large .color-swatch__item {
      border-radius: 50%;
      width: 18px;
      height: 18px;
    }
  }
}
/* search & discovery SP */
.collection-drawer .collection__filter-group {
  padding: 13px 20px;
}

/* boost-sd search */
#boost-sd__search-widget-init-wrapper,
#boost-sd__search-bar-autocomplete-wrapper {
  position: fixed !important;
  top: 64px !important;
  left: 50% !important;
  transform: translateX(-50%);
  right: initial !important;

  .boost-sd__instant-search-results {
    .boost-sd__instant-search-autocomplete {
      .boost-sd__instant-search-product-list-header {
        background-color: #fafafa;
        color: #a7a7a7;
      }
      .boost-sd__suggestion-queries-item-badge {
        display: none !important;
      }
      .boost-sd__suggestion-queries-item-title {
        line-height: 20px;
        font-size: 13px;
        font-weight: 600;
        font-family: "Noto Sans JP", sans-serif !important;
      }
      .boost-sd__instant-search-product-list {
        padding: 0;
        margin: 0 0 0 1px;

        @media screen and (max-width: 640px) {
          ul.boost-sd__instant-search-product-list-items {
            display: flex;
            flex-direction: column;
            padding: 0 10px;

            li.boost-sd__suggestion-queries-item {
              width: 100%;
              max-width: 100%;
              padding: 0;

              .boost-sd__suggestion-queries-item-product--left {
                width: 100px;
                margin: 0 15px 0 0;
              }
            }
          }
        }
      }
    }
    .boost-sd__suggestion-queries-group {
      padding: 0 !important;
    }

    .boost-sd__instant-search-column--others {
      background-color: #fff !important;
    }
    .boost-sd__header-item {
      text-transform: uppercase;
      background-color: #fafafa;
      color: #a7a7a7;
      padding-top: 10px;
      text-align: left;
      font-family: "Noto Sans JP", sans-serif !important;
    }

    .boost-sd__suggestion-queries-group {
      &::after {
        display: none;
      }
    }
    .boost-sd__view-all-link {
      box-shadow: none !important;
    }
    .boost-sd__suggestion-queries-item-link {
      display: flex;
      align-items: center;
    }
    .boost-sd__suggestion-queries-item-img {
      top: 50%;
      transform: translateY(-50%);
    }
    .boost-sd__suggestion-queries-item-title {
      color: var(--c-black);
    }
    .boost-sd__view-all-text {
      color: var(--c-black);
    }
  }
}

body.boost-sd__search-opening {
  overflow: auto !important;
  position: static !important;
  width: auto !important;
}

body.boost-sd__search-opening .search-bar__input-wrapper input:focus {
  overflow: visible !important;
}

#boost-sd__search-widget-init-input-1::placeholder {
  opacity: 0;
}

/* account register */
#create_customer.form--main {
  max-width: 600px;
  text-align: left;
  margin-bottom: 60px;
  margin-top: 0;
}
#shopify-section-template--16282029097003__custom_liquid_kVkGY6 .section {
  margin: 0;
}

/* header footer -------------------------------------*/
/* ------------------------------------------------------------------------------*/

/* header */
.header {
  padding: 0;
  background-color: #f8f6f2;

  .header-container {
    padding: 0 3%;

    .header__inner {
      justify-content: space-between;

      .header__logo {
        padding: 20px 5% 20px 0;
        margin: 0;

        @media screen and (max-width: 1085px) {
          padding: 0;
          margin-right: 30px;
        }

        @media screen and (max-width: 640px) {
          position: absolute;
          left: 50%;
          transform: translateX(-50%);
          text-align: center;

          .header__logo-image {
            padding: 8px 0 0;
          }
        }
      }

      .nav-bar {
        background: none;
        border: none;
        width: auto;
        min-width: 500px;
        margin-right: auto;

        &::after {
          display: none;
        }

        .mega-menu {
          border: 1px solid #dddddd;
          background-color: #ececec;
          position: fixed;
          left: 50%;
          transform: translateX(-50%);
          max-width: 100vw;
          top: 113px;
          width: 100vw;

          .mega-menu__title {
            font-size: 16px;
            font-weight: 700;
            span {
              font-size: 11px;
              font-weight: 600;
            }
          }

          .mega-menu__link {
            font-size: 13px;
            font-weight: 600;
            span {
              font-size: 10px;
              font-weight: 400;
            }
          }

          .mega-menu__inner--center {
            justify-content: start !important;
          }
          .mega-menu__promo {
            margin-left: auto;
          }
          .mega-menu__linklist {
            margin: 20px 0 0;
          }
          .mega-menu__column {
            margin: 0 !important;
            padding-right: 40px;
            padding-left: 40px;
          }
        }

        .nav-bar__linklist {
          span {
            display: block;
            font-size: 12px;
            line-height: 1;
            margin: 3px 0 0;
            padding: 0;
          }

          .nav-bar__item {
            margin-right: 30px;
            height: 73px;

            &:nth-child(6) {
              display: none;
            }

            .nav-dropdown {
              border: 1px solid #dddddd;
              background-color: #ececec;
              left: 50%;
              transform: translateX(-50%);
              max-width: 100vw;
              width: 100vw;
              position: fixed;
              top: 113px;
              display: grid;
              justify-content: center;
              grid-template-columns: repeat(6, auto);
              row-gap: 20px;
              padding: 20px 0 30px;

              .nav-dropdown__link {
                display: block !important;
                font-weight: 700;
                font-size: 14px;

                span {
                  font-size: 10px;
                  margin: 3px 0 0;
                }
              }
            }

            .nav-bar__link {
              position: relative;
              line-height: 1.3;
              font-weight: 700;
              font-size: 15px;

              .icon--nav-triangle {
                bottom: -25px !important;
              }

              .icon--arrow-bottom {
                position: absolute;
                top: 22%;
                left: 100%;
                width: 12px;
                height: 8px;
                margin-left: 4px;
              }
            }
          }
        }

        #desktop-menu-0-1 .mega-menu__column:nth-child(1),
        #desktop-menu-0-2 .mega-menu__column:nth-child(1),
        #desktop-menu-0-3 .mega-menu__column:nth-child(1) {
          display: none;
        }
        #desktop-menu-0-1 .mega-menu__column:nth-child(2),
        #desktop-menu-0-2 .mega-menu__column:nth-child(2),
        #desktop-menu-0-3 .mega-menu__column:nth-child(2) {
          padding-left: 0;
        }
        #desktop-menu-0-1 .mega-menu__column:nth-child(3),
        #desktop-menu-0-2 .mega-menu__column:nth-child(3),
        #desktop-menu-0-3 .mega-menu__column:nth-child(3) {
          border-right: 1px solid #c5c5c5;
        }
      }

      .header__search-bar-wrapper {
        max-width: 20%;
        padding: 15px 0;
        flex: initial;

        @media screen and (max-width: 1085px) {
          max-width: 100%;
          width: 100%;
        }

        @media screen and (max-width: 640px) {
          padding: 20px 20px 10px;
          background-color: #e48c55;
          transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out !important;
          visibility: visible !important;
          margin-bottom: 0 !important;
          transform: translateY(-100%);
          opacity: 0;

          &.is-visible {
            transform: translateY(0);
            opacity: 1;
          }
        }

        .search-bar {
          .search-bar__top {
            background-color: #e1e1e1;
            border-radius: 22px;

            .search-bar__input-wrapper {
              flex: initial;

              @media screen and (max-width: 640px) {
                input {
                  caret-color: transparent;
                }
              }
            }

            .search-bar__submit {
              background: none;
              margin-left: auto;

              .icon--search {
                color: #0f1820;
              }
            }
          }
        }
      }

      .header__action-list {
        margin: 0;
        padding-left: 5%;
        position: relative;

        @media screen and (max-width: 640px) {
          position: initial;
        }

        .header__action-item--wishlist {
          @media screen and (max-width: 1085px) {
            display: none;
          }
        }

        .header__action-item {
          padding: 0 6px;
          text-align: center;
          cursor: pointer;

          @media screen and (max-width: 640px) {
            padding: 0 6px;
          }

          &:last-child {
            display: flex;
            justify-content: center;
            align-items: center;
          }

          .header__cart-count {
            top: -13px;
            right: 0px;

            @media screen and (max-width: 640px) {
              top: -15px;
              right: -10px;
            }
          }

          .header__cart-icon {
            margin: 0;

            img {
              @media screen and (max-width: 640px) {
                width: 18px;
                height: 18px;
              }
            }
          }

          .header__action-item-link.header__account-icon {
            position: relative;
            top: 6px;
            left: 2px;

            img {
              width: 20px;
              height: 20px;

              @media screen and (max-width: 640px) {
                width: 18px;
                height: 18px;
              }
            }
          }

          .icon-state__primary {
            width: 20px;
            height: 20px;

            @media screen and (max-width: 640px) {
              width: 18px;
              height: 18px;
            }
          }
        }

        .header__action-item.hidden-tablet-and-up {
          a {
            @media screen and (max-width: 640px) {
              color: #666;

              .icon--search {
                width: 18px;
                height: 18px;
                margin: 3px auto 0 !important;
                position: relative;
                top: -1px;
              }
            }
          }
        }
      }

      .header__mobile-nav {
        margin-right: 20px;

        @media screen and (max-width: 640px) {
          margin-right: 0;
        }

        .icon--hamburger-mobile {
          color: var(--c-orange) !important;
        }
        .icon--close {
          color: var(--c-orange) !important;
        }
        .mobile-menu__nav-link {
          font-weight: 700;
        }
        .mobile-menu__nav-link span {
          font-size: 11px;
          font-weight: 500;
          margin-right: 0;
          text-align: left;
          display: inline-block;
          margin-left: auto;
        }
      }

      #account-popover {
        max-height: 90vh;
        overflow-y: auto;
        font-size: 14px;
        right: 0;
      }
    }
  }
}
.boost-sd__search-bar {
  background-color: var(--c-orange);
}

/* footer */
.footer-benefits {
  padding: 30px 0;
  border-top: 1px solid var(--c-light-yellow);
  background-color: var(--c-white);

  ul {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    gap: 20px;
    list-style: none;

    @media (max-width: 768px) {
      flex-direction: column;
    }

    li {
      width: 33.33%;
      border-radius: 8px;
      text-align: center;
      padding: 15px;
      background-color: var(--c-light-yellow);

      @media (max-width: 768px) {
        width: 100%;
      }

      .footer-benefits__item {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;

        img {
          width: 20px;
        }

        h2 {
          font-size: 16px;
          font-weight: 700;
        }
      }

      p {
        margin: 10px 0 0;
        font-size: 13px;
        line-height: 1.5;
      }

      a {
        position: relative;
        display: inline-block;
        transition: all 0.3s;

        &:hover {
          opacity: 0.6;
        }
      }

      a.account-link,
      a.wrapping-link {
        padding: 4px 35px 4px 10px;
        margin: 10px 0 0;
        border-radius: 6px;
        font-weight: 500;

        &::before {
          content: "";
          position: absolute;
          top: 53%;
          right: 22px;
          transform: translateY(-50%) rotate(45deg);
          width: 6px;
          height: 6px;
          border-top: 1px solid #000;
          border-right: 1px solid #000;
          z-index: 1;
        }
      }
      a.point-link {
        background: #fff;
        padding: 2px 35px 3px 10px;
        margin: 15px 0 0;
        border-radius: 6px;
        font-weight: 700;
        color: var(--c-red);

        &::after {
          content: "";
          position: absolute;
          top: 50%;
          right: 10px;
          transform: translateY(-50%);
          width: 16px;
          height: 16px;
          background-color: var(--c-red);
          border-radius: 50%;
        }

        &::before {
          content: "";
          position: absolute;
          top: 50%;
          right: 16px;
          transform: translateY(-50%) rotate(45deg);
          width: 6px;
          height: 6px;
          border-top: 1px solid #fff;
          border-right: 1px solid #fff;
          z-index: 1;
        }
      }
    }
  }
}

.footer {
  background-color: #333;
  color: #fff;

  @media (max-width: 768px) {
    padding: 0;
  }

  .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
  }
  .footer__wrapper {
    display: flex;
    flex-direction: column;
    padding: 50px 0 20px;
  }
  .footer__logo {
    text-align: center;
    img {
      height: 40px;
      @media (max-width: 768px) {
        height: 19px;
      }
    }
  }
  .footer__newsletter {
    text-align: center;
    @media (max-width: 768px) {
      margin: 20px 0 0;
    }
    a {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      color: #fff;
      text-decoration: none;
      font-size: 16px;
      transition: opacity 0.3s;
      &:hover {
        opacity: 0.6;
      }

      img {
        @media (max-width: 640px) {
          width: 30px;
          height: 22px;
        }
      }
      p {
        font-weight: 700;
        line-height: 1.6;
        @media (max-width: 768px) {
          font-size: 11px;
        }
      }
    }
  }
  .footer__sns {
    text-align: center;
    margin: 40px 0 0;
    @media (max-width: 768px) {
      margin: 30px 0 0;
    }
    .title {
      font-size: 18px;
      font-weight: bold;
      margin-bottom: 15px;
    }
    ul {
      list-style: none;
      display: flex;
      justify-content: center;
      align-items: center;
      padding: 0;
      margin: 0;
    }
    li {
      width: 200px;
      margin: 0 12px;
      padding: 15px;
      border-radius: 8px;
      background-color: #404040;
      p {
        margin: 0 0 8px 0;
        font-weight: 400;
        font-size: 14px;
      }
      div {
        display: flex;
        justify-content: center;
        a {
          display: inline-block;
          transition: opacity 0.3s;
          margin: 0 10px;
          &:hover {
            opacity: 0.7;
          }
          svg {
            opacity: 0.4;
            width: 30px;
            height: 30px;
          }
        }
      }
      @media (max-width: 768px) {
        width: 150px;
        margin: 0 6px;
        p {
          font-size: 10px;
        }
        div {
          a {
            svg {
              width: 24px;
              height: 24px;
            }
          }
        }
      }
    }
  }
  .footer__menu {
    text-align: center;
    margin: 40px 0 0;
    ul {
      list-style: none;
      padding: 0;
      margin: 0;
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      gap: 30px;
      @media (max-width: 768px) {
        flex-direction: column;
        align-items: center;
        gap: 10px;
      }
      li {
        a {
          color: #fff;
          text-decoration: none;
          font-size: 14px;
          transition: all 0.3s;
          @media (max-width: 768px) {
            font-size: 13px;
          }
          &:hover {
            color: #275483;
          }
        }
      }
    }
  }
  .footer__copyright {
    margin: 20px 0 0;
    text-align: center;
    font-size: 12px;
    opacity: 0.8;
    position: initial;
  }
}

/* section -------------------------------------*/
/* ------------------------------------------------------------------------------*/

/* collection-list (top-page) */
.collection-list-section {
  .section__header {
    &::after {
      content: "シーン＆スタイル";
    }
  }

  .scroller {
    @media screen and (max-width: 999px) {
      overflow: visible;
    }

    &::-webkit-scrollbar {
      width: 8px;
      height: 8px;
    }

    &::-webkit-scrollbar-track {
      background: #f1f1f1;
      border-radius: 2px;
    }

    &::-webkit-scrollbar-thumb {
      background: #ff0202;
      border-radius: 2px;
    }

    &::-webkit-scrollbar-thumb:hover {
      background: #555;
    }
  }

  .collection-item__title {
    font-size: 14px;
    font-weight: 700;
    transform: translate(0) !important;
    overflow: visible;
    line-height: 1.8;

    span {
      display: inherit;
      font-size: 10px;
      font-weight: 700;

      @media screen and (max-width: 640px) {
        height: 40px;
      }
    }
  }
}

/* mosaic_new (top-page) */
section[data-section-type="mosaic_new"] {
  margin-top: 20px;

  .container {
    @media screen and (max-width: 768px) {
      padding: 0 !important;
    }
  }

  .section__header {
    &::after {
      content: "注目コレクション";
    }
  }

  .mosaic_new {
    display: flex;
    gap: 20px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 10px;
    scrollbar-width: none;
    -ms-overflow-style: none;

    @media screen and (max-width: 768px) {
      gap: 10px;
      margin-left: 20px;
    }

    &::-webkit-scrollbar {
      display: none;
    }
  }

  .mosaic_new__item {
    flex: none;
    scroll-snap-align: start;

    @media screen and (min-width: 768px) {
      width: calc(25% - 15px);
    }

    @media screen and (max-width: 767px) {
      width: 83.33vw;

      &:last-child {
        margin-right: 20px;
      }
    }
  }

  .mosaic_new__link {
    display: block;
    text-decoration: none;
    transition: transform 0.3s ease;

    &:hover {
      transform: translateY(-5px);
    }
  }

  .mosaic_new__image-wrapper {
    position: relative;
    width: 100%;
    background-color: #f5f5f5;
    overflow: hidden;
  }

  .mosaic_new__image {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.3s ease;

    .mosaic_new__link:hover & {
      transform: scale(1.05);
    }
  }

  .mosaic_new__placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f5f5f5;

    .placeholder-svg {
      width: 50%;
      height: 50%;
      opacity: 0.3;
    }
  }
}

/* recommended-collection (top-page) */
.recommended-section {
  .section__header {
    &::after {
      content: "おすすめ商品";
    }
  }

  .collection-item__title {
    font-size: 14px;
    font-weight: 700;
    transform: translate(0) !important;

    span {
      display: inherit;
      font-size: 10px;
      font-weight: 700;
    }
  }

  .product-slider {
    overflow: hidden;
    position: relative;
  }

  .product-list {
    background: none !important;

    &::before {
      border: none !important;
    }
  }

  .product-item {
    background: none !important;
    text-align: center;
    padding: 0 10px;
    border: none !important;

    @media screen and (max-width: 640px) {
      padding: 0 5px;
    }

    img {
      width: 100%;
    }

    &::after {
      box-shadow: none !important;
    }
  }

  .product-gender {
    margin: 8px 0 0;
    font-size: 14px;
  }

  .product-title {
    font-weight: 700;
    font-size: 14px;
    margin: 10px 0 0;
  }

  .product-price {
    font-weight: 700;
    font-size: 14px;
    margin: 0;
    color: var(--c-gray);
    height: 50px;
  }

  .product-discount {
    color: var(--c-green);
  }

  .exclusive-badge {
    position: absolute;
    top: 2px;
    right: 10px;
    z-index: 10;
    content: "";
    background-image: url(../assets/exclusive-ol-1.13.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 45px;
    height: 45px;

    .exclusive-badge-image {
      width: auto;
      height: 24px;
      display: block;

      @media (max-width: 640px) {
        height: 20px;
      }
    }
  }
}

/* index-blog__section (top-page) */
.index-blog__section {
  .container {
    @media screen and (max-width: 768px) {
      padding: 0 0 0 20px !important;
    }
  }
  .blog-columns {
    display: flex;
    justify-content: space-between;
    gap: 40px;
    margin-top: 30px;

    @media screen and (max-width: 768px) {
      flex-direction: column;
      gap: 30px;
    }

    @media screen and (max-width: 480px) {
      gap: 20px;
    }

    .blog-column {
      flex: 0 0 48%;
      min-width: 0;

      @media screen and (max-width: 768px) {
        flex: 1;
      }
    }

    .blog-column__header {
      display: flex;
      justify-content: space-between;
      align-items: center;
    }

    .blog-column__title {
      font-weight: 600;
      font-size: 22px;
      margin-bottom: 10px;

      span {
        font-size: 12px;
        font-weight: 400;
        margin: 0 0 0 10px;
      }
    }

    .link--view {
      display: inline-block;
      margin-bottom: 10px;
      color: #025587;
      text-decoration: none;
      font-weight: 700;
      transition: color 0.3s ease;

      @media screen and (max-width: 768px) {
        margin: 0 20px 0 0;
      }
    }

    .blog-horizontal-scroll {
      display: flex;
      gap: 20px;
      overflow-x: auto;
      overflow-y: hidden;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      -ms-overflow-style: none;

      &::-webkit-scrollbar {
        display: none;
      }

      @media screen and (max-width: 768px) {
        gap: 10px;
      }
    }

    .blog-horizontal-item {
      flex: 0 0 150px;
      min-width: 150px;

      @media screen and (max-width: 768px) {
        flex: initial;
        min-width: 46%;
      }

      .article-item {
        overflow: hidden;
        transition: transform 0.3s ease;

        &:hover {
          transform: translateY(-4px);
        }

        .article-item__title {
          font-size: 14px;
          line-height: 1.4;
          font-weight: 700;
          margin: 3px 0 0;
          color: #333;
        }

        .dark-time {
          font-size: 12px;
          margin: 0;
          color: #333;
        }

        .article-item__meta {
          font-size: 12px;
          margin: 8px 15px;
        }

        .article-item__excerpt {
          font-size: 12px;
          line-height: 1.4;
          margin: 10px 15px 15px;
        }
      }
    }

    .blog-list {
      padding: 0;
    }

    .blog-list__item {
      padding: 15px;
      transition: background-color 0.3s ease;
      background: #f7f6f2;
      margin: 0 0 10px;
      display: flex;
      align-items: center;

      &:last-child {
        border-bottom: none;
      }

      &:hover {
        .blog-list__date,
        .blog-list__title {
          color: #025587;
          transition: color 0.3s ease;
        }
      }
    }

    .blog-list__date {
      font-size: 12px;
      color: #333;
      margin: 0 10px 0 0;
      font-weight: 500;
      transition: color 0.3s ease;
    }

    .blog-list__title {
      margin: 0;
      font-size: 14px;
      line-height: 1.4;
      font-weight: 700;
      color: #333;
      transition: color 0.3s ease;

      a {
        color: #333;
        text-decoration: none;
        transition: color 0.3s ease;

        &:hover {
          color: #dc4305;
        }
      }
    }

    @media screen and (max-width: 768px) {
      .blog-column--list {
        margin: 10px 0 0;
      }
    }
  }
}

/* shop-list (top-page) */
.shop-slider {
  .section__header {
    &::after {
      content: "メレル ブランドストア";
    }
  }

  @media screen and (min-width: 768px) {
    .slider-container {
      overflow: visible;
    }
    .slider-wrapper {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
      transform: none !important;
      gap: 20px;
    }
    .shop-item {
      width: auto;
      padding: 0;
    }
  }

  @media screen and (max-width: 767px) {
    .slider-container {
      overflow-x: auto;
      overflow-y: hidden;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      -ms-overflow-style: none;

      &::-webkit-scrollbar {
        display: none;
      }
    }
    .slider-wrapper {
      display: flex;
      flex-wrap: nowrap;
      padding-bottom: 16px;
    }
    .shop-item {
      flex: 0 0 330px;
      min-width: 330px;
      padding: 0 20px 0 0;
      box-sizing: border-box;
    }
  }

  @media screen and (max-width: 640px) {
    .container {
      padding: 0 0 0 20px;
    }
  }

  .shop-link {
    display: block;
    text-decoration: none;
    color: inherit;
    overflow: hidden;
    transition: all 0.3s ease;

    &:hover {
      .shop-image-container img {
        transform: scale(1.05);
      }
      .shop-content h3 {
        color: #275483;
      }
    }
  }

  .shop-image-container {
    position: relative;
    overflow: hidden;
    transition: all 0.3s;

    img {
      transition: all 0.3s;
    }
  }

  .shop-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .shop-content {
    padding: 16px 16px 0 0;

    h3 {
      color: #333;
    }
  }

  .shop-title {
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 8px;
    line-height: 1.4;
  }

  .shop-address {
    font-size: 10px;
    color: #666;
    line-height: 1.4;
  }

  .view-link {
    text-align: right;

    @media screen and (max-width: 640px) {
      padding: 0 20px 0 0;
    }

    a {
      color: #025587;
      text-decoration: none;
      font-weight: 600;
      display: inline-flex;
      align-items: center;
      gap: 8px;
    }
  }
}

/* links (collection-page) -------------------------------------*/
/* ------------------------------------------------------------------------------*/
#collection-links {
  .section__header {
    &::after {
      content: "商品カテゴリー";
    }
  }
}

/* recently-viewed (product & cart page) -------------------------------------*/
/* ------------------------------------------------------------------------------*/
.recently-viewed-section {
  .section__header {
    &::after {
      content: "最近見た商品";
    }
  }

  .scroller {
    margin: 0 !important;
  }

  .collection-item__title {
    font-size: 14px;
    font-weight: 700;
    transform: translate(0) !important;
    span {
      display: inherit;
      font-size: 10px;
      font-weight: 700;
    }
  }

  .product-slider {
    overflow: hidden;
    position: relative;
  }

  .product-list {
    background: none !important;
    &::before {
      border: none !important;
    }
  }

  .product-item {
    background: none !important;
    text-align: center;
    padding: 0 10px;
    border: none !important;
    img {
      width: 100%;
    }
    &::after {
      box-shadow: none !important;
    }
  }

  .product-type {
    margin: 15px 0 0;
    font-size: 14px;
  }

  .product-title {
    font-weight: 700;
    font-size: 14px;
    margin: 10px 0 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.5;
    span {
      display: block;
      font-size: 12px;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
  }

  .product-price {
    font-weight: 700;
    font-size: 14px;
    margin: 0;
    padding: 15px;
    color: #838382;
  }

  .product-original-price {
    text-decoration: line-through;
    font-weight: 400;
    margin: 0 5px;
  }

  .product-discount-rate {
    color: #018001;
  }

  @media (max-width: 768px) {
    .container {
      padding: 0;
    }
    .product-item {
      width: 40% !important;
      flex: 0 0 45% !important;
      padding: 0 5px 20px;
    }
  }

  .exclusive-badge {
    position: absolute;
    top: 2px;
    right: 10px;
    z-index: 10;
    content: "";
    background-image: url(../assets/exclusive-ol-1.13.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 45px;
    height: 45px;

    .exclusive-badge-image {
      width: auto;
      height: 24px;
      display: block;

      @media (max-width: 640px) {
        height: 20px;
      }
    }
  }
}

/* recommended (product-page) -------------------------------------*/
/* ------------------------------------------------------------------------------*/
.recommended-product-page-section {
  .section__header {
    &::after {
      content: "おすすめ商品";
    }
  }

  .scroller {
    margin: 0 !important;
  }

  .collection-item__title {
    font-size: 14px;
    font-weight: 700;
    transform: translate(0) !important;

    span {
      display: inherit;
      font-size: 10px;
      font-weight: 700;
    }
  }

  .product-slider {
    overflow: hidden;
    position: relative;
  }

  .product-list {
    background: none !important;

    &::before {
      border: none !important;
    }
  }

  .product-item {
    background: none !important;
    text-align: center;
    padding: 0 10px;
    border: none !important;

    img {
      width: 95%;
    }

    &::after {
      box-shadow: none !important;
    }
  }

  .product-type {
    margin: 15px 0 0;
    font-size: 14px;
  }

  .product-title {
    font-weight: 700;
    font-size: 14px;
    margin: 8px 0 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.5;

    span {
      display: block;
      font-size: 12px;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
  }

  .product-regular-price {
    color: #838382;
  }

  .product-price {
    font-weight: 700;
    font-size: 14px;
    padding: 8px 15px 15px;
    margin: 0;
    color: #838382;
  }

  .product-original-price {
    text-decoration: line-through;
    font-weight: 400;
    margin: 0 6px;
  }

  .product-discount-rate {
    color: #018001;
  }

  @media (max-width: 768px) {
    .container {
      padding: 0;
    }

    .product-item {
      width: 40% !important;
      flex: 0 0 45% !important;
      padding: 0 5px 20px;
    }
  }

  .exclusive-badge {
    position: absolute;
    top: 2px;
    right: 10px;
    z-index: 10;
    content: "";
    background-image: url(../assets/exclusive-ol-1.13.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 45px;
    height: 45px;

    .exclusive-badge-image {
      width: auto;
      height: 24px;
      display: block;

      @media (max-width: 640px) {
        height: 20px;
      }
    }
  }
}

/* collection-list -------------------------------------*/
/* ------------------------------------------------------------------------------*/
.collection-page,
.search-page {
  .container {
    padding: 0 20px;
  }
  @media screen and (max-width: 640px) {
    .container--flush {
      padding: 0;
    }
  }
  .card {
    border: none;
    border-radius: 0;
  }
  .wk-button {
    opacity: 0;
  }
  .product-item:hover .wk-button {
    opacity: 1;
  }
  .wk-selected {
    opacity: 1;
  }
  .product-type-tag {
    text-align: center;
    font-size: 12px;
    color: #727272;
  }
  .product-item__title {
    text-align: center;
    font-size: 13px;
    font-weight: 600;
    margin: 5px 0 0;
    span {
      display: block;
      font-size: 10px;
      font-weight: 600;
    }
  }
  .product-item__price-list.price-list {
    width: 100%;
    text-align: center;
    margin: 10px 0 0;
    line-height: 1.5;
    .price {
      font-weight: 700;
    }
    .price--highlight {
      font-weight: 700;
    }
    .price--compare {
      text-decoration: line-through;
      margin: 0 10px;
      font-weight: 400;
    }
    .price--discount-badge {
      color: #008000;
      font-weight: 600;
    }
  }
  .product-item__inventory {
    &::before {
      content: none;
    }
    &.inventory {
      text-align: center;
      margin: 20px 0 0;
      font-weight: 400;
      color: #333;
      padding: unset;
    }
  }
  .product-color-count {
    text-align: center;
    font-size: 12px;
    font-weight: 600;
    color: #7f7f7f;
    margin: 15px 0 0;
  }
  .exclusive-badge {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 10;
    content: "";
    background-image: url(../assets/exclusive-ol-1.13.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 45px;
    height: 45px;

    .exclusive-badge-image {
      width: auto;
      height: 24px;
      display: block;

      @media (max-width: 640px) {
        height: 20px;
      }
    }
  }
}
.href-display {
  width: 100%;
}

/* product-detail -------------------------------------*/
/* ------------------------------------------------------------------------------*/

[data-section-type="product"] {
  .container {
    max-width: 1230px;
  }
  .card {
    border: none;
  }
  h1.product-meta__title {
    font-size: 24px;
    font-weight: 600;
    span {
      display: block;
      font-size: 14px;
      font-weight: 400;
      margin: 10px 0 0;
    }
  }
  @media (max-width: 640px) {
    h1.product-meta__title {
      font-size: 18px;
    }
  }
  .product-form__info-title {
    font-size: 14px;
    font-weight: 400;
  }
  .card__section--tight {
    padding: 0;
  }
  .card__section,
  .card__collapsible-button {
    padding: 0;
  }
  .product-form__info-item {
    display: block;
    margin: 20px 0 10px;
  }
  .price {
    font-size: 16px;
    font-weight: 700;
    color: #333;
  }
  .price--highlight {
    font-weight: 700;
    color: #333;
  }
  .product-original-price {
    margin: 0 10px;
  }
  .product-regular-price {
    color: #333;
  }
  .price--compare {
    top: 0;
    margin: 0 10px 0 0;
    font-weight: 400;
  }
  .price-discount {
    font-weight: 600;
    color: #369936;
    font-size: 15px;
  }
  .product-form__option-name {
    font-size: 14px;
    font-weight: 400;
  }
  .paidy-widget-wrapper {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 20px;
    h3 {
      font-size: 16px;
      font-weight: 600;
    }
  }
  .variant-swatch {
    min-height: initial;
  }
  .variant-swatch__item {
    width: 100px;
    height: 100px;
  }
  .block-swatch__item {
    padding: 13px 16px;
    width: 60px;
    height: 60px;
    text-align: center;
    font-size: 15px;
  }
  @media (max-width: 768px) {
    .variant-swatch {
      min-height: initial;
    }
    .variant-swatch__item {
      width: 65px;
      height: 65px;
    }
  }
  .buy-button {
    width: 100% !important;
    .button {
      height: 50px;
    }
  }
  .product-form__add-button.button.button--disabled {
    width: 100%;
    height: 50px;
  }
  .product-gallery--with-thumbnails {
    flex-direction: column;
    .product-gallery__carousel-wrapper {
      margin: 0;
      width: 100%;
    }
  }
  .scroller {
    width: 100%;
    margin: 0 auto;
    &__inner {
      width: 100%;
    }
    &__item {
      width: 100%;
    }
  }
  @media (max-width: 640px) {
    .scroller {
      margin: 0;
    }
    .product-block-list__item--info .card__section {
      margin: 40px 0 0;
    }
  }
  .product-gallery__thumbnail {
    width: calc(20% - 8px);
  }
  .product-gallery__thumbnail-list {
    width: 100%;
    max-height: 100%;
    margin: 10px 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: start;
    gap: 10px;
  }
  @media (max-width: 1000px) {
    .product-gallery__thumbnail {
      min-width: 77px;
      min-height: 77px;
      margin: 0 10px 20px 0;
    }
    .product-gallery__thumbnail-list {
      flex-wrap: initial;
      gap: 0;
    }
  }
  .product-meta__text.rte {
    line-height: 1;
    margin: 60px 0 30px;
  }
  .product-info__block-item.product-info__block-item--\@app {
    margin: 40px 0 0;
    font-size: 12px;
  }
  .product-gallery__scope-wrapper {
    display: none;
  }
  @media (max-width: 640px) {
    .product-gallery__scope-wrapper {
      display: block;
      text-align: right;
      margin: 0 0 10px;
    }
  }
  .product-gallery__exclusive-badge {
    position: absolute;
    top: 0;
    left: initial;
    right: 0;
    width: 20% !important;
    height: 20% !important;
    z-index: 10;
    pointer-events: none;
  }
  /* variant new badge */
  .variant-new-badge {
    position: absolute;
    bottom: -1px;
    left: 50%;
    transform: translateX(-50%);
    color: var(--c-red);
    font-size: 15px;
    font-weight: 700;
    z-index: 1;
    font-weight: 600;
    pointer-events: none;

    @media (max-width: 750px) {
      font-size: 10px;
      bottom: -3px;
    }
  }
}

.description-container {
  margin: 0 auto;
  max-width: 1230px !important;

  .card {
    border: none;
  }

  h2 {
    font-weight: 600;
    font-size: 28px;
    letter-spacing: 2px;

    @media (max-width: 640px) {
      font-size: 20px;
    }
  }

  .product-description {
    margin: 100px 0 50px;

    @media (max-width: 640px) {
      margin: 70px 0;
    }
  }

  .product-badges {
    margin: 20px 0;
    display: grid;
    grid-template-columns: repeat(4, 25%);
    list-style-type: none;
    box-sizing: border-box;

    @media screen and (max-width: 999px) {
      grid-template-columns: repeat(2, 50%);
    }

    .product-badges__item {
      padding: 12px 10px;
      text-align: center;
      border: 1px solid #e1e1e1;
      border-right: none;
      display: flex;
      flex-direction: column;
      justify-content: center;
    }

    .product-badges__item:last-child,
    .product-badges__item:nth-child(4n) {
      border-right: 1px solid #e1e1e1;
    }
  }

  .link--view {
    font-size: 18px;
    line-height: 45px;
    display: block;
    margin-bottom: 5px;
    text-align: right;
    -webkit-transform: translateX(0);
    transform: translate(0);
    color: #005587;
    font-weight: 600;

    @media screen and (max-width: 768px) {
      font-size: 16px;
      margin: 0 20px 0 0;
    }
  }

  .card__section {
    padding: 0;
  }

  p {
    font-size: 14px;
    line-height: 2;
    letter-spacing: 2px;
  }
}

/* cart -------------------------------------*/
/* ------------------------------------------------------------------------------*/
.cart-wrapper__inner-inner {
  .table-wrapper {
    .line-item__line-price {
      span {
        white-space: nowrap;
      }
    }
  }
}
.checkout-info-section {
  .checkout-info-wrapper,
  .cart-recap__secure-payment {
    max-width: 400px;
    margin-left: auto;
  }
  @media screen and (max-width: 1000px) {
    .checkout-info-wrapper,
    .cart-recap__secure-payment {
      max-width: 100%;
      margin: 0 auto;
    }
  }

  .cart-recap__secure-payment {
    max-width: 400px;
  }

  .info_check02 {
    margin: 0 0 30px;
    display: flex;
    align-items: center;

    a {
      color: var(--c-dark-blue);
      border-bottom: 1px solid var(--c-dark-blue);
      padding-bottom: 3px;
    }

    input {
      margin: 3px 5px 0 0;
      width: 20px;
      height: 20px;
      border: 1px solid #ccc;
      -moz-appearance: checkbox;
    }
  }

  .opl-gift-wrapping {
    margin-top: 30px;
    font-weight: 700;
    input[type="checkbox"] {
      width: 15px;
      height: 15px;
      appearance: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      border: 2px solid #ccc;
      border-radius: 3px;
      background-color: #fff;
      cursor: pointer;
      position: relative;
      vertical-align: middle;

      &:checked {
        background-color: #005587;
        border-color: #005587;

        &::after {
          content: "";
          position: absolute;
          left: 3px;
          top: 0;
          width: 5px;
          height: 8px;
          border: solid white;
          border-width: 0 2px 2px 0;
          transform: rotate(45deg);
        }
      }
    }

    select {
      padding: 8px 12px;
      border: 1px solid #ccc;
      border-radius: 4px;
      background-color: #fff;
      font-size: 14px;
      cursor: pointer;
    }
  }

  .checkout-info__checkout.disabled {
    background-color: #dcdcdc !important;
    cursor: not-allowed;
  }

  #gift-wrapping {
    margin-right: 7px;
  }
}

/* カートのプラポリ同意チェック */
.checkbox01 {
  padding-left: 6px;
  font-weight: 700;
}
[data-section-type="account"] {
  .card {
    border: none;
  }

  .card__section {
    border: none;
  }

  .card__section--tight {
    padding: 0;

    .heading {
      padding: 20px 25px;
    }
  }
}

/* 日時指定 amp */
.delivery-title,
.delivery-select-container {
  font-weight: 700;
  padding-bottom: 10px;
}
.delivery-caution__statement {
  font-weight: 700;
}

/* VIP point */
#shopify-block-AS2liZFFjeHFWakFhS__vip_use_point_form_pKVkMQ {
  max-width: 400px;
  margin-left: auto;

  @media screen and (max-width: 749px) {
    margin: 0 auto 30px;
  }
}
vip-app-point-use-form[subtotal-price="0"] {
  display: none;
}

/* page -------------------------------------*/
/* ------------------------------------------------------------------------------*/
/* page-technology */
#shopify-section-page-technology-template {
  .container {
    @media (max-width: 640px) {
      padding: 0;
    }

    .technology {
      margin-bottom: 40px;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      position: relative;

      &::after {
        content: "";
        display: block;
        width: 32%;
      }

      .tech-card {
        display: flex;
        flex-direction: column;
        padding: 40px 20px 20px;
        border: 1px solid #e0e0e0;
        width: 32%;
        margin-bottom: 40px;

        @media (max-width: 850px) {
          width: 48%;
          margin: 0 auto 40px;
        }

        @media (max-width: 640px) {
          width: 50%;
          margin: 0;
          padding: 10px;
        }
      }

      .tech-card--full {
        margin: 50px 0;
        padding: 40px 20px 20px;
        grid-area: auto/1/auto/3;
        display: grid;
        grid-template-columns: 33.333% 66.666%;
        align-items: center;
        border: 1px solid #e0e0e0;

        @media (max-width: 767px) {
          display: block;
        }

        @media (min-width: 1024px) {
          grid-area: auto/1/auto/4;
        }

        &:last-child {
          margin-bottom: 90px;
        }
      }

      .tech-card__img {
        margin-bottom: 20px;
        text-align: center;

        @media (max-width: 640px) {
          margin-bottom: 10px;
        }
      }

      .tech-card__content {
        @media (min-width: 768px) {
          padding-bottom: 20px;
        }
      }

      .tech-card__title {
        text-align: center;
        font-weight: 700;
        font-family: Noto Sans JP, sans-serif !important;
        line-height: 30px;
        margin: 0;
        font-size: 26px;

        @media (max-width: 640px) {
          font-size: 18px;
          line-height: 22px;
          display: block;
          margin-bottom: 10px;
          text-align: center;
        }
      }

      .tech-card__subtitle,
      .tech-card__desc {
        padding: 0 5px;
        font-family: "Hiragino Sans", "Yu Gothic", sans-serif;
        font-size: 14px;

        @media (max-width: 640px) {
          font-size: 13px;
        }
      }

      .tech-card__subtitle {
        font-weight: 600;
        letter-spacing: -0.9px;
        text-align: center;
      }

      .tech-card__desc {
        margin-bottom: 25px;

        @media (max-width: 640px) {
          margin-bottom: 10px;
        }

        p {
          font-family: "Noto Sans JP", sans-serif !important;
          font-style: normal;
          font-weight: normal;
          font-size: 14px;
          letter-spacing: 1.5399999618530273px;
          line-height: 28px;
        }
      }

      .tech-card__link {
        margin-top: auto;
        background: #ff6600;
        text-transform: uppercase;
        color: #ffffff;
        transition: background 0.4s ease-in-out;

        @media (max-width: 640px) {
          white-space: nowrap;
          padding: 0 10px;
        }

        &:hover {
          background: #e55a00;
        }
      }
    }
  }
}

/* page-ambassadors */
#shopify-section-ambassadors-people {
  .ambassadors-people {
    margin-top: 79px;
    margin-bottom: 85px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;

    &::after {
      content: "";
      display: block;
      width: 32%;
    }
  }

  .ambassadors-people__item {
    border: 1px solid #c5c5c5;
    padding: 15px;
    padding-bottom: 35px;
    margin-bottom: 35px;
    color: #101820;
    width: 32%;

    @media (max-width: 1000px) {
      width: 48%;
    }

    @media (max-width: 640px) {
      width: 100%;
    }
  }

  .ambassadors-people__img {
    margin-bottom: 22px;

    img {
      width: 100%;
      max-height: 380px;
      object-fit: cover;
    }
  }

  .ambassadors-people__content {
    position: relative;
  }

  .ambassadors-people__label {
    font-family: Oswald, sans-serif !important;
    position: absolute;
    right: 0;
    color: #dc4405;
    font-size: 17px;

    @media screen and (max-width: 640px) {
      font-size: 14px;
    }
  }

  .ambassadors-people__title {
    margin-bottom: 0;
    font-size: 37px;
    line-height: 1.5;

    @media (max-width: 640px) {
      font-size: 28px;
    }

    span {
      display: block;
      font-size: 16px;
    }
  }

  .ambassadors-people__subtitle {
    font-size: 19px;
    font-weight: 600;

    @media screen and (max-width: 640px) {
      font-size: 17px;
    }
  }

  .ambassadors-people__text {
    line-height: 2em;
  }
}
#shopify-section-ambassadors-organizations {
  .ambassadors-organizations {
    margin-top: 60px;
    margin-bottom: 120px;

    @media screen and (max-width: 640px) {
      margin-bottom: 60px;
    }
  }

  .ambassadors-organizations__item {
    border: 1px solid #c5c5c5;
    padding: 30px 15px;
    margin-bottom: 25px;
    color: #101820;

    @media screen and (min-width: 641px) {
      display: grid;
      grid-template-columns: repeat(2, 50%);
      align-items: center;
    }
  }

  .ambassadors-organizations__header {
    @media screen and (min-width: 641px) {
      padding-left: 25px;
    }
  }

  .ambassadors-organizations__title {
    margin-bottom: 10px;
    font-size: 28px;
    text-transform: capitalize;
    font-weight: 400;

    @media (max-width: 640px) {
      font-size: 20px;
    }

    span {
      display: block;
      font-size: 15px;
    }
  }

  .ambassadors-organizations__subtitle {
    font-size: 14px;
    font-weight: 700;
  }

  .ambassadors-organizations__content {
    padding: 20px 0;

    line-height: 2em;

    a {
      text-decoration: underline;
      overflow-wrap: break-word;
      word-wrap: break-word;
      -ms-word-break: break-all;
      word-break: break-all;
      word-break: break-word;
      -ms-hyphens: auto;
      -moz-hyphens: auto;
      -webkit-hyphens: auto;
      hyphens: auto;
      letter-spacing: -0.1px;

      &:hover {
        text-decoration: none;
      }
    }
  }
}

/* page-blog */
.blog-list {
  justify-content: space-between;

  h1 {
    font-size: 37px;
    margin: 0 auto;

    span {
      font-size: 16px;
      font-weight: 400;
      display: block;
      margin: 5px auto 0;
      text-align: center;
    }
  }

  .block-list {
    gap: 4%;

    .block-list__item {
      width: 48%;
      padding: 0 0 30px;
      margin: 0 0 30px;
      border-bottom: 1px solid #e5e5e5;

      @media (max-width: 1200px) {
        width: 100%;
      }

      .article-item__image-container {
        max-width: 200px;
        min-width: 200px;

        @media (max-width: 640px) {
          max-width: 120px;
          min-width: 120px;
          margin: 0;
        }
      }

      .article-item {
        display: flex;
        align-items: center;

        .text-wrapper {
          margin-left: 5%;
          time {
            font-size: 14px;
          }

          h2 {
            font-size: 20px;
            font-weight: 600;

            @media (max-width: 640px) {
              font-size: 14px;
            }
          }

          .article-item__excerpt {
            font-size: 14px;

            @media (max-width: 640px) {
              font-size: 12px;
            }
          }
        }
      }
    }
  }
  .pagination {
    border: none;
    margin: 0 auto 100px;
  }
}

/* wishlist */

.wk-page {
  .wk-header {
    order: 2;
    margin: 40px 0;

    .wk-title {
      display: none;
    }
  }
  .wk-body {
    .wk-wishlist-empty-callout {
      a {
        color: #fff;
        text-decoration: none;
      }
    }

    .wk-product-card {
      img {
        margin: 0 0 1em !important;
      }

      .wk-meta {
        flex-grow: 1;

        .wk-product-title {
          a {
            text-align: left;
            font-weight: 700;
          }
        }
        .wk-price {
          justify-content: start;
          margin: 10px 0;
        }
      }
    }
  }
}

/* page-contact-list */
/* ------------------------------------------------------------------------------*/
#shopify-section-page-contact-list {
  .contact-list-section {
    margin-top: 77px;
    margin-bottom: 145px;

    .button {
      font-size: 17px;
      font-weight: 400;
      width: 75%;
      max-width: 320px;
      height: 50px;
    }

    @media screen and (min-width: 641px) {
      display: grid;
      grid-template-columns: repeat(2, 50%);
      margin-left: -30px;
      margin-right: -30px;
    }
    @media screen and (min-width: 1000px) {
      grid-template-columns: repeat(3, 33.333%);
    }

    @media screen and (max-width: 640px) {
      margin-top: 49px;
      margin-bottom: 55px;
    }
  }

  .contact-list__item {
    padding: 3px 30px 25px;

    @media screen and (min-width: 641px) {
      display: flex;
      flex-direction: column;
      align-items: center;

      // border-left: 1px solid #112654;
      &:nth-child(2n) {
        // border-right: 1px solid #112654;
      }
    }

    @media screen and (min-width: 1000px) {
      // border-left: 1px solid #112654;
      &:nth-child(2n) {
        // border-right: none;
      }
      &:nth-child(3n) {
        // border-right: 1px solid #112654;
      }
    }

    @media screen and (max-width: 640px) {
      margin-bottom: 40px;
    }
  }

  .contact-list__btn {
    @media screen and (min-width: 641px) {
      margin-top: auto;
    }
  }

  .contact-list__img {
    img {
      width: 100%;
    }
  }

  .contact-list__title {
    margin-bottom: 0;
    font-size: 37px;
    line-height: 1.5;

    @media (max-width: 640px) {
      font-size: 28px;
    }

    span {
      display: block;
      font-size: 16px;
    }
  }

  .contact-list__subtitle {
    color: #101820;
    margin-bottom: 47px;
    line-height: 1.5em;
    letter-spacing: 0.11em;
    /*     color: #101820; */

    @media screen and (max-width: 640px) {
      margin-bottom: 20px;
    }
  }
  .contact-list__text {
    @media screen and (max-width: 640px) {
      height: auto;
    }
  }
  .contact-list__content {
    width: 100%;
  }
}

/* page-account-registration-guide */
/* ------------------------------------------------------------------------------*/
.onlinestore-open_sec01 {
  .onlinestore-open_flex {
    dl {
      text-align: center;
    }
  }
}

/* page-point-program */
/* ------------------------------------------------------------------------------*/
#point-program {
  text-align: center;
  margin: 0 0 80px;

  ul {
    list-style: none !important;
  }

  .inner_lower {
    position: relative;
    max-width: 1000px;
    padding: 0 50px;
    margin: 0 auto;

    @media screen and (width <= 767px) {
      max-width: 90%;
      padding: 0;
    }
  }

  .title_wrapper {
    text-align: center;
    background-image: url("/cdn/shop/files/HP_3840x1200_B.jpg?v=1764575882");
    background-position: center;
    background-size: cover;
    height: 300px;
    color: #fff;

    @media screen and (width <= 767px) {
      background-image: url("/cdn/shop/files/HP_1800x1080_B.jpg?v=1764573359");
      height: 270px;
    }
  }

  .title_wrapper .inner_lower {
    display: flex;
    height: 300px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  .title_wrapper .inner_lower h1 {
    color: #fff;
    font-size: 3rem;
    font-weight: 700;
  }
  .title_wrapper .inner_lower p {
    color: #fff;
  }

  .read {
    font-weight: 600;
    margin: 30px 0 0;
  }

  .point_wrapper ul {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
  }
  .point_wrapper ul li {
    width: 31%;
    margin: 30px 0 0;
    padding: 20px;
    background-color: var(--c-light-yellow);
    border-radius: 4px;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .point_wrapper ul li img {
    width: 100px;
  }
  .point_wrapper ul li h2 {
    font-size: 14px;
    font-weight: 700;
    margin: 20px 0 0;
  }
  .point_wrapper ul li p {
    font-size: 12px;
    margin: 15px 0 0;
  }
  .point_wrapper ul li p span {
    font-weight: 700;
    background: linear-gradient(transparent 70%, #e3fe52 30%);
  }
  .point_wrapper .btn_wrapper {
    margin: 40px 0 0;
    display: flex;
    justify-content: center;
  }

  .point_wrapper .btn_wrapper a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 350px;
    height: 48px;
    color: #fff;
    border-radius: 4px;
    background-color: #e0814b;
  }
  .point_wrapper .btn_wrapper a p {
    font-size: 14px;
    font-weight: 700;
  }

  @media screen and (width <= 767px) {
    .point_wrapper ul li {
      width: 48%;
    }
  }

  .point_about {
    margin: 60px 0 0;
  }
  .point_about .band_title {
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    background-color: #2d2d2d;
    padding: 20px 0;
  }

  .point_about .read {
    font-size: 14px;
    font-weight: 500;
    margin: 40px 0 0;
  }

  .point_about ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }

  .point_about ul li {
    width: 48%;
    margin: 60px 0 0;
    padding: 20px;
    background-color: var(--c-light-yellow);
  }

  .point_about ul li img {
    max-width: 200px;
  }

  .point_about ul li h3 {
    font-size: 14px;
    font-weight: 700;
    margin: 25px 0 0;
  }
  .point_about ul li p {
    font-size: 12px;
    margin: 20px 0 0;
  }

  .point_about ul li p a {
    color: var(--link-color);
    border-bottom: 1px solid var(--link-color);
  }

  @media screen and (width <= 767px) {
    .point_about ul li {
      width: 100%;
      margin: 30px 0 0;
    }
  }

  .saving {
    margin: 60px 0 0;
  }
  .saving h2 {
    font-size: 18px;
    padding: 40px 0 0;
    border-top: 1px solid #e0e2e6;
  }
  .saving ul {
    display: flex;
    justify-content: space-between;

    flex-wrap: wrap;
  }
  .saving ul li {
    width: 48%;
    margin: 40px 0 0;
  }
  .saving ul li h3 {
    font-size: 14px;
    font-weight: 700;
  }
  .saving ul li p {
    margin: 20px 0 0;
    font-size: 12px;
  }
  .saving ul li p .red {
    color: red;
  }

  @media screen and (width <= 767px) {
    .saving ul li {
      width: 100%;
    }
  }

  .using {
    margin: 60px 0 0;
  }
  .using h2 {
    font-size: 18px;
    padding: 40px 0 0;
    border-top: 1px solid #e0e2e6;
  }
  .using ul {
    display: flex;
    justify-content: space-between;

    flex-wrap: wrap;
  }
  .using ul li {
    width: 48%;
    margin: 40px 0 0;
  }
  .using ul li h3 {
    font-size: 14px;
    font-weight: 700;
  }
  .using ul li p {
    margin: 20px 0 0;
    font-size: 12px;
  }
  .using ul li img {
    max-width: 350px;
    margin: 30px 0 0;
  }

  @media screen and (width <= 767px) {
    .using ul li {
      width: 100%;
    }
  }

  .faq {
    text-align: left;
    margin: 60px 0 0;
  }

  .faq .band_title {
    font-size: 16px;
    color: #fff;
    background-color: #000;
    text-align: center;
    padding: 20px 0;
  }

  ul.ac-menu {
    margin: 40px 0 0;
  }

  ul.ac-menu li {
    padding: 15px 0;
    border-bottom: 1px solid #e0e2e6;
  }

  ul.ac-menu .label {
    position: relative;
    cursor: pointer;
    transition: 0.5s;
  }

  ul.ac-menu .label::before,
  ul.ac-menu .label::after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 14px;
    height: 1px;
    content: "";
    background: #000;
    transform: translateY(-50%);
  }

  ul.ac-menu .label::after {
    transition: 0.5s;
    transform: translateY(-50%) rotate(90deg);
  }

  ul.ac-menu .label.open::before {
    opacity: 0;
  }

  ul.ac-menu .label.open::after {
    transform: rotate(180deg);
  }

  ul.ac-menu .label p {
    padding: 0 30px 0 0;
    font-size: 14px;
    font-weight: 500;
  }

  ul.ac-menu .detail {
    display: none;
  }

  ul.ac-menu .detail p {
    margin: 15px 0 0;
    font-size: 12px;
  }

  ul.ac-menu .detail p a {
    color: var(--link-color);
    border-bottom: 1px solid var(--link-color);
  }
}

/* account */
/* ------------------------------------------------------------------------------*/

/* 会員バーコード */
/* 購入履歴 */
#shopify-section-template--16282029031467__rich_text_WiN7in .section {
  margin: 40px auto 20px;
}
/* 住所録 */
#shopify-section-template--16282028998699__rich_text_GCGBxK .section {
  margin: 40px auto 20px;
}

.account-section {
  .container {
    @media screen and (max-width: 640px) {
      padding: 0;
    }
  }

  .table-wrapper {
    overflow: auto;
    white-space: nowrap;
  }
}

.address-section {
  .container {
    @media screen and (max-width: 640px) {
      padding: 0;
    }

    .card {
      .card__section {
        padding: 20px;

        .heading {
          padding: 0;
        }
      }
    }
  }
}

.value-picker__inner {
  height: 500px;
}
