日本に所在するお客様は、個人情報保護法(APPI)に基づき、ご自身の個人情報に関して一定の権利を有しています。以下のオプションから権利を行使できます。


データの開示またはダウンロード(開示)

当社が保有するお客様の個人情報(注文履歴やアカウント情報を含む)の開示を請求できます。

回答期間: 請求を受領後、遅滞なく(合理的な期間内に)回答します。


登録情報の訂正(訂正・追加・削除)

当社が保有する個人情報が事実と異なる場合、内容の訂正、追加または削除を請求できます(例:住所の誤り、氏名の誤記など)。


利用停止または消去(利用停止等)

一定の場合に、個人情報の利用停止または消去(アカウントの削除を含む)を請求できます。

⚠️ 重要: 税務・法令対応、セキュリティ、不正防止等の理由により、すべての情報を直ちに消去できない場合があります。


同意の撤回/プライバシー設定の変更

Shopifyマーケティングに関する同意を含む、トラッキング技術への同意はいつでも撤回する権利があります。これは今後当ストアのご利用に適用され、オプション目的のためのデータ収集が停止されます。


プライバシーの選択

プライバシー設定の管理。お客様の居住地域によっては、個人情報の販売からのオプトアウト(拒否)、トラッキングに対する同意の撤回、またはCookie(クッキー)設定のカスタマイズを行う権利が認められる場合があります。


お問い合わせ

個人情報の取扱いおよび権利行使に関するお問い合わせは、以下までご連絡ください。

メール: ryan@christmastraditions.com

住所: {company_address}


苦情の申し出先

当社の対応にご納得いただけない場合、個人情報保護委員会(PPC)または認定個人情報保護団体等に相談・苦情を申し立てることができます。

I give my consent on collecting my email and IP address for the purpose of processing this request. For more check Privacy Policy.

