store.yamatabi.shop Open in urlscan Pro
3.113.186.52  Public Scan

Submitted URL: http://store.yamatabi.shop/items/54092721
Effective URL: https://store.yamatabi.shop/items/54092721
Submission: On March 27 via api from US — Scanned from US

Form analysis 9 forms found in the DOM

GET https://store.yamatabi.shop

<form role="search" method="get" action="https://store.yamatabi.shop" class="uk-search uk-search-navbar">
  <input class="uk-search-input" type="search" name="q" id="search-menu" placeholder="検索" autofocus="">
</form>

GET https://store.yamatabi.shop

<form class="uk-search uk-search-default" role="search" method="get" action="https://store.yamatabi.shop">
  <a href="" uk-search-icon="" class="uk-icon uk-search-icon"><svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><circle fill="none" stroke="#000" stroke-width="1.1" cx="9" cy="9" r="7"></circle><path fill="none" stroke="#000" stroke-width="1.1" d="M14,14 L18,18 L14,14 Z"></path></svg></a>
  <input class="uk-search-input" type="search" name="q" id="search-sp" placeholder="検索">
</form>

<form class="mailMagazineSubscribe_form">
  <div class="x_mailMagazineSubscribe_field mailMagazineSubscribe_field"> <input class="x_mailMagazineSubscribe_input mailMagazineSubscribe_input" type="email" id="email" maxlength="255" placeholder="info@example.com" required=""> <button
      class="x_mailMagazineSubscribe_submit mailMagazineSubscribe_submit" type="button">登録</button> </div>
  <div class="x_mailMagazineSubscribe_confirm mailMagazineSubscribe_confirm"></div>
</form>

Name: menuPOST https://store.yamatabi.shop/cart/add/socal-official-ec

