/** Shopify CDN: Minification failed

Line 965:0 Unexpected "}"

**/
/* =====================================================================
main-product-detail.css
StitchandSew product detail page
Clean replacement version
===================================================================== */
.product-detail {
  position:relative;
}

.product-detail-media {
  position:relative;
}

.product-detail-gallery {
  position:relative;
  opacity:0;
}

.product-detail-gallery__frame {
  position:relative;
}

.product-detail-gallery__move {
  position:relative;
  margin:0;
  padding:0;
  list-style:none;
}

.product-detail-gallery--item {
  position:relative;
}

.product-detail-content {
  position:relative;
  opacity:0;
}

.product-detail-postion {
  position:relative;
}

.product-detail-collections {
  display:flex;
  flex-wrap:wrap;
}

.product-detail-collections>a {
  display:inline-block;
  text-decoration:none;
  vertical-align:top;
  font-family:var(--font-gothic-family);
  font-size:1.3rem;
  line-height:1.2;
  color:#000;
}

.product-detail-collections>a:not(:last-child)::after {
  content:'/';
  padding:0 0.2em;
}

.product-detail .product__title {
  margin-top:1rem;
}

.product-detail .product__title h1 {
  margin:0;
  font-family:游明朝体,"Yu Mincho",YuMincho,"Noto Serif JP",serif;
  font-size:1.8rem;
  line-height:1.2;
  letter-spacing: 0.015rem;
}

.product-detail .product__title>a {
  display:none;
}

.product-detail-sales_copy {
  margin:0;
  color:#666666;
  font-size:1.6rem;
  line-height:1.6;
  margin-top:6rem;
  margin-left:-0.1rem;
  letter-spacing:0.015rem;
}

.product-detail-variant {
  position:relative;
  margin-top:1rem;
}

.product-detail-variant .product-form__input {
  display:flex;
  align-items:center;
  margin:0;
  padding:1.4rem 0;
  border:none;
}

.product-detail-variant .form__label {
  margin:0;
  padding:0;
  white-space:nowrap;
  font-family:var(--font-gothic-family);
  font-size:1.3rem;
  line-height:1.2;
}

.product-detail-variant .form__label::after {
  content:':';
  padding:0 0.2em;
}

.product-detail-variant .select {
  color:#000;
}

.product-detail-variant .select::before,.product-detail-variant .select::after {
  display:none;
}

.product-detail-variant .select select {
  margin:0 0 0.4rem 0.6rem;
  padding:0;
  width:100%;
  height:4rem;
  min-height:inherit;
  font-family:var(--font-gothic-family);
  font-size:1.3rem;
  line-height:1.2;
}

.product-detail-variant .select select:focus {
  box-shadow:none;
}

.product-detail-variant .select .icon-caret {
  right:0;
  width:1.24rem;
  height:0.65em;
}

.product-detail-buy {
  position:relative;
  margin-top:1.5rem;
}

.product-detail-buy__wrap {
  position:relative;
}

.product-detail-buy__wrap .button {
  justify-content:start;
  padding:0 2rem;
  min-height:6rem;
  background-color:#000;
  border-radius:8px;
  font-family:var(--font-gothic-family);
  font-size:1.3rem;
  font-weight:700;
  line-height:1.2;
  color:#fff;
  cursor:pointer;
}

.product-detail-buy__wrap .button::before,.product-detail-buy__wrap .button::after {
  display:none;
}

.product-detail-buy__wrap .button+div {
  display:flex;
  align-items:center;
  pointer-events:none;
  position:absolute;
  top:50%;
  right:3.4rem;
  transform:translateY(-50%);
}

.product-detail-buy__price {
  font-family:var(--font-gothic-family);
  font-size:1.3rem;
  font-weight:700;
  line-height:1.2;
  color:#fff;
}

.product-detail-buy__price p {
  margin:0;
}

.product-detail-buy__wrap .product-detail-buy--badge {
  margin-left:1rem;
}

.product-detail-buy .product-form__buttons {
  margin-top:2rem;
}

.product-detail-description {
  position:relative;
  margin-top:0;
}

.product-detail-description--btn,#md-more-detail-overlay {
  text-decoration:none;
  color:#313333;
  letter-spacing:0.04rem;
}

.product-detail-description--btn::after,#md-more-detail-overlay::after {
  background-color:currentColor;
}

.product-detail-description .product__description {
  display:none;
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background-color:#fff;
  z-index:100;
}

.product-detail-description .product__description__frame {
  position:relative;
  width:100%;
  height:100%;
  overflow-y:auto;
}

.product-detail-description .product__description__hd {
  display:flex;
  justify-content:space-between;
  align-items:center;
  position:relative;
  padding:0 2.5rem;
  height:calc(var(--page-header-height-mobile) * 1px);
}

.product-detail-description .product__description--logo {
  display:none!important;
  margin:0;
  width:18.029rem;
  height:2.332rem;
  font-size:1rem;
  line-height:1.2;
  transform:translateY(20px);
}

.product-detail-description .product__description--logo img {
  margin:0;
  width:100%;
  height:100%;
  border:none;
}

