/** Shopify CDN: Minification failed

Line 515:14 Unexpected "{"
Line 515:23 Expected ":"
Line 520:16 Unexpected "{"
Line 520:25 Expected ":"
Line 528:16 Unexpected "{"
Line 528:25 Expected ":"
Line 536:16 Unexpected "{"
Line 536:25 Expected ":"
Line 544:16 Unexpected "{"
Line 544:25 Expected ":"
... and 14 more hidden warnings

**/
/* COMMON */
.aspect-ratio img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.aspect-ratio-wide-1 {
    aspect-ratio: 16/9;
}
.aspect-ratio-wide-2 {
    aspect-ratio: 16/10;
}
.aspect-ratio-standard-1 {
    aspect-ratio: 5/4;
}
.aspect-ratio-standard-2 {
    aspect-ratio: 4/3;
}
.aspect-ratio-standard-3 {
    aspect-ratio: 2/1;
}
.aspect-ratio-square {
    aspect-ratio: 1/1;
}
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}

/* ==============================
   共通レイアウトグリッド
   ============================== */
.layout-grid {
  display: flex;
  flex-wrap: wrap;
  row-gap: var(--row-gap, 30px);
  column-gap: var(--column-gap, 30px);
  width: 100%;
}
.layout-grid__item {
  border-radius: var(--grid-item-border-radius);
  max-width: 100%;
  height: 100%;
  flex-grow: unset;
}
.swiper-slide .layout-grid__item {
  height: auto;
}
.layout-grid__item a {
  display: block;
  width: 100%;
  height: 100%;
}
.layout-grid__item picture {
  display: block;
  width: 100%;
  height: auto;
}
.aspect-ratio .layout-grid__item picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.layout-grid__item img {
  width: 100%;
  border-radius: var(--grid-item-border-radius);
}

@media(max-width: 749px) {
  /* スクロール型 */
  .layout-grid.sp_scrollbar_enable {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 165px;
    overflow-x: auto;
    justify-content: flex-start;
    width: calc(100% - 30px);
    padding-bottom: 30px;
    margin: 0 15px;
  }
  .layout-grid.sp_scrollbar_enable::-webkit-scrollbar {
    height: 8px;
  }
  .layout-grid.sp_scrollbar_enable::-webkit-scrollbar-track {
    background-color: #F2F2F2;
    border-radius: 8px;
  }
  .layout-grid.sp_scrollbar_enable::-webkit-scrollbar-thumb {
    background-color: #002656;
    border-radius: 8px;
  }
  .layout-grid.sp_scrollbar_enable .layout-grid__item {
    width: 100%;
  }
  .layout-grid.is-centered-sp {
    justify-content: center;
  }
}



/* 親要素 */
.layout-grid {
  display: flex;
  flex-wrap: wrap;
  gap: var(--row-gap, 30px) var(--column-gap, 30px);
}

/* 子要素 */
.layout-grid__item {
  width: 100%;
}

/* アイテム数による幅指定（PC） */
.layout-grid__item--1 {
  width: 100%;
}
.layout-grid__item--2 {
  width: calc((100% - var(--column-gap, 30px)) / 2);
}
.layout-grid__item--3 {
  width: calc((100% - (var(--column-gap, 30px) * 2)) / 3);
}
.layout-grid__item--4 {
  width: calc((100% - (var(--column-gap, 30px) * 3)) / 4);
}
.layout-grid__item--5 {
  width: calc((100% - (var(--column-gap, 30px) * 4)) / 5);
}
.layout-grid__item--6 {
  width: calc((100% - (var(--column-gap, 30px) * 5)) / 6);
}

/* 円形化オプション */
.full-round .layout-grid__item {
  border-radius: 50%;
}
.full-round .layout-grid__item img {
  border-radius: 50%;
}

/* ========== レスポンシブ ========== */
@media (min-width: 750px) {
  .layout-grid.is-centered {
    justify-content: center;
  }
}

@media (max-width: 749px) {
  .layout-grid {
    gap: var(--row-gap-sp, 15px) var(--column-gap-sp, 15px);
  }

  /* アイテム数による幅指定（SP） */
  .layout-grid__item--1-sp { width: 100%; }
  .layout-grid__item--2-sp { width: calc((100% - var(--column-gap-sp, 15px)) / 2); }
  .layout-grid__item--3-sp { width: calc((100% - (var(--column-gap-sp, 15px) * 2)) / 3); }
  .layout-grid__item--4-sp { width: calc((100% - (var(--column-gap-sp, 15px) * 3)) / 4); }
  .layout-grid__item--5-sp { width: calc((100% - (var(--column-gap-sp, 15px) * 4)) / 5); }
  .layout-grid__item--6-sp { width: calc((100% - (var(--column-gap-sp, 15px) * 5)) / 6); }

  .layout-grid__item--title {
    font-size: 12px;
  }
}

.swiper {
  opacity: 0;
  transform: translateY(50px);
  transition: 1s;
}
.swiper.swiper-initialized {
  opacity: 1;
  transform: translateY(0px);
  transition: 1s;
}

#header .header__search {
    display: none;
}
#header .header__inline-menu {
    display: none;
}
.v_top_page .sticky_padding {
    padding-top: 0 !important;
}
.v_top_page #header {
    position: fixed;
    top: 0;
    width: 100%;
}
.v_top_page #header .header-wrapper{
    background: #FFFFFF00;
    transition: 0.5s;
}