<form id="purchase_form" class="x_purchaseForm" name="menu" action="https://store.yamatabi.shop/cart/add/socal-official-ec" method="post" data-purchase-form="" data-disabled="false">
  <div id="itemSelect">
    <div id="variationSelectWrap" class="purchaseElement" data-target-version="v2"> <label for="valiationSelect">Variety</label> <select name="select" id="valiationSelect" data-display-stock="1">
        <option value="195467115" data-index="0" data-stock="68" selected="">White</option>
        <option value="201535136" data-index="1" data-stock="61">Gray</option>
        <option value="210491897" data-index="2" data-stock="85">Black</option>
      </select> </div>
    <div id="amountSelectWrap" class="purchaseElement" style="" data-target-version="v2"> <label for="amountSelect">Quantity</label> <select name="amount" id="amountSelect" class="amountSelect" style="">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
        <option value="8">8</option>
        <option value="9">9</option>
        <option value="10">10</option>
        <option value="11">11</option>
        <option value="12">12</option>
        <option value="13">13</option>
        <option value="14">14</option>
        <option value="15">15</option>
        <option value="16">16</option>
        <option value="17">17</option>
        <option value="18">18</option>
        <option value="19">19</option>
        <option value="20">20</option>
        <option value="21">21</option>
        <option value="22">22</option>
        <option value="23">23</option>
        <option value="24">24</option>
        <option value="25">25</option>
        <option value="26">26</option>
        <option value="27">27</option>
        <option value="28">28</option>
        <option value="29">29</option>
        <option value="30">30</option>
        <option value="31">31</option>
        <option value="32">32</option>
        <option value="33">33</option>
        <option value="34">34</option>
        <option value="35">35</option>
        <option value="36">36</option>
        <option value="37">37</option>
        <option value="38">38</option>
        <option value="39">39</option>
        <option value="40">40</option>
        <option value="41">41</option>
        <option value="42">42</option>
        <option value="43">43</option>
        <option value="44">44</option>
        <option value="45">45</option>
        <option value="46">46</option>
        <option value="47">47</option>
        <option value="48">48</option>
        <option value="49">49</option>
        <option value="50">50</option>
        <option value="51">51</option>
        <option value="52">52</option>
        <option value="53">53</option>
        <option value="54">54</option>
        <option value="55">55</option>
        <option value="56">56</option>
        <option value="57">57</option>
        <option value="58">58</option>
        <option value="59">59</option>
        <option value="60">60</option>
        <option value="61">61</option>
        <option value="62">62</option>
        <option value="63">63</option>
        <option value="64">64</option>
        <option value="65">65</option>
        <option value="66">66</option>
        <option value="67">67</option>
        <option value="68">68</option>
      </select> <select name="amount" id="amountSelect" class="amountSelect" disabled="" style="display:none;">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
        <option value="8">8</option>
        <option value="9">9</option>
        <option value="10">10</option>
        <option value="11">11</option>
        <option value="12">12</option>
        <option value="13">13</option>
        <option value="14">14</option>
        <option value="15">15</option>
        <option value="16">16</option>
        <option value="17">17</option>
        <option value="18">18</option>
        <option value="19">19</option>
        <option value="20">20</option>
        <option value="21">21</option>
        <option value="22">22</option>
        <option value="23">23</option>
        <option value="24">24</option>
        <option value="25">25</option>
        <option value="26">26</option>
        <option value="27">27</option>
        <option value="28">28</option>
        <option value="29">29</option>
        <option value="30">30</option>
        <option value="31">31</option>
        <option value="32">32</option>
        <option value="33">33</option>
        <option value="34">34</option>
        <option value="35">35</option>
        <option value="36">36</option>
        <option value="37">37</option>
        <option value="38">38</option>
        <option value="39">39</option>
        <option value="40">40</option>
        <option value="41">41</option>
        <option value="42">42</option>
        <option value="43">43</option>
        <option value="44">44</option>
        <option value="45">45</option>
        <option value="46">46</option>
        <option value="47">47</option>
        <option value="48">48</option>
        <option value="49">49</option>
        <option value="50">50</option>
        <option value="51">51</option>
        <option value="52">52</option>
        <option value="53">53</option>
        <option value="54">54</option>
        <option value="55">55</option>
        <option value="56">56</option>
        <option value="57">57</option>
        <option value="58">58</option>
        <option value="59">59</option>
        <option value="60">60</option>
        <option value="61">61</option>
      </select> <select name="amount" id="amountSelect" class="amountSelect" disabled="" style="display:none;">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
        <option value="8">8</option>
        <option value="9">9</option>
        <option value="10">10</option>
        <option value="11">11</option>
        <option value="12">12</option>
        <option value="13">13</option>
        <option value="14">14</option>
        <option value="15">15</option>
        <option value="16">16</option>
        <option value="17">17</option>
        <option value="18">18</option>
        <option value="19">19</option>
        <option value="20">20</option>
        <option value="21">21</option>
        <option value="22">22</option>
        <option value="23">23</option>
        <option value="24">24</option>
        <option value="25">25</option>
        <option value="26">26</option>
        <option value="27">27</option>
        <option value="28">28</option>
        <option value="29">29</option>
        <option value="30">30</option>
        <option value="31">31</option>
        <option value="32">32</option>
        <option value="33">33</option>
        <option value="34">34</option>
        <option value="35">35</option>
        <option value="36">36</option>
        <option value="37">37</option>
        <option value="38">38</option>
        <option value="39">39</option>
        <option value="40">40</option>
        <option value="41">41</option>
        <option value="42">42</option>
        <option value="43">43</option>
        <option value="44">44</option>
        <option value="45">45</option>
        <option value="46">46</option>
        <option value="47">47</option>
        <option value="48">48</option>
        <option value="49">49</option>
        <option value="50">50</option>
        <option value="51">51</option>
        <option value="52">52</option>
        <option value="53">53</option>
        <option value="54">54</option>
        <option value="55">55</option>
        <option value="56">56</option>
        <option value="57">57</option>
        <option value="58">58</option>
        <option value="59">59</option>
        <option value="60">60</option>
        <option value="61">61</option>
        <option value="62">62</option>
        <option value="63">63</option>
        <option value="64">64</option>
        <option value="65">65</option>
        <option value="66">66</option>
        <option value="67">67</option>
        <option value="68">68</option>
        <option value="69">69</option>
        <option value="70">70</option>
        <option value="71">71</option>
        <option value="72">72</option>
        <option value="73">73</option>
        <option value="74">74</option>
        <option value="75">75</option>
        <option value="76">76</option>
        <option value="77">77</option>
        <option value="78">78</option>
        <option value="79">79</option>
        <option value="80">80</option>
        <option value="81">81</option>
        <option value="82">82</option>
        <option value="83">83</option>
        <option value="84">84</option>
        <option value="85">85</option>
      </select> </div>
  </div>
  <style>
    body form[id] #variationSelectWrap,
    body form[id] .itemOptionElement {
      max-width: 100%
    }

    body #purchase_form #itemSelect #valiationSelect,
    body #purchase_form #itemSelect select.itemOption__select,
    body form[id] #itemSelect #amountSelect,
    body form[id] #itemSelect #valiationSelect,
    body form[id] #itemSelect select.itemOption__select {
      height: auto;
      white-space: normal;
      max-width: 100%;
      min-height: 2.1em;
      appearance: none;
      -webkit-appearance: none;
      padding-right: 1em;
      line-height: normal;
      word-break: normal;
      background-repeat: no-repeat;
      background-position: right .35em center;
      background-size: auto;
      background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cdefs%3E%3Cfilter id='a' x='0' y='0' width='10' height='6' filterUnits='userSpaceOnUse'%3E%3CfeFlood result='flood' flood-color='%23333' flood-opacity='.5'/%3E%3CfeComposite result='composite' operator='in' in2='SourceGraphic'/%3E%3CfeBlend result='blend' mode='multiply' in2='SourceGraphic'/%3E%3C/filter%3E%3C/defs%3E%3Cpath d='M5 6l5-6H0z' fill='%23fafafa' fill-rule='evenodd' filter='url(%23a)'/%3E%3C/svg%3E")
    }
  </style> <input type="hidden" name="shopID" value="socal-official-ec"> <input type="hidden" name="id" value="54092721">
  <script>
    ($ => {
      if (!document.querySelector('form[data-purchase-form]')) {
        $('#valiationSelect').on('change', function() {
          $('#amountSelectWrap  .amountSelect').css('display', 'none').prop('disabled', true);
          $('#amountSelectWrap  .amountSelect:eq(' + $(this).find(':selected').attr('data-index') + ')').css('display', '').prop('disabled', false);
        });
      }
      window.__initItemSelect = function() {
        if (!document.querySelector('form[data-purchase-form]')) {
          removeElements('#itemSelect [data-target-version="v2"]');
          return;
        }
        const elements = document.querySelectorAll('#itemSelect');
        elements.forEach(el => {
          const form = el.closest('form[data-purchase-form]')
          if (!form) {
            removeElements('#itemSelect [data-target-version="v2"]', el);
            $itemSelect = $(el);
            $itemSelect.find('#valiationSelect').on('change', function() {
              $itemSelect.find('#amountSelectWrap  .amountSelect').css('display', 'none').prop('disabled', true);
              $itemSelect.find('#amountSelectWrap  .amountSelect:eq(' + $(this).find(':selected').attr('data-index') + ')').css('display', '').prop('disabled', false);
            });
          } else {
            removeElements('#itemSelect [data-target-version="v1"]', el);
            $form = $(form);
            changeAmountSelectAndOptions($form.find('#valiationSelect'), $form);
            updatePurchaseFormDisabled($form.find('#itemSelect'), $form);
            form.querySelectorAll('#valiationSelect').forEach(select => {
              const $select = $(select);
              if ($select.data('displayStock')) {
                $select.on('change', () => {
                  const parentForm = $(el.closest('form[data-purchase-form]'));
                  changeAmountSelectAndOptions(select, parentForm);
                  updatePurchaseFormDisabled(parentForm.find('#itemSelect'), parentForm);
                });
              }
            });
          }
        })

        function removeElements(selector, parent = document) {
          const target_elements = parent.querySelectorAll(selector);
          target_elements.forEach(el => {
            el.parentNode.removeChild(el);
          })
        }
      }

      function changeAmountSelectAndOptions(select, $form) {
        $form.find('#amountSelectWrap  .amountSelect').css('display', 'none').prop('disabled', true);
        $selectedVariation = $(select).find(':selected');
        $amountSelectWrap = $form.find('#amountSelectWrap');
        $outOfStockButton = $form.find('.purchaseButton__btn--outOfStock');
        $addToCartButton = $form.find('.purchaseButton__btn--addToCart');
        $itemSelectOptions = $form.find('[class^="itemOption__"]');
        $itemSelectOptions.css('display', 'block');
        if ($(select).length == 0) {
          $amountSelect = $form.find('#amountSelectWrap  .amountSelect');
          $amountSelect.css('display', '').prop('disabled', false);
          $amountSelectWrap.show();
          $addToCartButton.css('display', 'block');
          $outOfStockButton.css('display', 'none');
          return;
        }
        $amountSelect = $form.find('#amountSelectWrap  .amountSelect:eq(' + $selectedVariation.attr('data-index') + ')');
        if (Number($selectedVariation.data('stock')) > 0) {
          $amountSelect.css('display', '').prop('disabled', false);
          $amountSelectWrap.show();
          $addToCartButton.css('display', 'block');
          $outOfStockButton.css('display', 'none');
        } else {
          $amountSelectWrap.hide();
          $addToCartButton.css('display', 'none');
          $outOfStockButton.css('display', 'block');
        }
      }
      /**
       * 数量選択が有効でない場合に #purchase_form を送信しないようにする
       * @see https://github.com/baseinc/design-engine/issues/1094
       */
      function updatePurchaseFormDisabled($itemSelect, $form) {
        const isAmountActive = Array.from($itemSelect.find('[name="amount"]')).some((el) => !(el.style.display === 'none' && el.disabled));
        $form.attr('data-disabled', isAmountActive ? 'false' : 'true');
      }
      document.addEventListener('DOMContentLoaded', () => {
        window.__initItemSelect && window.__initItemSelect();
        window.__initItemSelect = undefined;
      });
    })(__BASE_JQUERY__);
  </script>
  <div class="purchaseButton"> <button type="submit" class="purchaseButton__btn purchaseButton__btn--addToCart" style="display: block;"> Add to cart </button>
    <a class="purchaseButton__btn purchaseButton__btn--outOfStock purchaseButton__btn--requestRestockMail x_restockMailNotificationModalOpen" style="display:none;" href="javascript:void(0);">Request restock notification</a> <input type="hidden"
      class="x_ageVerificationGenre" value=""> <input type="hidden" class="x_ageVerificationAge" value="">
    <style>
      @font-face {
        font-family: shopicon;
        font-style: normal;
        font-weight: 400;
        src: url(https://static.thebase.in/font/v1/shopicon.eot?md4x76=);
        src: url(https://static.thebase.in/font/v1/shopicon.eot?md4x76=#iefix) format("embedded-opentype"), url(https://static.thebase.in/font/v1/shopicon.ttf?md4x76=) format("truetype"), url(https://static.thebase.in/font/v1/shopicon.woff?md4x76=) format("woff"), url(https://static.thebase.in/font/v1/shopicon.svg?md4x76=#shopicon) format("svg")
      }

      .purchaseButtonModal__wrapper {
        align-items: center;
        background: rgba(0, 0, 0, .3);
        display: none;
        justify-content: center;
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 6000000
      }

      .purchaseButtonModal__container {
        background: #fff;
        border-radius: 4px;
        box-shadow: 0 0 16px rgba(56, 67, 89, .3);
        position: relative;
        width: 560px
      }

      .purchaseButtonModal__result {
        display: none
      }

      .is_success .purchaseButtonModal__submit {
        display: none
      }

      .is_success .purchaseButtonModal__result {
        display: block
      }

      .is_success .purchaseButtonModal__resultText {
        background: #eaf8f7;
        padding: 12px;
        border-radius: 4px;
        font-weight: 700;
        color: #11beae;
        font-size: 14px;
        margin-bottom: 16px
      }

      .purchaseButtonModal__title {
        border-bottom: 1px solid #f0f1f4;
        color: #3d3d3d;
        font-size: 20px;
        font-weight: 700;
        line-height: 68px;
        text-align: center
      }

      .purchaseButtonModal__inner {
        padding: 24px 32px;
        text-align: left
      }

      .purchaseButtonModal__text {
        color: #3d3d3d;
        font-size: 14px;
        line-height: 1.4;
        margin: 0 0 12px
      }

      .purchaseButtonModal__subText {
        margin: 0 0 40px
      }

      .purchaseButtonModal__subTextChild {
        color: #777;
        font-size: 12px;
        line-height: 1.4;
        margin-left: 1em;
        text-indent: -1em
      }

      .purchaseButtonModal__label {
        color: #3d3d3d;
        font-size: 14px;
        font-weight: 700;
        margin-bottom: 4px
      }

      .purchaseButtonModal__information {
        display: flex;
        background: #f0f1f4;
        padding: 8px;
        border-radius: 4px;
        margin: 8px auto 24px
      }

      .purchaseButtonModal__informationText {
        margin-left: 8px;
        font-size: 12px;
        color: #3d3d3d;
        margin-top: 0
      }

      .purchaseButtonModal__inputArea {
        display: flex;
        align-items: center;
        justify-content: center
      }

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

      .purchaseButtonModal__input {
        box-sizing: border-box;
        display: block;
        font-size: 14px;
        height: 40px;
        line-height: 40px;
        margin: 0 0 32px;
        outline: none;
        padding: 0 12px;
        width: 100%;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none
      }

      .purchaseButtonModal__input[type=number]::-webkit-inner-spin-button,
      .purchaseButtonModal__input[type=number]::-webkit-outer-spin-button {
        appearance: none
      }

      .purchaseButtonModal__input:placeholder-shown {
        color: #c7c7cd
      }

      .purchaseButtonModal__input::-webkit-input-placeholder {
        color: #c7c7cd;
        opacity: 1
      }

      .purchaseButtonModal__input::-moz-placeholder {
        color: #c7c7cd;
        opacity: 1
      }

      .purchaseButtonModal__input:-ms-input-placeholder {
        color: #c7c7cd
      }

      .purchaseButtonModal__error {
        background: #fcdcdc;
        border-radius: 4px;
        color: #fa5171;
        display: none;
        font-size: 12px;
        font-weight: 700;
        margin: 0 0 24px;
        padding: 8px;
        text-align: left
      }

      .purchaseButtonModal__errorIcon {
        margin-right: 8px;
        height: auto;
        vertical-align: middle;
        width: 12px
      }

      .purchaseButtonModal__errorText {
        vertical-align: middle
      }

      .purchaseButtonModal__btn {
        border: none;
        border-radius: 5px;
        box-sizing: border-box;
        cursor: pointer;
        color: #fff;
        display: block;
        font-size: 16px;
        height: 40px;
        line-height: 40px;
        margin: 0 auto;
        outline: none;
        padding: 0;
        text-align: center;
        transition: .3s;
        width: 280px;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none
      }

      .purchaseButtonModal__btn:hover {
        opacity: .7;
        transition: .3s
      }

      .purchaseButtonModal__btn--submit {
        background: #000
      }

      .purchaseButtonModal__btn--submit:disabled {
        cursor: not-allowed;
        opacity: .7
      }

      .purchaseButtonModal__btn--close {
        background: #999
      }

      .purchaseButtonModal__closeIcon {
        background: none;
        border: none;
        cursor: pointer;
        margin: 0;
        height: 16px;
        outline: none;
        padding: 0;
        position: absolute;
        top: 26px;
        right: 26px;
        width: 16px;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none
      }

      .purchaseButtonModal__closeIcon:after,
      .purchaseButtonModal__closeIcon:before {
        background: #3d3d3d;
        content: "";
        display: block;
        position: absolute;
        top: 7px;
        right: -3px;
        height: 2px;
        width: 22px
      }

      .purchaseButtonModal__closeIcon:before {
        transform: rotate(45deg)
      }

      .purchaseButtonModal__closeIcon:after {
        transform: rotate(-45deg)
      }

      .purchaseButtonModal__ageVerificationWarningText {
        font-size: 12px;
        font-weight: 700;
        text-align: center;
        margin-bottom: 16px
      }

      .si-information:before {
        content: "\e919";
        font-family: shopicon;
        font-style: normal;
        font-weight: 400
      }

      .purchaseButtonModal__inner.ageVerificationModal__inner {
        text-align: center
      }

      .purchaseButtonModal__inner.ageVerificationModal__footer {
        border-top: 1px solid #f0f1f4
      }

      .purchaseButtonModal__input.ageVerificationModal__input {
        margin: 0;
        width: auto
      }

      .purchaseButtonModal__input.ageVerificationModal__input[aria-invalid=true] {
        border-color: #fa5171;
        background-color: #ffe5e9
      }

      .purchaseButtonModal__error.ageVerificationModal__error {
        background: none;
        text-align: center;
        margin: 0
      }

      @media screen and (max-width:828px) {
        .is_restockMailNotificationModalOpen #mainContent {
          position: static
        }

        .purchaseButtonModal__container {
          border-radius: 0;
          box-shadow: none;
          position: absolute;
          top: 0;
          right: 0;
          bottom: 0;
          left: 0;
          width: 100%
        }

        .purchaseButtonModal__title {
          font-size: 16px;
          line-height: 48px;
          padding: 0 30px
        }

        .purchaseButtonModal__inner {
          padding: 16px
        }

        .purchaseButtonModal__closeIcon {
          top: 16px;
          right: 16px
        }

        .purchaseButtonModal__input {
          background: #fff;
          border: 1px solid #bbb
        }

        .purchaseButtonModal__btn {
          height: 55px;
          line-height: 55px;
          width: 100%
        }

        .is_success .purchaseButtonModal__container {
          height: auto
        }
      }
    </style>
    <script>
      ($ => {
        if (window.__initPurchaseButtonModal) {
          window.removeEventListener('DOMContentLoaded', window.__initPurchaseButtonModal)
        }
        window.__initPurchaseButtonModal = function() {
          const KEYCODE_ENTER = 13;
          const MODAL_TYPE_RESTOCK_MAIL_NOTIFICATION = 'restockMailNotification';
          const MODAL_TYPE_AGE_VERIFICATION = 'ageVerification';
          const $modals = $('.x_purchaseButtonModal')
          $modals.remove()
          document.body.appendChild($modals[0])
          var modalType = '';
          const showPurchaseButtonModal = (type) => {
            // 文字入れオプションのinput 等のフォーカスを外す
            document.activeElement.blur();
            $('.purchaseButtonModal__title').each((_i, el) => {
              $(el).hide();
            });
            $('.purchaseButtonModal__inner').each((_i, el) => {
              $(el).hide();
            });
            $(`.purchaseButtonModal__title[data-type="${type}"]`).show();
            $(`.purchaseButtonModal__inner[data-type="${type}"]`).show();
            $('.x_purchaseButtonModal').fadeIn(250).css('display', 'flex');
            $('.x_purchaseButtonModal').attr('id', `${type}Modal`);
            $('body').addClass('is_purchaseButtonModalOpen');
            modalType = type;
          };
          const hidePurchaseButtonModal = function() {
            $('.x_purchaseButtonModal').fadeOut(150);
            $('body').removeClass('is_purchaseButtonModalOpen');
          };
          $('.x_restockMailNotificationModalOpen').on('click', function() {
            showPurchaseButtonModal(MODAL_TYPE_RESTOCK_MAIL_NOTIFICATION);
          });
          $('.x_purchaseButtonModalClose, .x_purchaseButtonModal').on('click', function() {
            hidePurchaseButtonModal();
          });
          $('.x_purchaseButtonModalInner').on('click', function(event) {
            event.stopPropagation();
          });
          $('.x_purchaseButtonModalSubmit').on('click', function() {
            purchaseButtonModalSubmit();
          });
          $(".x_purchaseButtonModalInput").on('keypress', function(ev) {
            if ((ev.which && ev.which === KEYCODE_ENTER) || (ev.keyCode && ev.keyCode === KEYCODE_ENTER)) {
              purchaseButtonModalSubmit()
              return false;
            } else {
              return true;
            }
          });
          var purchaseButtonModalSubmit = function() {
            $('.x_purchaseButtonModalError').hide();
            $('.x_purchaseButtonModalErrorText').text('')
            $(this).prop('disabled', true);
            modalRequestFunction().then(function(data) {
              onSuccessModalRequest();
            }).catch(function(errorText) {
              $('.x_purchaseButtonModalError').show();
              $('.x_purchaseButtonModalErrorText').text(errorText);
            }).finally(function() {
              $('.x_purchaseButtonModalSubmit').prop('disabled', false);
            });
          };
          var modalRequestFunction = function() {
            if (modalType === MODAL_TYPE_RESTOCK_MAIL_NOTIFICATION) {
              return requestRestockMailNotification();
            } else if (modalType === MODAL_TYPE_AGE_VERIFICATION) {
              return requestAgeVerification();
            }
          };
          var onSuccessModalRequest = function() {
            if (modalType === MODAL_TYPE_RESTOCK_MAIL_NOTIFICATION) {
              $('.x_purchaseButtonModal').addClass('is_success');
            } else if (modalType === MODAL_TYPE_AGE_VERIFICATION) {
              onAgeVerificationSubmit();
            }
          };
          // 再入荷通知
          var requestRestockMailNotification = function() {
            var selectedVariation = $('[name="select"]');
            var variation_id = null;
            if (selectedVariation.length > 0) {
              variation_id = selectedVariation.val();
            }
            var data = {
              shop_id: 'socal-official-ec',
              item_id: 54092721,
              variation_id: variation_id,
              notification_address: $('.x_purchaseButtonModalInput').val(),
            };
            return new Promise(function(resolve, reject) {
              $.ajax({
                type: 'POST',
                url: '/restock_mail_notification/restock_mail_notification_api/subscribe',
                dataType: 'JSON',
                data: JSON.stringify(data)
              }).then(function(data) {
                resolve(data);
              }, function(jqXHR) {
                reject(JSON.parse(jqXHR.responseText).error.user_message);
              })
            });
          };
          // 年齢確認
          const COOKIE_KEY_FOR_AGE_VARIFICATION = 'AgeVerificationModalCheckisCompleted' + 'socal-official-ec';
          var ageVerificationAge = $('.x_ageVerificationAge').val();
          var $ageVerificationInput = $('.x_ageVerificationInput');
          var $ageVerificationError = $('.x_ageVerificationError');
          var $ageVerificationButton = $('.x_ageVerificationSubmit');
          var ageVerificationTargetForm = null;
          var requestAgeVerification = function() {
            return new Promise(function(resolve, reject) {
              if (checkAgeWithUI($ageVerificationInput.val())) {
                resolve();
              }
              reject();
            });
          };
          var onAgeVerificationSubmit = function() {
            if (ageVerificationTargetForm) {
              if (!validateSubmitButton(ageVerificationTargetForm)) {
                hidePurchaseButtonModal();
                return
              }
              setCookieForAgeVerificationCheck();
              ageVerificationTargetForm.submit();
            }
          };
          var validateSubmitButton = function(form) {
            if (!form.classList.contains('x_purchaseForm')) {
              return true;
            }
            // 商品オプションあり時のバリデーションエラーがないか button の disabled 状態で判定
            // button が存在し disabled だった場合のみ false
            var button = form.querySelector('.purchaseButton__btn');
            return button ? !button.disabled : true;
          };
          var getCookie = function(name) {
            var matches = document.cookie.match(new RegExp("(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"));
            return matches ? decodeURIComponent(matches[1]) : undefined;
          };
          var isCompleteAgeVerificationCheck = function() {
            return !!getCookie(COOKIE_KEY_FOR_AGE_VARIFICATION);
          };
          var setCookieForAgeVerificationCheck = function() {
            if (!isCompleteAgeVerificationCheck()) {
              document.cookie = COOKIE_KEY_FOR_AGE_VARIFICATION + "=true; max-age=3600";
            }
          };
          var shouldShowAgeVerificationModal = function() {
            return !isCompleteAgeVerificationCheck();
          };
          var nonZeroPadded = function(string) {
            if (typeof string !== 'string' || string === '') {
              return '';
            }
            return String(Number(string));
          };
          var limitTo3digits = function(string) {
            return string.slice(0, 3);
          };
          var convertToHalfWidthNumber = function(string) {
            return string.replace(/[^0-90-9]/g, '').replace(/[0-9]/g, (str) => {
              return String.fromCharCode(str.charCodeAt(0) - 0xFEE0);
            });
          };
          var checkAge = function(age) {
            return ageVerificationAge ? Number(age) >= ageVerificationAge : false;
          };
          var checkAgeWithUI = function() {
            var valid = checkAge($ageVerificationInput.val());
            if (valid) {
              $ageVerificationError.hide();
              $ageVerificationInput.attr('aria-invalid', 'false')
              $ageVerificationButton.prop('disabled', false);
              return true;
            }
            $ageVerificationError.show();
            $ageVerificationInput.attr('aria-invalid', 'true')
            $ageVerificationButton.prop('disabled', true);
            return false;
          };
          var currentValue = '';
          var onAgeInput = function(string) {
            if (string.length > 1) {
              checkAgeWithUI();
            }
            currentValue = string;
          };
          // IME 有効のとき
          // (type="number" の影響で) IME 入力確定時に input 要素の既存の value がクリアされてしまうので、既存の値は currentValue にとっておき確定時にこれを利用する
          var isComposing = false;
          $ageVerificationInput.on('compositionstart', (e) => {
            isComposing = true;
          });
          $ageVerificationInput.on('compositionend', (e) => {
            e.target.value = limitTo3digits(nonZeroPadded(currentValue + convertToHalfWidthNumber(e.originalEvent.data)));
            onAgeInput(e.target.value);
            isComposing = false;
          });
          // IME 無効のとき(IME 入力未確定時はスキップ)
          $ageVerificationInput.on('input', (e) => {
            if (!isComposing) {
              e.target.value = limitTo3digits(nonZeroPadded(e.target.value));
              onAgeInput(e.target.value);
            }
          });
          var closeCommunityModal = function() {
            $('.communityOverlay').hide();
          };
          if ($('.x_ageVerificationGenre').val()) {
            const classes = ['x_purchaseForm', 'x_communityPurchaseForm', 'x_communityGuestForm'];
            // コミュニティモーダル購入時の動的に生成されたformによるsubmitもフックしたい & submit処理の最後に年齢確認モーダルを出したいので、documentへのイベントバブリング時にフックする
            $(document).on('submit', 'form', function(e) {
              // 購入フォーム or コミュニティモーダルのフォームを対象とする
              if (classes.some((cls) => e.target.classList.contains(cls))) {
                if (shouldShowAgeVerificationModal()) {
                  ageVerificationTargetForm = e.target;
                  closeCommunityModal();
                  showPurchaseButtonModal(MODAL_TYPE_AGE_VERIFICATION);
                  return false;
                }
              }
            });
          }
        }
        window.addEventListener('DOMContentLoaded', window.__initPurchaseButtonModal)
      })(__BASE_JQUERY__);
    </script>
  </div>
  <style>
    body#shopDetailPage #purchase_form .purchaseButton .purchaseButton__btn--disabled:hover {
      cursor: default;
      opacity: 1;
    }
  </style>