.product-detail-description .product__description--close {
  position:absolute;
  top:50%;
  right:2.522rem;
  transform:translateX(-0.8rem) translateY(-0.6rem);
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  -ms-appearance:none;
  margin:0;
  padding:0;
  width:2rem;
  height:2rem;
  background:none;
  border:none;
  font-size:1rem;
  line-height:1.2;
  cursor:pointer;
}

.product-detail-description .product__description--close .icon-close {
  width:100%;
  height:100%;
  transform:translateY(20px);
}

.product-detail-description .product__description__content {
  margin:0 2.7rem;
  padding:2rem 0 5rem;
  font-size:1.8rem;
  line-height:1.6;
}

.product-detail-description .product__description__content h2 {
  margin:0 0 2rem;
  font-family:var(--font-en-family);
  font-size:1.8rem;
  line-height:1.2;
}

.product-detail-description .product__description__content h2:not(:first-child) {
  margin-top:4.4rem;
}

.product-detail-description .product__description__content p {
  margin:0;
  font-size:1.8rem;
  line-height:1.6;
}

.product-detail-description .product__description__content p+p {
  margin-top:1.6em;
}

.product-detail-description .product__description-inline {
  display:none;
}

#md-more-detail-overlay::after {
  content:'';
  display:block;
  margin-top:1px;
  width:100%;
  height:1px;
  background:#000;
}

details.menu-drawer-container[open]~main #md-more-detail-overlay {
  display:none!important;
}

body.overflow-hidden #md-more-detail-overlay {
  display:none!important;
}

body.body-description-open {
  overflow:hidden;
}