.v_top_page #header .header-wrapper::before{
  content:"";
  position:absolute;
  top: 0;
  left: 0;
  background: #FFFFFF;
  width: 100%;
  height: 0;
  transition: 1s;
  z-index: -1;
}

.v_top_page #header .header-wrapper:has(.menu-opening)::before {
  height: 100%;
}
.v_top_page #header .header-wrapper.sticky_on::before{
  height: 100%;
}


/* TOP-MENU */
.suwah-menu-wrap {
    display: flex;
    justify-content: space-between;
}
.suwah-menu-wrap .suwah-menu-list {
    display: flex;
    gap: 15px 50px;
    width: 33%;
}
.suwah-menu-wrap .suwah-menu-list li a {
    font-size: 16px;
    font-weight: 400;
}
@media(max-width: 991px) {
    .suwah-menu-wrap {
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap;
        gap: 30px 10px;
    }
    .suwah-menu-wrap .suwah-menu-list {
        flex-direction: column;
    }
    .suwah-menu-wrap .suwah-menu-list li a {
        font-size: 12px;
    }
}
.suwah-menu-wrap .suwah-menu-list:nth-of-type(1) {
    justify-content: flex-start;
    width: 200px;
}
.suwah-menu-wrap .suwah-menu-list:nth-of-type(2) {
    justify-content: center;
    width: calc(100% - 210px);
}
.suwah-menu-wrap .suwah-menu-list:nth-of-type(3) {
    justify-content: flex-end;
    width: 100px;
    margin-left: 110px;
}
@media(max-width: 750px) {
  .suwah-menu-wrap .suwah-menu-list:nth-of-type(1) {
    justify-content: flex-start;
    width: 150px;
  }
  .suwah-menu-wrap .suwah-menu-list:nth-of-type(2) {
    justify-content: center;
    width: calc(100% - 160px);
  }
  .suwah-menu-wrap .suwah-menu-list:nth-of-type(3) {
    justify-content: flex-end;
    width: 100px;
    margin-left: 160px;
  }
}

.v_top_page .shopify-section:not(.section_no-margin-bottom) + .shopify-section {
    margin-top: 0;
}

.top-menu {
    margin-top: 0 !important;
    padding-top: 40px;
    padding-bottom: 110px;
}
.top-concept {
  padding-bottom: 110px;
}
@media(max-width: 991px) {
  .top-menu {
    padding-top: 30px;
    padding-bottom: 70px;
  }
  .top-concept {
    padding-bottom: 70px;
  }
}


.price__regular {
    font-weight: 400;
}
.right {
    text-align: right;
}

.button.suwah-button {
    background-color: #FFFFFF00;
    color: #000000;
    padding: 0;
    min-height: unset;
    min-width: unset;
    font-weight: 400;
}
.button.suwah-button::after {
    box-shadow: none;
}
.button.suwah-button:hover::after {
    box-shadow: none;
}
@media(max-width: 750px) {
    .button.suwah-button { 
        font-size: 12px;
    }
}

.custom-page-width {
    width: 100%;
    max-width: calc(100% - ((100% - 1200px) / 2));
    margin-left: auto;
}
@media(max-width: 1200px) {
    .custom-page-width {
        max-width: calc(100% - 30px);
        margin-left: 30px;
    }
}
@media(max-width: 750px) {
    .custom-page-width {
        max-width: calc(100% - 15px);
        margin-left: 15px;
    }
}
.swiper-horizontal > .swiper-scrollbar {
    position: static;
    left: 0;
    bottom: 0;
    margin-top: 15px;
    width: 100%;
    height: 6px;
}
.swiper-scrollbar-drag {
    display: block !important;
    background: rgba(0, 0, 0);
}

.right.collection__view-all {
    margin-top: 30px;
}
.collection-swiper .page-width {
    margin-left: auto;
    margin-right: auto;
}