</form>

POST /items/54092721

<form action="/items/54092721" id="x_illegalReportForm" method="post" accept-charset="utf-8">
  <div style="display:none;"><input type="hidden" name="_method" value="POST"><input type="hidden" name="data[_Token][key]"
      value="a7d2d66c2b24bdc7ee35c3ace958e8c0daf8a7ab7b886bd7560bcfad89b4f25b78bdda36a1369260245913972320011e008b0a18315ccf82b1c9d7ff4ee8e697" id="Token1884804993" autocomplete="off"></div> <input type="hidden" value="54092721" id="item_id">
  <legend>Report this item</legend>
  <input type="hidden" name="data[IllegalReport][item_id]" value="54092721" id="IllegalReportItemId">
  <div class="input select"><select name="data[IllegalReport][title]" required="required" id="IllegalReportTitle">
      <option value="0">Item is illegal</option>
      <option value="1">Wrong pricing</option>
      <option value="2">Other</option>
    </select></div>
  <div class="input textarea"><textarea name="data[IllegalReport][message]" placeholder="Write in your details" required="required" id="x_illegalReportMessage" cols="30" rows="6"></textarea></div><a class="btn btn-danger" id="checkSubmit">Report</a>
  <div style="display:none;"><input type="hidden" name="data[_Token][fields]" value="878d6c507e64358a1f96a4a62a70a84f24393f2f%3AIllegalReport.item_id" id="TokenFields532914926" autocomplete="off"><input type="hidden" name="data[_Token][unlocked]"
      value="" id="TokenUnlocked1777209592" autocomplete="off"></div>