@media screen and (max-width:749px) {
  .product-detail-description .product__description--logo {
    display:none!important;
    transform:translateX(0.14rem) translateY(0.55rem) scale(1.045);
    transform-origin:left center;
  }

  .product-detail-description .product__description--close .icon-close {
    width:100%;
    height:100%;
    transform:translateY(10px);
  }

  .product-detail-description--btn,#md-more-detail-overlay {
    text-decoration:none;
    color:#313333;
  }

  .product-detail-description--btn::after,#md-more-detail-overlay::after {
    background-color:currentColor;
  }

  .product-detail-gallery__frame {
    position:relative;
    width:100%;
    overflow:hidden;
    height:100svh;
    height:100dvh;
  }

  .product-detail-gallery__move {
    height:100%;
    display:flex;
    align-items:center;
  }

  .product-detail-gallery--item {
    height:100%;
  }

  .product-detail-gallery--item img {
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
  }

  .product-detail-description.md--hidden-on-mobile {
    display:none!important;
  }

  body.body-description-open #md-more-detail-overlay {
    display:none!important;
  }

  body.body-description-open .product-detail-description .product__description {
    display:block!important;
  }

  .product-detail-description .product__description__content {
    opacity:0;
    transform:translateY(12px);
    will-change:opacity,transform;
  }

  body.body-description-open .product-detail-description .product__description__content {
    animation:mdDescIn 520ms ease-out 600ms both;
  }

  body.body-description-open {
    position:fixed;
    top:0;
    left:0;
    right:0;
    width:100%;
    height:100dvh;
    height:100svh;
    overflow:hidden;
    touch-action:none;
  }

  #md-more-detail-overlay {
    position:absolute;
    left:max(16px,env(safe-area-inset-left))!important;
    bottom:24%!important;
    z-index:2147483647;
    background:none;
    border:none;
    padding:0;
    margin:0;
    cursor:pointer;
    font-family:var(--font-en-family);
    font-size:1.8rem;
    line-height:1.2;
    color:#313333;
    pointer-events:auto;
  }

  .product-detail-description .product__description {
    inset:0;
    width:100%;
    height:100vh;
    height:100svh;
    height:100dvh;
    min-height:100vh;
    min-height:100svh;
    min-height:100dvh;
    height:calc(var(--vh,1vh) * 100);
    min-height:calc(var(--vh,1vh) * 100);
    z-index:1000;
    overscroll-behavior:contain;
  }

  .product-detail-description .product__description__frame {
    height:100%;
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    padding-bottom:env(safe-area-inset-bottom);
  }

  .product-detail-description .product__description__hd {
    padding-top:env(safe-area-inset-top);
    height:0px;
  }

  .product-detail-description .product__description__content {
    padding:2rem 0 calc(10rem + env(safe-area-inset-bottom));
  }

  .product-detail-sales_copy {
    margin:0;
    color:#666666;
    font-size:1.3rem;
    line-height:1.6;
    margin-top:6rem;
    margin-left:-0.1rem;
    letter-spacing:0.015rem;
  }

  .product-detail-content {
    padding:0 2.5rem 0;
  }

  .product-detail .product__title h1 {
    margin:0;
    font-family:游明朝, "Yu Mincho", YuMincho, "Noto Serif JP", serif!important;
    font-size:2.2rem;
    line-height:1.2;
    letter-spacing: 0.015rem;
  }

  .product-detail-description .product__description__content h2 {
    margin:0 0 1.5rem;
    font-family:"Hiragino Kaku Gothic Pro","YuGothic","MS Gothic","Meiryo",sans-serif;
    font-size:1.6rem;
    line-height:1.2;
    letter-spacing:0.04rem;
    font-weight:400;
  }

  .product-detail-description .product__description__content h2:not(:first-child) {
    margin-top:4.4rem;
  }

  .product-detail-description .product__description__content p {
    margin:0;
    color:#666;
    font-family:游明朝体,"Yu Mincho",YuMincho,"Noto Serif JP",serif;
    font-size:1.6rem;
    line-height: 1.8;
    letter-spacing: 0.015rem;
  }

  .product-detail-description .product__description__content p+p {
    margin-top:1.6em;
  }

  .product-detail-gallery__frame {
    position:relative!important;
  }

  .product-detail-variant {
    margin-top:2rem;
  }

  #md-more-detail-overlay {
    position:absolute!important;
    left:max(25px,env(safe-area-inset-left))!important;
    bottom:6%!important;
    z-index:2147483647!important;
  }

  .product-detail-description.md--hidden-on-mobile,.product-detail-description .product-detail-description--btn {
    display:none!important;
  }

  html[data-template="product"] .product-detail-gallery__frame,html[data-template="product"] .product-detail-description .product__description {
    height:100svh!important;
    min-height:100svh!important;
  }

  html[data-template="product"] .product-detail-gallery__item {
    height:100%!important;
  }

  html[data-template="product"] .product-detail-gallery__item img {
    width:100%;
    height:100%;
    object-fit:contain;
    transform:none!important;
    scale:1!important;
    animation:none!important;
    transition:none!important;
  }

  .product-detail-collections {
    margin-bottom:0.2rem!important;
  }

  .product-detail-collections>a {
    display:inline-block;
    font-family:var(--font-gothic-family,var(--font-body-family))!important;
    font-size:1.0rem!important;
    font-weight:400!important;
    color:rgb(var(--color-foreground))!important;
    transform:translateY(4.5rem);
    text-decoration:none;
    letter-spacing:.02em;
  }

  .product-detail-variant .form__label {
    margin-bottom:.2rem!important;
    font-size:1.3rem;
    line-height:1.2;
    font-weight:600;
    transform:translateY(0.1rem);
  }

  .product-detail-variant .select {
    height:20px!important;
    min-height:20px!important;
    line-height:20px!important;
  }

  .product-detail-variant .select .select__select {
    height:20px!important;
    min-height:20px!important;
    line-height:20px!important;
    padding-top:0!important;
    padding-bottom:0!important;
  }

  .product-detail-variant .select::before,.product-detail-variant .select::after {
    height:20px!important;
  }

  .product-detail-variant .select .icon-caret {
    top:50%;
    transform:translateY(-50%);
  }

  body.body-description-open .product-detail-description .product__description {
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    width:100vw!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    background:#ffffff!important;
    z-index:2147483647!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch;
  }

  body.body-description-open .product-detail-description .product__description__frame,body.body-description-open .product-detail-description .product__description__content {
    height:auto!important;
    min-height:auto!important;
    max-height:none!important;
  }

  body.body-description-open .shopify-section-header,body.body-description-open .header-wrapper {
    display:none!important;
  }

  .product-detail .product__description__hd {
    height:0px;
  }

  .product-detail-description .product__description--close svg,.product-detail-description .product__description--close .icon,.product-detail-description .product__description--close .icon-close {
    display:none!important;
  }

  .product-detail-description .product__description--close::before {
    content:none!important;
  }

  .product-detail-description .product__description--close .visually-hidden {
    position:static!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    clip:auto!important;
    clip-path:none!important;
    white-space:nowrap!important;
    display:inline!important;
  }

  .product-detail-description .product__description--close {
    position:fixed!important;
    left:50%!important;
    bottom:calc(env(safe-area-inset-bottom) + 12px)!important;
    transform:translate(-50%,15rem)!important;
    z-index:2147483647!important;
    width:105px!important;
    max-width:calc(100vw - 32px)!important;
    height:40px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:10px 12px!important;
    border-radius:999px!important;
    border:0!important;
    box-shadow:none!important;
    background:rgba(0,0,0,0.65)!important;
    color:#fff!important;
    font-family:system-ui,-apple-system,sans-serif!important;
    font-size:12px!important;
    font-weight:600!important;
    letter-spacing:0.02em!important;
    line-height:1!important;
    -webkit-backdrop-filter:blur(8px)!important;
    backdrop-filter:blur(8px)!important;
    cursor:pointer!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }

  .product-detail-description .product__description__content {
    padding-top:0rem!important;
    padding-bottom:calc(5rem + 44px + env(safe-area-inset-bottom))!important;
  }

  .product-detail-description .product__description__content h1:first-child {
    display:none;
  }

}

@keyframes mdDescIn {
  to {
    opacity:1;
    transform:translateY(0);
  }

}

@media (prefers-reduced-motion:reduce) {
  .product-detail-description .product__description__content {
    opacity:1;
    transform:none;
    animation:none!important;
  }

}