.top-concept-wrap {
  display: flex;
  align-items: flex-end;
  max-width: 1000px;
}
.top-concept-wrap h2 {
  font-weight: 400;
  font-size: 18px;
  margin-bottom: 40px;
}
.top-concept-wrap .concept-content-left {
  width: 60%;
  max-width: 600px;
}
.top-concept-wrap .concept-content-left img {
  width: 100%;
}
.top-concept-wrap .concept-content-right {
  width: 40%;
  max-width: 400px;
  padding-left: 60px;
  padding-bottom: 30px;
}
.top-concept-wrap .top-concept-list {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.top-concept-wrap .top-concept-list li {
  display: flex;
  align-items: center;
  gap: 30px;
  line-height: 1.5;
  font-size: 14px;
}
@media(max-width: 749px) {
  .top-concept-wrap {
    flex-direction: column;
    align-items: flex-end;
  }
  .top-concept-wrap .concept-content-left {
    width: 100%;
  }
  .top-concept-wrap .concept-content-right {
    width: fit-content;
    padding-top: 20px;
    padding-left: 0;
    padding-right: 20px;
    padding-bottom: 0;
  }
  .top-concept-wrap h2 {
    font-size: 12px;
    margin-bottom: 20px;
  }
  .top-concept-wrap .top-concept-list li {
    font-size: 10px;
    gap: 20px;
  }
}

@media(max-width: 750px) {
    .header__heading-logo {
        max-width: 100px;
    }
}

.drawer_search_form .field {
  height: 60px;
}
.drawer_search_form .search__input.field__input {
  display: flex;
  align-items: center;
  padding: 18px 18px 18px 40px;
  background: #FFFFFF;
  border-bottom: 1px solid #1B1B1B;
  border-radius: 0;
}
.drawer_search_form button{
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.drawer_search_form .field__button {
  width: fit-content;
}
.field__input:focus {
  box-shadow: none;
}
.drawer_search_form .search__input.field__input::placeholder {
  opacity: 1;
  visibility: visible;
}



.header__icons {
  gap: 20px;
}
.header__icons a {
  width: fit-content;
  font-size: 16px;
  font-weight: 400;
  white-space: nowrap;
}
.header__icons a.header__icon--cart {
  gap: 0.5em;
}
@media(max-width: 750px) {
  .header__icons a {
    font-size: 10px;
  }
}
.cart-count-bubble {
  display: flex;
  align-items: center;
  margin-left: 0em;
}
.cart-count-bubble::before {
  content: "(";
}
.cart-count-bubble::after {
  content: ")";
}

#cart-icon-bubble:has(.cart-count-bubble) .cart-count-bubble-before {
  display: none;
}

.drawer_search .drawer_search_form {
  margin: 0;
}

#drawer-menu-{{ section.id }}.drawer_menu {
    display: flex;
    margin-top: 50px;
  }

  #drawer-menu-{{ section.id }} .drawer_menu__group-title {
    margin: 0 0 10px;
    font-size: 12px;
    letter-spacing: .08em;
    font-weight: 700;
    opacity: .75;
  }

  #drawer-menu-{{ section.id }} .drawer_menu__list{
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 0;
  }

  #drawer-menu-{{ section.id }} .drawer_menu__row{
    /* display: grid;
    grid-template-columns: 1fr auto;
    align-items: center; */
    display: flex;
    gap: 10px;
  }

  #drawer-menu-{{ section.id }} .drawer_menu__link{
    text-decoration: none;
    color: inherit;
    font-size: 14px;
    font-weight: 300;
    line-height: 2;
  }

  #drawer-menu-{{ section.id }} .drawer_menu__toggle{
    border: 0;
    background: transparent;
    padding: 6px;
    cursor: pointer;
    color: inherit;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  /* collapsed: plus shown */
  #drawer-menu-{{ section.id }} .drawer_menu__toggle .icon-minus{ display: none; }
  #drawer-menu-{{ section.id }} .drawer_menu__toggle[aria-expanded="true"] .icon-plus{ display: none; }
  #drawer-menu-{{ section.id }} .drawer_menu__toggle[aria-expanded="true"] .icon-minus{ display: inline; }

  #drawer-menu-{{ section.id }} .drawer_menu__submenu{
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 2px;
    /* border-left: 1px solid rgba(0,0,0,.12); */
  }

  #drawer-menu-{{ section.id }} .drawer_menu__submenu-link{
    text-decoration: none;
    color: inherit;
    font-size: 13px;
    opacity: .85;
  }

  /* visually-hidden（テーマに無ければ） */
  #drawer-menu-{{ section.id }} .visually-hidden{
    position:absolute !important;
    height:1px; width:1px;
    overflow:hidden;
    clip:rect(1px,1px,1px,1px);
    white-space:nowrap;
  }

  /* ===== Drawer accordion ===== */

.drawer_menu__row.is-has-children {
  cursor: pointer;
}

.drawer_menu__link--toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  height: fit-content;
}

.drawer_menu__list .drawer_menu__item {
  display: flex;
  gap: 30px;
}
.drawer_menu__list .drawer_menu__item:nth-of-type(1) {
  margin-bottom: 1.5em;
}
.drawer_menu__list .drawer_menu__item:nth-of-type(2) {
  margin-bottom: 1.5em;
}
.drawer_menu__list .drawer_menu__item:last-of-type {
  margin-bottom: 0;
}
#header .menu-drawer .menu-drawer__inner-container .list-social {
  display: flex;
}
  @media(max-width: 991px) {
    .drawer_menu {
      display: flex;
      flex-direction: column;
      gap: 25px;
      margin-top: 25px;
    }
    .drawer_menu__group {
      margin: 0 !important;
    }
    .drawer_menu__list .drawer_menu__item {

    }
    #header .menu-drawer .menu-drawer__inner-container .list-social {
      position: static;
      right: unset;
      left: 0;
      margin-left: 0;
      margin-top: 20px;
    }
    .menu-drawer__inner-container {
      padding-bottom: 30px;
    }
  }

/* トグルアイコン（＋／−）切り替え */
.drawer_menu__toggle-icon {
  display: inline-flex;
  align-items: center;
}
.drawer_menu__toggle-icon .icon-plus { opacity:1; transition: 0.5s; width: fit-content; }
.drawer_menu__toggle-icon .icon-minus { opacity:0; transition: 0.5s; width: 0; }
.drawer_menu__row.is-open .drawer_menu__toggle-icon .icon-plus { opacity:0; transition: 0.5s; width: 0; }
.drawer_menu__row.is-open .drawer_menu__toggle-icon .icon-minus { opacity:1; transition: 0.5s; width: fit-content; }

/* サブメニューをmax-heightでアニメーション */
.drawer_menu__submenu {
  position: relative;
  padding-top: 5px;
  padding-left: 15px;
  overflow: hidden;
  max-height: 0;                /* JSで開く時にscrollHeightを入れる */
  transition: max-height 280ms ease;
  will-change: max-height;
  opacity: 1;
}
.drawer_menu__submenu::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #000000;
}
@media(max-width: 991px) {
  .drawer_menu__submenu {
    padding-top: 25px;
  }
  .drawer_menu__submenu::before {
    top: 13px;
  }
}