</form>

GET https://store.yamatabi.shop

<form class="uk-search uk-search-default" role="search" method="get" action="https://store.yamatabi.shop">
  <button href="#" class="item-search-submit uk-icon uk-search-icon" type="submit" uk-search-icon=""><svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
      <circle fill="none" stroke="#000" stroke-width="1.1" cx="9" cy="9" r="7"></circle>
      <path fill="none" stroke="#000" stroke-width="1.1" d="M14,14 L18,18 L14,14 Z"></path>
    </svg></button>
  <input class="uk-search-input" type="search" name="q" id="search-footer" placeholder="検索">
</form>

POST https://store.yamatabi.shop/i18n/i18n_user_languages/change_language?back=http%3A%2F%2Fstore.yamatabi.shop%2Fitems%2F54092721

<form action="https://store.yamatabi.shop/i18n/i18n_user_languages/change_language?back=http%3A%2F%2Fstore.yamatabi.shop%2Fitems%2F54092721" method="post" accept-charset="utf-8">
  <div style="display:none;"><input type="hidden" name="_method" value="POST"><input type="hidden" name="data[_Token][key]"
      value="2ba6080217dd12d5a8586b0024d78d6c96e3d5da32b2a2739d05a9631f3a4e326466f10158cc1f275ab41fe145dee896f0f5b18755c684065a6a276f04565012" id="Token1300965363" autocomplete="off"></div><input type="hidden" name="data[UserLanguage][shop_id]"
    value="socal-official-ec" id="UserLanguageShopId">
  <div class="input select required"><select name="data[UserLanguage][language_code]" class="x_i18nSelectBox" required="required">
      <option value="ja">日本語</option>
      <option value="en" selected="selected">English</option>
    </select></div>
  <div style="display:none;"><input type="hidden" name="data[_Token][fields]" value="1eca9f5d682c15786d6e39298e963a8655d1675a%3AUserLanguage.shop_id" id="TokenFields1401427676" autocomplete="off"><input type="hidden" name="data[_Token][unlocked]"
      value="" id="TokenUnlocked1672047131" autocomplete="off"></div>
</form>

POST https://store.yamatabi.shop/i18n/i18n_user_currencies/change_currency?back=http%3A%2F%2Fstore.yamatabi.shop%2Fitems%2F54092721

<form action="https://store.yamatabi.shop/i18n/i18n_user_currencies/change_currency?back=http%3A%2F%2Fstore.yamatabi.shop%2Fitems%2F54092721" method="post" accept-charset="utf-8">
  <div style="display:none;"><input type="hidden" name="_method" value="POST"><input type="hidden" name="data[_Token][key]"
      value="2ba6080217dd12d5a8586b0024d78d6c96e3d5da32b2a2739d05a9631f3a4e326466f10158cc1f275ab41fe145dee896f0f5b18755c684065a6a276f04565012" id="Token2106268424" autocomplete="off"></div><input type="hidden" name="data[UserCurrency][shop_id]"
    value="socal-official-ec" id="UserCurrencyShopId">
  <div class="input select"><select name="data[UserCurrency][currency_code]" class="x_i18nSelectBox">
      <option value="JPY" selected="selected">JPY</option>
      <option value="USD">USD</option>
      <option value="CNY">CNY</option>
      <option value="HKD">HKD</option>
      <option value="TWD">TWD</option>
    </select></div>
  <div style="display:none;"><input type="hidden" name="data[_Token][fields]" value="5c319a9d8fad0b49a4ab0d474688955878e28aac%3AUserCurrency.shop_id" id="TokenFields741419502" autocomplete="off"><input type="hidden" name="data[_Token][unlocked]"
      value="" id="TokenUnlocked2133099169" autocomplete="off"></div>
</form>

Name: menuPOST https://store.yamatabi.shop/cart/add/socal-official-ec

