{
  "version": 3,
  "sources": ["/cdn/shop/t/3/assets/custom.js?custom_version=20260522-ga4-samplebook"],
  "sourcesContent": ["(() => {\n  const redirects = {\n    '/collections/0405': '/products/0405',\n    '/collections/1290': '/products/1290',\n    '/collections/2000-1': '/products/2000-1',\n    '/collections/2000-2': '/products/2000-2',\n    '/collections/2000-3': '/products/2000-3',\n    '/collections/2000-8': '/products/2000-8',\n    '/collections/2000-9': '/products/2000-9',\n    '/collections/2002': '/products/2002',\n    '/collections/3000': '/products/3000',\n    '/collections/3250': '/products/3250',\n    '/collections/3350': '/products/3350',\n    '/collections/4300': '/products/4300',\n    '/collections/4500-quilt': '/products/4500-quilt',\n    '/collections/5050': '/products/5050',\n    '/collections/5311': '/products/5311',\n    '/collections/6526-101': '/products/6526-101',\n    '/collections/6526-104': '/products/6526-104',\n    '/collections/6600': '/products/6600',\n    '/collections/6610': '/products/6610',\n    '/collections/6733': '/products/6733',\n    '/collections/7450': '/products/7450',\n    '/collections/7550': '/products/7550',\n    '/collections/7650': '/products/7650',\n    '/collections/8200': '/products/8200',\n    '/collections/8210': '/products/8210',\n    '/collections/8220': '/products/8220',\n    '/collections/8300': '/products/8300',\n    '/collections/8500': '/products/8500',\n    '/collections/8660': '/products/8660',\n    '/collections/9000-1': '/products/9000-1',\n    '/collections/9000-4': '/products/9000-4',\n    '/collections/9000-5': '/products/9000-5',\n    '/collections/kf2500': '/products/kf2500',\n    '/collections/tc8660': '/products/tc8660',\n    '/blogs/journal/boys-girls-clothes-work-examples': '/blogs/journal/sewing-book-boys-girls-clothes-work-examples',\n    '/blogs/journal/boys-girls-clothes-book-fabric-examples': '/blogs/journal/sewing-book-boys-girls-clothes-work-examples',\n    '/blogs/journal/boys-girls-clothes-fabric-examples': '/blogs/journal/sewing-book-boys-girls-clothes-work-examples',\n    '/blogs/journal/sewing-book-boys-girls-fabric-examples': '/blogs/journal/sewing-book-boys-girls-clothes-work-examples',\n    '/blogs/journal/small-kids-praised-clothes-fabric-examples': '/blogs/journal/sewing-book-small-kids-praised-clothes-work-examples',\n    '/blogs/journal/small-kids-handmade-clothes-fabric-examples': '/blogs/journal/sewing-book-small-kids-handmade-clothes-work-examples',\n    '/blogs/journal/kids-clothes-lesson-book-fabric-examples': '/blogs/journal/sewing-book-kids-clothes-lesson-work-examples',\n    '/blogs/journal/mama-kids-favorite-fabric-examples': '/blogs/journal/sewing-book-mama-kids-favorite-work-examples',\n    '/blogs/journal/girls-everyday-clothes-series-fabric-examples': '/blogs/journal/sewing-book-girls-everyday-clothes-series-work-examples',\n    '/blogs/journal/girls-everyday-clothes-fabric-examples': '/blogs/journal/sewing-book-girls-everyday-clothes-series-work-examples',\n    '/blogs/journal/girls-everyday-clothes-revised-fabric-examples': '/blogs/journal/sewing-book-girls-everyday-clothes-series-work-examples',\n    '/blogs/journal/kids-kimono-book-fabric-examples': '/blogs/journal/sewing-book-kids-kimono-work-examples',\n    '/blogs/journal/girls-boys-everyday-clothes-fabric-examples': '/blogs/journal/sewing-book-girls-boys-everyday-clothes-work-examples',\n    '/blogs/journal/sweet-clothes-series-fabric-examples': '/blogs/journal/sewing-book-sweet-clothes-series-work-examples',\n    '/blogs/journal/doll-kids-handmade-clothes-fabric-examples': '/blogs/journal/sewing-book-doll-kids-handmade-clothes-work-examples',\n    '/blogs/journal/cute-shape-kids-clothes-fabric-examples': '/blogs/journal/sewing-book-cute-shape-kids-clothes-work-examples',\n    '/blogs/journal/easy-neat-looking-clothes-fabric-examples': '/blogs/journal/sewing-book-easy-neat-looking-clothes-work-examples',\n    '/blogs/journal/simple-easy-everyday-clothes-fabric-examples': '/blogs/journal/sewing-book-simple-easy-everyday-clothes-work-examples',\n    '/blogs/journal/little-kids-memory-clothes-fabric-examples': '/blogs/journal/sewing-book-little-kids-memory-clothes-work-examples',\n    '/blogs/journal/boys-girls-handmade-gift-fabric-guide': '/blogs/journal/sewing-book-boys-girls-handmade-gift-work-examples',\n    '/blogs/journal/boys-girls-handmade-gift-clothes-work-examples': '/blogs/journal/sewing-book-boys-girls-handmade-gift-work-examples',\n    '/blogs/journal/boys-girls-handmade-gift-clothes-fabric-examples': '/blogs/journal/sewing-book-boys-girls-handmade-gift-work-examples',\n    '/blogs/journal/90-130-kids-clothes-fabric-examples': '/blogs/journal/sewing-book-90-130-kids-clothes-work-examples',\n    '/blogs/journal/haru-kids-clothes-fabric-examples': '/blogs/journal/sewing-book-haru-kids-clothes-work-examples',\n    '/blogs/journal/girls-daily-clothes-fabric-examples': '/blogs/journal/sewing-book-girls-daily-clothes-work-examples',\n    '/blogs/journal/sewing-book-fabric-examples': '/blogs/journal/sewing-book-work-examples',\n  };\n\n  const normalizedPath = window.location.pathname.replace(/\\/$/, '');\n  const target = redirects[normalizedPath];\n  if (!target) return;\n\n  const url = new URL(target, window.location.origin);\n  url.search = window.location.search;\n  window.location.replace(url.toString());\n})();\n\n// product-firstview-cart-order-8300-20260604\n(function () {\n  if (window.__productFirstviewCartOrder8300) return;\n  window.__productFirstviewCartOrder8300 = true;\n  if (window.location.pathname.replace(/\\/$/, \"\") !== \"/products/8300\") return;\n\n  function placeAfter(reference, node) {\n    if (!reference || !node || !reference.parentNode) return;\n    reference.parentNode.insertBefore(node, reference.nextSibling);\n  }\n\n  function fixOrder() {\n    var list = document.querySelector(\"safe-sticky.product-info .product-info__block-list\");\n    if (!list) return;\n\n    var sample = list.querySelector('.product-info__block-item[data-block-type=\"sample-request\"]');\n    var quantity = list.querySelector('.product-info__block-item[data-block-type=\"quantity-selector\"]');\n    var buy = list.querySelector('.product-info__block-item[data-block-type=\"buy-buttons\"]');\n    var roll = list.querySelector('.product-info__block-item[data-block-type=\"roll-ticket\"]');\n\n    if (sample && quantity && buy) {\n      var sampleBeforeBuy = Boolean(sample.compareDocumentPosition(buy) & Node.DOCUMENT_POSITION_FOLLOWING);\n      if (sampleBeforeBuy) {\n        placeAfter(roll || buy, sample);\n      }\n    }\n\n    if (quantity && buy) {\n      quantity.querySelectorAll(\".shipping-badge\").forEach(function (badge) {\n        if (!buy.contains(badge)) {\n          placeAfter(buy.querySelector(\"product-form\") || buy.firstElementChild, badge);\n        }\n      });\n    }\n  }\n\n  function schedule() {\n    fixOrder();\n    [150, 500, 1200, 2500].forEach(function (delay) {\n      window.setTimeout(fixOrder, delay);\n    });\n  }\n\n  if (document.readyState === \"loading\") {\n    document.addEventListener(\"DOMContentLoaded\", schedule, { once: true });\n  } else {\n    schedule();\n  }\n\n  document.addEventListener(\"shopify:section:load\", fixOrder);\n})();\n\n(() => {\n  const onReady = (callback) => {\n    if (document.readyState === 'loading') {\n      document.addEventListener('DOMContentLoaded', callback, { once: true });\n    } else {\n      callback();\n    }\n  };\n\n  const phoneOrderHtml = `\n    <div class=\"product-assisted-order product-assisted-order--runtime\">\n      <p class=\"product-assisted-order__lead\">\u30CD\u30C3\u30C8\u6CE8\u6587\u304C\u4E0D\u5B89\u306A\u65B9\u306F\u3001\u304A\u96FB\u8A71\u3067\u3082\u3054\u6CE8\u6587\u3067\u304D\u307E\u3059\u3002</p>\n      <a class=\"product-assisted-order__phone\" href=\"tel:0795224769\" aria-label=\"\u96FB\u8A71\u3067\u6CE8\u6587\u30FB\u76F8\u8AC7\u3059\u308B 0795-22-4769\">\n        <span>\u96FB\u8A71\u3067\u6CE8\u6587\u30FB\u76F8\u8AC7\u3059\u308B</span>\n        <strong>0795-22-4769</strong>\n      </a>\n      <p class=\"product-assisted-order__note\">\u54C1\u756A\u30FB\u8272\u30FB\u6570\u91CF\u3092\u304A\u4F1D\u3048\u3044\u305F\u3060\u304F\u3068\u30B9\u30E0\u30FC\u30BA\u3067\u3059\u3002\u5E73\u65E510:00-17:00</p>\n    </div>\n  `;\n\n  const ensurePhoneOrderStyles = () => {\n    if (document.getElementById('product-assisted-order-runtime-style')) return;\n\n    const style = document.createElement('style');\n    style.id = 'product-assisted-order-runtime-style';\n    style.textContent = `\n      .product-assisted-order{margin:.75rem 0;padding:14px;border:1px solid rgba(169,85,60,.24);border-radius:8px;background:#fffaf6}\n      .product-assisted-order__lead{margin:0 0 10px;color:#3f352f;font-size:.95rem;font-weight:700;line-height:1.5}\n      .product-assisted-order__phone{display:flex;width:100%;align-items:center;justify-content:center;gap:.45rem;flex-wrap:wrap;padding:12px 14px;border-radius:8px;background:#a9553c;color:#fff;font-weight:800;line-height:1.35;text-align:center;text-decoration:none}\n      .product-assisted-order__phone:hover{color:#fff;opacity:.9}\n      .product-assisted-order__phone strong{color:inherit;font-size:1.05em;white-space:nowrap}\n      .product-assisted-order__note{margin:8px 0 0;color:#6c5b52;font-size:.82rem;line-height:1.45}\n      @media (max-width:699px){.product-assisted-order{padding:14px 12px}.product-assisted-order__phone{padding:14px 12px;font-size:1.02rem}}\n    `;\n    document.head.appendChild(style);\n  };\n\n  const placePhoneOrderCta = () => {\n    if (!/^\\/products\\//.test(window.location.pathname)) return;\n\n    const productInfo = document.querySelector('safe-sticky.product-info');\n    if (!productInfo) return;\n\n    const buyButtons = productInfo.querySelector('.product-info__block-item[data-block-type=\"buy-buttons\"]');\n    if (!buyButtons) return;\n\n    const nextElement = buyButtons.nextElementSibling;\n    if (nextElement?.classList?.contains('product-assisted-order')) return;\n\n    ensurePhoneOrderStyles();\n\n    const currentPhoneBox = productInfo.querySelector('.product-info__block-item[data-block-type=\"contact-button\"] .product-assisted-order');\n    const sourceBox = currentPhoneBox?.cloneNode(true);\n    const phoneBox = sourceBox || new DOMParser().parseFromString(phoneOrderHtml, 'text/html').body.firstElementChild;\n\n    phoneBox.querySelector('.product-assisted-order__chat')?.remove();\n    buyButtons.insertAdjacentElement('afterend', phoneBox);\n\n    if (currentPhoneBox) {\n      const contactBlock = currentPhoneBox.closest('.product-info__block-item[data-block-type=\"contact-button\"]');\n      const chatLink = currentPhoneBox.querySelector('.product-assisted-order__chat');\n      if (contactBlock && chatLink) {\n        chatLink.className = 'tcl-more__btn';\n        contactBlock.replaceChildren(chatLink);\n      }\n    }\n  };\n\n  onReady(() => {\n    placePhoneOrderCta();\n    setTimeout(placePhoneOrderCta, 600);\n  });\n})();\n\n(() => {\n  const onReady = (callback) => {\n    if (document.readyState === 'loading') {\n      document.addEventListener('DOMContentLoaded', callback, { once: true });\n    } else {\n      callback();\n    }\n  };\n\n  const refreshHomepageHybridCarousel = () => {\n    if (window.location.pathname !== '/' && window.location.pathname !== '') return;\n\n    const currentSection = document.querySelector('.section-hybrid-carousel[id^=\"shopify-section-\"]');\n    if (!currentSection || currentSection.querySelector('a[href=\"/blogs/journal/sewing-book-work-examples\"]')) return;\n\n    const sectionId = currentSection.id.replace(/^shopify-section-/, '');\n    const url = new URL(window.location.pathname || '/', window.location.origin);\n    url.searchParams.set('section_id', sectionId);\n    url.searchParams.set('home_carousel_hydrate', Date.now().toString());\n\n    fetch(url.toString(), { credentials: 'same-origin' })\n      .then((response) => (response.ok ? response.text() : ''))\n      .then((html) => {\n        if (\n          !html ||\n          !html.includes('homepage-slider-sewing-book-work-examples-20260602-v2') ||\n          !html.includes('/blogs/journal/sewing-book-work-examples')\n        ) {\n          return;\n        }\n\n        const freshSection = new DOMParser()\n          .parseFromString(html, 'text/html')\n          .querySelector('.section-hybrid-carousel');\n\n        if (!freshSection) return;\n\n        currentSection.replaceWith(freshSection);\n        freshSection.querySelectorAll('script').forEach((script) => {\n          const executable = document.createElement('script');\n          Array.from(script.attributes).forEach((attribute) => {\n            executable.setAttribute(attribute.name, attribute.value);\n          });\n          executable.textContent = script.textContent;\n          document.body.appendChild(executable);\n        });\n      })\n      .catch(() => {});\n  };\n\n  onReady(refreshHomepageHybridCarousel);\n})();\n\n(() => {\n  if (window.location.pathname !== '/pages/cutting-request') return;\n\n  const estimateButtonLabel = '\u7121\u6599\u304A\u898B\u7A4D\u3082\u308A\u3092\u4F9D\u983C\u3059\u308B';\n  const submitLabels = new Set([estimateButtonLabel, 'Submit', 'Sign up', '\u304A\u898B\u7A4D\u3082\u308A\u3092\u4F9D\u983C\u3059\u308B', '\u9001\u4FE1', '\u9001\u4FE1\u3059\u308B']);\n  const normalizeText = (text) => (text || '').replace(/\\s+/g, ' ').trim();\n\n  const patchVisibleCopy = () => {\n    document.querySelectorAll('.cutting-request__form-lead h2').forEach((heading) => {\n      if (normalizeText(heading.textContent) === '\u9001\u4FE1\u30D5\u30A9\u30FC\u30E0') {\n        heading.textContent = '\u7121\u6599\u304A\u898B\u7A4D\u3082\u308A\u4F9D\u983C\u30D5\u30A9\u30FC\u30E0';\n      }\n    });\n\n    document.querySelectorAll('.cutting-request__faq details p').forEach((paragraph) => {\n      paragraph.textContent = paragraph.textContent.replace('\u5B9F\u969B\u306E\u91D1\u984D\u306F\u9001\u4FE1\u5185\u5BB9\u3092\u78BA\u8A8D\u3057\u3066\u304B\u3089', '\u5B9F\u969B\u306E\u91D1\u984D\u306F\u3054\u4F9D\u983C\u5185\u5BB9\u3092\u78BA\u8A8D\u3057\u3066\u304B\u3089');\n    });\n  };\n\n  const injectFormStyles = (root) => {\n    if (root.getElementById('cutting-request-form-styles')) return;\n\n    const style = document.createElement('style');\n    style.id = 'cutting-request-form-styles';\n    style.textContent = `\n      [data-cutting-request-submit=\"true\"] {\n        min-height: 52px !important;\n        padding: 14px 22px !important;\n        border-color: #a9553c !important;\n        border-radius: 6px !important;\n        background: #a9553c !important;\n        color: #ffffff !important;\n        font-weight: 700 !important;\n        box-shadow: 0 10px 20px rgba(169, 85, 60, 0.18) !important;\n        transition: background-color 0.18s ease, border-color 0.18s ease, transform 0.18s ease !important;\n      }\n\n      [data-cutting-request-submit=\"true\"]:hover {\n        border-color: #8b432f !important;\n        background: #8b432f !important;\n      }\n\n      [data-cutting-request-submit=\"true\"]:active {\n        transform: translateY(1px) !important;\n      }\n\n      [data-cutting-request-submit=\"true\"]:focus-visible {\n        outline: 3px solid rgba(169, 85, 60, 0.28) !important;\n        outline-offset: 2px !important;\n      }\n    `;\n    root.appendChild(style);\n  };\n\n  const replaceNodeText = (root) => {\n    const replacements = {\n      'By signing up, you agree to receive marketing emails. View our privacy policy and terms of service for more info.': '\u3054\u4F9D\u983C\u5185\u5BB9\u3092\u5F53\u5E97\u3067\u78BA\u8A8D\u3057\u3001\u88C1\u65AD\u524D\u306B\u78BA\u8A8D\u30E1\u30FC\u30EB\u3092\u304A\u9001\u308A\u3057\u307E\u3059\u3002\u78BA\u8A8D\u5F8C\u306B\u4F5C\u696D\u3078\u9032\u307F\u307E\u3059\u3002',\n      'Submit': estimateButtonLabel,\n      'Sign up': estimateButtonLabel,\n      '\u304A\u898B\u7A4D\u3082\u308A\u3092\u4F9D\u983C\u3059\u308B': estimateButtonLabel,\n      '\u9001\u4FE1': estimateButtonLabel,\n      '\u9001\u4FE1\u3059\u308B': estimateButtonLabel\n    };\n\n    const visit = (node) => {\n      if (node.nodeType === Node.TEXT_NODE) {\n        const normalized = normalizeText(node.nodeValue);\n        if (replacements[normalized]) node.nodeValue = replacements[normalized];\n        return;\n      }\n\n      node.childNodes.forEach(visit);\n    };\n\n    visit(root);\n  };\n\n  const patchSubmitButton = (root) => {\n    root.querySelectorAll('button, input[type=\"submit\"]').forEach((button) => {\n      const text = normalizeText(button.textContent || button.value || '');\n      const hasSubmitType = button.matches('button[type=\"submit\"], input[type=\"submit\"]');\n      const isSubmit = hasSubmitType || submitLabels.has(text);\n      if (!isSubmit) return;\n\n      if (button.tagName === 'INPUT') {\n        button.value = estimateButtonLabel;\n      } else if (text !== estimateButtonLabel) {\n        button.textContent = estimateButtonLabel;\n      }\n\n      button.dataset.cuttingRequestSubmit = 'true';\n    });\n  };\n\n  const patchForms = () => {\n    document.querySelectorAll('shopify-forms-embed').forEach((embed) => {\n      const root = embed.shadowRoot;\n      if (!root) return;\n\n      replaceNodeText(root);\n      patchSubmitButton(root);\n      injectFormStyles(root);\n    });\n  };\n\n  const hydrate = () => {\n    patchVisibleCopy();\n    patchForms();\n  };\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', hydrate, { once: true });\n  } else {\n    hydrate();\n  }\n  const cuttingRequestObserver = new MutationObserver(hydrate);\n  cuttingRequestObserver.observe(document.documentElement, {\n    childList: true,\n    subtree: true\n  });\n  window.setTimeout(() => cuttingRequestObserver.disconnect(), 10000);\n\n  [250, 750, 1500, 3000].forEach((delay) => window.setTimeout(hydrate, delay));\n})();\n\ndocument.addEventListener('change', (e) => {\n  if (!e.target.closest('variant-picker')) return;\n  const section = document.querySelector('product-gallery')?.closest('.shopify-section');\n  if (!section) return;\n  const sectionTop = section.offsetTop;\n  const headerH = document.querySelector('.shopify-section-group-header-group')?.offsetHeight || 0;\n  window.scrollTo({ top: Math.max(0, sectionTop - headerH), behavior: 'smooth' });\n}, true);\n\n(function syncProductGalleryToSelectedVariant() {\n  if (!window.location.pathname.startsWith('/products/')) return;\n\n  const runAfterRerender = (callback) => {\n    requestAnimationFrame(() => requestAnimationFrame(callback));\n    setTimeout(callback, 250);\n  };\n\n  const findGalleryForVariant = (formId, mediaId) => {\n    const formSelector = formId && window.CSS?.escape\n      ? `product-gallery[form=\"${CSS.escape(formId)}\"]`\n      : 'product-gallery';\n\n    return Array.from(document.querySelectorAll(formSelector))\n      .find((gallery) => gallery.querySelector(`[data-media-id=\"${mediaId}\"]`));\n  };\n\n  const onVariantChange = (event) => {\n    if (event.__productGallerySyncHandled) return;\n    event.__productGallerySyncHandled = true;\n\n    const mediaId = event.detail?.variant?.featured_media?.id;\n    if (!mediaId) return;\n\n    runAfterRerender(() => {\n      const gallery = findGalleryForVariant(event.detail?.formId, mediaId);\n      const target = gallery?.querySelector(`[data-media-id=\"${mediaId}\"]`);\n      if (!gallery || !target || target.hasAttribute('hidden')) return;\n\n      const carousel = gallery.querySelector('.product-gallery__carousel');\n      if (carousel?.isScrollable && typeof carousel.select === 'function') {\n        const index = carousel.cells.indexOf(target);\n        if (index >= 0) carousel.select(index, { instant: true });\n      } else {\n        target.scrollIntoView({ block: 'start', behavior: 'smooth' });\n      }\n    });\n  };\n\n  const boundForms = new WeakSet();\n\n  const bindVariantForms = (root = document) => {\n    root.querySelectorAll?.('product-gallery[form], variant-picker[form-id]').forEach((element) => {\n      const formId = element.getAttribute('form') || element.getAttribute('form-id');\n      const form = formId ? document.forms[formId] : null;\n      if (!form || boundForms.has(form)) return;\n\n      boundForms.add(form);\n      form.addEventListener('variant:change', onVariantChange);\n    });\n  };\n\n  bindVariantForms();\n  document.addEventListener('variant:change', onVariantChange);\n\n  new MutationObserver((mutations) => {\n    mutations.forEach((mutation) => {\n      mutation.addedNodes.forEach((node) => {\n        if (node.nodeType === Node.ELEMENT_NODE) bindVariantForms(node);\n      });\n    });\n  }).observe(document.documentElement, { childList: true, subtree: true });\n})();\n\n(function () {\n  let renderTimer = null;\n\n  const onSectionRerendered = () => {\n    const nav = document.querySelector('product-gallery-navigation');\n    if (nav && nav.scrollWidth > nav.clientWidth) {\n      const current = nav.querySelector('[aria-current=\"true\"]');\n      if (current) {\n        const targetLeft = current.offsetLeft - nav.clientWidth / 2 + current.clientWidth / 2;\n        nav.scrollLeft = Math.max(0, Math.min(targetLeft, nav.scrollWidth - nav.clientWidth));\n      }\n    }\n  };\n\n  const observer = new MutationObserver(() => {\n    clearTimeout(renderTimer);\n    renderTimer = setTimeout(onSectionRerendered, 600);\n  });\n\n  const startObserving = () => {\n    const gallerySection = document.querySelector('product-gallery')?.closest('.shopify-section');\n    if (gallerySection) {\n      observer.observe(gallerySection, { childList: true, subtree: true });\n    }\n  };\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', startObserving);\n  } else {\n    startObserving();\n  }\n})();\n\n(function productVideoPlacementCacheFix() {\n  if (!window.location.pathname.startsWith('/products/')) return;\n\n  const moveProductVideo = () => {\n    const extra = document.getElementById('product-extra-information');\n    const description = extra && extra.querySelector('.product-content-below-gallery__description');\n\n    if (!extra || !description) return;\n\n    const placedVideo = extra.querySelector('.product-metafield-video-block, .shopify-section--product-metafield-video');\n\n    if (placedVideo) {\n      if (description.compareDocumentPosition(placedVideo) & Node.DOCUMENT_POSITION_PRECEDING) {\n        return;\n      }\n\n      placedVideo.setAttribute('data-product-video-placement-cache-fix', 'true');\n      description.insertAdjacentElement('beforebegin', placedVideo);\n      return;\n    }\n\n    const rightColumnVideo = document.querySelector('.product-info__block-item[data-block-type=\"product-video-metafield\"]');\n    const standaloneVideo = document.querySelector('.shopify-section--product-metafield-video');\n    const videoNode = rightColumnVideo || standaloneVideo;\n\n    if (!videoNode || extra.contains(videoNode)) return;\n\n    videoNode.setAttribute('data-product-video-placement-cache-fix', 'true');\n    description.insertAdjacentElement('beforebegin', videoNode);\n  };\n\n  const schedule = () => {\n    moveProductVideo();\n    setTimeout(moveProductVideo, 100);\n    setTimeout(moveProductVideo, 500);\n    setTimeout(moveProductVideo, 1500);\n  };\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', schedule, { once: true });\n  } else {\n    schedule();\n  }\n\n  const observer = new MutationObserver(moveProductVideo);\n  observer.observe(document.documentElement, { childList: true, subtree: true });\n})();\n\n(function productMetafieldVideoBrightControls() {\n  const path = window.location.pathname;\n  if (!path.startsWith('/products/') && path !== '/pages/product-video-gallery') return;\n\n  const mobileQuery = window.matchMedia('(max-width: 767px)');\n\n  const setPlayerMode = (player) => {\n    const video = player.querySelector('[data-product-video]');\n    const toggle = player.querySelector('[data-product-video-toggle]');\n    if (!video || !toggle) return;\n\n    if (!player.dataset.nativeControls) {\n      player.dataset.nativeControls = video.hasAttribute('controls') ? 'true' : 'false';\n    }\n\n    if (mobileQuery.matches) {\n      video.removeAttribute('controls');\n      video.controls = false;\n      player.classList.add('is-custom-controls');\n    } else {\n      if (player.dataset.nativeControls === 'true') {\n        video.setAttribute('controls', '');\n        video.controls = true;\n      }\n      player.classList.remove('is-custom-controls', 'is-playing');\n    }\n  };\n\n  const pauseOtherVideos = (currentVideo) => {\n    document.querySelectorAll('[data-product-video]').forEach((video) => {\n      if (video !== currentVideo && !video.paused) {\n        video.pause();\n      }\n    });\n  };\n\n  const bindPlayer = (player) => {\n    const video = player.querySelector('[data-product-video]');\n    const toggle = player.querySelector('[data-product-video-toggle]');\n    if (!video || !toggle) return;\n\n    setPlayerMode(player);\n\n    if (player.dataset.brightControlsBound === 'true') return;\n    player.dataset.brightControlsBound = 'true';\n\n    const update = () => {\n      const isPlaying = !video.paused && !video.ended;\n      player.classList.toggle('is-playing', isPlaying);\n      toggle.setAttribute('aria-label', isPlaying ? '\u52D5\u753B\u3092\u4E00\u6642\u505C\u6B62' : '\u52D5\u753B\u3092\u518D\u751F');\n    };\n\n    const togglePlayback = async () => {\n      if (!mobileQuery.matches) return;\n\n      if (video.paused || video.ended) {\n        pauseOtherVideos(video);\n        try {\n          await video.play();\n        } catch {\n          video.setAttribute('controls', '');\n          video.controls = true;\n        }\n      } else {\n        video.pause();\n      }\n\n      update();\n    };\n\n    toggle.addEventListener('click', (event) => {\n      if (!mobileQuery.matches) return;\n      event.preventDefault();\n      event.stopPropagation();\n      togglePlayback();\n    });\n\n    video.addEventListener('click', (event) => {\n      if (!mobileQuery.matches) return;\n      event.preventDefault();\n      togglePlayback();\n    });\n\n    video.addEventListener('play', update);\n    video.addEventListener('pause', update);\n    video.addEventListener('ended', update);\n    update();\n  };\n\n  const hydrate = () => {\n    document.querySelectorAll('[data-product-video-player]').forEach(bindPlayer);\n  };\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', hydrate, { once: true });\n  } else {\n    hydrate();\n  }\n\n  if (typeof mobileQuery.addEventListener === 'function') {\n    mobileQuery.addEventListener('change', hydrate);\n  } else if (typeof mobileQuery.addListener === 'function') {\n    mobileQuery.addListener(hydrate);\n  }\n\n  const observer = new MutationObserver(hydrate);\n  observer.observe(document.documentElement, { childList: true, subtree: true });\n})();\n\ndocument.addEventListener('DOMContentLoaded', () => {\n  document.querySelectorAll('quantity-selector[data-multiplier]').forEach((selector) => {\n    const multiplier = parseInt(selector.dataset.multiplier || '1', 10);\n    const input = selector.querySelector('input.quantity-selector__input');\n    const display = selector.querySelector('.quantity-display');\n\n    if (!input || !display) return;\n\n    const updateDisplay = () => {\n      const value = parseInt(input.value || '1', 10);\n      display.textContent = value * multiplier;\n    };\n\n    input.addEventListener('input', updateDisplay);\n    input.addEventListener('change', updateDisplay);\n    updateDisplay(); // \u521D\u671F\u8868\u793A\u53CD\u6620\n  });\n});\n\n(function backInStockAlert() {\n  const KLAVIYO_REVISION = '2026-04-15';\n\n  const setMessage = (root, message, state) => {\n    const messageElement = root.querySelector('[data-restock-message]');\n    if (messageElement) messageElement.textContent = message;\n    root.dataset.state = state;\n  };\n\n  const getErrorMessage = async (response) => {\n    try {\n      const body = await response.json();\n      const detail = body?.errors?.[0]?.detail || body?.errors?.[0]?.title;\n      if (detail && /invalid email/i.test(detail)) {\n        return '\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u3092\u3054\u78BA\u8A8D\u304F\u3060\u3055\u3044\u3002';\n      }\n    } catch {\n      // Use the generic storefront message below.\n    }\n\n    return '\u767B\u9332\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u6642\u9593\u3092\u304A\u3044\u3066\u3082\u3046\u4E00\u5EA6\u304A\u8A66\u3057\u304F\u3060\u3055\u3044\u3002';\n  };\n\n  const submitRestockAlert = async (root) => {\n    const input = root.querySelector('[data-restock-email]');\n    const submitButton = root.querySelector('[data-restock-submit]');\n    const companyId = root.dataset.companyId;\n    const variantId = root.dataset.variantId;\n\n    if (!input || !submitButton || !companyId || !variantId) return;\n\n    if (!input.value.trim() && root.dataset.customerEmail) {\n      input.value = root.dataset.customerEmail;\n    }\n\n    if (!input.checkValidity()) {\n      input.reportValidity();\n      return;\n    }\n\n    submitButton.disabled = true;\n    submitButton.textContent = '\u767B\u9332\u3057\u3066\u3044\u307E\u3059';\n    setMessage(root, '', 'loading');\n\n    const payload = {\n      data: {\n        type: 'back-in-stock-subscription',\n        attributes: {\n          profile: {\n            data: {\n              type: 'profile',\n              attributes: {\n                email: input.value.trim()\n              }\n            }\n          },\n          channels: ['EMAIL']\n        },\n        relationships: {\n          variant: {\n            data: {\n              type: 'catalog-variant',\n              id: `$shopify:::$default:::${variantId}`\n            }\n          }\n        }\n      }\n    };\n\n    try {\n      const response = await fetch(`https://a.klaviyo.com/client/back-in-stock-subscriptions/?company_id=${encodeURIComponent(companyId)}`, {\n        method: 'POST',\n        headers: {\n          'Content-Type': 'application/json',\n          revision: KLAVIYO_REVISION\n        },\n        body: JSON.stringify(payload)\n      });\n\n      if (!response.ok && response.status !== 202) {\n        throw new Error(await getErrorMessage(response));\n      }\n\n      root.querySelector('[data-restock-fields]')?.setAttribute('hidden', '');\n      setMessage(root, '\u767B\u9332\u3057\u307E\u3057\u305F\u3002\u518D\u5165\u8377\u3057\u305F\u3089\u30E1\u30FC\u30EB\u3067\u304A\u77E5\u3089\u305B\u3057\u307E\u3059\u3002', 'success');\n\n      window.dataLayer?.push({\n        event: 'back_in_stock_signup',\n        product_id: root.dataset.productId,\n        product_handle: root.dataset.productHandle,\n        variant_id: root.dataset.variantId\n      });\n    } catch (error) {\n      setMessage(root, error.message || '\u767B\u9332\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u6642\u9593\u3092\u304A\u3044\u3066\u3082\u3046\u4E00\u5EA6\u304A\u8A66\u3057\u304F\u3060\u3055\u3044\u3002', 'error');\n    } finally {\n      submitButton.disabled = false;\n      submitButton.textContent = '\u901A\u77E5\u3092\u767B\u9332\u3059\u308B';\n    }\n  };\n\n  document.addEventListener('click', (event) => {\n    const openButton = event.target.closest('[data-restock-open]');\n    if (openButton) {\n      const root = openButton.closest('[data-restock-alert]');\n      const fields = root?.querySelector('[data-restock-fields]');\n      const input = root?.querySelector('[data-restock-email]');\n\n      if (!root || !fields || !input) return;\n\n      fields.hidden = false;\n      if (!input.value && root.dataset.customerEmail) {\n        input.value = root.dataset.customerEmail;\n      }\n      input.focus();\n      return;\n    }\n\n    const submitButton = event.target.closest('[data-restock-submit]');\n    if (submitButton) {\n      const root = submitButton.closest('[data-restock-alert]');\n      if (root) submitRestockAlert(root);\n    }\n  });\n\n  document.addEventListener('keydown', (event) => {\n    if (event.key !== 'Enter' || !event.target.matches('[data-restock-email]')) return;\n\n    const root = event.target.closest('[data-restock-alert]');\n    if (!root) return;\n\n    event.preventDefault();\n    submitRestockAlert(root);\n  });\n})();\n\n(function refreshWafukuRecommendedArticles() {\n  const sectionId = 'template--26755958767909__prev-next-blog-posts';\n  const targetPath = '/blogs/hint/wafuku';\n\n  if (window.location.pathname !== targetPath) return;\n\n  const refresh = () => {\n    const section = document.getElementById(`shopify-section-${sectionId}`);\n    if (!section || section.querySelector('a[href=\"/blogs/journal/hakama-pants\"]')) return;\n\n    fetch(`${targetPath}?sections=${sectionId}`, { credentials: 'same-origin' })\n      .then((response) => (response.ok ? response.json() : null))\n      .then((sections) => {\n        const html = sections && sections[sectionId];\n        if (!html || !html.includes('/blogs/journal/hakama-pants')) return;\n\n        const wrapper = document.createElement('div');\n        wrapper.innerHTML = html;\n        const freshSection = wrapper.firstElementChild;\n\n        if (freshSection) {\n          section.replaceWith(freshSection);\n        }\n      })\n      .catch(() => {});\n  };\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', refresh, { once: true });\n  } else {\n    refresh();\n  }\n})();\n\n(function normalizeProductVideoGuideLinks() {\n  if (window.location.pathname !== '/' && window.location.pathname !== '') return;\n\n  const oldPath = '/pages/product-videos';\n  const newPath = '/pages/product-video-gallery?view=product-video-gallery';\n\n  const updateLinks = () => {\n    document.querySelectorAll('.home-product-video-guide a[href]').forEach((link) => {\n      const href = link.getAttribute('href');\n      let url;\n\n      try {\n        url = new URL(href, window.location.origin);\n      } catch (error) {\n        return;\n      }\n\n      if (url.pathname === oldPath || url.pathname === '/pages/product-video-gallery') {\n        link.setAttribute('href', newPath);\n      }\n    });\n  };\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', updateLinks, { once: true });\n  } else {\n    updateLinks();\n  }\n\n  const observer = new MutationObserver(updateLinks);\n  observer.observe(document.documentElement, { childList: true, subtree: true });\n})();\n\n(function () {\n  const targetPath = '/products/13-002';\n  const marker = 'kijimaru-dog-pattern-13-002-v1';\n\n  if (window.location.pathname !== targetPath) return;\n\n  const runScripts = (scope) => {\n    scope.querySelectorAll('script').forEach((script) => {\n      const executable = document.createElement('script');\n      Array.from(script.attributes).forEach((attribute) => {\n        executable.setAttribute(attribute.name, attribute.value);\n      });\n      executable.textContent = script.textContent;\n      document.body.appendChild(executable);\n    });\n  };\n\n  const syncHead = (doc) => {\n    const freshTitle = doc.querySelector('title');\n    if (freshTitle) {\n      document.title = freshTitle.textContent;\n    }\n\n    ['description', 'twitter:title', 'twitter:description'].forEach((name) => {\n      const current = document.querySelector(`meta[name=\"${name}\"]`);\n      const fresh = doc.querySelector(`meta[name=\"${name}\"]`);\n      if (current && fresh) current.setAttribute('content', fresh.getAttribute('content') || '');\n    });\n\n    ['og:title', 'og:description'].forEach((property) => {\n      const current = document.querySelector(`meta[property=\"${property}\"]`);\n      const fresh = doc.querySelector(`meta[property=\"${property}\"]`);\n      if (current && fresh) current.setAttribute('content', fresh.getAttribute('content') || '');\n    });\n  };\n\n  const hydrate = () => {\n    if (document.querySelector(`.${marker}`)) return;\n\n    const currentSection = document.querySelector('.shopify-section--main-product');\n    if (!currentSection) return;\n\n    fetch(`${targetPath}?variant=51197194010917&dog13_hydrate=${Date.now()}`, {\n      credentials: 'same-origin',\n    })\n      .then((response) => (response.ok ? response.text() : ''))\n      .then((html) => {\n        if (!html || !html.includes(marker)) return;\n\n        const doc = new DOMParser().parseFromString(html, 'text/html');\n        const freshSection = doc.querySelector('.shopify-section--main-product');\n        if (!freshSection) return;\n\n        currentSection.replaceWith(freshSection);\n        syncHead(doc);\n        runScripts(freshSection);\n      })\n      .catch(() => {});\n  };\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', hydrate, { once: true });\n  } else {\n    hydrate();\n  }\n})();\n\n(function hydrateProductVideoCatalogFromFreshPage() {\n  if (window.location.pathname !== '/pages/product-video-gallery') return;\n\n  const refresh = () => {\n    const currentSection = document.querySelector('.shopify-section--product-video-only-gallery');\n    if (!currentSection) return;\n    if (currentSection.innerHTML.includes('n2sNrqPWZR8')) return;\n\n    const sectionId = currentSection.id.replace(/^shopify-section-/, '');\n    const url = new URL(window.location.href);\n    url.searchParams.set('section_id', sectionId);\n    url.searchParams.set('catalog_hydrate', Date.now().toString());\n\n    fetch(`${url.pathname}${url.search}`, { credentials: 'same-origin' })\n      .then((response) => (response.ok ? response.text() : ''))\n      .then((html) => {\n        if (!html || !html.includes('n2sNrqPWZR8')) return;\n\n        const doc = new DOMParser().parseFromString(html, 'text/html');\n        const freshSection = doc.querySelector('.shopify-section--product-video-only-gallery');\n        if (!freshSection) return;\n\n        currentSection.replaceWith(freshSection);\n\n        freshSection.querySelectorAll('script').forEach((script) => {\n          const executable = document.createElement('script');\n\n          Array.from(script.attributes).forEach((attribute) => {\n            executable.setAttribute(attribute.name, attribute.value);\n          });\n\n          executable.textContent = script.textContent;\n          document.body.appendChild(executable);\n        });\n      })\n      .catch(() => {});\n  };\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', refresh, { once: true });\n  } else {\n    refresh();\n  }\n})();\n\n(function keepProductVideoShortsFromUpscaling() {\n  if (window.location.pathname !== '/pages/product-video-gallery') return;\n\n  const applyQualityStyle = () => {\n    if (!document.querySelector('.product-video-only--shorts')) return;\n    if (document.getElementById('product-video-shorts-quality-style')) return;\n\n    const style = document.createElement('style');\n    style.id = 'product-video-shorts-quality-style';\n    style.textContent = [\n      '.product-video-only--shorts .product-video-only__media video,',\n      '.product-video-only--shorts .product-video-only__media img {',\n      'object-fit: contain !important;',\n      'object-position: center !important;',\n      '}',\n    ].join('');\n    document.head.appendChild(style);\n  };\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', applyQualityStyle, { once: true });\n  } else {\n    applyQualityStyle();\n  }\n\n  const observer = new MutationObserver(applyQualityStyle);\n  observer.observe(document.documentElement, { childList: true, subtree: true });\n})();\n\n(function normalizeTopNewArrivalLinks() {\n  if (window.location.pathname !== '/' && window.location.pathname !== '') return;\n\n  const targetPath = '/collections/new-arrivals?sort_by=created-desc';\n\n  const isNewArrivalCta = (link) => {\n    const text = (link.textContent || '').replace(/\\s+/g, ' ').trim();\n    return text.includes('\u65B0\u7740\u3092\u3082\u3063\u3068\u898B\u308B') || Boolean(link.closest('[class*=\"new-arrivals-cta\"]'));\n  };\n\n  const shouldRewrite = (link) => {\n    if (!isNewArrivalCta(link)) return false;\n\n    const rawHref = link.getAttribute('href') || '';\n    if (!rawHref) return false;\n\n    let url;\n    try {\n      url = new URL(rawHref, window.location.origin);\n    } catch (error) {\n      return false;\n    }\n\n    return url.pathname === '/collections/all' || url.pathname === '/collections/new-arrivals';\n  };\n\n  const updateLinks = () => {\n    document.querySelectorAll('a[href]').forEach((link) => {\n      if (shouldRewrite(link)) {\n        link.setAttribute('href', targetPath);\n      }\n    });\n  };\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', updateLinks, { once: true });\n  } else {\n    updateLinks();\n  }\n\n  const observer = new MutationObserver(updateLinks);\n  observer.observe(document.documentElement, { childList: true, subtree: true });\n})();\n\n(function trackHomeSamplebookCtaClicks() {\n  const eventName = 'samplebook_home_cta_click';\n\n  const isHomePage = () => window.location.pathname === '/' || window.location.pathname === '';\n  if (!isHomePage()) return;\n\n  const isSamplebookCta = (link) => {\n    if (link.matches('[data-samplebook-home-cta]')) return true;\n    if (!link.closest('#shopify-section-template--26755976757541__samplebook_fixed, .mf-kore')) return false;\n\n    const url = new URL(link.getAttribute('href') || '', window.location.origin);\n    return url.pathname === '/collections/samplebook';\n  };\n\n  document.addEventListener('click', (event) => {\n    const target = event.target instanceof Element ? event.target : event.target.parentElement;\n    const link = target?.closest('a[href]');\n    if (!link || !isSamplebookCta(link)) return;\n\n    const params = {\n      section_id: link.closest('[id^=\"shopify-section-\"]')?.id || '',\n      link_url: link.getAttribute('href') || '',\n      link_text: link.textContent.replace(/\\s+/g, ' ').trim(),\n      rollout_treatment_ids: document.body?.dataset?.treatmentIds || ''\n    };\n\n    if (typeof window.gtag === 'function') {\n      window.gtag('event', eventName, params);\n    }\n\n    window.dataLayer = window.dataLayer || [];\n    window.dataLayer.push({\n      event: eventName,\n      ...params\n    });\n  });\n})();\n\n(() => {\n  const campaignStart = Date.parse('2026-06-01T11:00:00Z');\n  const campaignEnd = Date.parse('2026-06-04T11:00:00Z');\n  const now = Date.now();\n\n  const onReady = (callback) => {\n    if (document.readyState === 'loading') {\n      document.addEventListener('DOMContentLoaded', callback, { once: true });\n    } else {\n      callback();\n    }\n  };\n\n  const salePagePath = '/pages/shoka-nunoichi-202606';\n  const saleCollectionPath = '/collections/shoka-nunoichi-202606';\n  const saleView = 'shoka-nunoichi-202606-v4';\n  const endedTitle = '\u521D\u590F\u306E\u5E03\u5E02\u306F\u7D42\u4E86\u3057\u307E\u3057\u305F | \u751F\u5730\u306E\u30DE\u30EB\u30A4\u30B7';\n  const endedDescription = '\u521D\u590F\u306E\u5E03\u5E02\u306F2026\u5E746\u67084\u65E5(\u6728)20:00\u306B\u7D42\u4E86\u3057\u307E\u3057\u305F\u3002\u73FE\u5728\u306F\u901A\u5E38\u4FA1\u683C\u3067\u306E\u8CA9\u58F2\u3067\u3059\u3002';\n\n  const removeSaleChrome = () => {\n    document.querySelectorAll('.badge--shoka-nunoichi, .shoka-nunoichi-product-notice').forEach((node) => {\n      node.remove();\n    });\n\n    document.querySelectorAll('.shoka-nunoichi-bar').forEach((bar) => {\n      const section = bar.closest('.shopify-section--shoka-nunoichi-announcement');\n      (section || bar).remove();\n    });\n\n    document.querySelectorAll('.shoka-nunoichi-home').forEach((section) => {\n      const wrapper = section.closest('.shopify-section');\n      (wrapper || section).remove();\n    });\n\n    document.querySelectorAll(`a[href*=\"${salePagePath}\"], a[href*=\"${saleCollectionPath}\"]`).forEach((link) => {\n      let url;\n\n      try {\n        url = new URL(link.getAttribute('href') || '', window.location.origin);\n      } catch (error) {\n        return;\n      }\n\n      if (url.pathname !== salePagePath && url.pathname !== saleCollectionPath) {\n        return;\n      }\n\n      const saleCard = link.closest('.hybrid-carousel__card');\n      if (saleCard) {\n        saleCard.remove();\n      }\n    });\n  };\n\n  const applyEndedMetadata = () => {\n    if (window.location.pathname !== salePagePath && window.location.pathname !== saleCollectionPath) {\n      return;\n    }\n\n    document.title = endedTitle;\n\n    const upsertMeta = (selector, attribute, value) => {\n      let node = document.head.querySelector(selector);\n\n      if (!node) {\n        node = document.createElement('meta');\n        node.setAttribute(attribute, selector.match(/\"([^\"]+)\"/)?.[1] || '');\n        document.head.appendChild(node);\n      }\n\n      node.setAttribute('content', value);\n    };\n\n    upsertMeta('meta[name=\"description\"]', 'name', endedDescription);\n    upsertMeta('meta[property=\"og:title\"]', 'property', '\u521D\u590F\u306E\u5E03\u5E02\u306F\u7D42\u4E86\u3057\u307E\u3057\u305F');\n    upsertMeta('meta[property=\"og:description\"]', 'property', endedDescription);\n    upsertMeta('meta[name=\"twitter:title\"]', 'name', '\u521D\u590F\u306E\u5E03\u5E02\u306F\u7D42\u4E86\u3057\u307E\u3057\u305F');\n    upsertMeta('meta[name=\"twitter:description\"]', 'name', endedDescription);\n  };\n\n  const rewriteSaleLinks = () => {\n    document.querySelectorAll(`a[href*=\"${saleCollectionPath}\"], a[href^=\"${salePagePath}\"]`).forEach((link) => {\n      let url;\n\n      try {\n        url = new URL(link.getAttribute('href') || '', window.location.origin);\n      } catch (error) {\n        return;\n      }\n\n      if (url.pathname !== saleCollectionPath && url.pathname !== salePagePath) {\n        return;\n      }\n\n      url.pathname = salePagePath;\n      url.searchParams.set('view', saleView);\n      link.setAttribute('href', `${url.pathname}${url.search}${url.hash}`);\n    });\n  };\n\n  if (now >= campaignStart && now < campaignEnd) {\n    onReady(rewriteSaleLinks);\n    new MutationObserver(rewriteSaleLinks).observe(document.documentElement, { childList: true, subtree: true });\n  }\n\n  if (now < campaignStart) {\n    onReady(removeSaleChrome);\n    return;\n  }\n\n  if (now >= campaignEnd) {\n    onReady(() => {\n      removeSaleChrome();\n      applyEndedMetadata();\n\n      if (window.location.pathname === salePagePath || window.location.pathname === saleCollectionPath) {\n        const salePage = document.querySelector('.shoka-sale-page');\n\n        if (salePage) {\n          if (!document.getElementById('shoka-nunoichi-ended-style')) {\n            const style = document.createElement('style');\n            style.id = 'shoka-nunoichi-ended-style';\n            style.textContent = [\n              '.shoka-sale-page__ended{display:grid;justify-items:center;gap:14px;max-width:760px;margin:0 auto;padding:58px var(--page-outer-spacing,20px) 64px;text-align:center}',\n              '.shoka-sale-page__ended h1{margin:0;color:#263c35;font-size:38px;line-height:1.25;letter-spacing:0}',\n              '.shoka-sale-page__ended-lead{max-width:34em;margin:0;color:#53625d;font-size:14px;line-height:1.9}',\n              '.shoka-sale-page__ended-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 16px;border-radius:6px;background:#263c35;color:#fff;font-size:13px;font-weight:700;line-height:1.4;text-decoration:none}'\n            ].join('');\n            document.head.appendChild(style);\n          }\n\n          salePage.innerHTML = `\n            <div class=\"shoka-sale-page__ended\">\n              <p class=\"shoka-sale-page__eyebrow\">\u7D42\u4E86\u3057\u307E\u3057\u305F</p>\n              <h1 id=\"shoka-sale-page-title\">\u521D\u590F\u306E\u5E03\u5E02\u306F\u7D42\u4E86\u3057\u307E\u3057\u305F</h1>\n              <p class=\"shoka-sale-page__ended-lead\">\u3053\u306E\u30BB\u30FC\u30EB\u306F2026\u5E746\u67084\u65E5(\u6728)20:00\u306B\u7D42\u4E86\u3057\u307E\u3057\u305F\u3002\u73FE\u5728\u306F\u901A\u5E38\u4FA1\u683C\u3067\u306E\u8CA9\u58F2\u3067\u3059\u3002</p>\n              <a class=\"shoka-sale-page__ended-button\" href=\"/\">\u30C8\u30C3\u30D7\u30DA\u30FC\u30B8\u3078\u623B\u308B</a>\n            </div>\n          `;\n        }\n      }\n    });\n\n    new MutationObserver(removeSaleChrome).observe(document.documentElement, { childList: true, subtree: true });\n\n    return;\n  }\n\n  const fallbackLabel = '6/4 20:00\u307E\u3067';\n  const fallbackText = '\u521D\u590F\u306E\u5E03\u5E02 10%OFF\uFF5C\u30AB\u30FC\u30C8\u3067\u81EA\u52D5\u5272\u5F15';\n\n  const fallbackBannerHtml = `\n    <div class=\"shopify-section shopify-section-group-header-group shopify-section--shoka-nunoichi-announcement\" data-shoka-nunoichi-fallback>\n      <aside class=\"shoka-nunoichi-bar\" aria-label=\"\u521D\u590F\u306E\u5E03\u5E02\u306E\u304A\u77E5\u3089\u305B\">\n        <a class=\"shoka-nunoichi-bar__link\" href=\"/pages/shoka-nunoichi-202606?view=shoka-nunoichi-202606-v4&utm_source=site&utm_medium=topbar&utm_campaign=shoka_nunoichi_202606&utm_content=sitewide_bar\">\n          <span class=\"shoka-nunoichi-bar__label\">${fallbackLabel}</span>\n          <span class=\"shoka-nunoichi-bar__text\">${fallbackText}</span>\n        </a>\n      </aside>\n      <style>\n        .shoka-nunoichi-bar{background:#f8f1e8;border-bottom:1px solid rgba(63,58,57,.12)}\n        .shoka-nunoichi-bar__link{display:flex;justify-content:center;align-items:center;gap:10px;min-height:42px;padding:9px 16px;color:#3f3a39;font-family:\"Ryo Gothic PlusN\",sans-serif;font-size:13px;line-height:1.45;text-decoration:none;text-align:center}\n        .shoka-nunoichi-bar__label{flex:0 0 auto;padding:3px 8px;border:1px solid rgba(63,58,57,.22);border-radius:4px;background:#fff;font-size:12px;font-weight:600}\n        .shoka-nunoichi-bar__text{font-weight:600}\n        @media screen and (max-width:699px){.shoka-nunoichi-bar__link{flex-wrap:wrap;gap:6px 8px;padding:8px 12px;font-size:12px}}\n      </style>\n    </div>\n  `;\n\n  const insertHtml = (html, anchor) => {\n    if (!html || document.querySelector('.shoka-nunoichi-bar')) {\n      return;\n    }\n\n    const template = document.createElement('template');\n    template.innerHTML = html.trim();\n    const node = template.content.firstElementChild;\n\n    if (node) {\n      anchor.insertAdjacentElement('beforebegin', node);\n    }\n  };\n\n  const hydrateSaleAnnouncement = async () => {\n    if (document.querySelector('.shoka-nunoichi-bar')) {\n      return;\n    }\n\n    const anchor = document.querySelector('[id^=\"shopify-section-sections--\"][id$=\"__announcement_review_coupon\"]')\n      || document.querySelector('[id^=\"shopify-section-sections--\"][id$=\"__header\"]');\n\n    if (!anchor?.id) {\n      return;\n    }\n\n    const sectionId = anchor.id\n      .replace(/^shopify-section-/, '')\n      .replace(/__(announcement_review_coupon|header)$/, '__shoka_nunoichi_202606_announcement');\n\n    try {\n      const url = new URL(window.location.pathname, window.location.origin);\n      url.searchParams.set('sections', sectionId);\n\n      const response = await fetch(url.toString(), { credentials: 'same-origin' });\n      const sections = response.ok ? await response.json() : {};\n      insertHtml(sections[sectionId] || fallbackBannerHtml, anchor);\n    } catch (error) {\n      insertHtml(fallbackBannerHtml, anchor);\n    }\n  };\n\n  onReady(hydrateSaleAnnouncement);\n})();\n\n(function hydrateCollectionChoiceGuideTabsFromCachedHtml() {\n  const guideByPath = {\n    '/collections/cotton-polyester-blend': {\n      collectionTitle: '\u3059\u3079\u3066\u306E\u7DBF\u30DD\u30EA(T/C)',\n      cards: [\n        {\n          group: 'map',\n          badge: '\u751F\u5730\u30DE\u30C3\u30D7',\n          title: '\u539A\u307F\u3068\u30CF\u30EA\u306E\u4F4D\u7F6E\u3092\u898B\u308B',\n          text: '\u5F62\u3092\u51FA\u3059\u751F\u5730\u3001\u6A19\u6E96\u3001\u8584\u624B\u306E\u9055\u3044\u3092\u5730\u56F3\u3067\u78BA\u8A8D\u3067\u304D\u307E\u3059\u3002\u8FF7\u3063\u305F\u6642\u306E\u6839\u62E0\u3068\u3057\u3066\u898B\u308B\u305F\u3081\u306E\u5C0F\u3055\u306A\u53C2\u7167\u3067\u3059\u3002',\n          link: '/blogs/journal/fabric-map',\n          label: '\u751F\u5730\u30DE\u30C3\u30D7\u3092\u898B\u308B',\n          image: '//kijimaru.jp/cdn/shop/files/kijimap-1a.png?v=1761011921&width=720',\n          alt: '\u7DBF\u30DD\u30EA\u751F\u5730\u306E\u539A\u307F\u3068\u30CF\u30EA\u3092\u6BD4\u8F03\u3057\u305F\u751F\u5730\u30DE\u30C3\u30D7'\n        },\n        {\n          group: 'purpose',\n          badge: '\u307E\u305A\u898B\u308B\u5B9A\u756A',\n          title: '\u307E\u305A\u306F\u7DBF\u30DD\u30EA\u30C0\u30F3\u30AC\u30EA\u30FC',\n          text: '\u5165\u5712\u30B0\u30C3\u30BA\u3001\u30D1\u30F3\u30C4\u3001\u30A8\u30D7\u30ED\u30F3\u3001\u888B\u7269\u307E\u3067\u5E45\u5E83\u304F\u4F7F\u3048\u308B\u5B9A\u756A\u3067\u3059\u3002\u7528\u9014\u304C\u307E\u3060\u5E83\u3044\u6642\u306F\u3001\u3053\u3053\u304B\u3089\u6BD4\u8F03\u3059\u308B\u3068\u7D5E\u308A\u3084\u3059\u304F\u306A\u308A\u307E\u3059\u3002',\n          link: '/products/4500',\n          label: '\u7DBF\u30DD\u30EA\u30C0\u30F3\u30AC\u30EA\u30FC\u3092\u898B\u308B'\n        },\n        {\n          group: 'purpose',\n          badge: '\u8584\u624B\u30FB\u8EFD\u3055',\n          title: '\u30B7\u30E3\u30C4\u3084\u8EFD\u3044\u4F5C\u54C1\u306A\u3089\u8584\u624B\u3082\u5019\u88DC',\n          text: '\u8EFD\u3055\u3001\u4E7E\u304D\u3084\u3059\u3055\u3001\u304D\u308C\u3044\u306A\u8868\u60C5\u3092\u512A\u5148\u3059\u308B\u6642\u306F\u3001\u30D6\u30ED\u30FC\u30C9\u3084\u30DD\u30D7\u30EA\u30F3\u306A\u3069\u8584\u624B\u306E\u7DBF\u30DD\u30EA\u3082\u6BD4\u8F03\u5019\u88DC\u306B\u306A\u308A\u307E\u3059\u3002',\n          link: '/products/8300',\n          label: '\u7DBF\u30DD\u30EA\u30D6\u30ED\u30FC\u30C9\u3092\u898B\u308B'\n        },\n        {\n          group: 'texture',\n          badge: '\u670D\u30FB\u3084\u308F\u3089\u304B\u3081',\n          title: '\u843D\u3061\u611F\u3084\u808C\u3042\u305F\u308A\u3092\u512A\u5148',\n          text: '\u30EF\u30F3\u30D4\u30FC\u30B9\u3001\u30D6\u30E9\u30A6\u30B9\u3001\u5B50\u3069\u3082\u670D\u306A\u3069\u3001\u786C\u3055\u3092\u6291\u3048\u305F\u3044\u6642\u306F\u30BD\u30D5\u30C8\u30C0\u30F3\u30AC\u30EA\u30FC\u7CFB\u304B\u3089\u898B\u308B\u3068\u9078\u3073\u3084\u3059\u304F\u306A\u308A\u307E\u3059\u3002',\n          link: '/collections/cotton-poly-soft-dungaree',\n          label: '\u30BD\u30D5\u30C8\u30C0\u30F3\u30AC\u30EA\u30FC\u3092\u898B\u308B'\n        },\n        {\n          group: 'texture',\n          badge: '\u30CF\u30EA\u3092\u51FA\u3059',\n          title: '\u5F62\u3092\u4FDD\u3061\u305F\u3044\u306A\u3089\u30C4\u30A4\u30EB\u7CFB',\n          text: '\u30D1\u30F3\u30C4\u3001\u30D0\u30C3\u30B0\u3001\u5207\u308A\u66FF\u3048\u5E03\u306A\u3069\u3001\u5B8C\u6210\u5F8C\u306E\u5F62\u3092\u51FA\u3057\u305F\u3044\u4F5C\u54C1\u306F\u3001\u3084\u308F\u3089\u304B\u3055\u3088\u308A\u30CF\u30EA\u3068\u539A\u307F\u3092\u512A\u5148\u3057\u3066\u9078\u3073\u307E\u3059\u3002',\n          link: '/collections/cotton-poly-twill',\n          label: '\u7DBF\u30DD\u30EA\u30C4\u30A4\u30EB\u3092\u898B\u308B'\n        },\n        {\n          group: 'wrinkle',\n          badge: '\u30B7\u30EF\u5BFE\u7B56',\n          title: '\u30A2\u30A4\u30ED\u30F3\u306E\u624B\u9593\u3092\u6E1B\u3089\u3057\u305F\u3044\u6642',\n          text: '\u30D6\u30ED\u30FC\u30C9\u3001\u30B3\u30FC\u30C9\u30EC\u30FC\u30F3\u3001\u30E9\u30DF\u30CD\u30FC\u30C8\u3001\u30D0\u30CB\u30E9\u30F3\u306F\u7279\u306B\u30B7\u30EF\u306B\u5F37\u3044\u4F4D\u7F6E\u3002\u6BCE\u65E5\u6D17\u3046\u3082\u306E\u306F\u3001\u898B\u305F\u76EE\u3060\u3051\u3067\u306A\u304F\u6D17\u6FEF\u5F8C\u306E\u6271\u3044\u3084\u3059\u3055\u3067\u9078\u3073\u307E\u3059\u3002',\n          link: '/collections/wrinkle-resistant',\n          label: '\u30B7\u30EF\u306B\u5F37\u3044\u751F\u5730\u3092\u898B\u308B',\n          image: '//kijimaru.jp/cdn/shop/files/kijimap-4.png?v=1761011855&width=720',\n          alt: '\u7DBF\u30DD\u30EA\u751F\u5730\u306E\u539A\u307F\u3068\u30B7\u30EF\u3078\u306E\u5F37\u3055\u3092\u6BD4\u8F03\u3057\u305F\u751F\u5730\u30DE\u30C3\u30D7'\n        }\n      ]\n    },\n    '/collections/cotton': {\n      collectionTitle: '\u3059\u3079\u3066\u306E\u30B3\u30C3\u30C8\u30F3',\n      cards: [\n        {\n          group: 'map',\n          badge: '\u751F\u5730\u30DE\u30C3\u30D7',\n          title: '\u539A\u307F\u3068\u30CF\u30EA\u306E\u4F4D\u7F6E\u3092\u898B\u308B',\n          text: '\u30B3\u30C3\u30C8\u30F3\u306F\u7A2E\u985E\u306E\u5E45\u304C\u5E83\u3044\u306E\u3067\u3001\u5E06\u5E03\u30FB\u30AD\u30EB\u30C8\u30FB\u30B7\u30FC\u30C1\u30F3\u30B0\u30FB\u30AC\u30FC\u30BC\u306A\u3069\u306E\u4F4D\u7F6E\u95A2\u4FC2\u3092\u5730\u56F3\u3067\u78BA\u8A8D\u3067\u304D\u307E\u3059\u3002',\n          link: '/blogs/journal/fabric-map',\n          label: '\u30B3\u30C3\u30C8\u30F3\u751F\u5730\u30DE\u30C3\u30D7\u3092\u898B\u308B',\n          image: '//kijimaru.jp/cdn/shop/files/kijimap-2.png?v=1761011855&width=720',\n          alt: '\u30B3\u30C3\u30C8\u30F3\u751F\u5730\u306E\u539A\u307F\u3068\u30CF\u30EA\u3092\u6BD4\u8F03\u3057\u305F\u751F\u5730\u30DE\u30C3\u30D7'\n        },\n        {\n          group: 'purpose',\n          badge: '\u670D\u30FB\u5C0F\u7269',\n          title: '\u666E\u6BB5\u4F7F\u3044\u306F\u4E2D\u539A\u5730\u304B\u3089\u898B\u308B',\n          text: '\u670D\u3001\u5C0F\u7269\u3001\u30AB\u30D0\u30FC\u985E\u306A\u3069\u5E83\u304F\u4F7F\u3046\u306A\u3089\u3001\u30B7\u30FC\u30C1\u30F3\u30B0\u3001\u30C0\u30F3\u30AC\u30EA\u30FC\u3001\u30D6\u30ED\u30FC\u30C9\u3001\u30C4\u30A4\u30EB\u3042\u305F\u308A\u3092\u7528\u9014\u3068\u539A\u307F\u3067\u6BD4\u3079\u307E\u3059\u3002',\n          link: '/collections/cotton-dungaree',\n          label: '\u30B3\u30C3\u30C8\u30F3\u30C0\u30F3\u30AC\u30EA\u30FC\u3092\u898B\u308B'\n        },\n        {\n          group: 'purpose',\n          badge: '\u5F62\u3092\u51FA\u3059',\n          title: '\u30D0\u30C3\u30B0\u3084\u5E95\u5E03\u306A\u3089\u5E06\u5E03\u30FB\u30AD\u30EB\u30C8',\n          text: '\u3057\u3063\u304B\u308A\u7ACB\u305F\u305B\u305F\u3044\u4F5C\u54C1\u306F\u30CF\u30EA\u3068\u539A\u307F\u304C\u5FC5\u8981\u3067\u3059\u30028\u53F7\u5E06\u5E03\u300111\u53F7\u5E06\u5E03\u3001\u30AD\u30EB\u30C8\u306F\u3001\u5B8C\u6210\u3057\u305F\u6642\u306E\u5F62\u3092\u4F5C\u308A\u3084\u3059\u3044\u751F\u5730\u3067\u3059\u3002',\n          link: '/collections/cotton-canvas',\n          label: '\u5E06\u5E03\u3092\u898B\u308B'\n        },\n        {\n          group: 'texture',\n          badge: '\u5929\u7136\u7D20\u6750\u611F',\n          title: '\u98A8\u5408\u3044\u3092\u512A\u5148\u3059\u308B\u306A\u3089\u30B3\u30C3\u30C8\u30F3',\n          text: '\u808C\u3056\u308F\u308A\u3084\u30CA\u30C1\u30E5\u30E9\u30EB\u306A\u8868\u60C5\u3092\u91CD\u8996\u3059\u308B\u6642\u306B\u5411\u3044\u3066\u3044\u307E\u3059\u3002\u7E2E\u307F\u3084\u30B7\u30EF\u3092\u8A31\u5BB9\u3067\u304D\u308B\u4F5C\u54C1\u304B\u3082\u4E00\u7DD2\u306B\u898B\u3066\u304F\u3060\u3055\u3044\u3002',\n          link: '/collections/cotton-polyester-blend',\n          label: '\u7DBF\u30DD\u30EA\u3082\u6BD4\u8F03\u3059\u308B'\n        },\n        {\n          group: 'texture',\n          badge: '\u3084\u308F\u3089\u304B\u3055',\n          title: '\u808C\u3056\u308F\u308A\u306A\u3089\u30AC\u30FC\u30BC\u30FB\u30BF\u30AA\u30EB\u30FB\u30EC\u30CE\u30AF\u30ED\u30B9',\n          text: '\u30D9\u30D3\u30FC\u7528\u54C1\u3001\u30CF\u30F3\u30AB\u30C1\u3001\u8EFD\u3044\u670D\u306A\u3069\u3001\u3084\u308F\u3089\u304B\u3055\u3092\u6D3B\u304B\u3057\u305F\u3044\u6642\u306F\u539A\u307F\u3060\u3051\u3067\u306A\u304F\u624B\u89E6\u308A\u306E\u65B9\u5411\u3067\u9078\u3076\u3068\u5931\u6557\u3057\u306B\u304F\u304F\u306A\u308A\u307E\u3059\u3002',\n          link: '/collections/cotton-double-gauze',\n          label: '\u30C0\u30D6\u30EB\u30AC\u30FC\u30BC\u3092\u898B\u308B'\n        },\n        {\n          group: 'wrinkle',\n          badge: '\u30B7\u30EF\u30FB\u7E2E\u307F',\n          title: '\u6BCE\u65E5\u6D17\u3046\u3082\u306E\u306F\u7DBF\u30DD\u30EA\u3082\u6BD4\u8F03',\n          text: '\u30B3\u30C3\u30C8\u30F3\u306E\u98A8\u5408\u3044\u3092\u512A\u5148\u3059\u308B\u304B\u3001\u30B7\u30EF\u3084\u6D17\u6FEF\u5F8C\u306E\u6271\u3044\u3084\u3059\u3055\u3092\u512A\u5148\u3059\u308B\u304B\u3067\u9078\u3073\u5206\u3051\u307E\u3059\u3002\u670D\u3084\u901A\u5712\u901A\u5B66\u54C1\u306F\u7DBF\u30DD\u30EA\u3082\u5019\u88DC\u3067\u3059\u3002',\n          link: '/collections/cotton-polyester-blend',\n          label: '\u7DBF\u30DD\u30EA\u3092\u898B\u308B'\n        }\n      ]\n    }\n  };\n\n  const labels = {\n    purpose: '\u7528\u9014\u304B\u3089',\n    texture: '\u8CEA\u611F\u304B\u3089',\n    wrinkle: '\u30B7\u30EF\u306B\u5F37\u3044',\n    map: '\u5730\u56F3\u3067\u898B\u308B'\n  };\n\n  const escapeHtml = (value) => String(value || '').replace(/[&<>\"']/g, (char) => ({\n    '&': '&amp;',\n    '<': '&lt;',\n    '>': '&gt;',\n    '\"': '&quot;',\n    \"'\": '&#39;'\n  }[char]));\n\n  const injectStyle = () => {\n    if (document.getElementById('collection-choice-guide-tabs-fallback-style')) return;\n\n    const style = document.createElement('style');\n    style.id = 'collection-choice-guide-tabs-fallback-style';\n    style.textContent = `\n      .shopify-section--collection-choice-guide .collection-choice-guide{background:#f7faf8;border-block:1px solid #dbe7e0}\n      .shopify-section--collection-choice-guide .collection-choice-guide__inner{display:grid;grid-template-columns:minmax(220px,.78fr) minmax(0,1.7fr);gap:24px;align-items:start}\n      .shopify-section--collection-choice-guide .collection-choice-guide__tabs{display:flex;flex-wrap:wrap;gap:4px;width:fit-content;max-width:100%;margin-top:18px;padding:4px;background:#eef5f1;border:1px solid #d8e5dd;border-radius:8px}\n      .shopify-section--collection-choice-guide .collection-choice-guide__tab{appearance:none;min-height:34px;padding:7px 10px;color:#52615d;background:transparent;border:0;border-radius:6px;font:inherit;font-size:12px;font-weight:700;line-height:1.3;letter-spacing:0;cursor:pointer}\n      .shopify-section--collection-choice-guide .collection-choice-guide__tab[aria-selected=true]{color:#2f6f73;background:#fff;box-shadow:0 1px 4px rgba(63,58,57,.08)}\n      .shopify-section--collection-choice-guide .collection-choice-guide__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;overflow:visible;margin-inline:0;padding-inline:0}\n      .shopify-section--collection-choice-guide .collection-choice-guide__card[hidden]{display:none!important}\n      .shopify-section--collection-choice-guide .collection-choice-guide__card{position:relative;display:flex;min-height:100%;flex-direction:column;gap:8px;padding:16px;background:#fff;border:1px solid #e1e6e2;border-radius:8px}\n      .shopify-section--collection-choice-guide .collection-choice-guide__card--has-media{min-height:152px;padding-inline-end:96px}\n      .shopify-section--collection-choice-guide .collection-choice-guide__media{position:absolute;top:14px;right:14px;display:flex;align-items:center;justify-content:center;width:64px;height:64px;overflow:hidden;background:#fffdf3;border:1px solid #eee4c7;border-radius:6px;box-shadow:0 1px 4px rgba(63,58,57,.08)}\n      .shopify-section--collection-choice-guide .collection-choice-guide__media img{display:block;width:100%;height:100%;object-fit:contain}\n      @media (max-width:999px){.shopify-section--collection-choice-guide .collection-choice-guide__inner{grid-template-columns:1fr}}\n      @media (max-width:699px){.shopify-section--collection-choice-guide .collection-choice-guide__inner{gap:18px}.shopify-section--collection-choice-guide .collection-choice-guide__grid{grid-template-columns:1fr}.shopify-section--collection-choice-guide .collection-choice-guide__card--has-media{min-height:142px;padding-inline-end:82px}.shopify-section--collection-choice-guide .collection-choice-guide__media{width:54px;height:54px}}\n    `;\n    document.head.appendChild(style);\n  };\n\n  const cardHtml = (card, collectionTitle) => `\n    <article class=\"collection-choice-guide__card collection-choice-guide__card--group-${card.group}${card.image ? ' collection-choice-guide__card--has-media' : ''}\" data-choice-card data-choice-group=\"${card.group}\">\n      <p class=\"collection-choice-guide__badge\">${escapeHtml(card.badge)}</p>\n      ${card.image ? `<div class=\"collection-choice-guide__media\"><img src=\"${escapeHtml(card.image)}\" alt=\"${escapeHtml(card.alt || card.title)}\" loading=\"lazy\"></div>` : ''}\n      <h3 class=\"collection-choice-guide__card-title\">${escapeHtml(card.title)}</h3>\n      <p class=\"collection-choice-guide__text\">${escapeHtml(card.text)}</p>\n      <a class=\"collection-choice-guide__link\" href=\"${escapeHtml(card.link)}\" data-collection-choice-link data-collection-handle=\"${escapeHtml(window.location.pathname.split('/').pop())}\" data-collection-title=\"${escapeHtml(collectionTitle)}\" data-card-title=\"${escapeHtml(card.title)}\" data-card-badge=\"${escapeHtml(card.badge)}\" data-link-label=\"${escapeHtml(card.label)}\">${escapeHtml(card.label)} <span aria-hidden=\"true\">&rarr;</span></a>\n    </article>\n  `;\n\n  const hydrate = () => {\n    const guide = guideByPath[window.location.pathname];\n    if (!guide) return;\n\n    const section = document.querySelector('.shopify-section--collection-choice-guide');\n    if (!section || section.querySelector('[data-choice-tab]')) return;\n\n    const root = section.querySelector('.collection-choice-guide');\n    if (!root) return;\n\n    const groups = ['purpose', 'texture', 'wrinkle', 'map'].filter((group) => guide.cards.some((card) => card.group === group));\n\n    root.setAttribute('data-choice-guide-default', 'purpose');\n    root.innerHTML = `\n      <div class=\"container\">\n        <div class=\"collection-choice-guide__inner\">\n          <div class=\"collection-choice-guide__header\">\n            <p class=\"collection-choice-guide__subheading\">CHOOSING GUIDE</p>\n            <h2 class=\"collection-choice-guide__heading\">\u8FF7\u3063\u305F\u3089\u3001\u7528\u9014\u304B\u3089\u9078\u3079\u307E\u3059</h2>\n            <div class=\"collection-choice-guide__content rte\"><p>\u540C\u3058\u30AB\u30C6\u30B4\u30EA\u306E\u4E2D\u3067\u3082\u3001\u539A\u307F\u30FB\u30CF\u30EA\u30FB\u7528\u9014\u3067\u5411\u304D\u4E0D\u5411\u304D\u304C\u3042\u308A\u307E\u3059\u3002\u6700\u521D\u306B\u898B\u308B\u5019\u88DC\u3092\u7D5E\u308B\u305F\u3081\u306E\u76EE\u5B89\u3067\u3059\u3002</p></div>\n            <div class=\"collection-choice-guide__tabs\" role=\"tablist\" aria-label=\"${escapeHtml(guide.collectionTitle)}\u306E\u9078\u3073\u65B9\">\n              ${groups.map((group) => `<button class=\"collection-choice-guide__tab\" type=\"button\" role=\"tab\" aria-selected=\"${group === 'purpose'}\" data-choice-tab=\"${group}\">${labels[group]}</button>`).join('')}\n            </div>\n          </div>\n          <div class=\"collection-choice-guide__grid\">\n            ${guide.cards.map((card) => cardHtml(card, guide.collectionTitle)).join('')}\n          </div>\n        </div>\n      </div>\n    `;\n\n    injectStyle();\n\n    const tabs = section.querySelectorAll('[data-choice-tab]');\n    const cards = section.querySelectorAll('[data-choice-card]');\n    const setActiveGroup = (group) => {\n      tabs.forEach((tab) => tab.setAttribute('aria-selected', tab.dataset.choiceTab === group ? 'true' : 'false'));\n      cards.forEach((card) => {\n        card.hidden = card.dataset.choiceGroup !== group;\n      });\n    };\n\n    tabs.forEach((tab) => tab.addEventListener('click', () => setActiveGroup(tab.dataset.choiceTab)));\n    setActiveGroup('purpose');\n  };\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', hydrate, { once: true });\n  } else {\n    hydrate();\n  }\n})();\n// nunoawase-product-link-correction:start\n(function () {\n  const rootSelector = '.nunoawase-products';\n  const productSelector = rootSelector + ' a[href*=\"/products/\"]';\n  const clean = (value) => String(value || '').replace(/[\\s\\u3000]+/g, ' ').trim();\n  const oldSoft = (label) => /[\uFF03#]\\s*[a-g]\\b/i.test(label) || /(?:^|[\\/\uFF0F])\\s*[a-g]\\s+(\u6FC3\u30EC\u30C3\u30C9|\u30EC\u30C3\u30C9|\u6FC3\u30CD\u30A4\u30D3\u30FC|\u30CD\u30A4\u30D3\u30FC|\u30AB\u30D5\u30A7\u30AA\u30EC|\u6FC3\u30B0\u30EA\u30FC\u30F3|\u30B0\u30EA\u30FC\u30F3|\u30D6\u30E9\u30A6\u30F3|\u6FC3\u30D6\u30E9\u30C3\u30AF|\u30D6\u30E9\u30C3\u30AF|\u30ED\u30FC\u30BA)/i.test(label);\n  const targetHandle = (rawLabel) => {\n    const label = clean(rawLabel);\n    if (/\u7DBF\u30DD\u30EA.*\u30CF\u30FC\u30D5\u30C0\u30F3\u30AC\u30EA\u30FC.*(?:1mm|3mm|6mm|1\u339C|3\u339C|6\u339C).*\u30AE\u30F3\u30AC\u30E0.*\u5730[\uFF1A:]/.test(label)) return '5557-6667';\n    if (/^\u7DBF\u30DD\u30EA\u6DF7\u7D21\u30CF\u30FC\u30D5\u30C0\u30F3\u30AC\u30EA\u30FC \u30AE\u30F3\u30AC\u30E0/.test(label)) return 'd100-1';\n    if (/\u8272\u843D\u3061\u3057\u306A\u3044 \u7DBF\u30DD\u30EA\u30C7\u30CB\u30E0\u30B9\u30C8\u30E9\u30A4\u30D7/.test(label)) return '5731-2';\n    if (/\u30E9\u30DF\u30CD\u30FC\u30C8(?:\u52A0\u5DE5)?.*\u7DBF\u30DD\u30EA.*\u30CF\u30FC\u30D5\u30C0\u30F3\u30AC\u30EA\u30FC/.test(label)) return '66000';\n    if (/\u7DBF\u30DD\u30EA.*\u30C0\u30F3\u30AC\u30EA\u30FC.*\u85CD\u67D3\u98A8/.test(label)) return '8500';\n    if (/\u7DBF\u30DD\u30EA.*\u30C0\u30F3\u30AC\u30EA\u30FC.*3mm\u30AE\u30F3\u30AC\u30E0.*\u30AD\u30EB\u30C8/.test(label)) return '4520-quilt';\n    if (!/\u30BD\u30D5\u30C8\u30C0\u30F3\u30AC\u30EA\u30FC/.test(label) || oldSoft(label)) return '';\n    if (/\u7E54\u30C9\u30C3\u30C8/.test(label)) return '7000';\n    if (/\u30B0\u30EC\u30F3\u30C1\u30A7\u30C3\u30AF|[\uFF03#]\\s*15|\uFF0315/.test(label)) return '8000-15';\n    if (/\u30A6\u30A3\u30F3\u30C9\u30A6\u30C1\u30A7\u30C3\u30AF|[\uFF03#]\\s*29/.test(label)) return '8000-29';\n    if (/No\\.?\\s*24|\uFF2E\uFF4F\\.?\\s*24|[\uFF03#]\\s*24|\u30AA\u30EA\u30B8\u30CA\u30EB\u30C1\u30A7\u30C3\u30AF/.test(label)) return '8000-24';\n    if (/No\\.?\\s*28|\uFF2E\uFF4F\\.?\\s*28/.test(label)) return '8000-28';\n    if (/No\\.?\\s*23|\uFF2E\uFF4F\\.?\\s*23|\u30AF\u30E9\u30B7\u30C3\u30AF\u30C1\u30A7\u30C3\u30AF[\uFF03#]?\\s*23/.test(label)) return '8000-23';\n    if (/No\\.?\\s*19|\uFF2E\uFF4F\\.?\\s*19/.test(label)) return '8000-19';\n    if (/No\\.?\\s*20|\uFF2E\uFF4F\\.?\\s*20/.test(label)) return '8000-20';\n    if (/No\\.?\\s*22|\uFF2E\uFF4F\\.?\\s*22/.test(label)) return '8000-22';\n    if (/\u30D4\u30F3\u30B9\u30C8\u30E9\u30A4\u30D7|[\uFF03#]\\s*18/.test(label)) return '8000-18';\n    if (/1\\.5mm\u30AE\u30F3\u30AC\u30E0/.test(label)) return '8000-12';\n    if (/3mm\u30AE\u30F3\u30AC\u30E0/.test(label)) return '8000-27';\n    if (/5mm\u30AE\u30F3\u30AC\u30E0/.test(label)) return '86000';\n    if (/5mm\u30B9\u30C8\u30E9\u30A4\u30D7|1\\.5mm\u30B9\u30C8\u30E9\u30A4\u30D7/.test(label)) return '8000-11';\n    return '';\n  };\n  const fixLinks = (root = document) => {\n    if (!document.querySelector(rootSelector)) return;\n    root.querySelectorAll?.(productSelector).forEach((link) => {\n      const handle = targetHandle(link.textContent);\n      if (!handle) return;\n      const url = new URL(link.getAttribute('href'), window.location.origin);\n      if (url.pathname !== '/products/' + handle) {\n        url.pathname = '/products/' + handle;\n        link.href = url.href;\n      }\n    });\n  };\n  const init = () => {\n    if (!document.querySelector(rootSelector)) return;\n    fixLinks(document);\n    new MutationObserver((mutations) => {\n      mutations.forEach((mutation) => {\n        mutation.addedNodes.forEach((node) => {\n          if (node.nodeType === 1) fixLinks(node);\n        });\n      });\n    }).observe(document.body, { childList: true, subtree: true });\n  };\n  if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', init, { once: true });\n  else init();\n})();\n// nunoawase-product-link-correction:end\n\n(() => {\n  const marker = 'kit-quantity-unit-client-guard-20260601-v1';\n  if (window[marker]) return;\n  window[marker] = true;\n\n  const onReady = (callback) => {\n    if (document.readyState === 'loading') {\n      document.addEventListener('DOMContentLoaded', callback, { once: true });\n    } else {\n      callback();\n    }\n  };\n\n  const isKitProductPage = () => /^\\/products\\/[^/?#]*-kit(?:$|[/?#])/.test(window.location.pathname);\n\n  const normalizeQuantityBlock = (block) => {\n    const label = block.querySelector('.label_text');\n    if (label && label.textContent.trim() === '\u9577\u3055') {\n      label.textContent = '\u6570\u91CF';\n    }\n\n    const wrapper = block.querySelector('.quantity-selector-wrapper');\n    if (!wrapper) return;\n\n    wrapper.querySelectorAll('select[name=\"quantity\"] option').forEach((option) => {\n      const value = option.textContent.replace(/\\s+/g, '').trim();\n      if (/^\\d+$/.test(value)) {\n        option.textContent = value + '\u30BB\u30C3\u30C8';\n      }\n    });\n\n    Array.from(wrapper.children).forEach((child) => {\n      if (child.tagName === 'SPAN' && child.textContent.trim() === 'cm') {\n        child.remove();\n      }\n    });\n  };\n\n  const normalizeKitQuantity = () => {\n    if (!isKitProductPage()) return;\n    document\n      .querySelectorAll('.product-info__block-item[data-block-id=\"quantity_selector\"], .product-info__block-item[data-block-type=\"quantity-selector\"]')\n      .forEach(normalizeQuantityBlock);\n  };\n\n  onReady(() => {\n    normalizeKitQuantity();\n    document.addEventListener('shopify:section:load', normalizeKitQuantity);\n  });\n})();\n\n// review-request-judgeme-cdn-fallback-20260602\n(function () {\n  if (window.__reviewRequestJudgeMeFallback) return;\n  var normalizedPath = window.location.pathname.replace(/\\/$/, \"\");\n  if (normalizedPath !== \"/products/review\") return;\n\n  window.__reviewRequestJudgeMeFallback = true;\n  window.jdgm = window.jdgm || {};\n  window.jdgm.CDN_BASE_URL = window.jdgm.CDN_BASE_URL || \"https://cdn.shopify.com/extensions/019e74df-668b-769a-ba9e-6cd96fff6c65/judgeme-546/assets/\";\n\n  function ensureLoader(forceReload) {\n    var container = document.getElementById(\"judgeme_product_reviews\");\n    if (!container) return;\n\n    window.jdgm = window.jdgm || {};\n    window.jdgm.CDN_BASE_URL = window.jdgm.CDN_BASE_URL || \"https://cdn.shopify.com/extensions/019e74df-668b-769a-ba9e-6cd96fff6c65/judgeme-546/assets/\";\n\n    if (forceReload && window.jdgm._loaderExecuted && !container.querySelector(\".jdgm-rev, .jdgm-row, .jdgm-widget-actions-wrapper\")) {\n      window.jdgm._loaderExecuted = false;\n    }\n\n    if (!forceReload && document.querySelector('script[src*=\"/judgeme-\"][src*=\"/assets/loader.js\"]')) return;\n\n    var loader = document.createElement(\"script\");\n    loader.src = \"https://cdn.shopify.com/extensions/019e74df-668b-769a-ba9e-6cd96fff6c65/judgeme-546/assets/loader.js\";\n    loader.type = \"text/javascript\";\n    loader.defer = true;\n    loader.setAttribute(\"data-review-request-custom-loader\", \"true\");\n    document.head.appendChild(loader);\n  }\n\n  ensureLoader(false);\n  window.setTimeout(function () { ensureLoader(true); }, 600);\n  window.setTimeout(function () { ensureLoader(true); }, 1800);\n})();\n\n// judgeme-star-glyph-fallback-20260604\n(function () {\n  if (window.__judgeMeStarGlyphFallback) return;\n  window.__judgeMeStarGlyphFallback = true;\n\n  var starMap = {\n    \"\\ue000\": \"\\u2605\",\n    \"\\ue001\": \"\\u2606\",\n    \"\\ue002\": \"\\u2605\"\n  };\n\n  function normalizeIcon(icon) {\n    if (!icon || icon.nodeType !== 1) return;\n\n    var original = icon.textContent || \"\";\n    var normalized = \"\";\n    var changed = false;\n\n    for (var i = 0; i < original.length; i += 1) {\n      var char = original.charAt(i);\n      if (starMap[char]) {\n        normalized += starMap[char];\n        changed = true;\n      } else {\n        normalized += char;\n      }\n    }\n\n    if (changed) {\n      icon.textContent = normalized;\n      icon.setAttribute(\"data-jm-star-glyph-normalized\", \"true\");\n    }\n  }\n\n  function normalizeJudgeMeStars(root) {\n    var scope = root && root.nodeType === 1 ? root : document;\n\n    if (scope.matches && scope.matches(\".jm-star-rating__font-icon\")) {\n      normalizeIcon(scope);\n    }\n\n    if (scope.querySelectorAll) {\n      scope\n        .querySelectorAll(\"#judgeme_product_reviews .jm-star-rating__font-icon, .jdgm-review-widget .jm-star-rating__font-icon\")\n        .forEach(normalizeIcon);\n    }\n  }\n\n  function init() {\n    normalizeJudgeMeStars(document);\n\n    var observer = new MutationObserver(function (mutations) {\n      mutations.forEach(function (mutation) {\n        if (mutation.type === \"characterData\") {\n          normalizeJudgeMeStars(mutation.target.parentElement);\n          return;\n        }\n\n        mutation.addedNodes.forEach(function (node) {\n          if (node.nodeType === 1) {\n            normalizeJudgeMeStars(node);\n          }\n        });\n      });\n    });\n\n    observer.observe(document.body, {\n      childList: true,\n      subtree: true,\n      characterData: true\n    });\n\n    [500, 1500, 4000].forEach(function (delay) {\n      window.setTimeout(function () {\n        normalizeJudgeMeStars(document);\n      }, delay);\n    });\n  }\n\n  if (document.readyState === \"loading\") {\n    document.addEventListener(\"DOMContentLoaded\", init, { once: true });\n  } else {\n    init();\n  }\n})();\n"],
  "mappings": "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",
  "names": []
}