.drawer_menu__submenu-item {
  display: inline-flex;
  font-weight: 400;
}
.drawer_menu__submenu-item:nth-of-type(1) {
  margin-bottom: 1.5em;
}
.drawer_menu__submenu-item:nth-of-type(3) {
  margin-bottom: 1.5em;
}
.drawer_menu__submenu-item:nth-of-type(1) .drawer_menu__submenu-link {
  color: #000000;
}
.drawer_menu__submenu-item .drawer_menu__submenu-link {
  color: #828181;
}
.drawer_menu__group:nth-of-type(1) {
  margin-right: 170px;
}
.drawer_menu__group:nth-of-type(2) {
  margin-right: 140px;
}
.drawer_menu__group:nth-of-type(3) .drawer_menu__list .drawer_menu__item:nth-of-type(1) {
  margin-bottom: 3em;
}

.drawer_menu__submenu-link {
  line-height: 1.2;
}

/* hidden属性が付いている間は描画しない（JSで制御） */
.drawer_menu__submenu[hidden] {
  opacity: 0;
}

#header .menu-drawer .list-social {
  position: absolute;
  right: 47px;
  bottom: 60px;
  gap: 10px;
}
#header .menu-drawer .list-social .list-social__link {
  padding: 0;
}

#menu-drawer {
  border: none;
}
#menu-drawer .close-menu {
  position: absolute;
  top: 15px;
  right: -35px; 
  display: block;
  cursor: pointer;
}
@media(min-width: 750px) {
  #menu-drawer .close-menu {
    display: none;
  }
}
#menu-drawer .close-menu svg {
  width: 35px;
  height: 35px;
}
.footer-custom__list {
  width: 100%;
  max-width: 300px;
}
.footer-custom__item {
  display: flex;
  gap: 50px;
  font-weight: 400;
}
.footer-custom__item .footer-custom__link {
  width: 110px;
}
.footer-custom__item:nth-of-type(1) .footer-custom__link {
  cursor: default;
  pointer-events: none;
}
.footer-custom__item:nth-of-type(2) .footer-custom__link {
  cursor: default;
  pointer-events: none;
}
.footer-custom__item:nth-of-type(1) .footer-custom__sublist .footer-custom__subitem:nth-of-type(1) {
  margin-bottom: 20px;
}
@media(max-width: 750px) {
  .footer-custom__item .footer-custom__sublist .footer-custom__subitem {
    line-height: 1;
  }
  .footer-custom__item .footer-custom__sublist .footer-custom__subitem .footer-custom__sublink {
    font-size: 10px;
  }
}
.footer-custom__item:nth-of-type(1) {
  margin-bottom: 50px;
}
.footer-custom__item:nth-of-type(2) .footer-custom__sublist {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.footer-custom__item:nth-of-type(2) {
  margin-bottom: 55px;
}
.footer-custom__item:nth-of-type(3) {
  margin-bottom: 54px;
}

.footer-custom__nav {
  display: flex;
  gap: 58px;
}
.footer-block__right {
  width: 100%;
  max-width: 70%;
}
.footer-custom__nav h3 {
  font-size: 14px;
  font-weight: 400;
}
.footer-block__right .footer-block__localization {
  margin-bottom: 350px;
}

/* NewsletterForm */
#NewsletterForm--footer-custom {
  height: 75px;
  padding: 30px 0 30px 0;
  font-size: 14px;
  border-bottom: 1px solid #000000;
}
@media(max-width: 750px) {
  #NewsletterForm--footer-custom {
    font-size: 12px;
    height: 50px;
  }
}
#NewsletterForm--footer-custom::placeholder {
  opacity: 1;
  visibility: visible;
}
.newsletter-form__field-wrapper .field__label {
  display: none;
}
.newsletter-form__field-wrapper .field::before {
  box-shadow: none;
}
.newsletter-form__field-wrapper .field::after {
  border: none !important;
  box-shadow: none !important;
}
.newsletter-form__field-wrapper .field:focus-visible {
  outline: none;
  box-shadow: none;
}
.newsletter-form__field-wrapper .field__input:focus-visible {
  outline: none;
  box-shadow: none;
}
.newsletter-form__field-wrapper.field:hover.newsletter-form__field-wrapper.field:after {
  box-shadow: none !important;
}
.newsletter-form__field-wrapper .field__button {
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 60px;
  height: 14px;
}
.footer-custom .copyright {
  margin-top: 52px;
  text-align: right;
  font-size: 12px;
  font-weight: 300;
  color: #000000;
}

@media(max-width: 991px) {
  .footer-custom__item {
    gap: 15px;
  }
  .footer-custom__nav {
    flex-direction: column;
    gap: 30px;
  }
  .footer-custom__nav h3 {
    font-size: 12px;
    letter-spacing: 0;
  }
  .footer-block__right {
    max-width: 100%;
  }
  .footer-custom__item .footer-custom__link {
    width: 85px;
    font-size: 10px;
  }
  .footer-custom__item:nth-of-type(1) {
    margin-bottom: 49px;
  }
  .footer-custom__item:nth-of-type(2) {
    margin-bottom: 38px;
  }
  .footer-custom__item:nth-of-type(3) {
    margin-bottom: 30px;
  }
  .footer-block__right .footer-block__localization {
    margin-bottom: 54px;
  }
  .footer-custom .copyright {
    margin-top: 32px;
  }
  .footer__newsletter {
    margin-top: 50px;
  }
  .newsletter-form__field-wrapper .field__button {
    width: 30px;
  }
}