<form id="purchase_form" class="x_purchaseForm" name="menu" action="https://store.yamatabi.shop/cart/add/socal-official-ec" method="post" data-purchase-form="" data-disabled="false">
  <div id="itemSelect">
    <div id="variationSelectWrap" class="purchaseElement" data-target-version="v2"> <label for="valiationSelect">Variety</label> <select name="select" id="valiationSelect" data-display-stock="1">
        <option value="195467115" data-index="0" data-stock="68" selected="">White</option>
        <option value="201535136" data-index="1" data-stock="61">Gray</option>
        <option value="210491897" data-index="2" data-stock="85">Black</option>
      </select> </div>
    <div id="amountSelectWrap" class="purchaseElement" style="" data-target-version="v2"> <label for="amountSelect">Quantity</label> <select name="amount" id="amountSelect" class="amountSelect" style="">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
        <option value="8">8</option>
        <option value="9">9</option>
        <option value="10">10</option>
        <option value="11">11</option>
        <option value="12">12</option>
        <option value="13">13</option>
        <option value="14">14</option>
        <option value="15">15</option>
        <option value="16">16</option>
        <option value="17">17</option>
        <option value="18">18</option>
        <option value="19">19</option>
        <option value="20">20</option>
        <option value="21">21</option>
        <option value="22">22</option>
        <option value="23">23</option>
        <option value="24">24</option>
        <option value="25">25</option>
        <option value="26">26</option>
        <option value="27">27</option>
        <option value="28">28</option>
        <option value="29">29</option>
        <option value="30">30</option>
        <option value="31">31</option>
        <option value="32">32</option>
        <option value="33">33</option>
        <option value="34">34</option>
        <option value="35">35</option>
        <option value="36">36</option>
        <option value="37">37</option>
        <option value="38">38</option>
        <option value="39">39</option>
        <option value="40">40</option>
        <option value="41">41</option>
        <option value="42">42</option>
        <option value="43">43</option>
        <option value="44">44</option>
        <option value="45">45</option>
        <option value="46">46</option>
        <option value="47">47</option>
        <option value="48">48</option>
        <option value="49">49</option>
        <option value="50">50</option>
        <option value="51">51</option>
        <option value="52">52</option>
        <option value="53">53</option>
        <option value="54">54</option>
        <option value="55">55</option>
        <option value="56">56</option>
        <option value="57">57</option>
        <option value="58">58</option>
        <option value="59">59</option>
        <option value="60">60</option>
        <option value="61">61</option>
        <option value="62">62</option>
        <option value="63">63</option>
        <option value="64">64</option>
        <option value="65">65</option>
        <option value="66">66</option>
        <option value="67">67</option>
        <option value="68">68</option>
      </select> <select name="amount" id="amountSelect" class="amountSelect" disabled="" style="display:none;">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
        <option value="8">8</option>
        <option value="9">9</option>
        <option value="10">10</option>
        <option value="11">11</option>
        <option value="12">12</option>
        <option value="13">13</option>
        <option value="14">14</option>
        <option value="15">15</option>
        <option value="16">16</option>
        <option value="17">17</option>
        <option value="18">18</option>
        <option value="19">19</option>
        <option value="20">20</option>
        <option value="21">21</option>
        <option value="22">22</option>
        <option value="23">23</option>
        <option value="24">24</option>
        <option value="25">25</option>
        <option value="26">26</option>
        <option value="27">27</option>
        <option value="28">28</option>
        <option value="29">29</option>
        <option value="30">30</option>
        <option value="31">31</option>
        <option value="32">32</option>
        <option value="33">33</option>
        <option value="34">34</option>
        <option value="35">35</option>
        <option value="36">36</option>
        <option value="37">37</option>
        <option value="38">38</option>
        <option value="39">39</option>
        <option value="40">40</option>
        <option value="41">41</option>
        <option value="42">42</option>
        <option value="43">43</option>
        <option value="44">44</option>
        <option value="45">45</option>
        <option value="46">46</option>
        <option value="47">47</option>
        <option value="48">48</option>
        <option value="49">49</option>
        <option value="50">50</option>
        <option value="51">51</option>
        <option value="52">52</option>
        <option value="53">53</option>
        <option value="54">54</option>
        <option value="55">55</option>
        <option value="56">56</option>
        <option value="57">57</option>
        <option value="58">58</option>
        <option value="59">59</option>
        <option value="60">60</option>
        <option value="61">61</option>
      </select> <select name="amount" id="amountSelect" class="amountSelect" disabled="" style="display:none;">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
        <option value="8">8</option>
        <option value="9">9</option>
        <option value="10">10</option>
        <option value="11">11</option>
        <option value="12">12</option>
        <option value="13">13</option>
        <option value="14">14</option>
        <option value="15">15</option>
        <option value="16">16</option>
        <option value="17">17</option>
        <option value="18">18</option>
        <option value="19">19</option>
        <option value="20">20</option>
        <option value="21">21</option>
        <option value="22">22</option>
        <option value="23">23</option>
        <option value="24">24</option>
        <option value="25">25</option>
        <option value="26">26</option>
        <option value="27">27</option>
        <option value="28">28</option>
        <option value="29">29</option>
        <option value="30">30</option>
        <option value="31">31</option>
        <option value="32">32</option>
        <option value="33">33</option>
        <option value="34">34</option>
        <option value="35">35</option>
        <option value="36">36</option>
        <option value="37">37</option>
        <option value="38">38</option>
        <option value="39">39</option>
        <option value="40">40</option>
        <option value="41">41</option>
        <option value="42">42</option>
        <option value="43">43</option>
        <option value="44">44</option>
        <option value="45">45</option>
        <option value="46">46</option>
        <option value="47">47</option>
        <option value="48">48</option>
        <option value="49">49</option>
        <option value="50">50</option>
        <option value="51">51</option>
        <option value="52">52</option>
        <option value="53">53</option>
        <option value="54">54</option>
        <option value="55">55</option>
        <option value="56">56</option>
        <option value="57">57</option>
        <option value="58">58</option>
        <option value="59">59</option>
        <option value="60">60</option>
        <option value="61">61</option>
        <option value="62">62</option>
        <option value="63">63</option>
        <option value="64">64</option>
        <option value="65">65</option>
        <option value="66">66</option>
        <option value="67">67</option>
        <option value="68">68</option>
        <option value="69">69</option>
        <option value="70">70</option>
        <option value="71">71</option>
        <option value="72">72</option>
        <option value="73">73</option>
        <option value="74">74</option>
        <option value="75">75</option>
        <option value="76">76</option>
        <option value="77">77</option>
        <option value="78">78</option>
        <option value="79">79</option>
        <option value="80">80</option>
        <option value="81">81</option>
        <option value="82">82</option>
        <option value="83">83</option>
        <option value="84">84</option>
        <option value="85">85</option>
      </select> </div>
  </div>
  <style>
    body form[id] #variationSelectWrap,
    body form[id] .itemOptionElement {
      max-width: 100%
    }

    body #purchase_form #itemSelect #valiationSelect,
    body #purchase_form #itemSelect select.itemOption__select,
    body form[id] #itemSelect #amountSelect,
    body form[id] #itemSelect #valiationSelect,
    body form[id] #itemSelect select.itemOption__select {
      height: auto;
      white-space: normal;
      max-width: 100%;
      min-height: 2.1em;
      appearance: none;
      -webkit-appearance: none;
      padding-right: 1em;
      line-height: normal;
      word-break: normal;
      background-repeat: no-repeat;
      background-position: right .35em center;
      background-size: auto;
      background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cdefs%3E%3Cfilter id='a' x='0' y='0' width='10' height='6' filterUnits='userSpaceOnUse'%3E%3CfeFlood result='flood' flood-color='%23333' flood-opacity='.5'/%3E%3CfeComposite result='composite' operator='in' in2='SourceGraphic'/%3E%3CfeBlend result='blend' mode='multiply' in2='SourceGraphic'/%3E%3C/filter%3E%3C/defs%3E%3Cpath d='M5 6l5-6H0z' fill='%23fafafa' fill-rule='evenodd' filter='url(%23a)'/%3E%3C/svg%3E")
    }
  </style> <input type="hidden" name="shopID" value="socal-official-ec"> <input type="hidden" name="id" value="54092721">
  <script>
    ($ => {
      if (!document.querySelector('form[data-purchase-form]')) {
        $('#valiationSelect').on('change', function() {
          $('#amountSelectWrap  .amountSelect').css('display', 'none').prop('disabled', true);
          $('#amountSelectWrap  .amountSelect:eq(' + $(this).find(':selected').attr('data-index') + ')').css('display', '').prop('disabled', false);
        });
      }
      window.__initItemSelect = function() {
        if (!document.querySelector('form[data-purchase-form]')) {
          removeElements('#itemSelect [data-target-version="v2"]');
          return;
        }
        const elements = document.querySelectorAll('#itemSelect');
        elements.forEach(el => {
          const form = el.closest('form[data-purchase-form]')
          if (!form) {
            removeElements('#itemSelect [data-target-version="v2"]', el);
            $itemSelect = $(el);
            $itemSelect.find('#valiationSelect').on('change', function() {
              $itemSelect.find('#amountSelectWrap  .amountSelect').css('display', 'none').prop('disabled', true);
              $itemSelect.find('#amountSelectWrap  .amountSelect:eq(' + $(this).find(':selected').attr('data-index') + ')').css('display', '').prop('disabled', false);
            });
          } else {
            removeElements('#itemSelect [data-target-version="v1"]', el);
            $form = $(form);
            changeAmountSelectAndOptions($form.find('#valiationSelect'), $form);
            updatePurchaseFormDisabled($form.find('#itemSelect'), $form);
            form.querySelectorAll('#valiationSelect').forEach(select => {
              const $select = $(select);
              if ($select.data('displayStock')) {
                $select.on('change', () => {
                  const parentForm = $(el.closest('form[data-purchase-form]'));
                  changeAmountSelectAndOptions(select, parentForm);
                  updatePurchaseFormDisabled(parentForm.find('#itemSelect'), parentForm);
                });
              }
            });
          }
        })

        function removeElements(selector, parent = document) {
          const target_elements = parent.querySelectorAll(selector);
          target_elements.forEach(el => {
            el.parentNode.removeChild(el);
          })
        }
      }

      function changeAmountSelectAndOptions(select, $form) {
        $form.find('#amountSelectWrap  .amountSelect').css('display', 'none').prop('disabled', true);
        $selectedVariation = $(select).find(':selected');
        $amountSelectWrap = $form.find('#amountSelectWrap');
        $outOfStockButton = $form.find('.purchaseButton__btn--outOfStock');
        $addToCartButton = $form.find('.purchaseButton__btn--addToCart');
        $itemSelectOptions = $form.find('[class^="itemOption__"]');
        $itemSelectOptions.css('display', 'block');
        if ($(select).length == 0) {
          $amountSelect = $form.find('#amountSelectWrap  .amountSelect');
          $amountSelect.css('display', '').prop('disabled', false);
          $amountSelectWrap.show();
          $addToCartButton.css('display', 'block');
          $outOfStockButton.css('display', 'none');
          return;
        }
        $amountSelect = $form.find('#amountSelectWrap  .amountSelect:eq(' + $selectedVariation.attr('data-index') + ')');
        if (Number($selectedVariation.data('stock')) > 0) {
          $amountSelect.css('display', '').prop('disabled', false);
          $amountSelectWrap.show();
          $addToCartButton.css('display', 'block');
          $outOfStockButton.css('display', 'none');
        } else {
          $amountSelectWrap.hide();
          $addToCartButton.css('display', 'none');
          $outOfStockButton.css('display', 'block');
        }
      }
      /**
       * 数量選択が有効でない場合に #purchase_form を送信しないようにする
       * @see https://github.com/baseinc/design-engine/issues/1094
       */
      function updatePurchaseFormDisabled($itemSelect, $form) {
        const isAmountActive = Array.from($itemSelect.find('[name="amount"]')).some((el) => !(el.style.display === 'none' && el.disabled));
        $form.attr('data-disabled', isAmountActive ? 'false' : 'true');
      }
      document.addEventListener('DOMContentLoaded', () => {
        window.__initItemSelect && window.__initItemSelect();
        window.__initItemSelect = undefined;
      });
    })(__BASE_JQUERY__);
  </script>
  <div class="purchaseButton"> <button type="submit" class="purchaseButton__btn purchaseButton__btn--addToCart" style="display: block;"> Add to cart </button>
    <a class="purchaseButton__btn purchaseButton__btn--outOfStock purchaseButton__btn--requestRestockMail x_restockMailNotificationModalOpen" style="display:none;" href="javascript:void(0);">Request restock notification</a> <input type="hidden"
      class="x_ageVerificationGenre" value=""> <input type="hidden" class="x_ageVerificationAge" value="">
    <style>
      @font-face {
        font-family: shopicon;
        font-style: normal;
        font-weight: 400;
        src: url(https://static.thebase.in/font/v1/shopicon.eot?md4x76=);
        src: url(https://static.thebase.in/font/v1/shopicon.eot?md4x76=#iefix) format("embedded-opentype"), url(https://static.thebase.in/font/v1/shopicon.ttf?md4x76=) format("truetype"), url(https://static.thebase.in/font/v1/shopicon.woff?md4x76=) format("woff"), url(https://static.thebase.in/font/v1/shopicon.svg?md4x76=#shopicon) format("svg")
      }

      .purchaseButtonModal__wrapper {
        align-items: center;
        background: rgba(0, 0, 0, .3);
        display: none;
        justify-content: center;
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 6000000
      }

      .purchaseButtonModal__container {
        background: #fff;
        border-radius: 4px;
        box-shadow: 0 0 16px rgba(56, 67, 89, .3);
        position: relative;
        width: 560px
      }

      .purchaseButtonModal__result {
        display: none
      }

      .is_success .purchaseButtonModal__submit {
        display: none
      }

      .is_success .purchaseButtonModal__result {
        display: block
      }

      .is_success .purchaseButtonModal__resultText {
        background: #eaf8f7;
        padding: 12px;
        border-radius: 4px;
        font-weight: 700;
        color: #11beae;
        font-size: 14px;
        margin-bottom: 16px
      }

      .purchaseButtonModal__title {
        border-bottom: 1px solid #f0f1f4;
        color: #3d3d3d;
        font-size: 20px;
        font-weight: 700;
        line-height: 68px;
        text-align: center
      }

      .purchaseButtonModal__inner {
        padding: 24px 32px;
        text-align: left
      }

      .purchaseButtonModal__text {
        color: #3d3d3d;
        font-size: 14px;
        line-height: 1.4;
        margin: 0 0 12px
      }

      .purchaseButtonModal__subText {
        margin: 0 0 40px
      }

      .purchaseButtonModal__subTextChild {
        color: #777;
        font-size: 12px;
        line-height: 1.4;
        margin-left: 1em;
        text-indent: -1em
      }

      .purchaseButtonModal__label {
        color: #3d3d3d;
        font-size: 14px;
        font-weight: 700;
        margin-bottom: 4px
      }

      .purchaseButtonModal__information {
        display: flex;
        background: #f0f1f4;
        padding: 8px;
        border-radius: 4px;
        margin: 8px auto 24px
      }

      .purchaseButtonModal__informationText {
        margin-left: 8px;
        font-size: 12px;
        color: #3d3d3d;
        margin-top: 0
      }

      .purchaseButtonModal__inputArea {
        display: flex;
        align-items: center;
        justify-content: center
      }

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

      .purchaseButtonModal__input {
        box-sizing: border-box;
        display: block;
        font-size: 14px;
        height: 40px;
        line-height: 40px;
        margin: 0 0 32px;
        outline: none;
        padding: 0 12px;
        width: 100%;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none
      }

      .purchaseButtonModal__input[type=number]::-webkit-inner-spin-button,
      .purchaseButtonModal__input[type=number]::-webkit-outer-spin-button {
        appearance: none
      }

      .purchaseButtonModal__input:placeholder-shown {
        color: #c7c7cd
      }

      .purchaseButtonModal__input::-webkit-input-placeholder {
        color: #c7c7cd;
        opacity: 1
      }

      .purchaseButtonModal__input::-moz-placeholder {
        color: #c7c7cd;
        opacity: 1
      }

      .purchaseButtonModal__input:-ms-input-placeholder {
        color: #c7c7cd
      }

      .purchaseButtonModal__error {
        background: #fcdcdc;
        border-radius: 4px;
        color: #fa5171;
        display: none;
        font-size: 12px;
        font-weight: 700;
        margin: 0 0 24px;
        padding: 8px;
        text-align: left
      }

      .purchaseButtonModal__errorIcon {
        margin-right: 8px;
        height: auto;
        vertical-align: middle;
        width: 12px
      }

      .purchaseButtonModal__errorText {
        vertical-align: middle
      }

      .purchaseButtonModal__btn {
        border: none;
        border-radius: 5px;
        box-sizing: border-box;
        cursor: pointer;
        color: #fff;
        display: block;
        font-size: 16px;
        height: 40px;
        line-height: 40px;
        margin: 0 auto;
        outline: none;
        padding: 0;
        text-align: center;
        transition: .3s;
        width: 280px;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none
      }

      .purchaseButtonModal__btn:hover {
        opacity: .7;
        transition: .3s
      }

      .purchaseButtonModal__btn--submit {
        background: #000
      }

      .purchaseButtonModal__btn--submit:disabled {
        cursor: not-allowed;
        opacity: .7
      }

      .purchaseButtonModal__btn--close {
        background: #999
      }

      .purchaseButtonModal__closeIcon {
        background: none;
        border: none;
        cursor: pointer;
        margin: 0;
        height: 16px;
        outline: none;
        padding: 0;
        position: absolute;
        top: 26px;
        right: 26px;
        width: 16px;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none
      }

      .purchaseButtonModal__closeIcon:after,
      .purchaseButtonModal__closeIcon:before {
        background: #3d3d3d;
        content: "";
        display: block;
        position: absolute;
        top: 7px;
        right: -3px;
        height: 2px;
        width: 22px
      }

      .purchaseButtonModal__closeIcon:before {
        transform: rotate(45deg)
      }

      .purchaseButtonModal__closeIcon:after {
        transform: rotate(-45deg)
      }

      .purchaseButtonModal__ageVerificationWarningText {
        font-size: 12px;
        font-weight: 700;
        text-align: center;
        margin-bottom: 16px
      }

      .si-information:before {
        content: "\e919";
        font-family: shopicon;
        font-style: normal;
        font-weight: 400
      }

      .purchaseButtonModal__inner.ageVerificationModal__inner {
        text-align: center
      }

      .purchaseButtonModal__inner.ageVerificationModal__footer {
        border-top: 1px solid #f0f1f4
      }

      .purchaseButtonModal__input.ageVerificationModal__input {
        margin: 0;
        width: auto
      }

      .purchaseButtonModal__input.ageVerificationModal__input[aria-invalid=true] {
        border-color: #fa5171;
        background-color: #ffe5e9
      }

      .purchaseButtonModal__error.ageVerificationModal__error {
        background: none;
        text-align: center;
        margin: 0
      }

      @media screen and (max-width:828px) {
        .is_restockMailNotificationModalOpen #mainContent {
          position: static
        }

        .purchaseButtonModal__container {
          border-radius: 0;
          box-shadow: none;
          position: absolute;
          top: 0;
          right: 0;
          bottom: 0;
          left: 0;
          width: 100%
        }

        .purchaseButtonModal__title {
          font-size: 16px;
          line-height: 48px;
          padding: 0 30px
        }

        .purchaseButtonModal__inner {
          padding: 16px
        }

        .purchaseButtonModal__closeIcon {
          top: 16px;
          right: 16px
        }

        .purchaseButtonModal__input {
          background: #fff;
          border: 1px solid #bbb
        }

        .purchaseButtonModal__btn {
          height: 55px;
          line-height: 55px;
          width: 100%
        }

        .is_success .purchaseButtonModal__container {
          height: auto
        }
      }
    </style>
    <script>
      ($ => {
        if (window.__initPurchaseButtonModal) {
          window.removeEventListener('DOMContentLoaded', window.__initPurchaseButtonModal)
        }
        window.__initPurchaseButtonModal = function() {
          const KEYCODE_ENTER = 13;
          const MODAL_TYPE_RESTOCK_MAIL_NOTIFICATION = 'restockMailNotification';
          const MODAL_TYPE_AGE_VERIFICATION = 'ageVerification';
          const $modals = $('.x_purchaseButtonModal')
          $modals.remove()
          document.body.appendChild($modals[0])
          var modalType = '';
          const showPurchaseButtonModal = (type) => {
            // 文字入れオプションのinput 等のフォーカスを外す
            document.activeElement.blur();
            $('.purchaseButtonModal__title').each((_i, el) => {
              $(el).hide();
            });
            $('.purchaseButtonModal__inner').each((_i, el) => {
              $(el).hide();
            });
            $(`.purchaseButtonModal__title[data-type="${type}"]`).show();
            $(`.purchaseButtonModal__inner[data-type="${type}"]`).show();
            $('.x_purchaseButtonModal').fadeIn(250).css('display', 'flex');
            $('.x_purchaseButtonModal').attr('id', `${type}Modal`);
            $('body').addClass('is_purchaseButtonModalOpen');
            modalType = type;
          };
          const hidePurchaseButtonModal = function() {
            $('.x_purchaseButtonModal').fadeOut(150);
            $('body').removeClass('is_purchaseButtonModalOpen');
          };
          $('.x_restockMailNotificationModalOpen').on('click', function() {
            showPurchaseButtonModal(MODAL_TYPE_RESTOCK_MAIL_NOTIFICATION);
          });
          $('.x_purchaseButtonModalClose, .x_purchaseButtonModal').on('click', function() {
            hidePurchaseButtonModal();
          });
          $('.x_purchaseButtonModalInner').on('click', function(event) {
            event.stopPropagation();
          });
          $('.x_purchaseButtonModalSubmit').on('click', function() {
            purchaseButtonModalSubmit();
          });
          $(".x_purchaseButtonModalInput").on('keypress', function(ev) {
            if ((ev.which && ev.which === KEYCODE_ENTER) || (ev.keyCode && ev.keyCode === KEYCODE_ENTER)) {
              purchaseButtonModalSubmit()
              return false;
            } else {
              return true;
            }
          });
          var purchaseButtonModalSubmit = function() {
            $('.x_purchaseButtonModalError').hide();
            $('.x_purchaseButtonModalErrorText').text('')
            $(this).prop('disabled', true);
            modalRequestFunction().then(function(data) {
              onSuccessModalRequest();
            }).catch(function(errorText) {
              $('.x_purchaseButtonModalError').show();
              $('.x_purchaseButtonModalErrorText').text(errorText);
            }).finally(function() {
              $('.x_purchaseButtonModalSubmit').prop('disabled', false);
            });
          };
          var modalRequestFunction = function() {
            if (modalType === MODAL_TYPE_RESTOCK_MAIL_NOTIFICATION) {
              return requestRestockMailNotification();
            } else if (modalType === MODAL_TYPE_AGE_VERIFICATION) {
              return requestAgeVerification();
            }
          };
          var onSuccessModalRequest = function() {
            if (modalType === MODAL_TYPE_RESTOCK_MAIL_NOTIFICATION) {
              $('.x_purchaseButtonModal').addClass('is_success');
            } else if (modalType === MODAL_TYPE_AGE_VERIFICATION) {
              onAgeVerificationSubmit();
            }
          };
          // 再入荷通知
          var requestRestockMailNotification = function() {
            var selectedVariation = $('[name="select"]');
            var variation_id = null;
            if (selectedVariation.length > 0) {
              variation_id = selectedVariation.val();
            }
            var data = {
              shop_id: 'socal-official-ec',
              item_id: 54092721,
              variation_id: variation_id,
              notification_address: $('.x_purchaseButtonModalInput').val(),
            };
            return new Promise(function(resolve, reject) {
              $.ajax({
                type: 'POST',
                url: '/restock_mail_notification/restock_mail_notification_api/subscribe',
                dataType: 'JSON',
                data: JSON.stringify(data)
              }).then(function(data) {
                resolve(data);
              }, function(jqXHR) {
                reject(JSON.parse(jqXHR.responseText).error.user_message);
              })
            });
          };
          // 年齢確認
          const COOKIE_KEY_FOR_AGE_VARIFICATION = 'AgeVerificationModalCheckisCompleted' + 'socal-official-ec';
          var ageVerificationAge = $('.x_ageVerificationAge').val();
          var $ageVerificationInput = $('.x_ageVerificationInput');
          var $ageVerificationError = $('.x_ageVerificationError');
          var $ageVerificationButton = $('.x_ageVerificationSubmit');
          var ageVerificationTargetForm = null;
          var requestAgeVerification = function() {
            return new Promise(function(resolve, reject) {
              if (checkAgeWithUI($ageVerificationInput.val())) {
                resolve();
              }
              reject();
            });
          };
          var onAgeVerificationSubmit = function() {
            if (ageVerificationTargetForm) {
              if (!validateSubmitButton(ageVerificationTargetForm)) {
                hidePurchaseButtonModal();
                return
              }
              setCookieForAgeVerificationCheck();
              ageVerificationTargetForm.submit();
            }
          };
          var validateSubmitButton = function(form) {
            if (!form.classList.contains('x_purchaseForm')) {
              return true;
            }
            // 商品オプションあり時のバリデーションエラーがないか button の disabled 状態で判定
            // button が存在し disabled だった場合のみ false
            var button = form.querySelector('.purchaseButton__btn');
            return button ? !button.disabled : true;
          };
          var getCookie = function(name) {
            var matches = document.cookie.match(new RegExp("(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"));
            return matches ? decodeURIComponent(matches[1]) : undefined;
          };
          var isCompleteAgeVerificationCheck = function() {
            return !!getCookie(COOKIE_KEY_FOR_AGE_VARIFICATION);
          };
          var setCookieForAgeVerificationCheck = function() {
            if (!isCompleteAgeVerificationCheck()) {
              document.cookie = COOKIE_KEY_FOR_AGE_VARIFICATION + "=true; max-age=3600";
            }
          };
          var shouldShowAgeVerificationModal = function() {
            return !isCompleteAgeVerificationCheck();
          };
          var nonZeroPadded = function(string) {
            if (typeof string !== 'string' || string === '') {
              return '';
            }
            return String(Number(string));
          };
          var limitTo3digits = function(string) {
            return string.slice(0, 3);
          };
          var convertToHalfWidthNumber = function(string) {
            return string.replace(/[^0-90-9]/g, '').replace(/[0-9]/g, (str) => {
              return String.fromCharCode(str.charCodeAt(0) - 0xFEE0);
            });
          };
          var checkAge = function(age) {
            return ageVerificationAge ? Number(age) >= ageVerificationAge : false;
          };
          var checkAgeWithUI = function() {
            var valid = checkAge($ageVerificationInput.val());
            if (valid) {
              $ageVerificationError.hide();
              $ageVerificationInput.attr('aria-invalid', 'false')
              $ageVerificationButton.prop('disabled', false);
              return true;
            }
            $ageVerificationError.show();
            $ageVerificationInput.attr('aria-invalid', 'true')
            $ageVerificationButton.prop('disabled', true);
            return false;
          };
          var currentValue = '';
          var onAgeInput = function(string) {
            if (string.length > 1) {
              checkAgeWithUI();
            }
            currentValue = string;
          };
          // IME 有効のとき
          // (type="number" の影響で) IME 入力確定時に input 要素の既存の value がクリアされてしまうので、既存の値は currentValue にとっておき確定時にこれを利用する
          var isComposing = false;
          $ageVerificationInput.on('compositionstart', (e) => {
            isComposing = true;
          });
          $ageVerificationInput.on('compositionend', (e) => {
            e.target.value = limitTo3digits(nonZeroPadded(currentValue + convertToHalfWidthNumber(e.originalEvent.data)));
            onAgeInput(e.target.value);
            isComposing = false;
          });
          // IME 無効のとき(IME 入力未確定時はスキップ)
          $ageVerificationInput.on('input', (e) => {
            if (!isComposing) {
              e.target.value = limitTo3digits(nonZeroPadded(e.target.value));
              onAgeInput(e.target.value);
            }
          });
          var closeCommunityModal = function() {
            $('.communityOverlay').hide();
          };
          if ($('.x_ageVerificationGenre').val()) {
            const classes = ['x_purchaseForm', 'x_communityPurchaseForm', 'x_communityGuestForm'];
            // コミュニティモーダル購入時の動的に生成されたformによるsubmitもフックしたい & submit処理の最後に年齢確認モーダルを出したいので、documentへのイベントバブリング時にフックする
            $(document).on('submit', 'form', function(e) {
              // 購入フォーム or コミュニティモーダルのフォームを対象とする
              if (classes.some((cls) => e.target.classList.contains(cls))) {
                if (shouldShowAgeVerificationModal()) {
                  ageVerificationTargetForm = e.target;
                  closeCommunityModal();
                  showPurchaseButtonModal(MODAL_TYPE_AGE_VERIFICATION);
                  return false;
                }
              }
            });
          }
        }
        window.addEventListener('DOMContentLoaded', window.__initPurchaseButtonModal)
      })(__BASE_JQUERY__);
    </script>
  </div>
  <style>
    body#shopDetailPage #purchase_form .purchaseButton .purchaseButton__btn--disabled:hover {
      cursor: default;
      opacity: 1;
    }
  </style>