@supports (-webkit-touch-callout:none) {
  .product-detail-description .product__description .product-detail-description .product__description__frame {
    height:-webkit-fill-available;
    min-height:-webkit-fill-available;
  }

}

@media screen and (min-width:750px) {
  #md-more-detail-overlay {
    display:none!important;
  }

  .product-detail {
    display:flex;
    flex-flow:row-reverse;
  }

  .product-detail-media {
    width:50%;
  }

  .product-detail-content {
    margin:0 auto;
    padding:10rem 5rem;
    width:100%;
    max-width:calc(32.5rem + 10rem);
  }

  .product-detail-media+.product-detail-content {
    padding:0 5rem 14rem 8.4vw;
    width:50%;
    max-width:calc(33rem + 5rem + 8.4vw);
  }

  .product-detail-content .product__column-sticky {
    position:sticky!important;
    top:10rem!important;
    align-self:flex-start!important;
  }

  .product-detail-content--wrap {
    padding-top:10rem;
  }

  .product-detail .product__title {
    margin-top:1.6rem;
  }

  .product-detail .product__title h1 {
    font-size:2.4rem;
    letter-spacing: 0.015rem;
  }

  .product-detail-sales_copy {
    margin-top:1.5rem;
  }

  .product-detail-variant {
    margin-top:3.8rem;
  }

  .product-detail-buy {
    margin-top:1.5rem;
  }

  .product-detail-description {
    margin-top:5.5rem;
  }

  .product-detail-description .product__description__hd {
    margin:0 auto;
    padding:0 6rem;
    height:var(--page-header-height-desktop);
  }

  .product-detail-description .product__description--close {
    right:5rem;
  }

  .product-detail-description .product__description--logo {
    width:27rem;
    height:3.5rem;
  }

  .product-detail-description .product__description__content {
    margin:0 auto;
    padding:2rem 5rem 3rem;
    max-width:60rem;
  }

  .product-detail-description .product__description__content h2 {
    margin:0 0 2rem;
    line-height:1.2;
    letter-spacing:0.2rem;
  }

  .product-detail-description .product__description__content h2:not(:first-child) {
    margin-top:5rem;
  }

  .product-detail-description .product__description__content p {
    margin:0 0 5rem;
    color:#888888;
    font-family:Hiragino Kaku Gothic Pro,YuGothic,MS Gothic,Meiryo,sans-serif;
    font-size:1.6rem;
    line-height:2;
    letter-spacing:0.2rem;
  }

  .product-detail-description .product__description__content p+p {
    margin-top:1.6em;
  }

  .product__sticky-scroll {
    height:auto!important;
    max-height:calc(100vh - 20rem)!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
    transform:none!important;
    transition:none!important;
    will-change:auto!important;
  }

  .product__sticky-scroll::-webkit-scrollbar {
    display:none!important;
  }

  .product-detail-description .product__description-inline {
    margin-top:1.5rem;
    display:none;
  }

  .product-detail-description.is-inline-open .product__description-inline {
    display:block!important;
    max-height:none!important;
    overflow:visible!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }

  .product-detail-description.is-inline-open .product__description-inline__content {
    display:block!important;
    max-height:none!important;
    overflow:visible!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }

  .product-detail-description .product__description-inline__content h1:first-child {
    display:none!important;
  }

  .product-detail-description .product__description-inline__content h2 {
    font-family:  "DM Sans", "Helvetica Neue", Arial, sans-serif!important;
    font-size: 1.4rem !important;
    line-height: 1.5 !important;
    font-weight: 700 !important;
    letter-spacing: 0.015rem !important;
    color: #555 !important;
    margin: 5rem 0 1.0rem !important;
  }
  }

  .product-detail-description .product__description-inline__content h2:not(:first-child) {
    margin-top:4.4rem;
  }

  .product-detail-description .product__description-inline__content p {
    margin:0;
    color:#666;
    font-family:游明朝体,"Yu Mincho",YuMincho,"Noto Serif JP",serif;
    font-size:1.6rem;
    line-height:2;
    letter-spacing:-0.02rem;
  }

  .product-detail-description .product__description-inline__content p+p {
    margin-top:1.6em;
  }

  .product-detail-description.is-inline-open .product__description {
    display:none!important;
  }

  .product-detail-collections>a {
    font-size:1.1rem;
    font-weight:400;
    letter-spacing:0.06em;
    line-height:1.2;
    color:rgb(var(--color-foreground));
    text-decoration:none;
  }

  .product-detail-description--btn {
    background:none!important;
    border:0!important;
    box-shadow:none!important;
    border-radius:0!important;
    padding:0!important;
    -webkit-appearance:none;
    appearance:none;
    font:inherit;
    color:#313333!important;
    text-decoration:none!important;
    letter-spacing:0.04rem;
    display:inline-block;
    font-family:var(--font-en-family);
    font-size:1.8rem;
    line-height:1.2;
    position:relative;
    left:auto;
    bottom:auto;
    cursor:pointer;
  }

  .product-detail-description--btn::after {
    content:'';
    position:absolute;
    left:0;
    bottom:-1px;
    width:100%;
    height:1px;
    background-color:currentColor;
    transform-origin:left center;
    transform:scaleX(1);
    transition:transform 0.18s ease-out;
  }

  .product-detail-description--btn:hover::after,.product-detail-description--btn:focus-visible::after {
    transform:scaleX(1);
  }

  body.body-description-inline-open .product-detail-media {
    height:100vh;
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-width:none;
  }

  body.body-description-inline-open .product-detail-media::-webkit-scrollbar {
    display:none;
  }

  .footer {
    margin-top:0!important;
  }

}