/* PRODUCT DETAIL */
.product.product--large {
  position: relative;  
  padding-top: 40px;
}
.product--stacked .product__info-container--sticky {
  top: 110px !important;
}

h1:has(.product__heading),
.price-item:has(.product__heading) {
  display: flex;
  align-items: center;
  font-size: 16px !important;
  font-weight: 400 !important;
}
.product--large:not(.product--no-media) .product__media-wrapper {
  position: relative;
}
.product__heading {
  display: block;
  width: fit-content;
  min-width: 60px;
  margin-right: 30px;
  font-size: 16px;
  font-weight: 400;
}
body:not(:has(.product)) .product__heading {
  display: none;
}
@media(max-width: 750px) {
  h1:has(.product__heading),
  .price-item:has(.product__heading) {
    font-size: 13px !important;
  }
  .product__heading {
    font-size: 10px !important;
    min-width: 50px;
  }
}
/* 1枚を「画面内に収まる1画面」として扱う（必要に応じて調整） */
.body-scroll-slider__slide {
  height: 100%;
  max-height: 650px;
  display: grid;
  place-items: center;
  margin-bottom: 0px;
}
.body-scroll-slider__slide:last-of-type {
  margin-bottom: 0px;
}
.body-scroll-slider__img {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  aspect-ratio: 520 / 650;
}
/* ページネーション：固定表示（Bodyスクロール用） */
.body-scroll-slider__pagination {
  position: fixed;
  top: 230px;
  left: calc(((100% - 1200px) / 2) - 20px);
  flex-direction: column;
  display: flex;
  gap: 6px;
  z-index: 2;
}
.body-scroll-slider__dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  border: 1px solid #00000040;
  background: #FFFFFF;
  padding: 0;
  cursor: pointer;
  transition: 0.5s;
}
.body-scroll-slider__dot.is-active {
  background: #000;
  border: 1px solid #000000;
  transition: 0.5s;
}
@media(max-width: 1200px) {
  .body-scroll-slider__pagination {
    left: 14px;
  }
}
@media(max-width: 750px) {
  .body-scroll-slider__pagination {
    display: none;
  }
}
@media (max-width: 750px) {
  .body-scroll-slider__slide {
    max-height: 100%;
  }
  .body-scroll-slider__pagination {
    position: absolute;
    top: unset !important;
    bottom: 30px !important;
    right: 20px !important;
    left: unset !important;
    transform: none;
    display: flex;
    justify-content: flex-end;
    flex-direction: row;
    gap: 10px;
    width: fit-content !important;
  }
}
.swiper-pagination-bullet {
  border: 1px solid #00000040;
  background: #FFFFFF;
  opacity: 1;
}
.swiper-pagination-bullet-active {
  background: #000000;
}
.product .quantity {
  min-height: unset !important;
}
.product .quantity::after {
  display: none;
}
.product .quantity__input {
  width: 50px !important;
  flex-grow: unset !important;
}
.product .quantity__button {
  width: fit-content;
}
.product .product-form__quantity .form__label {
  width: fit-content;
  min-width: 60px;
  font-size: 16px;
  font-weight: 400;
  color: #000000;
  margin: 0 30px 0 0;
}
@media(max-width: 750px) {
  .product .product-form__quantity .form__label {
    font-size: 10px;
  }
}
.product .product-form__quantity {
  display: flex;
  align-items: center;
}
.product__info-container {
  padding-top: 30px;
}
@media(max-width: 750px) {
  .product__info-container {
    padding-top: 30px;
  }
}
.product .price__container {
  margin-bottom: 0 !important;
}

.breadcrumb-custom {
  padding-top: 52px;
  padding-bottom: 32px;
}
.shopify-section:has(.product) {
  margin-top: 0 !important;
}
.product-tabs__nav {
  display: flex;
  gap: 0;
}
.product-tabs__tab {
  width: 25%;
  font-size: 16px;
  appearance: none;
  background: transparent;
  border: 0;
  border-bottom: 4px solid #F2F2F2;
  padding: 15px 0;
  cursor: pointer;
  color: #000000;
  transition: 0.5s;
}
@media(max-width: 750px) {
  .breadcrumb-custom {
    padding-top: 13px;
    padding-bottom: 21px;
  }
  .product-tabs__tab {
    font-size: 12px;
  }
}
.product-tabs__tab.is-active {
  opacity: 1;
  border-bottom: 4px solid #000000;
  transition: 0.5s;
}
.product-tabs__panel {
  padding: 40px 0;
  font-size: 14px;
  line-height: 2;
}
.product-metafield.product-metafield--country {
  text-align: right;
  font-size: 14px;
  font-weight: 400;
  color: #686868; 
}
.product .product-form__buttons {
  margin-left: auto;
}
.product-form__buttons {
  max-width: 220px !important;
}
.product button.product-form__submit {
  font-size: 18px;
  font-weight: 400;
}
@media(max-width: 750px) {
  .product .product__info-container .product-form, 
  .product .product__info-container .product__description {
    margin-top: 32px;
    margin-bottom: 32px;
  }
  .product-metafield.product-metafield--country {
    font-size: 10px;
  }
  .product-tabs__panel {
    padding: 30px 0;
    font-size: 12px;
  }
  .product button.product-form__submit {
    font-size: 14px;
  }
}