</form>

Text Content

 * Home


CATEGORY

 * スタッフバック・ドライバッグ
 * ボトルホルダー・収納ポケット
 * 保温ケース・保温バッグ
 * 財布・ポーチ
 * キャップ・グローブ
 * ウェア・ソックス
 * トートバッグ
 * テントマット・座布団
 * 容器・ケース
 * コンパクト・便利
 * アート


INFORMATION

 * About
 * Contact
 * YouTube


 * Home
 * Category
    * スタッフバック・ドライバッグ
    * ボトルホルダー・収納ポケット
    * 保温ケース・保温バッグ
    * 財布・ポーチ
    * キャップ・グローブ
    * ウェア・ソックス
    * トートバッグ
    * テントマット・座布団
    * 容器・ケース
    * コンパクト・便利
    * アート

 * About
 * Contact
 * YouTube


 * 
 * 


CATEGORY

スタッフバック・ドライバッグ
ボトルホルダー・収納ポケット
保温ケース・保温バッグ
財布・ポーチ
キャップ・グローブ
ウェア・ソックス
トートバッグ
テントマット・座布団
容器・ケース
コンパクト・便利
アート


INFORMATION

 * About
 * Contact
 * YouTube


NEWSLETTER

登録




山旅 X-PAC製カトラリーケース【カトラリーバッグ/登山用ペグケース/軽量/キャンプ/おしゃれ/エックスパック】

 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 