@media screen and (min-width:750px) {
  html[data-template="product"] .product-detail-description.is-inline-open .product__description-inline {
    display:block!important;
    max-height:none!important;
    overflow:visible!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
    animation:ssDetailInlineIn .75s cubic-bezier(.22,.61,.36,1) both;
  }

  html[data-template="product"] .product-detail-description.is-inline-open .product__description-inline__content {
    max-height:none!important;
    overflow:visible!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }

  html[data-template="product"] .product-detail-description.is-inline-open .product__description-inline__content h1:first-child {
    display:none!important;
  }

}

@keyframes ssDetailInlineIn {
  0% {
    opacity:0;
    transform:translate3d(0,120px,0);
  }

  100% {
    opacity:1;
    transform:translate3d(0,0,0);
  }

}

@media screen and (min-width:750px) {
  html[data-template="product"] .shopify-section-header-sticky,html[data-template="product"] .section-header,html[data-template="product"] .header-wrapper {
    transition:transform .55s cubic-bezier(.22,.61,.36,1), opacity .35s ease;
    will-change:transform, opacity;
  }

  html[data-template="product"] body.ss-product-detail-shifted .shopify-section-header-sticky,html[data-template="product"] body.ss-product-detail-shifted .section-header,html[data-template="product"] body.ss-product-detail-shifted .header-wrapper {
    transform:translateY(-120%)!important;
    opacity:0!important;
    pointer-events:none!important;
  }

}

@media screen and (min-width:750px) {
  html[data-template="product"] .product-detail-media {
    height:100vh;
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-width:none;
  }

  html[data-template="product"] .product-detail-media::-webkit-scrollbar {
    display:none;
  }

}

@media screen and (min-width:750px) {
  html[data-template="product"] .product-detail-media {
    height:100vh!important;
    overflow:hidden!important;
    position:relative!important;
    touch-action:none!important;
  }

  html[data-template="product"] .product-detail-gallery,html[data-template="product"] .product-detail-gallery__frame {
    height:auto!important;
    overflow:visible!important;
  }

  html[data-template="product"] .product-detail-gallery__move {
    display:block!important;
    will-change:transform;
    touch-action:none!important;
  }

  html[data-template="product"] .product-detail-gallery--item {
    height:auto!important;
  }

  html[data-template="product"] .product-detail-gallery--item img {
    display:block;
    width:100%;
    height:auto;
  }

}

@media screen and (min-width:750px) {
  .ss-product-detail-inline-close {
    appearance:none;
    -webkit-appearance:none;
    display:inline-block;
    margin:6rem 0 0;
    padding:0;
    background:none;
    border:0;
    border-radius:0;
    box-shadow:none;
    color:#333;
    font-family: 游明朝体, "Yu Mincho", YuMincho, "Noto Serif JP", serif !important;
    font-size:1.4rem;
    line-height:1.4;
    letter-spacing:-0.1rem;
    text-decoration:underline;
    text-decoration-color:#999;
    text-underline-offset:0.5rem;
    text-decoration-thickness:0.1rem;
    cursor:pointer;
  }

  .ss-product-detail-inline-close:hover,.ss-product-detail-inline-close:focus-visible {
    opacity:.65;
  }

}

@media screen and (max-width:749px) {
  .ss-product-detail-mobile-close {
    appearance:none;
    -webkit-appearance:none;
    display:inline-block;
    margin:6rem 0 0;
    padding:0;
    background:none;
    border:0;
    border-radius:0;
    box-shadow:none;
    color:#333;
    font-family: 游明朝体, "Yu Mincho", YuMincho, "Noto Serif JP", serif !important;
    font-size:1.4rem;
    line-height:1.4;
    letter-spacing:-0.1rem;
    text-decoration:underline;
    text-decoration-color:#999;
    text-underline-offset:0.5rem;
    text-decoration-thickness:0.1rem;
    cursor:pointer;
  }

  .ss-product-detail-mobile-close:hover,.ss-product-detail-mobile-close:focus-visible {
    opacity:.65;
  }

}

@media screen and (max-width:749px) {
  html[data-template="product"] .product-detail-gallery__frame {
    touch-action:pan-y!important;
    cursor:grab;
  }

  html[data-template="product"] .product-detail-gallery__frame:active {
    cursor:grabbing;
  }

  html[data-template="product"] .product-detail-gallery__move {
    touch-action:pan-y!important;
    cursor:grab;
    will-change:transform;
  }

  html[data-template="product"] .product-detail-gallery__move:active {
    cursor:grabbing;
  }

  html[data-template="product"] .product-detail-gallery__move img {
    user-select:none;
    -webkit-user-select:none;
    -webkit-user-drag:none;
    pointer-events:none;
  }

}