header.header {
  padding-top: 14px;
  padding-bottom: 14px;
}

.breadcrumb-page-title {
  font-size: 16px;
  font-weight: 300;
}
@media(max-width: 750px) {
  .breadcrumb-page-title {
    font-size: 14px;
    font-weight: 300;
  }
}

/* 一覧側 */
.main-blog .title--primary {
  display: none;
}
.main-blog-wrap {
  position: relative;
}
.side--title {
  position: absolute;
  top: 25px;
  left: -30px;
  rotate: 90deg;
}
.article-heading-list {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 800px;
  margin: 0 auto 30px;
  padding-right: 12px;
  list-style: none;
}
.article-list {
  display: flex;
  flex-direction: column-reverse;
  width: 100%;
  max-width: 800px;
  margin: 0 auto 70px;
  padding-right: 12px;
  list-style: none;
}

/* カード（1行） */
.article-card {
  display: grid;
  grid-template-columns: 56px 1fr 90px; /* NO / TITLE / DATE */
  align-items: center;
  gap: 88px;
  padding: 0;
}
.article-card > * {
  line-height: 3;
  font-weight: 400;
  letter-spacing: 0;
}
.article-heading-list * {
  color: #828181;
  font-weight: 400;
  line-height: 1;
}

.article-card__no {
  width: 30px;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.article-card__title {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  text-decoration: none;
  color: inherit;
  letter-spacing: .02em;
}

.article-card__title:hover {
  text-decoration: underline;
}

.article-card__date {
  font-family: "Zain", sans-serif;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

/* SP調整 */
nav.pagination {
  margin-bottom: 140px;
}
.pagination .pagination__list {
  width: 100%;
  max-width: 800px;
  justify-content: flex-end;
  margin: 0 auto;
  gap: 20px;
}
.pagination .pagination__list > li {
  width: fit-content;
  flex: unset;
  max-width: unset;
}
.pagination .pagination__list > li:not(:last-child) {
  margin: 0;
}
.pagination .pagination__item {
  height: 50px;
  width: unset;
  font-weight: 400;
}
.pagination .pagination__item--current:after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  position: absolute;
  bottom: 5px;
  left: 0%;
  border-radius: 50%;
  transition: 0.5s;
  background-color: #000000;
}
.pagination .pagination__item:hover:after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  position: absolute;
  bottom: 5px;
  left: 0%;
  border-radius: 50%;
  transition: 0.5s;
  background-color: #00000000;
}
.pagination .pagination__item:hover:after {
  transition: 0.5s;
  background-color: #00000040;
}
@media(max-width: 750px) {
  .pagination .pagination__item {
    font-size: 12px;
  }
  .pagination .pagination__item--current:after {
    left: 50%;
    transform: translateX(-50%);
  }
  nav.pagination {
    margin-bottom: 70px;
  }
}

.article-main-visual__inner {
  display: flex;
  align-items: flex-end;
  gap: 10px;
  width: calc(100% - ((100% - (1200px)) / 2));
  margin-left: auto;
}
@media(max-width: 1280px) {
  .article-main-visual__inner {
    width: calc(100% - 15px);
  }
}
@media(max-width: 750px) {
  .article-main-visual__inner {
    gap: 7px;
  }
  .article-card {
    grid-template-columns: 25px 1fr 80px; /* NO / TITLE / DATE */
    gap: 15px;
  }
  .article-list,
  .article-heading-list {
    width: calc(100% - 30px);
    margin: 0 0 20px 30px;
    padding: 0;
  }
  .article-main-visual__text {
    font-size: 8px;
    letter-spacing: 0;
    line-height: 1.4;
  }
  .side--title {
    font-size: 12px;
    top: 20px;
    left: -20px;
  }
  .article-heading-list * {
    font-size: 9px;
  }
  .article-list * {
    font-size: 10px;
    letter-spacing: 0;
  }
  .article-card__date {
    font-family: 'Zalando Sans', sans-serif;
  }
}
.article-main-visual__left {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 15px;
  width: 50%;
  max-width: 600px;
}
.article-main-visual__images_2 {
  width: calc(50% + 30px);
}
.article-main-visual__images_2 img {
  width: 100%;
}

.article-main-visual-section {
  margin-top: 0 !important;
}
.shopify-section.section:has(.main-blog) {
  margin-top: 85px !important;
}
@media(max-width: 750px) {
  .shopify-section.section:has(.main-blog) {
    margin-top: 70px !important;
  }
}

.custom-module * {
  margin: 0;
}

/* カラム数始まり////////////////////////////////////////////////////////////////////////////////////// */

/* カラム調整css */
.column-items{
    display: flex;
    flex-wrap: wrap;
}

.column-items a{
    display: block;
}

/* カラム内の画像 */
.column-items img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* aspect-ratio: 1/1; */
}

/* カラム数終わり////////////////////////////////////////////////////////////////////////////////////// */


.under-title {
    max-width: 620px;
    width: 100%;
    margin: 0 auto;
    background: #F2F1EC;
    font-weight: 400;
    font-size: 18px;
    line-height: 160%;
    letter-spacing: normal;
    text-align: center;
    font-family: "Zalando Sans", sans-serif;
    padding: 13px 0;
}

.under-title-small {
    font-weight: 400;
    font-size: 16px;
    line-height: 160%;
    letter-spacing: normal;
    text-align: center;
}

@media (max-width: 768px) {
    .under-title {
        font-size: 14px;
            padding: 19x 0;

    }
    
    .under-title-small {
        font-size: 12px;
    }
}
.shopify-section:has(.faq):nth-last-of-type(1) {
    border: none;
}