山旅 X-PAC製カトラリーケース【カトラリーバッグ/登山用ペグケース/軽量/キャンプ/おしゃれ/エックスパック】

山旅 X-PAC製カトラリーケース【カトラリーバッグ/登山用ペグケース/軽量/キャンプ/おしゃれ/エックスパック】

¥1,990

*Tax included.

*Shipping fee is not included.More information


SHIPPING METHOD / FEE

 * Domestic shipping
 * Overseas shipping

The shipping fees and delivery method/s for this product are as follows.

 * NONSTANDARD‐SIZE MAIL
   
   郵便物として配送する方法です。保障や追跡サービスがないことを予めご了承ください。
   
   Shipping Fees are the same all over country inside Japan ¥0

The shipping fees and delivery method/s for this product are as follows.

 * EMS
   
   This shipping supports package tracking and compensation for damages.
   
   Shipping fees vary by region.
   
   View more details Close
    * Asia
      Afghanistan
      
      ¥2,900
      
      Bangladesh
      
      ¥2,900
      
      Bhutan
      
      ¥2,900
      
      Brunei
      
      ¥2,900
      
      Cambodia
      
      ¥2,900
      
      China
      
      ¥1,900
      
      Guam
      
      ¥2,900
      
      Hong Kong
      
      ¥2,900
      
      India
      
      ¥2,900
      
      Indonesia
      
      ¥2,900
      
      Laos
      
      ¥2,900
      
      Macao
      
      ¥2,900
      
      Malaysia
      
      ¥2,900
      
      Maldives
      
      ¥2,900
      
      Marshall Islands
      
      ¥2,900
      
      Micronesia, Federated States Of
      
      ¥2,900
      
      Mongolia
      
      ¥2,900
      
      Myanmar
      
      ¥2,900
      
      Nepal
      
      ¥2,900
      
      North Korea
      
      ¥2,900
      
      Northern Mariana Islands
      
      ¥2,900
      
      Pakistan
      
      ¥2,900
      
      Palau
      
      ¥2,900
      
      Philippines
      
      ¥2,900
      
      Singapore
      
      ¥2,900
      
      South Korea
      
      ¥1,900
      
      Sri Lanka
      
      ¥2,900
      
      Taiwan
      
      ¥1,900
      
      Thailand
      
      ¥2,900
      
      Timor Leste
      
      ¥2,900
      
      Vietnam
      
      ¥2,900
   
    * Oceania
      Uniform rate for area
      
      ¥4,150
   
    * North / Central America
      Canada
      
      ¥4,150
      
      Mexico
      
      ¥4,150
      
      United States
      
      ¥5,020
   
    * Middle East
      Uniform rate for area
      
      ¥4,150
   
    * Europe
      Uniform rate for area
      
      ¥4,150