'; var isEmailValid = function(email) { let regex = /^(([^()\[\]\\.,;:\s@"]+(\.[^()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; if (email == '' || email == undefined) { return false; } else { return regex.test(email); } } var appiSendRequest = function(callback) { fetch('https://www.cloudflare.com/cdn-cgi/trace', { method: 'GET' , headers: { 'Content-Type': 'text/plain', }, }) .then(resp => resp.text()) .then(resp => { if (!resp.error) { let ipInfo = resp; let formData = new FormData(); if (type === 'customer/do-not-sell') { isenseGDPR.Cookies.set('cookieconsent_preferences_disabled', 'analytics,marketing,functionality,', { expires: 365 }); isenseGDPR.Cookies.set('cookieconsent_status', 'accept_selected', { expires: 365 }); if (typeof window.Shopify.customerPrivacy !== 'undefined' && typeof window.Shopify.customerPrivacy.setTrackingConsent === 'function') { window.Shopify.customerPrivacy.setTrackingConsent( { "sale_of_data": false, }, () => { console.log('sale_of_data: false')} ); } else { console.log('Customer Privacy API is not defined in the current page'); } if (document.querySelector('.cc-window')) { document.querySelector('.cc-window').style.display = 'none'; } // reset popup text document.querySelector('#appi-modal-container-text').innerHTML = 'I give my consent on collecting my email and IP address for the purpose of processing this request. For more check Privacy Policy.'; } formData.append('shop', Shopify.shop); formData.append('email', email); formData.append('type', type); formData.append('sourceOfRequest', 3); formData.append('ipAddress', ipInfo); formData.append('consentGiven', consentGiven); formData.append('page', 'appi'); formData.append('lang', Shopify.locale ? Shopify.locale : ''); formData.append('gtranslateLang', (typeof isenseGDPR !== 'undefined' && isenseGDPR.Cookies) ? isenseGDPR.Cookies.get('googtrans') : ''); fetch('https://app.consentmo.com/gdprRequests/submitRequest', { method: 'POST', body: formData }) .then(resp => resp.json()) .then(resp => { if (!resp.error) { showInlineSuccessMessage(); } else { showInlineErrorMessage(resp.message || 'Something went wrong. Please try again.'); } if (typeof callback == 'function') { callback(resp); } }) .catch(error => { showInlineErrorMessage(error.message || 'Something went wrong. Please try again.'); }) } else { showInlineErrorMessage(resp.message || 'Something went wrong. Please try again.'); } }) } function showInlineSuccessMessage() { if (!activeSubmitButton) { return; } var form = activeSubmitButton.closest('form'); if (!form) { return; } var errNode = form.querySelector('.gdpr-request-error'); if (errNode) { errNode.remove(); } var successNode = form.querySelector('.gdpr-request-success'); if (!successNode) { successNode = document.createElement('p'); successNode.className = 'gdpr-request-success'; form.appendChild(successNode); } successNode.textContent = successMessage; } function showInlineErrorMessage(message) { if (!activeSubmitButton) { return; } var form = activeSubmitButton.closest('form'); if (!form) { return; } var successNode = form.querySelector('.gdpr-request-success'); if (successNode) { successNode.remove(); } var errorNode = form.querySelector('.gdpr-request-error'); if (!errorNode) { errorNode = document.createElement('p'); errorNode.className = 'gdpr-request-error'; form.appendChild(errorNode); } errorNode.textContent = message; } document.addEventListener("DOMContentLoaded", function() { //Append modal to body, because otherwise it will not stay centered(even if position is fixed) document.querySelector("body").insertAdjacentHTML( 'beforeend', verificationModalContent); document.addEventListener('click', function(e) { let submitButton = e.target.closest('input[type="submit"]'); if (submitButton && submitButton.id && submitButton.id.indexOf('request-submit') !== -1) { activeSubmitButton = submitButton; } }); let searchParams = new URLSearchParams(window.location.search); let param = searchParams.get('id'); if(param) { document.getElementById(param).scrollIntoView(); } // When the user clicks on (x), close the modal document.querySelector('.data-verification-close').addEventListener('click', function(e) { e.preventDefault(); closeVerificationModal(); // Focus the button of the request type that was picked let appiForms = document.querySelectorAll('.form-appi-request'); appiForms.forEach(function(appiForm) { if (appiForm.id === 'form-appi-withdraw-consent-request') return; if (appiForm.style.display !== "none") { let appiFormLinks = appiForm.previousElementSibling; if (appiFormLinks && appiFormLinks.querySelectorAll('li').length === 1) { appiFormLinks.querySelector('button').focus(); } } }); }); document.querySelector('#data-verification-icon, #data-verification-container p').addEventListener('click', function(e) { e.preventDefault(); // Detect a href's click, because it is overwritten. if(e.target.tagName === "A") { window.open(e.target.href, '_blank'); return; } document.querySelector('#data-verification-icon').classList.add("clicked"); setTimeout(()=>{ toggleFadeiSense(document.querySelector("#data-verification-modal"), false); document.querySelector('#data-verification-background .loading').style.display = 'inline-block'; consentGiven = true; appiSendRequest(function(resp) { consentGiven = false; closeVerificationModal(); }); }, 400); }); }); function openVerificationModal(){ if(!isEmailValid(email)) { showInlineErrorMessage('Invalid email'); return; } toggleFadeiSense(document.querySelector("#data-verification-modal"), true); toggleFadeiSense(document.querySelector('#data-verification-background'), true); document.querySelector('#data-verification-container input').focus(); } function closeVerificationModal(){ toggleFadeiSense(document.querySelector("#data-verification-background"), false); document.querySelector('#data-verification-icon').classList.remove("clicked"); document.querySelector('#data-verification-background .loading').style.display = 'none'; // Focus the button of the request type that was picked let appiForms = document.querySelectorAll('.form-appi-request'); appiForms.forEach(function(appiForm) { if (appiForm.id === 'form-appi-withdraw-consent-request') return; if (appiForm.style.display !== "none") { let appiFormLinks = appiForm.previousElementSibling; if (appiFormLinks && appiFormLinks.querySelectorAll('li').length === 1) { appiFormLinks.querySelector('button').focus(); } } }); } document.querySelector('#btn-appi-access-data-request').addEventListener('click', function(e) { e.preventDefault(); let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false; appiSlideUpAll(); if(!isExpanded) { slideDown(document.querySelector('#form-appi-access-data-request'), 200); this.setAttribute("aria-expanded", "true"); } else { slideUp(document.querySelector('#form-appi-access-data-request'), 200); this.setAttribute("aria-expanded", "false"); } }); document.querySelector('#form-appi-access-data-request-submit').addEventListener('click', function(e) { e.preventDefault(); activeSubmitButton = this; email = document.querySelector('#form-appi-access-data-request-email').value; type = 'customer/report'; openVerificationModal(); }); document.querySelector('#btn-appi-correct-info-request').addEventListener('click', function(e) { e.preventDefault(); let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false; appiSlideUpAll(); if(!isExpanded) { slideDown(document.querySelector('#form-appi-correct-info-request'), 200); this.setAttribute("aria-expanded", "true"); } else { slideUp(document.querySelector('#form-appi-correct-info-request'), 200); this.setAttribute("aria-expanded", "false"); } }); document.querySelector('#form-appi-correct-info-request-submit').addEventListener('click', function(e) { e.preventDefault(); activeSubmitButton = this; email = document.querySelector('#form-appi-correct-info-request-email').value; type = 'customer/edit'; openVerificationModal(); }); document.querySelector('#btn-appi-delete-data-request').addEventListener('click', function(e) { e.preventDefault(); let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false; appiSlideUpAll(); if(!isExpanded) { slideDown(document.querySelector('#form-appi-delete-data-request'), 200); this.setAttribute("aria-expanded", "true"); } else { slideUp(document.querySelector('#form-appi-delete-data-request'), 200); this.setAttribute("aria-expanded", "false"); } }); document.querySelector('#form-appi-delete-data-request-submit').addEventListener('click', function(e) { e.preventDefault(); activeSubmitButton = this; email = document.querySelector('#form-appi-delete-data-request-email').value; type = 'customer/delete'; openVerificationModal(); }); // 同意の撤回(常に表示・即時反映) document.querySelector('#form-appi-withdraw-consent-request-submit').addEventListener('click', function(e) { e.preventDefault(); if (typeof window.csmHandleWithdrawConsentAppi === 'function') { window.csmHandleWithdrawConsentAppi(this); } }); // プライバシー設定を更新 document.querySelector('#btn-appi-update-privacy-settings').addEventListener('click', function(e) { e.preventDefault(); if (typeof showPreferences === 'function') { showPreferences(this); return; } let settingsButton = document.querySelector('.cc-window .cc-settings'); if (settingsButton) { settingsButton.click(); return; } alert('プライバシー設定はこのページでは利用できません。'); }); // Keyboard navigation in data verification modal for accessibility document.addEventListener("DOMContentLoaded", function() { document.querySelector('#data-verification-modal').addEventListener('keydown', function(e) { let isTabPressed = e.keyCode === 9 || e.key === "Tab" || e.code === "Tab"; let isEscapePressed = e.keyCode === 27 || e.key === "Escape" || e.code === "Escape"; let isSpacePressed = event.keyCode === 32 || e.key === " " || event.code === "Space"; let isEnterPressed = event.keyCode === 13 || e.key === "Enter" || event.code === "Enter"; let dataVerificationCloseButton = document.querySelector('.data-verification-close'); let dataVerificationCheckbox = document.querySelector('#data-verification-container input'); let dataVerificationLink = document.querySelector('#data-verification-container a'); // This function saves us the trouble of calling e.preventDefault() after every focusing let executeFocus = (focusElement) => {focusElement.focus();e.preventDefault();} if (isEscapePressed) { if (dataVerificationCloseButton) { dataVerificationCloseButton.click(); } } if (isSpacePressed || isEnterPressed) { if (document.activeElement === dataVerificationCheckbox) { document.querySelector('#data-verification-container #data-verification-icon').click(); } } if (isTabPressed) { if (e.shiftKey) { if (dataVerificationCloseButton && document.activeElement === dataVerificationCloseButton) { executeFocus(dataVerificationLink); } } else { if (dataVerificationLink && document.activeElement === dataVerificationLink) { executeFocus(dataVerificationCloseButton); } } } }); });