/* Product detail: remove mobile gallery dots */html[data-template="product"] .product-detail-gallery__thumb {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* SS product mobile gallery: stable native horizontal scroll + snap */@media screen and (max-width:749px) {
  html[data-template="product"] .product-detail-gallery__frame {
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    scroll-snap-type:x mandatory!important;
    touch-action:pan-x pan-y!important;
    overscroll-behavior-x:contain!important;
    scrollbar-width:none!important;
  }

  html[data-template="product"] .product-detail-gallery__frame::-webkit-scrollbar {
    display:none!important;
  }

  html[data-template="product"] .product-detail-gallery__move {
    display:flex!important;
    transform:none!important;
    transition:none!important;
    will-change:auto!important;
    touch-action:auto!important;
  }

  html[data-template="product"] .product-detail-gallery--item {
    flex:0 0 100vw!important;
    width:100vw!important;
    max-width:100vw!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always!important;
  }

  html[data-template="product"] .product-detail-gallery--item img {
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
  }

}

/* SS product desktop gallery restore: keep native mobile rules from leaking into desktop */@media screen and (min-width:750px) {
  html[data-template="product"] .product-detail-gallery__frame {
    overflow:visible!important;
    height:auto!important;
    min-height:0!important;
    scroll-snap-type:none!important;
  }

  html[data-template="product"] .product-detail-gallery__move {
    display:block!important;
    width:auto!important;
    max-width:none!important;
  }

  html[data-template="product"] .product-detail-gallery--item {
    flex:none!important;
    width:auto!important;
    max-width:none!important;
    scroll-snap-align:none!important;
  }

  html[data-template="product"] .product-detail-gallery--item img {
    display:block!important;
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
    object-position:center center!important;
  }

}

@media screen and (max-width:749px) {
  .product-detail-gallery__frame {
    cursor:grab;
  }

  .product-detail-gallery__frame.ss-product-gallery-mouse-dragging {
    cursor:grabbing;
  }

  .product-detail-gallery__frame img {
    -webkit-user-drag:none;
    user-select:none;
  }

}

/* SS more detail v6: anchor button to product image area without breaking gallery scroll */@media screen and (max-width:749px) {
  html[data-template="product"] .product-detail-media {
    position:relative!important;
  }

  html[data-template="product"] #md-more-detail-overlay.ss-md-overlay-anchor {
    display:block!important;
    visibility:visible!important;
    position:absolute!important;
    top:auto!important;
    right:auto!important;
    left:max(25px,env(safe-area-inset-left))!important;
    bottom:5%!important;
    z-index:70!important;
    background:none!important;
    border:0!important;
    box-shadow:none!important;
    margin:0!important;
    padding:0!important;
    appearance:none!important;
    -webkit-appearance:none!important;
    font-family:var(--font-en-family)!important;
    font-size:1.8rem!important;
    line-height:1.2!important;
    letter-spacing:0.04rem!important;
    color:#313333!important;
    text-decoration:none!important;
    pointer-events:auto!important;
    cursor:pointer!important;
    transform:none!important;
  }

  html[data-template="product"] #md-more-detail-overlay.ss-md-overlay-anchor::after {
    content:''!important;
    display:block!important;
    margin-top:1px!important;
    width:100%!important;
    height:1px!important;
    background:#313333!important;
  }

  html[data-template="product"] body.body-description-open #md-more-detail-overlay.ss-md-overlay-anchor,html[data-template="product"] body.body-description-inline-open #md-more-detail-overlay.ss-md-overlay-anchor,html[data-template="product"] body.overflow-hidden #md-more-detail-overlay.ss-md-overlay-anchor,html[data-template="product"].cart-notification-open #md-more-detail-overlay.ss-md-overlay-anchor,html[data-template="product"] details.menu-drawer-container[open] ~ main #md-more-detail-overlay.ss-md-overlay-anchor {
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

}

@media screen and (min-width:990px) {
  html[data-template="product"] #md-more-detail-overlay.ss-md-overlay-anchor {
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

}

html[data-template="product"] body:not(.body-description-open) .product-detail-description .product__description {
  display:none!important;
  pointer-events:none!important;
}

html[data-template="product"] body:not(.body-description-inline-open) .product-detail-description .product__description-inline {
  display:none!important;
  pointer-events:none!important;
}

/* SS product mobile gallery editor controls */@media screen and (max-width:749px) {
  html[data-template="product"] .product-detail {
    --ss-product-mobile-gallery-height:100svh;
    --ss-product-mobile-image-scale:1;
  }

  html[data-template="product"] .product-detail-media {
    height:var(--ss-product-mobile-gallery-height)!important;
    min-height:var(--ss-product-mobile-gallery-height)!important;
    overflow:visible!important;
  }

  html[data-template="product"] .product-detail-gallery,html[data-template="product"] .product-detail-gallery__frame {
    height:var(--ss-product-mobile-gallery-height)!important;
    min-height:var(--ss-product-mobile-gallery-height)!important;
  }

  html[data-template="product"] .product-detail-gallery--item {
    height:var(--ss-product-mobile-gallery-height)!important;
    min-height:var(--ss-product-mobile-gallery-height)!important;
    overflow:hidden!important;
  }

  html[data-template="product"] .product-detail-gallery--item img {
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
    transform:scale(var(--ss-product-mobile-image-scale))!important;
    transform-origin:center center!important;
  }

}