*This item can be shipped outside of Japan.

Variety White Gray Black
Quantity 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
55 56 57 58 59 60 61 62 63 64 65 66 67 68 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 1 2 3 4 5 6 7 8 9 10 11 12
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
Add to cart Request restock notification
Save


カトラリーやペグを忘れずに持ち歩くために、また衛生的にカトラリーを保つためのX-PAC製ケースです。使用済みのカトラリーやペグをスタッフサックやザックの中に入れておくと、周りのギアが汚れてしまい不衛生です。また小さな道具なので、山に忘れてしまいがちなのをケースがあることで回避できます。

●カトラリー、ペグだけでなく、ライター、ナイフなども収納可能です。
●使用しているX-PACは70d リップストップ・ナイロンの表地で、軽量で耐久性があり、しなやかで防水性と軽量性を備えています。
●カラビナループが付いているので、サコッシュやザックなどに取り付けておくことができます。(商品にカラビナはついておりません)
●あらゆるサイズのカトラリーが収まるように設計されております。
●設計時に参考にしたカトラリーは、コンビニのお箸、トライテンシル大小、snowpeakチタン先細箸/和武器M/チタン先割れスプーン、Lueスポーク、To-Go
Ware、LIGHT MY FIREスポーク、エスビットフォールディングカトラリー、シートゥサミットキャンプカトラリーセット
●お箸など長いサイズを収納する場合はマジックテープで、短いカトラリーの場合は本体ベルトループに差し込んで収納可能です。
●マジックテープ、ループ以外は全てX-PAC製ですので、水洗いをすればすぐに乾きます。

サイズ:
横幅:約5センチ
縦(マジックテープ装着時):約21.5センチ
縦(ループ装着時):約15.5~19センチ

重量:約6g
カラー:White、Black

※丁寧な仕上がりを心がけておりますが、手作りのため、若干のサイズの誤差がありますことご了承ください。また縫製の工程で裏返しにする際、シワが生じます(本体部分-2と3枚目の写真にてご確認頂けます)。機能を損なうものではございません。
Report


Report this item
Item is illegal Wrong pricing Other

Report


error






REVIEWS OF THIS SHOP

 * All Reviews
 * 408
 * 21
 * 11

 * 山旅 山型鍋つかみ【デニム&麻/三角鍋つかみ モチーフ・レトロ &NE フック付 ミトン お鍋 キッチン 雑貨 ストウブ 和風モダン ギフト かわいい】
   
   2024/03/26

 * 保温ケース【単体】Wildo fold a cup / ウィルドゥ フォールダーカップ保温用(BRUTUS 1,000号記念掲載アイテム)
   
   2024/03/22

 * 山旅 ダイニーマ製3つ折り軽量ウォレット【登山用 財布 ミニマリスト ミニマム 】
   
   BLUE-GRAY
   
   2024/03/19

 * 山旅 X-PAC製キューブポーチ【Sサイズ/登山用サコッシュ/エックスパック】
   
   2024/03/19

 * 山旅 ダイニーマ製ULサコッシュ(軽量ウエストポーチ/登山用サコッシュ/おしゃれ/メンズ/レディース/アウトドア)
   
   BLACK
   
   2024/03/19

 * 保温ケース【単体】Wildo fold a cup / ウィルドゥ フォールダーカップ保温用(BRUTUS 1,000号記念掲載アイテム)
   
   2024/03/15

 * ULチタンカラビナ(キーホルダー/固定用)
   
   2024/03/12

 * ジップロック®スクリューロックコジー【473ml/クッカー/保温ジャー/アストロフォイル/コジー/登山/カップラーメン】
   
   2024/03/11
   
   注文する前から、自分で簡単に作れそうだとは 思いましたが、2千円以上もするには、何かが違うのか?と、とりあえず1個注文しました。
   友人達も、実物を見てから 決めたいとの事でしたので。 郵便局扱いの為、時間指定、置き配が出来ず。 やっと届いた商品、詳細の紙 一枚入っておらず、
   手作り感 たっぷり。 自分で貼った方が、綺麗に貼れそう。 登山用品は、高額。 

 * 山旅 コーデュラリップ製軽量コンパクト防風3つ指ミトン【登山用グローブ】
   
   2024/03/07
   
   月曜日に発送したというのに、木曜日に、まだ配達されていない。郵便なら国内だから、2.3日で着くはず。宅急便なら、もっと早いかも。Amazonの配達の速さに慣れていたから、この遅さはびっくり。明日使う予定だったのですが、がっかりです。
   商品のよさわかりませんが、ショップの配達は、よくありません。

 * 【単品購入不可】超コンパクト歯ブラシ(登山/軽量装備)
   
   2024/03/07

 * 【単品購入不可】CHAP-ICE-ミニリップバーム(登山/軽量装備)
   
   2024/03/07

 * 山旅 X-PAC製ファーストエイドキットポーチ【登山用ポーチ/エックスパック】
   
   2024/03/07

 * 山旅 ダイニーマ製3つ折り軽量ウォレット【登山用 財布 ミニマリスト ミニマム 】
   
   BLACK
   
   2024/03/07
   
   マジックテープでは無くスナップボタンがあって、カラビナ等を付けれるループがある製品を探してたので、この薄さと容量に大満足です。ただ、スナップボタンの位置が微妙にズレていて、閉じた時にズレがあったのが残念。
   登山やアウトドアだけでなく普段使いにも違和感無いように、ループとコードが黒もしくはボディ色に合わせたバージョンもあればいいなと思いました。もし発売された時は買い足します。

 * スクリュートップキーパーコジー【500ml/クッカー/保温ジャー/アストロフォイル/コジー/登山/カップラーメン】
   
   2024/02/23
   
   シートのカットが雑で蓋に関しては綺麗な円形になっておらず隙間ができてしまっています、プチプチも何ヶ所か潰れてしまっていました、これだと機能に差が出ると思います、良かったら追加で購入するつもりでしたがこれでは買う気になれません。
   というか再度ちゃんとしたものを送ってほしいくらいです…。 使うのを楽しみにしていただけにとても残念です。

 * 山旅 ダイニーマ製リバーシブルピロー【テント泊用枕/軽量/登山用スタッフバッグ/登山装備軽量化】
   
   2024/02/16

 * 山旅 アストロフォイル製メスティン保温ケース【ダイソーメスティン用収納ケース】
   
   Green
   
   2024/02/09

 * 山旅 ULテントマット50×180cm【1.5cm厚/最軽量クローズドセルマット/登山用】
   
   2024/02/09
   
   持った瞬間、Zライトソルに比べて圧倒的に軽くてびっくりしました。これから使い倒して遮熱性能を検証して見たいと思います。

 * 山旅 ダイニーマ製 EASYワイドオープン スタッフサックS【巾着/ケース】
   
   2024/02/05

 * ジップロック®スクリューロックコジー【473ml/クッカー/保温ジャー/アストロフォイル/コジー/登山/カップラーメン】
   
   2024/02/04

 * ジップロック®スクリューロックコジーKIT【473ml/クッカー/保温ジャー/アストロフォイル/コジー/登山/カップラーメン】
   
   2024/01/31
 * 


RELATED PRODUCT

山旅 X-PAC&ダイニーマ製ティッシュケース【ティッシュポーチ ゴミポケット付き 登山用 軽量 おしゃれ ティッシュカバー/エックスパック】
¥2,990
保温ケース【単体】Wildo fold a cup / ウィルドゥ フォールダーカップ保温用(BRUTUS 1,000号記念掲載アイテム)
¥3,990
保温ケースBIG【単体】Wildo fold a cup big/ ウィルドゥ フォールダーカップ ビッグ保温用(BRUTUS 1,000号記念掲載アイテム)
¥4,490

 * About


送料について

・発送:月水金(祝日除く)
・送料無料(定形外郵便により追跡不可)

・Shipping: Monday, Wednesday and Friday (except holidays)
・Postage
├China, Korea, Taiwan: 1,900 yen
├Asia (excluding China, Korea, Taiwan): 2,650 yen
├Oceania, Canada, Middle East, Europe: 3,900 yen
├United States: 5,020 yen
 * 送料について


お支払い方法について

次の方法がご利用頂けます。
あと払い(Pay ID)
クレジットカード
キャリア決済
コンビニ決済・Pay-easy
Amazon Pay
PayPal
 * お支払い方法について

SEARCH



NOTICE

 * Privacy Policy
 * Act on Specified Commercial Transactions

LANGUAGE

日本語 English

JPY USD CNY HKD TWD

 * 
 * 
 * 
 * 

© 山旅
Variety White Gray Black
Quantity 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
55 56 57 58 59 60 61 62 63 64 65 66 67 68 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 1 2 3 4 5 6 7 8 9 10 11 12
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
Add to cart Request restock notification
会員限定商品
オプションを選択
種類を選択



I would like to be notified of restocking

Age verification

When it is restocked, we will notify you to the registered e-mail address.

Mail Address



Please allow the domains 「thebase.in」&「gmail.com」so that you can receive our
e-mail

Register

I would like to be notified of restocking

Notice of restocking has been accepted.

We've sent an e-mail to you.
If you cannot find the mail, please check your spam folder.
When receiving a notification, you may not be able to receive it due to reasons
such as the mail server capacity being exceeded. Please confirm it.

Please allow the domains 「thebase.in」&「gmail.com」so that you can receive our
e-mail

Close