/** * 年齢認証 * ------------------------------------------------------------ * ・セッション内で認証済みの場合は認証画面を表示しない * ・「18歳以上です」クリック時は、認証画面がじわっと消えながら * メインコンテンツがフェードインする形で画面遷移する * ・「18歳未満です」クリック時はメインコンテンツを表示しない * ------------------------------------------------------------ */ (function () { var STORAGE_KEY = 'ageVerified'; var gate = document.getElementById('ageGate'); var panel = document.getElementById('ageGatePanel'); var siteWrap = document.getElementById('siteWrap'); var yesBtn = document.getElementById('ageGateYes'); var noBtn = document.getElementById('ageGateNo'); if (!gate || !siteWrap) return; function revealSite() { gate.classList.add('is-hiding'); siteWrap.classList.add('is-visible'); window.setTimeout(function () { gate.classList.add('is-hidden'); }, 900); } // 認証済みなら即表示(アニメーションなし) try { if (sessionStorage.getItem(STORAGE_KEY) === 'true') { gate.classList.add('is-hidden'); siteWrap.classList.add('is-visible'); return; } } catch (e) { /* sessionStorage が使えない環境では毎回認証画面を表示 */ } if (yesBtn) { yesBtn.addEventListener('click', function () { try { sessionStorage.setItem(STORAGE_KEY, 'true'); } catch (e) {} revealSite(); }); } if (noBtn) { noBtn.addEventListener('click', function () { panel.innerHTML = '
' + '

ご利用いただけません

' + '

当サイトは18歳未満の方はご覧いただけません。
ブラウザを閉じてください。

' + '
'; panel.style.background = 'transparent'; panel.style.boxShadow = 'none'; }); } })();