@media screen and (max-width:749px) {
  html[data-template="product"] .product-detail-media + .product-detail-content {
    margin-top:-2rem!important;
  }

}

@media screen and (max-width:749px) {
  .product__description--close {
    left:50%!important;
    bottom:calc(env(safe-area-inset-bottom) + 2.4rem)!important;
    transform:translateX(-50%)!important;
  }

}

@media screen and (max-width:749px) {
  html[data-template="product"] body.body-description-open .product__description--close,html[data-template="product"] .product__description.is-active .product__description--close,html[data-template="product"] .product__description--close {
    position:fixed!important;
    left:50%!important;
    right:auto!important;
    top:auto!important;
    bottom:calc(env(safe-area-inset-bottom) + 83.5rem)!important;
    transform:translateX(-50%)!important;
    margin:0!important;
  }

}

html[data-template="product"] .product__description--close {
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* SS Mac mobile mouse click v3: keep clickable gallery without hand/grab cursor */@media screen and (max-width:749px) and (hover:hover) and (pointer:fine) {
  html[data-template="product"] .product-detail-gallery,html[data-template="product"] .product-detail-gallery *,html[data-template="product"] .product-detail-gallery__frame,html[data-template="product"] .product-detail-gallery__frame:active,html[data-template="product"] .product-detail-gallery__frame.ss-product-gallery-mouse-dragging,html[data-template="product"] .product-detail-gallery__move,html[data-template="product"] .product-detail-gallery__move:active,html[data-template="product"] .product-detail-gallery__item,html[data-template="product"] .product-detail-gallery--item,html[data-template="product"] .product-detail-gallery img {
    cursor:default!important;
  }

}

/* SS 2026-06-02: mobile more detail stable version / heading + wider text only */@media screen and (max-width:749px) {
  html[data-template="product"] body.body-description-open .product-detail-description .product__description__content {
    margin-left:4.8rem!important;
    margin-right:4.8rem!important;
    padding-top:3.8rem!important;
    opacity:1!important;
    transform:none!important;
    animation:none!important;
    will-change:auto!important;
  }

  html[data-template="product"] body.body-description-open .product-detail-description .product__description__content h1:first-child {
    display:block!important;
    margin: 4rem 0 -0.2rem!important;
    font-family: 游明朝体, "Yu Mincho", YuMincho, "Noto Serif JP", serif !important;
    font-size: 2.6rem!important;
    line-height:1.55!important;
    font-weight:400!important;
    letter-spacing: -0.01rem!important;
    color:#313333!important;
  }

  html[data-template="product"] body.body-description-open .product-detail-description .product__description__content h1:first-child + h2 {
    margin-top:0!important;
  }

}

/* SS 2026-06-02: mobile more detail text-only slow reveal + reverse close */@media screen and (max-width:749px) {
  html[data-template="product"] body.body-description-open:not(.body-description-text-closing) .product-detail-description .product__description__content > * {
    opacity:0;
    transform:translateY(8px);
    animation:ssMdTextOnlyRevealSlow 720ms cubic-bezier(.22,.61,.36,1) 180ms both;
    will-change:opacity,transform;
  }

  html[data-template="product"] body.body-description-open:not(.body-description-text-closing) .product-detail-description .product__description__content > *:nth-child(2) {
    animation-delay:240ms;
  }

  html[data-template="product"] body.body-description-open:not(.body-description-text-closing) .product-detail-description .product__description__content > *:nth-child(3) {
    animation-delay:300ms;
  }

  html[data-template="product"] body.body-description-open:not(.body-description-text-closing) .product-detail-description .product__description__content > *:nth-child(n+4) {
    animation-delay:360ms;
  }

  html[data-template="product"] body.body-description-open.body-description-text-closing .product-detail-description .product__description__content > * {
    opacity:1;
    transform:translateY(0);
    animation:ssMdTextOnlyHideSlow 420ms cubic-bezier(.55,.06,.68,.19) 0ms both;
    will-change:opacity,transform;
  }

  html[data-template="product"] body.body-description-open.body-description-text-closing .product-detail-description .product__description__content > *:nth-child(2) {
    animation-delay:30ms;
  }

  html[data-template="product"] body.body-description-open.body-description-text-closing .product-detail-description .product__description__content > *:nth-child(3) {
    animation-delay:60ms;
  }

  html[data-template="product"] body.body-description-open.body-description-text-closing .product-detail-description .product__description__content > *:nth-child(n+4) {
    animation-delay:90ms;
  }

}

@media screen and (max-width: 749px) {
  html[data-template="product"] body.body-description-open .product-detail-description .product__description__content h2 {
    font-family: "DM Sans", "Helvetica Neue", Arial, sans-serif!important;
    font-size: 1.4rem !important;
    line-height: 1.5 !important;
    font-weight: 700 !important;
    letter-spacing: 0.015rem !important;
    color: #555 !important;
    margin: 4.8rem 0 1.0rem !important;
  }
}


@keyframes ssMdTextOnlyRevealSlow {
  from {
    opacity:0;
    transform:translateY(8px);
  }

  to {
    opacity:1;
    transform:translateY(0);
  }

}

@keyframes ssMdTextOnlyHideSlow {
  from {
    opacity:1;
    transform:translateY(0);
  }

  to {
    opacity:0;
    transform:translateY(8px);
  }

}

@media (prefers-reduced-motion:reduce) {
  html[data-template="product"] body.body-description-open .product-detail-description .product__description__content > * {
    opacity:1!important;
    transform:none!important;
    animation:none!important;
    will-change:auto!important;
  }

}

/* SS 2026-06-02: Mac/PC mobile-width more detail full viewport fix */@media screen and (max-width:749px) and (hover:hover) and (pointer:fine) {
  body.device-click.body-description-open .product-detail-description {
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    width:100vw!important;
    height:100vh!important;
    height:100dvh!important;
    min-height:100vh!important;
    min-height:100dvh!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    background:#ffffff!important;
    z-index:2147483647!important;
    overflow:hidden!important;
    transform:none!important;
  }

  body.device-click.body-description-open .product-detail-description .product__description {
    position:absolute!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    width:100vw!important;
    height:100vh!important;
    height:100dvh!important;
    min-height:100vh!important;
    min-height:100dvh!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    background:#ffffff!important;
    z-index:2147483647!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    transform:none!important;
  }

  body.device-click.body-description-open .product-detail-description .product__description__frame {
    min-height:100vh!important;
    min-height:100dvh!important;
    height:auto!important;
    max-height:none!important;
  }

  body.device-click.body-description-open .product-detail-description .product__description--close {
    z-index:2147483647!important;
  }

}

@media screen and (min-width:750px) {
  html[data-template="product"] .product-detail-media + .product-detail-content {
    padding-left:0!important;
    padding-right:0!important;
    max-width:none!important;
    display:flex!important;
    justify-content:center!important;
  }

  html[data-template="product"] .product-detail-media + .product-detail-content > .product__column-sticky {
    width:42.5rem!important;
    max-width:calc(100% - 10rem)!important;
  }

}

@media screen and (min-width:750px) {
  html[data-template="product"] .product-detail-media + .product-detail-content {
    padding-left:0!important;
    padding-right:0!important;
    max-width:none!important;
    display:grid!important;
    grid-template-columns:minmax(60px,1fr) minmax(0,42.5rem) minmax(5rem,1fr)!important;
    justify-content:stretch!important;
    align-items:start!important;
  }

  html[data-template="product"] .product-detail-media + .product-detail-content > .product__column-sticky {
    grid-column:2!important;
    width:100%!important;
    max-width:none!important;
  }

}

@media screen and (max-width:749px) {
  html[data-template="product"] button#md-more-detail-overlay.product-detail-description--btn.ss-md-overlay-anchor {
    position: relative !important;
    font-family: "Helvetica Neue", Arial, sans-serif !important;
    font-size: 1.7rem !important;
    line-height: 1.4 !important;
    font-weight: 400 !important;
    letter-spacing: 0.08rem !important;
    color: #222222 !important;
    text-decoration: none !important;
    border-bottom: none !important;
    padding-bottom: 0 !important;
    transform: translateY(-3rem) !important;
    box-shadow: none !important;
    background-image: none !important;
  }
  html[data-template="product"] button#md-more-detail-overlay.product-detail-description--btn.ss-md-overlay-anchor::before {
    display: none !important;
    content: none !important;
  }
  html[data-template="product"] button#md-more-detail-overlay.product-detail-description--btn.ss-md-overlay-anchor::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: -0.12em !important;
    height: 1px !important;
    background: #222222 !important;
    display: block !important;
  }
}

@media screen and (min-width:750px) {
  html[data-template="product"] .product-detail-content button.product-detail-description--btn,
  html[data-template="product"] .product-detail-content .product-detail-description--btn,
  html[data-template="product"] .product-detail-content button[class*="description"],
  html[data-template="product"] .product-detail-content a[class*="description"] {
    position: relative !important;
    font-family: "Helvetica Neue", Arial, sans-serif !important;
    font-size: 1.7rem !important;
    line-height: 1.4 !important;
    font-weight: 400 !important;
    letter-spacing: 0.08rem !important;
    color: #222222 !important;
    transform: translateY(-1rem) !important;
    text-decoration: none !important;
    border-bottom: none !important;
    padding-bottom: 0 !important;
    box-shadow: none !important;
    background-image: none !important;
  }
  html[data-template="product"] .product-detail-content button.product-detail-description--btn::after,
  html[data-template="product"] .product-detail-content .product-detail-description--btn::after,
  html[data-template="product"] .product-detail-content button[class*="description"]::after,
  html[data-template="product"] .product-detail-content a[class*="description"]::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: -0.12em !important;
    height: 1px !important;
    background: #222222 !important;
    display: block !important;
  }
}