#FacetFiltersForm {
  display: none;
}

#main-collection-filters {
  display: none;
}

@media(max-width: 750px) {
  .d_title .main_en {
    font-weight: 300;
  }
}

.card__media.soldout--wrapper::after {
  content: "Sold Out";
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-size: 12px;
  color: #FFFFFF;
  background: #00000040;
}

.localization-form button {
  text-decoration: none;
  padding: 0;
}

.localization-form__select.localization-selector svg {
  width: 1rem;
  height: 1rem;
}
.localization__wrapper {
  display: flex;
  gap: 20px;
}
@media screen and (max-width: 749px) {
  .localization-form button {
    font-size: 10px;
  }
  #FooterLanguageList .disclosure__item a {
    font-size: 12px;
  }
  .v_about main .page-width {
    padding: 0 30px;
  }
  .v_concept main .page-width {
    padding: 0 15px;
  }
  .v_journal main .page-width {
    padding: 0 15px;
  }
}

.article__header {
}
.article__header--wrapper {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding-bottom: 8px;
  border-bottom: 1px solid #000000;
}
.article--title {
  font-size: 10px;
  font-weight: 400;
}
.article-template header.article__header {
  margin-top: 15px !important;
  margin-bottom: 50px;
}
.article-template .page-width--narrow {
  padding: 0 40px;
}
.article-template__hero-container .media > img.media_hight_adapt {
  margin-top: 0;
}
.article-template__content {
  font-size: 14px;
  font-weight: 400;
}
@media(max-width: 750px) {
  .article-template__content {
    font-size: 10px;
  }
}

.shopify-section:has(.article-template) {
  margin-top: 0 !important;
}
.product-details-mf__images {
  display: flex;
  gap: 10px;
  padding: 20px;
}
.product-details-mf__images img {
  width: calc(50% - 5px);
}
@media(max-width: 750px) {
  .product-details-mf__images img {
    max-width: 140px;
  }
}

.jm-cluster.jm-histogram-row {
  gap: 20px !important;
}
.jm-cluster.jm-review-widget-header__main-content {
  display: flex;
  flex-direction: column;
}
#jdgm-masonry-grid-id {
  position: static !important;
  height: 100% !important;
  padding-bottom: 40px;
}
.jm-review-widget__header-and-body {
  display: flex;
  flex-direction: column-reverse !important;
  gap: 100px !important;
}
.jdgm-masonry-grid__container {
  display: flex;
  gap: 20px;
  width: 100%;
  overflow-x: auto;
}
.jdgm-masonry-grid__container::-webkit-scrollbar {
  height: 6px;
}
.jdgm-masonry-grid__container::-webkit-scrollbar-track {
  background-color: #00000040;
}
.jdgm-masonry-grid__container::-webkit-scrollbar-thumb {
  background: #000000;
}

.jdgm-masonry-grid__masonry-item {
  position: static !important;
  width: 450px !important;
  border: 1px solid #000000;
  transform: translate(0, 0) !important;
}
.jdgm-masonry-grid__masonry-item:empty {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}
.jdgm-masonry-grid__masonry-item-inner {
  width: 450px !important;
}
.jdgm-review-card__content {
  height: 100%;
  background: transparent !important;
}
.jm-box.jm-box--inherit-color.jdgm-review-card {
  height: 100%;
}
.jm-histogram.jm-review-widget-header__star-rating-histogram {
  max-inline-size: 700px !important;
  width: 100%;
}
.jm-star-rating__font-icon {
  font-size: 0.75em !important;
}
.jdgm-review-card__content .jm-stack .jm-stack {
  display: flex;
  justify-content: space-between;
}

.jm-button.jm-button--primary.jm-action-buttons__button {
  padding: 20px;
}
.jm-review-widget__header.jm-review-widget-header {
  display: flex;
  flex-direction: column;
}
.jm-review-widget-header__filters-wrapper {
  order: -1;
}
.jm-review-widget {
  padding-block: 0 !important;
}
.jm-review-widget-header__filters-wrapper {
  margin-block-start: 0 !important;
}
.jm-review-widget-header__main-content {
  padding-bottom: 120px !important;
  border-bottom: 1px solid #000000;
}

.jm-loading-overlay.jm-review-widget__body::before {
  content: "[ REVIEW ]";
  font-size: 16px;
  font-weight: 300;
}
@media(max-width: 991px) {
  .jm-loading-overlay.jm-review-widget__body::before {
    font-size: 14px;
  }
  .jm-review-widget-header__summary-section {
    margin-top: 40px !important;
  }
  .jdgm-masonry-grid__masonry-item {
    width: 270px !important;
  }
  .jdgm-masonry-grid__masonry-item-inner {
    width: 270px !important;
  }
}
.jm-center--intrinsic .jm-text.jm-no-reviews-state__text {
  display: none;
}
.shopify-policy__body {
  font-weight: 400;
}



.article-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.article-nav .article-nav__arrow {
  width: 30px;
}
.article-nav__arrow.is-disabled{
  pointer-events: none;
  opacity: .25;
  cursor: default;
}

.disclosure__list li a {
  font-weight: 400;
}
@media(max-width: 750px) {
  .disclosure__list li a {
    font-size: 10px !important;
  }
}



