PageSourceSearch

https://sagamachi.jp/wp-content/themes/sagamachi-2024/assets/js/index.js?t=1790966489&ver=1.0.0

js sagamachi.jp collected 2026-10-02 18:42:09 UTC 34,936 bytes, 287 lines download raw bytes

vendor: 678 bytes, lines 1-13
1/*
2 * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
3 * This devtool is neither made for production nor for readable output files.
4 * It uses "eval()" calls to create a separate source file in the browser devtools.
5 * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
6 * or disable the default devtool with "devtool: false".
7 * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
8 */
9/******/ (() => { // webpackBootstrap
10/******/ 	"use strict";
11/******/ 	var __webpack_modules__ = ({
12
13/***/ "./src/
13js/index.js":
14/*!*************************!*\
15  !*** ./src/js/index.js ***!
16  \*************************/
17/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
18
19eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _modules_Header__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./modules/Header */ \"./src/js/modules/Header.js\");\n/* harmony import */ var _modules_SmoothScroll__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./modules/SmoothScroll */ \"./src/js/modules/SmoothScroll.js\");\n/* harmony import */ var _modules_NumberHeadline__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./modules/NumberHeadline */ \"./src/js/modules/NumberHeadline.js\");\n/* harmony import */ var _modules_Slider__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./modules/Slider */ \"./src/js/modules/Slider.js\");\n/* harmony import */ var _modules_SideMenu__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./modules/SideMenu */ \"./src/js/modules/SideMenu.js\");\n/* harmony import */ var _modules_Accordion__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./modules/Accordion */ \"./src/js/modules/Accordion.js\");\n/* harmony import */ var _modules_CourseSetting__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./modules/CourseSetting */ \"./src/js/modules/CourseSetting.js\");\n/* harmony import */ var _modules_FormAutoFill__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./modules/FormAutoFill */ \"./src/js/modules/FormAutoFill.js\");\n/* harmony import */ var _modules_SpMenuAccordion__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./modules/SpMenuAccordion */ \"./src/js/modules/SpMenuAccordion.js\");\n/* harmony import */ var _modules_FormSubmitController__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./modules/FormSubmitController */ \"./src/js/modules/FormSubmitController.js\");\n/* provided dependency */ var $ = __webpack_require__(/*! jquery */ \"./node_modules/jquery/dist/jquery.js\");\n\n\n\n\n\n\n\n\n\n\n\nconst $document = $(document);\nconst $window = $(window);\n\n$document.ready(function () {\n  console.log('v4.4');\n  new _modules_NumberHeadline__WEBPACK_IMPORTED_MODULE_2__[\"default\"]();\n  new _modules_Slider__WEBPACK_IMPORTED_MODULE_3__[\"default\"]();\n  new _modules_SideMenu__WEBPACK_IMPORTED_MODULE_4__[\"default\"]();\n  new _modules_Accordion__WEBPACK_IMPORTED_MODULE_5__[\"default\"]();\n  new _modules_SmoothScroll__WEBPACK_IMPORTED_MODULE_1__[\"default\"]();\n  new _modules_CourseSetting__WEBPACK_IMPORTED_MODULE_6__[\"default\"]();\n  new _modules_FormAutoFill__WEBPACK_IMPORTED_MODULE_7__[\"default\"]();\n  new _modules_SpMenuAccordion__WEBPACK_IMPORTED_MODULE_8__[\"default\"]();\n  new _modules_FormSubmitController__WEBPACK_IMPORTED_MODULE_9__[\"default\"]();\n  const header = new _modules_Header__WEBPACK_IMPORTED_MODULE_0__[\"default\"]();\n\n  function handleScroll() {\n    const scrollTop = $window.scrollTop();\n    header.updateHeaderClass(scrollTop);\n  }\n  $window.on('load resize scroll', handleScroll);\n});\n\n$window.on('load', function () {\n  // console.log('jQuery is loaded!');\n});\n\n\n//# sourceURL=webpack://sagamachi-2024/./src/js/index.js?");
20
21/***/ }),
22
23/***/ "./src/js/modules/Accordion.js":
24/*!*************************************!*\
25  !*** ./src/js/modules/Accordion.js ***!
26  \*************************************/
27/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
28
29eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nclass Accordion {\n  constructor() {\n    this.accordions = document.querySelectorAll('.Accordion');\n    this.init();\n    this.handleResize = this.handleResize.bind(this);\n    window.addEventListener('resize', this.handleResize);\n  }\n\n  init() {\n    this.accordions.forEach((accordion) => {\n      const trigger = accordion.querySelector('.Accordion__Title');\n      const content = accordion.querySelector('.Accordion__Content');\n\n      this.setInitialState(accordion, content);\n      trigger.addEventListener('click', () => this.handleAccordionClick(accordion, content));\n    });\n  }\n\n  setInitialState(accordion, content) {\n    if (accordion.classList.contains('is--On')) {\n      content.style.maxHeight = `${content.scrollHeight}px`;\n    } else {\n      content.style.maxHeight = '0';\n    }\n  }\n\n  handleAccordionClick(accordion, content) {\n    if (accordion.classList.contains('is--On')) {\n      // 既に開いているアコーディオンは閉じる\n      this.closeAccordion(accordion, content);\n    } else {\n      // 閉じているアコーディオンは開く\n      this.openAccordion(accordion, content);\n    }\n  }\n\n  openAccordion(accordion, content) {\n    // 他のアコーディオンを閉じる\n    this.closeAllAccordions();\n\n    accordion.classList.add('is--On');\n    content.style.maxHeight = `${content.scrollHeight}px`;\n  }\n\n  closeAccordion(accordion, content) {\n    accordion.classList.remove('is--On');\n    content.style.maxHeight = '0';\n  }\n\n  closeAllAccordions() {\n    this.accordions.forEach((accordion) => {\n      const content = accordion.querySelector('.Accordion__Content');\n      this.closeAccordion(accordion, content);\n    });\n  }\n\n  handleResize() {\n    this.accordions.forEach((accordion) => {\n      const content = accordion.querySelector('.Accordion__Content');\n      if (accordion.classList.contains('is--On')) {\n        content.style.maxHeight = `${content.scrollHeight}px`;\n      }\n    });\n  }\n}\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Accordion);\n\n\n//# sourceURL=webpack://sagamachi-2024/./src/js/modules/Accordion.js?");
30
31/***/ }),
32
33/***/ "./src/js/modules/CourseSetting.js":
34/*!*****************************************!*\
35  !*** ./src/js/modules/CourseSetting.js ***!
36  \*****************************************/
37/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
38
39eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* provided dependency */ var $ = __webpack_require__(/*! jquery */ \"./node_modules/jquery/dist/jquery.js\");\nclass CourseSetting {\n  constructor() {\n    // 要素の取得\n    this.$viewButtons = $('.Btn.is--ListStyle');\n    this.$boxView = $('.ViewBox');\n    this.$listView = $('.ViewList');\n    this.$checkbox = $('#showActiveOnly');\n    this.$categorySelect = $('#categorySelect');\n    this.$courseItems = $('.ArticleCourse');\n\n    // イベントのバインド\n    this.bindEvents();\n  }\n\n  bindEvents() {\n    // 表示切り替え\n    this.$viewButtons.on('click', this.handleViewChange.bind(this));\n\n    // フィルタリング\n    this.$checkbox.on('change', this.updateVisibility.bind(this));\n    this.$categorySelect.on('change', this.updateVisibility.bind(this));\n  }\n\n  handleViewChange(event) {\n    const $clickedButton = $(event.currentTarget);\n    const viewType = $clickedButton.data('view');\n\n    // ボタンのis--On切り替え\n    this.$viewButtons.removeClass('is--On');\n    $clickedButton.addClass('is--On');\n\n    // 表示切り替え\n    if (viewType === 'list') {\n      this.$listView.addClass('is--Active');\n      this.$boxView.removeClass('is--Active');\n    } else {\n      this.$boxView.addClass('is--Active');\n      this.$listView.removeClass('is--Active');\n    }\n  }\n\n  updateVisibility() {\n    const selectedCategory = this.$categorySelect.val();\n    const showActiveOnly = this.$checkbox.prop('checked');\n\n    this.$courseItems.each((_, item) => {\n      const $item = $(item);\n      let shouldShow = true;\n\n      // カテゴリーフィルター\n      if (selectedCategory && !$item.data('categories').includes(selectedCategory)) {\n        shouldShow = false;\n      }\n\n      // 終了講座フィルター\n      if (showActiveOnly && $item.hasClass('is--Done')) {\n        shouldShow = false;\n      }\n\n      $item.toggle(shouldShow);\n    });\n  }\n}\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (CourseSetting);\n\n\n//# sourceURL=webpack://sagamachi-2024/./src/js/modules/CourseSetting.js?");
40
41/***/ }),
42
43/***/ "./src/js/modules/FormAutoFill.js":
44/*!****************************************!*\
45  !*** ./src/js/modules/FormAutoFill.js ***!
46  \****************************************/
47/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
48
49eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"default\": () => (/* binding */ FormAutoFill)\n/* harmony export */ });\n/* provided dependency */ var $ = __webpack_require__(/*! jquery */ \"./node_modules/jquery/dist/jquery.js\");\n/**\n * フォームの自動入力を処理するクラス\n * URLのクエリパラメータからフォームのinput要素に値を自動的に設定する\n * 有料版のContact Form 7 Multi-Step Moduleとの互換性を確保\n */\nclass FormAutoFill {\n  constructor() {\n    this.init();\n  }\n\n  /**\n   * 初期化処理\n   */\n  init() {\n    // ページ読み込み完了後に実行\n    $(document).ready(() => {\n      // フォームフィールドをクリアしない(問題の原因と思われるため)\n      // this.clearFormFields();\n\n      // クエリパラメータから値を設定\n      this.fillFormFromQueryParams();\n    });\n  }\n\n  /**\n   * フォームフィールドをクリアする\n   */\n  clearFormFields() {\n    // フォームフィールドをクリア\n    $('input[name=\"course-id\"]').val('');\n    $('input[name=\"course-name\"]').val('');\n    console.log('Form fields cleared');\n  }\n\n  /**\n   * URLのクエリパラメータからフォームのinput要素に値を設定し、編集不可にする\n   */\n  fillFormFromQueryParams() {\n    try {\n      // URLからクエリパラメータを取得\n      const urlParams = new URLSearchParams(window.location.search);\n\n      // idパラメータが存在する場合\n      if (urlParams.has('id')) {\n        const idValue = urlParams.get('id');\n\n        // Contact Form 7のidフィールドを探して値を設定\n        const idField = $('input[name=\"course-id\"]');\n\n        if (idField.length > 0) {\n          // 値を設定(クリアせずに直接設定)\n          idField.val(idValue);\n\n          // 編集不可に設定\n          idField.prop('readonly', true);\n\n          // スタイルを追加\n          idField.css({\n            'background-color': '#f0f0f0',\n            border: '1px solid #ccc',\n            color: '#666',\n            cursor: 'not-allowed',\n          });\n\n          // ラベルにも編集不可の表示を追加\n          const idLabel = idField.closest('.wpcf7-form-control-wrap').prev('label');\n          if (idLabel.length > 0) {\n            idLabel.append(' <span style=\"color: #999; font-size: 0.8em;\">(編集不可)</span>');\n          }\n        }\n      }\n\n      // titleパラメータが存在する場合\n      if (urlParams.has('title')) {\n        const titleValue = urlParams.get('title');\n\n        // タイトルをデコード(URLエンコードされている場合)\n        const decodedTitle = decodeURIComponent(titleValue);\n\n        // Contact Form 7のnameフィールドを探して値を設定\n        const nameField = $('input[name=\"course-name\"]');\n\n        if (nameField.length > 0) {\n          // 値を設定(クリアせずに直接設定)\n          nameField.val(decodedTitle);\n\n          // 編集不可に設定\n          nameField.prop('readonly', true);\n\n          // スタイルを追加\n          nameField.css({\n            'background-color': '#f0f0f0',\n            border: '1px solid #ccc',\n            color: '#666',\n            cursor: 'not-allowed',\n          });\n\n          // ラベルにも編集不可の表示を追加\n          const nameLabel = nameField.closest('.wpcf7-form-control-wrap').prev('label');\n          if (nameLabel.length > 0) {\n            nameLabel.append(' <span style=\"color: #999; font-size: 0.8em;\">(編集不可)</span>');\n          }\n        }\n      }\n    } catch (error) {\n      console.error('Error in fillFormFromQueryParams:', error);\n    }\n  }\n}\n\n\n//# sourceURL=webpack://sagamachi-2024/./src/js/modules/FormAutoFill.js?");
50
51/***/ }),
52
53/***/ "./src/js/modules/FormSubmitController.js":
54/*!************************************************!*\
55  !*** ./src/js/modules/FormSubmitController.js ***!
56  \************************************************/
57/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
58
59eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* provided dependency */ var $ = __webpack_require__(/*! jquery */ \"./node_modules/jquery/dist/jquery.js\");\n// Contact Form 7の二重送信抑制を管理するクラス\nclass FormSubmitController {\n  constructor() {\n    this.submitButtons = null;\n    this.init();\n  }\n\n  init() {\n    // DOMの準備を待ってから初期化\n    $(document).ready(() => {\n      this.findSubmitButtons();\n      this.setupEventListeners();\n    });\n  }\n\n  findSubmitButtons() {\n    this.submitButtons = $(\"input[type='submit'].wpcf7-submit\");\n\n    // ボタンが見つからない場合は少し待ってから再試行\n    if (this.submitButtons.length === 0) {\n      setTimeout(() => {\n        this.submitButtons = $(\"input[type='submit'].wpcf7-submit\");\n      }, 500);\n    }\n  }\n\n  setupEventListeners() {\n    // 送信ボタンクリック時の処理(イベント委譲を使用)\n    $(document).on('click', \"input[type='submit'].wpcf7-submit\", () => {\n      this.disableSubmitButton();\n    });\n\n    // Contact Form 7のバリデーションエラー時の処理\n    document.addEventListener(\n      'wpcf7invalid',\n      () => {\n        this.enableSubmitButton();\n      },\n      false\n    );\n\n    // Contact Form 7の送信完了時の処理\n    document.addEventListener(\n      'wpcf7mailsent',\n      () => {\n        this.enableSubmitButton();\n      },\n      false\n    );\n\n    // Contact Form 7の送信失敗時の処理\n    document.addEventListener(\n      'wpcf7mailfailed',\n      () => {\n        this.enableSubmitButton();\n      },\n      false\n    );\n  }\n\n  disableSubmitButton() {\n    const buttons = $(\"input[type='submit'].wpcf7-submit\");\n    buttons.css({\n      'pointer-events': 'none',\n      opacity: '0.5',\n    });\n  }\n\n  enableSubmitButton() {\n    const buttons = $(\"input[type='submit'].wpcf7-submit\");\n    buttons.css({\n      'pointer-events': 'auto',\n      opacity: '1',\n    });\n  }\n}\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (FormSubmitController);\n\n\n//# sourceURL=webpack://sagamachi-2024/./src/js/modules/FormSubmitController.js?");
60
61/***/ }),
62
63/***/ "./src/js/modules/Header.js":
64/*!**********************************!*\
65  !*** ./src/js/modules/Header.js ***!
66  \**********************************/
67/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
68
69eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* provided dependency */ var $ = __webpack_require__(/*! jquery */ \"./node_modules/jquery/dist/jquery.js\");\nclass Header {\n  constructor() {\n    this.$header = $('.Header');\n    this.$spMenuBtn = $('.SpMenuBtn');\n    this.$spMenu = $('.SpMenu');\n    this.$body = $('body');\n    this.$main = $('.Main');\n    this.scrollThreshold = 50;\n\n    this.bindEvents();\n  }\n\n  updateHeaderClass(scrollTop) {\n    if (scrollTop >= this.scrollThreshold) {\n      this.$header.addClass('--Scrolled');\n    } else {\n      this.$header.removeClass('--Scrolled');\n    }\n  }\n\n  bindEvents() {\n    this.$spMenuBtn.on('click', this.toggleMenu.bind(this));\n    $(window).on('resize', this.closeMenuOnResize.bind(this));\n  }\n\n  toggleMenu() {\n    this.$spMenuBtn.toggleClass('--Opened');\n    this.$spMenu.toggleClass('--Opened');\n    this.toggleBodyScroll();\n  }\n\n  closeMenuOnResize() {\n    if (this.$spMenu.hasClass('--Opened')) {\n      this.$spMenuBtn.removeClass('--Opened');\n      this.$spMenu.removeClass('--Opened');\n      this.enableBodyScroll();\n    }\n  }\n\n  toggleBodyScroll() {\n    if (this.$spMenu.hasClass('--Opened')) {\n      this.disableBodyScroll();\n    } else {\n      this.enableBodyScroll();\n    }\n  }\n\n  disableBodyScroll() {\n    this.$body.css('overflow', 'hidden');\n    this.$main.css('pointer-events', 'none');\n  }\n\n  enableBodyScroll() {\n    this.$body.css('overflow', '');\n    this.$main.css('pointer-events', '');\n  }\n}\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Header);\n\n\n//# sourceURL=webpack://sagamachi-2024/./src/js/modules/Header.js?");
70
71/***/ }),
72
73/***/ "./src/js/modules/NumberHeadline.js":
74/*!******************************************!*\
75  !*** ./src/js/modules/NumberHeadline.js ***!
76  \******************************************/
77/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
78
79eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* provided dependency */ var $ = __webpack_require__(/*! jquery */ \"./node_modules/jquery/dist/jquery.js\");\nclass NumberHeadline {\n  constructor() {\n    this.$document = $(document);\n    this.$window = $(window);\n    this.initialize();\n  }\n\n  initialize() {\n    this.$document.ready(() => {\n      this.setHeadlineIds();\n      this.setHeadlineNumbers();\n      this.generateAnchors();\n    });\n  }\n\n  setHeadlineIds() {\n    $('.BlockHeadline2').each((index, element) => {\n      $(element).attr('id', `HeadlineNumber-${index}`);\n    });\n  }\n\n  setHeadlineNumbers() {\n    $('.NumberHeadline').each((index, element) => {\n      $(element).text(index + 1);\n    });\n  }\n\n  generateAnchors() {\n    const $BtnWrap = $('.BlockAnchor__BtnArea');\n    if (!$BtnWrap.length) return;\n\n    $BtnWrap.empty();\n\n    $('.BlockHeadline2').each((index, headline) => {\n      const $headline = $(headline);\n      const $textElement = $headline.find('.BlockHeadline2__Text');\n      const $iconElement = $headline.find('.Icon');\n\n      const anchor = $('<a>', {\n        class: 'Btn--AlignLeft',\n        href: `#HeadlineNumber-${index}`,\n      });\n\n      const iconType = $iconElement.attr('class')?.match(/--type_(\\w+)/)?.[1];\n      const headlineText = $textElement.text().trim() || `項目 ${index + 1}`;\n      const iconPath =\n        $iconElement.attr('src') || `${window.themeUrl || ''}/assets/images/icon-frame.png`;\n\n      if (iconType) {\n        anchor.append(\n          $('<img>', {\n            class: `Icon --style_coloring --type_${iconType}`,\n            src: iconPath,\n            alt: headlineText,\n          }),\n          document.createTextNode(headlineText)\n        );\n      } else {\n        anchor.text(headlineText);\n      }\n\n      $BtnWrap.append(anchor);\n    });\n  }\n}\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (NumberHeadline);\n\n\n//# sourceURL=webpack://sagamachi-2024/./src/js/modules/NumberHeadline.js?");
80
81/***/ }),
82
83/***/ "./src/js/modules/SideMenu.js":
84/*!************************************!*\
85  !*** ./src/js/modules/SideMenu.js ***!
86  \************************************/
87/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
88
89eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* provided dependency */ var $ = __webpack_require__(/*! jquery */ \"./node_modules/jquery/dist/jquery.js\");\nclass SideMenu {\n  constructor() {\n    this.$sideMenuRelative = $('.SideMenuRelative');\n    this.$sideMenuOn = $('.SideMenu--On');\n    this.$sideMenuOff = $('.SideMenu--Off');\n    this.$projectsCategory = $('.SideMenu.--projects');\n\n    this.bindEvents();\n    this.setMinHeight();\n  }\n\n  bindEvents() {\n    this.$sideMenuOn.on('click', () => this.openMenu());\n    this.$sideMenuOff.on('click', () => this.closeMenu());\n  }\n\n  openMenu() {\n    this.$sideMenuRelative.addClass('is--On');\n  }\n\n  closeMenu() {\n    this.$sideMenuRelative.removeClass('is--On');\n  }\n\n  setMinHeight() {\n    const projectsHeight = this.$projectsCategory.outerHeight();\n    if (projectsHeight) {\n      this.$sideMenuRelative.css('min-height', `${projectsHeight}px`);\n    }\n  }\n}\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SideMenu);\n\n\n//# sourceURL=webpack://sagamachi-2024/./src/js/modules/SideMenu.js?");
90
91/***/ }),
92
93/***/ "./src/js/modules/Slider.js":
94/*!**********************************!*\
95  !*** ./src/js/modules/Slider.js ***!
96  \**********************************/
97/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
98
99eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var slick_carousel__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! slick-carousel */ \"./node_modules/slick-carousel/slick/slick.js\");\n/* harmony import */ var slick_carousel__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(slick_carousel__WEBPACK_IMPORTED_MODULE_0__);\n/* provided dependency */ var $ = __webpack_require__(/*! jquery */ \"./node_modules/jquery/dist/jquery.js\");\n\n\nclass Slider {\n  constructor() {\n    this.slider = $('.Slider');\n    this.init();\n  }\n\n  init() {\n    if (this.slider.length) {\n      // スライドが1つしかない場合はSlickを初期化しない(動画iframeのクローン問題を回避)\n      const slideCount = this.slider.children('.SliderItem').length;\n      if (slideCount <= 1) {\n        return;\n      }\n\n      this.slider.slick({\n        dots: true,\n        arrows: true,\n        infinite: true,\n        speed: 500,\n        slidesToShow: 1,\n        slidesToScroll: 1,\n        autoplay: true,\n        autoplaySpeed: 3000,\n        responsive: [\n          {\n            breakpoint: 768,\n            settings: {\n              arrows: true,\n            },\n          },\n        ],\n      });\n    }\n  }\n}\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Slider);\n\n\n//# sourceURL=webpack://sagamachi-2024/./src/js/modules/Slider.js?");
100
101/***/ }),
102
103/***/ "./src/js/modules/SmoothScroll.js":
104/*!****************************************!*\
105  !*** ./src/js/modules/SmoothScroll.js ***!
106  \****************************************/
107/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
108
109eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* provided dependency */ var $ = __webpack_require__(/*! jquery */ \"./node_modules/jquery/dist/jquery.js\");\nclass SmoothScroll {\n  constructor() {\n    this.headerHeight = 100;\n    this.bindEvents();\n  }\n\n  bindEvents() {\n    $(document).on('click', 'a[href^=\"#\"]', (e) => {\n      e.preventDefault();\n      this.scrollToTarget(e.currentTarget.hash);\n    });\n  }\n\n  scrollToTarget(target) {\n    const $target = $(target);\n    if ($target.length === 0) return;\n\n    const scrollToPosition = $target.offset().top - this.headerHeight;\n\n    $('html, body').animate(\n      {\n        scrollTop: scrollToPosition,\n      },\n      900,\n      'swing',\n      () => {\n        window.history.pushState(null, '', target);\n      }\n    );\n  }\n}\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SmoothScroll);\n\n\n//# sourceURL=webpack://sagamachi-2024/./src/js/modules/SmoothScroll.js?");
110
111/***/ }),
112
113/***/ "./src/js/modules/SpMenuAccordion.js":
114/*!*******************************************!*\
115  !*** ./src/js/modules/SpMenuAccordion.js ***!
116  \*******************************************/
117/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
118
119eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nclass SpMenuAccordion {\n  constructor() {\n    this.categories = document.querySelectorAll('.SpMenuList__Category');\n    this.init();\n    this.handleResize = this.handleResize.bind(this);\n    window.addEventListener('resize', this.handleResize);\n  }\n\n  init() {\n    // 初期状態の設定\n    this.categories.forEach((category) => {\n      const pages = category.nextElementSibling;\n\n      if (pages && pages.classList.contains('SpMenuList__Pages')) {\n        // カレントページがあるかチェック\n        const hasCurrent = pages.querySelector('.--current') !== null;\n\n        // 初期状態の設定(カレントページがある場合は開く、それ以外は閉じる)\n        if (hasCurrent) {\n          category.classList.add('is--Open');\n          pages.style.maxHeight = `${pages.scrollHeight}px`;\n        } else {\n          pages.style.maxHeight = '0';\n        }\n\n        // クリックイベントの追加\n        category.addEventListener('click', () => this.handleCategoryClick(category, pages));\n      }\n    });\n  }\n\n  handleCategoryClick(category, pages) {\n    if (category.classList.contains('is--Open')) {\n      // 既に開いているカテゴリは閉じる\n      this.closeCategory(category, pages);\n    } else {\n      // 閉じているカテゴリは開く\n      this.openCategory(category, pages);\n    }\n  }\n\n  openCategory(category, pages) {\n    category.classList.add('is--Open');\n    pages.style.maxHeight = `${pages.scrollHeight}px`;\n  }\n\n  closeCategory(category, pages) {\n    category.classList.remove('is--Open');\n    pages.style.maxHeight = '0';\n  }\n\n  handleResize() {\n    this.categories.forEach((category) => {\n      const pages = category.nextElementSibling;\n      if (\n        pages &&\n        pages.classList.contains('SpMenuList__Pages') &&\n        category.classList.contains('is--Open')\n      ) {\n        pages.style.maxHeight = `${pages.scrollHeight}px`;\n      }\n    });\n  }\n}\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SpMenuAccordion);\n\n\n//# sourceURL=webpack://sagamachi-2024/./src/js/modules/SpMenuAccordion.js?");
120
121/***/ })
vendor: 6,778 bytes, lines 121-287
121
122
123/******/ 	});
124/************************************************************************/
125/******/ 	// The module cache
126/******/ 	var __webpack_module_cache__ = {};
127/******/ 	
128/******/ 	// The require function
129/******/ 	function __webpack_require__(moduleId) {
130/******/ 		// Check if module is in cache
131/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
132/******/ 		if (cachedModule !== undefined) {
133/******/ 			return cachedModule.exports;
134/******/ 		}
135/******/ 		// Create a new module (and put it into the cache)
136/******/ 		var module = __webpack_module_cache__[moduleId] = {
137/******/ 			// no module.id needed
138/******/ 			// no module.loaded needed
139/******/ 			exports: {}
140/******/ 		};
141/******/ 	
142/******/ 		// Execute the module function
143/******/ 		__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
144/******/ 	
145/******/ 		// Return the exports of the module
146/******/ 		return module.exports;
147/******/ 	}
148/******/ 	
149/******/ 	// expose the modules object (__webpack_modules__)
150/******/ 	__webpack_require__.m = __webpack_modules__;
151/******/ 	
152/************************************************************************/
153/******/ 	/* webpack/runtime/chunk loaded */
154/******/ 	(() => {
155/******/ 		var deferred = [];
156/******/ 		__webpack_require__.O = (result, chunkIds, fn, priority) => {
157/******/ 			if(chunkIds) {
158/******/ 				priority = priority || 0;
159/******/ 				for(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];
160/******/ 				deferred[i] = [chunkIds, fn, priority];
161/******/ 				return;
162/******/ 			}
163/******/ 			var notFulfilled = Infinity;
164/******/ 			for (var i = 0; i < deferred.length; i++) {
165/******/ 				var [chunkIds, fn, priority] = deferred[i];
166/******/ 				var fulfilled = true;
167/******/ 				for (var j = 0; j < chunkIds.length; j++) {
168/******/ 					if ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {
169/******/ 						chunkIds.splice(j--, 1);
170/******/ 					} else {
171/******/ 						fulfilled = false;
172/******/ 						if(priority < notFulfilled) notFulfilled = priority;
173/******/ 					}
174/******/ 				}
175/******/ 				if(fulfilled) {
176/******/ 					deferred.splice(i--, 1)
177/******/ 					var r = fn();
178/******/ 					if (r !== undefined) result = r;
179/******/ 				}
180/******/ 			}
181/******/ 			return result;
182/******/ 		};
183/******/ 	})();
184/******/ 	
185/******/ 	/* webpack/runtime/compat get default export */
186/******/ 	(() => {
187/******/ 		// getDefaultExport function for compatibility with non-harmony modules
188/******/ 		__webpack_require__.n = (module) => {
189/******/ 			var getter = module && module.__esModule ?
190/******/ 				() => (module['default']) :
191/******/ 				() => (module);
192/******/ 			__webpack_require__.d(getter, { a: getter });
193/******/ 			return getter;
194/******/ 		};
195/******/ 	})();
196/******/ 	
197/******/ 	/* webpack/runtime/define property getters */
198/******/ 	(() => {
199/******/ 		// define getter functions for harmony exports
200/******/ 		__webpack_require__.d = (exports, definition) => {
201/******/ 			for(var key in definition) {
202/******/ 				if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
203/******/ 					Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
204/******/ 				}
205/******/ 			}
206/******/ 		};
207/******/ 	})();
208/******/ 	
209/******/ 	/* webpack/runtime/hasOwnProperty shorthand */
210/******/ 	(() => {
211/******/ 		__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
212/******/ 	})();
213/******/ 	
214/******/ 	/* webpack/runtime/make namespace object */
215/******/ 	(() => {
216/******/ 		// define __esModule on exports
217/******/ 		__webpack_require__.r = (exports) => {
218/******/ 			if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
219/******/ 				Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
220/******/ 			}
221/******/ 			Object.defineProperty(exports, '__esModule', { value: true });
222/******/ 		};
223/******/ 	})();
224/******/ 	
225/******/ 	/* webpack/runtime/jsonp chunk loading */
226/******/ 	(() => {
227/******/ 		// no baseURI
228/******/ 		
229/******/ 		// object to store loaded and loading chunks
230/******/ 		// undefined = chunk not loaded, null = chunk preloaded/prefetched
231/******/ 		// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded
232/******/ 		var installedChunks = {
233/******/ 			"index": 0
234/******/ 		};
235/******/ 		
236/******/ 		// no chunk on demand loading
237/******/ 		
238/******/ 		// no prefetching
239/******/ 		
240/******/ 		// no preloaded
241/******/ 		
242/******/ 		// no HMR
243/******/ 		
244/******/ 		// no HMR manifest
245/******/ 		
246/******/ 		__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);
247/******/ 		
248/******/ 		// install a JSONP callback for chunk loading
249/******/ 		var webpackJsonpCallback = (parentChunkLoadingFunction, data) => {
250/******/ 			var [chunkIds, moreModules, runtime] = data;
251/******/ 			// add "moreModules" to the modules object,
252/******/ 			// then flag all "chunkIds" as loaded and fire callback
253/******/ 			var moduleId, chunkId, i = 0;
254/******/ 			if(chunkIds.some((id) => (installedChunks[id] !== 0))) {
255/******/ 				for(moduleId in moreModules) {
256/******/ 					if(__webpack_require__.o(moreModules, moduleId)) {
257/******/ 						__webpack_require__.m[moduleId] = moreModules[moduleId];
258/******/ 					}
259/******/ 				}
260/******/ 				if(runtime) var result = runtime(__webpack_require__);
261/******/ 			}
262/******/ 			if(parentChunkLoadingFunction) parentChunkLoadingFunction(data);
263/******/ 			for(;i < chunkIds.length; i++) {
264/******/ 				chunkId = chunkIds[i];
265/******/ 				if(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {
266/******/ 					installedChunks[chunkId][0]();
267/******/ 				}
268/******/ 				installedChunks[chunkId] = 0;
269/******/ 			}
270/******/ 			return __webpack_require__.O(result);
271/******/ 		}
272/******/ 		
273/******/ 		var chunkLoadingGlobal = self["webpackChunksagamachi_2024"] = self["webpackChunksagamachi_2024"] || [];
274/******/ 		chunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));
275/******/ 		chunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));
276/******/ 	})();
277/******/ 	
278/************************************************************************/
279/******/ 	
280/******/ 	// startup
281/******/ 	// Load entry module and return exports
282/******/ 	// This entry module depends on other loaded chunks and execution need to be delayed
283/******/ 	var __webpack_exports__ = __webpack_require__.O(undefined, ["vendors"], () => (__webpack_require__("./src/js/index.js")))
284/******/ 	__webpack_exports__ = __webpack_require__.O(__webpack_exports__);
285/******/ 	
286/******/ })()
287;

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.