/* 3KEY */
.three-kmv-area {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
}
.three-kmv-area .three-kmv-content {
  padding-top: 30px;
  padding-bottom: 100px;
}
.three-kmv-area .three-kmv-content h2 {
  font-size: 20px;
  font-weight: 400;
  line-height: 1;
  text-align: right;
}
.three-kmv-area .three-kmv-content p {
  position: relative;
  padding-top: 15px;
  padding-bottom: 30px;
  margin: 0;
  font-family: Noto Sans JP;
  font-weight: 400;
  font-size: 16px;
  line-height: 1;
  text-align: right;
}
.three-kmv-area .three-kmv-content .three-kmv-dots {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 15px;
  height: 45px;
  margin-right: 65px;
}
.three-kmv-area .three-kmv-content .three-kmv-dot {
  display: block !important;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #000000;
}
@media(max-width: 750px) {
  .three-kmv-area .three-kmv-content {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .three-kmv-area .three-kmv-content h2 {
    font-size: 14px;
  }
  .three-kmv-area .three-kmv-content p {
    font-size: 12px;
    padding-top: 10px;
    padding-bottom: 20px;
  }
  .three-kmv-area .three-kmv-content .three-kmv-dots {
    margin-right: 50px;
  }
}

/* section.three-key-main-content-section {
  margin-top: 70px !important;
  padding-top: 70px;
  border-top: 1px solid #000000;
}
section.three-key-main-content-section:last-of-type {
  margin-bottom: 140px;
}
@media(max-width: 991px) {
  section.three-key-main-content-section:last-of-type {
    margin-bottom: 80px;
  }
} */
.three-key-main-content .three-kmc-area {
  display: grid;
  grid-template-rows   : 1fr;
  grid-template-areas  : "text-content image";
  gap: 60px;
}
@media(max-width: 1199px) {
  .three-key-main-content .three-kmc-area {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
    max-width: 1160px;
  }
}
@media(max-width: 991px) {
  .three-key-main-content div.three-kmc-area {
    display: flex;
    flex-direction: column;
    gap: 30px;
  }
}
.three-key-main-content .three-kmc-area.content-reverse {
  grid-template-areas  : "image text-content";
}
.three-key-main-content .three-kmc-area .three-kmc-image {
  grid-area: image;
  width: 100%;
  height: 100%;
}
.three-key-main-content .three-kmc-area .three-kmc-content {
  grid-area: text-content;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
}
.three-key-main-content .three-kmc-area .kmc-top-content {
  display: flex;
  justify-content: space-between;
}

.three-key-main-content .three-kmc-area .kmc-top-content .kmc-initital {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.8;
}
.three-key-main-content .three-kmc-area .kmc-top-content .kmc-heading {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.8;
  text-align: right;
}
.three-key-main-content .three-kmc-area .kmc-bottom-content .kmc-subheading {
  margin-top: 30px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.8;
}
.three-key-main-content .three-kmc-area .kmc-bottom-content .kmc-subheading .kmc-subheading-1 {
  display: flex;
  padding-bottom: 6px;
}
.three-key-main-content .three-kmc-area .kmc-bottom-content .kmc-subheading .kmc-subheading-1::before {
  content: "";
  display: block;
  width: 40px;
  height: 17px;
  margin-right: 10px;
  border-bottom: 1px solid #000000;
}
.three-key-main-content .three-kmc-area .kmc-bottom-content p {
  margin: 0;
}
.three-key-main-content .three-kmc-area .kmc-bottom-content .kmc-text {
  margin-top: 20px;
  font-weight: 300;
  font-style: Light;
  font-size: 14px;
  line-height: 180%;
  letter-spacing: 0%;
}
.three-key-main-content .three-kmc-area .kmc-bottom-content .kmc-annotation {
  font-weight: 300;
  font-style: Light;
  font-size: 12px;
  line-height: 220%;
  letter-spacing: 0;
}
@media(max-width: 750px) {
  /* section.three-key-main-content-section {
    margin-top: 40px !important;
    padding-top: 40px;
  } */
  .three-key-main-content .three-kmc-area .kmc-bottom-content .kmc-subheading .kmc-subheading-1::before {
    width: 20px;
  }
  .three-key-main-content .three-kmc-area .kmc-top-content .kmc-heading{
    letter-spacing: 0;
  }
  .three-key-main-content .three-kmc-area .kmc-top-content .kmc-initital {
    white-space: nowrap;
  }
  .three-key-main-content .three-kmc-area .kmc-top-content .kmc-initital,
  .three-key-main-content .three-kmc-area .kmc-top-content .kmc-heading,
  .three-key-main-content .three-kmc-area .kmc-bottom-content .kmc-subheading,
  .three-key-main-content .three-kmc-area .kmc-bottom-content .kmc-text {
    font-size: 12px;
    font-weight: 400;
  }
  .three-key-main-content .three-kmc-area .kmc-bottom-content .kmc-annotation {
    font-size: 10px;
    font-weight: 400;
  }
}

.gift-main-content-section {
  margin-top: 0 !important;
}

@media(min-width: 750px) {
  .medium-hide { 
    display: none !important;
  }
}

.section--subtitle {
  font-weight: 400;
  font-size: 16px;
  line-height: 100%;
  letter-spacing: 0%;
  text-align: center;
  margin-bottom: 30px;
}
@media(max-width: 750px) {
  .section--subtitle  {
    font-size: 12px;
  }
}

.d_title::before {
  content: "";
}
.meets-suwah-section {
  margin-top: 0 !important;
}
.company-overview-static-section {
  margin-top: 0 !important;  
}