PageSourceSearch

https://www.toshiba-dmi.co.jp/common/js/common.js

js toshiba-dmi.co.jp collected 2026-10-04 22:44:40 UTC 111,078 bytes, 2,518 lines download raw bytes

1"use strict";
2/*------------------------------------------------------------
3 共通変数
4------------------------------------------------------------*/
5/*------------------------------------------------------------
6 PC・SPのサイズ取得
7------------------------------------------------------------*/
8// SPのウィンドウサイズ
9var sp_size = 768;
10// ウィンドウサイズ(pc・spで判定用)
11var window_size = 'pc';
12var w = 0;
13var h = 0;
14var js_bg_modalClassName = 'js-modal'; // モーダル用の共通クラス
15var bg_modalClassName = 'modal'; // モーダル用の共通クラス
16var movie__inner__ClassName = 'modal__inner'; // モーダルのインナー共通クラス
17var tabindex_before = ''; // モーダル表示前のアクティブ要素
18var modal_showflag = false; // モーダル表示前のアクティブ要素
19// ウィンドウサイズの測定(読み込み時)
20window.addEventListener('DOMContentLoaded', function () {
21    // w ウィンドウ幅を取得
22    w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
23    // h ウィンドウ幅を取得
24    h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
25    // PCサイズ
26    if (w > sp_size) {
27        window_size = 'pc';
28        // SPサイズ
29    }
30    else {
31        window_size = 'sp';
32    }
33}, false);
34// ウィンドウサイズの測定(リサイズ時)
35window.addEventListener('resize', function () {
36    // w ウィンドウ幅を取得
37    w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
38    // h ウィンドウ幅を取得
39    h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
40    // PCサイズ
41    if (w > sp_size) {
42        window_size = 'pc';
43        // SPサイズ
44    }
45    else {
46        window_size = 'sp';
47    }
48}, false);
49var set_position = 0;
50var page_scroll = '';
51window.addEventListener('scroll', function () {
52    if (set_position < document.documentElement.scrollTop) {
53        page_scroll = 'down';
54    }
55    else {
56        page_scroll = 'up';
57    }
58    set_position = document.documentElement.scrollTop;
59});
60var userAgent = window.navigator.userAgent.toLowerCase();
61var appVersion = window.navigator.appVersion.toLowerCase();
62/*------------------------------------------------------------
63  単位:vh ブラウザ対応(Safari)
64  アドレスバーの高さ算出
65------------------------------------------------------------*/
66var setFillHeight = function setFillHeight() {
67    var vh = window.innerHeight * 0.01;
68    document.documentElement.style.setProperty('--vh', "".concat(vh, "px"));
69};
70var prams = {
71    slidesPerView: 1,
72    // init: false,
73    effect: "fade",
74    allowTouchMove: false,
75    fadeEffect: {
76        crossFade: false
77    },
78    navigation: {
79        nextEl: ".js-article-card-contents .swiper-button-next",
80        prevEl: ".js-article-card-contents .swiper-button-prev",
81    }
82};
83// 画面のサイズ変動があった時に、高さを再計算する
84window.addEventListener('resize', setFillHeight);
85// 関数実行
86setFillHeight();
87/*------------------------------------------------------------
88  IE対応:Scroll量計測(Y軸)
89------------------------------------------------------------*/
90function getScrollY(window) {
91    if ('scrollY' in window) {
92        return window.scrollY;
93    }
94    if ('pageYOffset' in window) {
95        return window.pageYOffset;
96    }
97    var doc = window.document;
98    return doc.compatMode === 'CSS1Compat' ? doc.documentElement.scrollTop : doc.body.scrollTop;
99}
100/*------------------------------------------------------------
101  scroll関連
102  ・スクロール処理禁止
103  ・スクロール処理禁止解除
104------------------------------------------------------------*/
105// スクロールを禁止にする関数
106var disableScroll = function (event) {
107    event.preventDefault();
108};
109// スクロール処理禁止
110/* Scroll不可 */
111var scrollDisable = function () {
112    // IEの場合
113    var agent = window.navigator.userAgent.toLowerCase();
114    // 10まで 11以降
115    if ((agent.indexOf("msie") != -1) || (agent.indexOf("trident") != -1)) {
116    }
117    else {
118        document.addEventListener('mousewheel', callback, { passive: false }); // PC
119        document.addEventListener('touchmove', callback, { passive: false }); // SP
120    }
121};
122/* Scroll可 */
123var scrollable = function () {
124    // IEの場合
125    var agent = window.navigator.userAgent.toLowerCase();
126    // 10まで 11以降
127    if ((agent.indexOf("msie") != -1) || (agent.indexOf("trident") != -1)) {
128    }
129    else {
130        document.removeEventListener('mousewheel', callback, { capture: false }); // PC
131        document.removeEventListener('touchmove', callback, { capture: false }); // SP
132    }
133};
134var callback = function (event) {
135    event.preventDefault();
136};
137/* ---------------------------------------------------------
138スムーズスクロール(ページロード時のページ内リンク)
139hash: ID指定(位置)
140scroll_m : scroll停止時の初期余白
141speed: スクロールスピード
142--------------------------------------------------------- */
143function scrollToAnker(hash, scroll_m, speed) {
144    //hash変数の代入
145    var target = $(hash);
146    // header
147    function setFun() {
148        var position_set;
149        var $page_link_belt = $('.js-page-link-belt');
150        //hashが存在しているとき
151        if (target.length) {
152            if (target.offset().top > scroll_m) {
153                position_set = -scroll_m;
154            }
155            else {
156                position_set = 0;
157            }
158            // scroll値を調整
159            position_set += target.offset().top;
160            // .js-page-link-beltが存在しているとき(SP時)
161            if ($page_link_belt.length > 0) {
162                var $page_link_belt_children = $($page_link_belt[0]).children(); // headerの高さ
163                var h_page_link_children_belt = $page_link_belt_children.outerHeight(); // headerの高さ
164                position_set -= h_page_link_children_belt;
165                if (!$page_link_belt.hasClass('is-moving')) {
166                    position_set -= 19;
167                }
168            }
169        }
170        return position_set;
171    }
172    var position = setFun();
173    if (position !== undefined) {
174        //スクロール処理の実行
175        $('body,html').animate({
176            scrollTop: position
177        }, speed);
178    }
179}
180/*------------------------------------------------------------
181  ページ内Scroll処理(汎用用)
182------------------------------------------------------------*/
183function pageScrollFun(href) {
184    //header用のClass
185    //href変数に「#」の文字を含むとき
186    if (href.indexOf('#') != -1) {
187        //hrefの値が「#」完全一致するとき
188        if (href === '#') {
189            //scrollTopの位置まで、スクロールする
190            $('body,html').animate({
191                scrollTop: 0
192            }, 500, 'swing');
193            //hrefの値が「#」完全一致しないとき
194        }
195        else {
196            //hrefの値があるとき
197            if ($(href).length > 0) {
198                //スムーズスクロール
199                scrollToAnker(href, 0, 500);
200            }
201        }
202    }
203}
204/*------------------------------------------------------------
205  高さ揃え(matchHeight)
206  該当Classがあるとき、高さを調整する。
207------------------------------------------------------------*/
208function matchheightFun() {
209    //トップページ(ピックアップ&ニュース):.js-article-card-wrap .js-article-card-textarea
210    if ($('.js-article-card-wrap .js-article-card-textarea').length) {
211        $('.js-article-card-wrap .js-article-card-textarea').matchHeight();
212    }
213    //トップページ(ソリューション):.js-card .js-card-title-wrap
214    if ($('.js-card .js-card-title-wrap').length) {
215        $('.js-card .js-card-title-wrap').matchHeight();
216    }
217    //トップページ(導入事例):.js-article-cassette-wrap .js-article-cassette-item
218    if ($('.js-article-cassette-wrap .js-article-cassette-item').length) {
219        $('.js-article-cassette-wrap .js-article-cassette-item').matchHeight();
220    }
221    //トップページ(導入事例):.js-article-cassette-wrap .js-article-cassette-title
222    if ($('.js-article-cassette-wrap .js-article-cassette-title').length) {
223        $('.js-article-cassette-wrap .js-article-cassette-title').matchHeight();
224    }
225    //導入事例ページ:.js-related-tile-contents-item .js-related-tile-title
226    if ($('.js-related-tile-contents-item .js-related-tile-title').length) {
227        $('.js-related-tile-contents-item .js-related-tile-title').matchHeight();
228    }
229    //導入事例詳細ページ:.js-related-card-contents-item .js-related-card-title
230    if ($('.js-related-card-contents-item .js-related-card-title').length) {
231        $('.js-related-card-contents-item .js-related-card-title').matchHeight();
232    }
233}
234/*------------------------------------------------------------
235  記事が1か月以内か比較 TTime
236------------------------------------------------------------*/
237function dayDateTimeNewFun(target, targetTime) {
238    var now = new Date(); // 現在時刻
239    var nowYear = now.getFullYear();
240    var nowMonth = now.getMonth() + 1;
241    var nowDate = now.getDate();
242    if (nowMonth < 10) {
243        nowMonth = '0' + nowMonth;
244    }
245    if (nowDate < 10) {
246        nowDate = '0' + nowDate;
247    }
248    var nowTime = nowYear + '/' + nowMonth + '/' + nowDate;
249    var nowTimeDate = new Date(nowTime); // 現在時刻
250    if (nowTimeDate) {
251        for (var i = 0; i < $(target).length; i++) {
252            var target_current = $(target)[i];
253            //カセットがある時
254            if (target_current.length > 0) {
255                var targetTime_current = $(target_current).find(targetTime);
256                //日付がある時
257                if (targetTime_current.length > 0) {
258                    var articleDatetime = $(targetTime_current).attr('datetime');
259                    articleDatetime = articleDatetime.replace(/-/g, '/');
260                    var articleTime = new Date(articleDatetime); // 現在時刻
261                    var articleTimeYear = articleTime.getFullYear();
262                    var articleTimeMonth = articleTime.getMonth() + 1;
263                    var articleTimeDate = articleTime.getDate();
264                    var limitYear;
265                    var limitMonth;
266                    var limitDate = articleTimeDate;
267                    if (limitDate < 10) {
268                        limitDate = '0' + limitDate;
269                    }
270                    if (articleTimeMonth === 12) {
271                        limitYear = articleTimeYear + 1;
272                        limitMonth = '0' + 1;
273                    }
274                    else {
275                        limitYear = articleTimeYear;
276                        limitMonth = articleTimeMonth + 1;
277                        if (limitMonth < 10) {
278                            limitMonth = '0' + limitMonth;
279                        }
280                    }
281                    var limit = limitYear + '/' + limitMonth + '/' + limitDate;
282                    var articleToDate = new Date(limit); //入力された終了日
283                    if (articleToDate) {
284                        //1か月以内か比較
285                        if (articleToDate >= nowTimeDate ? true : false) {
286                            $(target_current).addClass('is-new');
287                        }
288                    }
289                }
290            }
291        }
292    }
293}
294/*------------------------------------------------------------
295  Swiper
296------------------------------------------------------------*/
297/*------------------------------------------------------------
298  TOP
299------------------------------------------------------------*/
300/*------------------------------------------------------------
301  キービジュアル
302------------------------------------------------------------*/
303function jsTopKeyVisualFun() {
304    var key_visual_wrap = document.querySelectorAll(".js-key-visual-wrap");
305    var _loop_1 = function () {
306        var $this = key_visual_wrap[i];
307        var $pagination = $this.querySelectorAll(".swiper-pagination");
308        var $contents = $this.querySelectorAll(".js-key-visual-contents");
309        var $this_swiper_pagination_wrap = $($this).find(".js-swiper-pagination-wrap");
310        var $this_swiper_stopbtn = $($this).find(".js-stopbtn");
311        var prams_1 = {
312            slidesPerView: 1,
313            loop: true,
314            speed: 500,
315            effect: "slide",
316            autoplay: {
317                delay: 6000,
318                disableOnInteraction: false,
319            },
320            allowTouchMove: false,
321            // ページネーションが必要なら追加
322            pagination: {
323                el: $pagination,
324                clickable: true
325            }
326        };
327        mySwiper = new Swiper($contents, prams_1);
328        if ($this_swiper_stopbtn.length > 0) {
329            $this_swiper_pagination_wrap.addClass('is-show');
330            $this_swiper_stopbtn.attr('tabindex', '0');
331            $this_swiper_stopbtn.on("click", function (e) {
332                var $this = $(e.currentTarget);
333                article_thum_swiper_1($this);
334            });
335            $this_swiper_stopbtn.keydown(function (e) {
336                if (e.keyCode == 13) {
337                    var $this_1 = $(e.currentTarget);
338                    article_thum_swiper_1($($this_1));
339                }
340            });
341            var article_thum_swiper_1 = function ($this) {
342                if ($($this).hasClass("stop")) {
343                    $($this).addClass("start").removeClass("stop");
344                    mySwiper.autoplay.stop();
345                }
346                else {
347                    $($this).addClass("stop").removeClass("start");
348                    mySwiper.autoplay.start();
349                }
350            };
351        }
352    };
353    var mySwiper;
354    for (var i = 0; i < key_visual_wrap.length; i++) {
355        _loop_1();
356    }
357}
358/*------------------------------------------------------------
359  ピックアップ&ニュース
360------------------------------------------------------------*/
361function jsArticleCardContentsFun() {
362    var mql = window.matchMedia('screen and (max-width: 768px)');
363    var article_card_wrap = document.querySelectorAll(".js-article-card-wrap");
364    var _loop_2 = function () {
365        var $this = article_card_wrap[i];
366        var $article_card_textarea = $this.querySelectorAll(".js-article-card-textarea");
367        var $nextEl = $this.querySelectorAll(".swiper-button-next");
368        var $prevEl = $this.querySelectorAll(".swiper-button-prev");
369        var $contents = $this.querySelectorAll(".js-article-card-contents")[0];
370        var $nav_item = $($this.querySelectorAll(".js-article-card-nav-item"));
371        //TABキー対応
372        if ($nav_item.length > 0) {
373            $nav_item.attr('tabindex', 0);
374        }
375        var NEXT_PREV_SET = function () {
376            var article_card_textarea_top = 0;
377            var article_card_textarea_height_half = 0;
378            var this_top = $($this).offset().top;
379            for (var z = 0; z < $article_card_textarea.length; z++) {
380                if ($article_card_textarea[z]) {
381                    article_card_textarea_top = $($article_card_textarea[z]).offset().top;
382                    article_card_textarea_height_half = $($article_card_textarea[z]).outerHeight() / 2;
383                }
384            }
385            var set_top = article_card_textarea_top - this_top + article_card_textarea_height_half;
386            if ($nextEl.length > 0) {
387                var nextEl_set_top = set_top - ($($nextEl).outerHeight() / 2);
388                $($nextEl).css({ 'top': nextEl_set_top + 'px' });
389            }
390            if ($prevEl.length > 0) {
391                var prevElset_top = set_top - ($($prevEl).outerHeight() / 2);
392                $($prevEl).css({ 'top': prevElset_top + 'px' });
393            }
394        };
395        var TAB_SET = function (realIndex) {
396            var $this_swiper_slide = $this.querySelectorAll(".swiper-slide");
397            //TABキー対応
398            if ($this_swiper_slide.length > 0) {
399                for (var z = 0; z < $this_swiper_slide.length; z++) {
400                    if (z !== realIndex + 1) {
401                        if ($($this_swiper_slide[z]).find('a').length > 0) {
402                            $($this_swiper_slide[z]).find('a').attr('tabindex', -1);
403                        }
404                    }
405                    else {
406                        if ($($this_swiper_slide[z]).find('a').length > 0) {
407                            $($this_swiper_slide[z]).find('a').attr('tabindex', '');
408                        }
409                    }
410                }
411            }
412        };
413        //clickの処理
414        var NAVITEM_CLICK = function (e) {
415            var $target;
416            if ($(e.currentTarget).hasClass('js-article-card-nav-item')) {
417                $target = $(e.currentTarget)[0];
418            }
419            else {
420                $target = $(e.currentTarget).parents('.js-article-card-nav-item')[0];
421            }
422            var $parent = $(e.currentTarget).parents('.js-article-card-wrap').find('.article-card-nav-item');
423            var num = Array.prototype.indexOf.call($parent, $target);
424            mySwiper.slideToLoop(num);
425        };
426        var prams_2 = {
427            slidesPerView: 1,
428            // init: false,
429            effect: "fade",
430            loop: true,
431            speed: 500,
432            autoplay: {
433                delay: 6000,
434                disableOnInteraction: false,
435            },
436            allowTouchMove: false,
437            navigation: {
438                nextEl: $nextEl,
439                prevEl: $prevEl,
440            },
441            on: {
442                init: function () {
443                    setTimeout(function () {
444                        NEXT_PREV_SET();
445                    }, 500);
446                    TAB_SET(0);
447                },
448                resize: function () {
449                    NEXT_PREV_SET();
450                },
451                slideChange: function () {
452                    if ($(mySwiper.$el[0]).parent().find('.js-article-card-nav-item')) {
453                        $(mySwiper.$el[0]).parent().find('.js-article-card-nav-item').removeClass('is-current');
454                        $($(mySwiper.$el[0]).parent().find('.js-article-card-nav-item')[mySwiper.realIndex]).addClass('is-current');
455                    }
456                    TAB_SET(mySwiper.realIndex);
457                    //高さぞろえ
458                    //トップページ(ピックアップ&ニュース):.js-article-card-wrap .js-article-card-textarea
459                    if ($(mySwiper.$el[0]).find('.js-article-card-textarea').length) {
460                        $(mySwiper.$el[0]).find('.js-article-card-textarea').matchHeight();
461                    }
462                }
463            }
464        };
465        mySwiper = new Swiper($contents, prams_2);
466        $($nav_item[0]).addClass('is-current');
467        //hover時に表示
468        $($nav_item).hover(
469            function (e){
470             // 要素にマウスを載せたときの処理
471               NAVITEM_CLICK(e);
472            },
473            function (e) {
474             // 要素からマウスをはなした
475            }
476        );
477        $nav_item.keydown(function (e) {
478            if (e.keyCode == 13) {
479                NAVITEM_CLICK(e);
480            }
481        });
482        var slider = function (mql) {
483            if (mql.matches) {
484                prams_2.effect = 'slide';
485                prams_2.allowTouchMove = true; // スワイプ有効
486            }
487            else {
488                prams_2.effect = 'fade';
489                prams_2.allowTouchMove = false; // スワイプ無効
490            }
491            if (mySwiper) {
492                mySwiper.destroy(true, true);
493                mySwiper = new Swiper($contents, prams_2);
494                $nav_item.removeClass('is-current');
495                $($nav_item[0]).addClass('is-current');
496            }
497        };
498        mql.addListener(slider);
499        slider(mql);
500    };
501    var mySwiper;
502    for (var i = 0; i < article_card_wrap.length; i++) {
503        _loop_2();
504    }
505}
506/*------------------------------------------------------------
507  case-study
508------------------------------------------------------------*/
509function jsRelatedCardContentsFun() {
510    var related_card_wrap = document.querySelectorAll(".js-related-card-wrap");
511    var _loop_3 = function () {
512        var $this = related_card_wrap[i];
513        var $nextEl = $this.querySelectorAll(".swiper-button-next");
514        var $prevEl = $this.querySelectorAll(".swiper-button-prev");
515        var $contents = $this.querySelectorAll(".js-related-card-contents");
516        var $swiper_slide = $this.querySelectorAll(".swiper-slide");
517        var mql = window.matchMedia('screen and (max-width: 768px)');
518        var prams_3 = {
519            slidesPerView: 1,
520            effect: "slide",
521            allowTouchMove: true,
522            navigation: {
523                nextEl: $nextEl,
524                prevEl: $prevEl,
525            },
526            on: {
527                init: function () {
528                    dayDateTimeNewFun('.js-related-card-contents-item', '.js-related-card-time');
529                }
530            }
531        };
532        mySwiper = new Swiper($contents, prams_3);
533        var slider = function (mql) {
534            if (mql.matches) {
535                prams_3.slidesPerView = 1;
536            }
537            else {
538                prams_3.slidesPerView = 3;
539            }
540            if (mySwiper) {
541                mySwiper.destroy(true, true);
542                mySwiper = new Swiper($contents, prams_3);
543            }
544        };
545        mql.addListener(slider);
546        slider(mql);
547    };
548    var mySwiper;
549    for (var i = 0; i < related_card_wrap.length; i++) {
550        _loop_3();
551    }
552}
553/*------------------------------------------------------------
554  bodyのidとheaderのhrefの値が一部合致する場合。カレントのClassを付与
555------------------------------------------------------------*/
556var GlinkActive = /** @class */ (function () {
557    function GlinkActive() {
558        // idを取得
559        var id = $('body').attr('id');
560        $('.js-l-header a').each(function (e) {
561            if ($($('.js-l-header a')[e]).attr('href')) {
562                // リンクのhrefとid名が一致するか
563                if ($($('.js-l-header a')[e]).attr('href').indexOf("/".concat(id, "/")) !== -1) {
564                    // bodyのIDと一致した時のみ、リンクにClassを付与
565                    $($('.js-l-header a')[e]).addClass("is-current");
566                }
567            }
568        });
569    }
570    return GlinkActive;
571}());
572/*------------------------------------------------------------
573  モーダル関連
574------------------------------------------------------------*/
575/*------------------------------------------------------------
576  モーダルを削除するときの処理 共通処理
577------------------------------------------------------------*/
578var ModalFun = /** @class */ (function () {
579    function ModalFun() {
580        this.target__link__click__ClassName = 'js-target-header-click'; // headerの吹き出し表示用のリンク
581        this.target__link__ClassName = 'js-target-header-link'; // 開閉リンクをクリック
582        this.target__link__item__ClassName = 'js-target-header-item'; // 開閉リンク
583        this.header__content__ClassName = 'js-header-content'; // チェックボックス
584        this.header__check__icon__hamburger__ClassName = 'js-header-check-icon-hamburger'; // チェックボックス
585        this.pop_js__ClassName = 'js-pop-up'; // ポップアップ用のリンク[HTMLに付与する共通Class]
586        this.modal__close__ClassName = 'js-modal_close'; // モーダルを閉じるボタン
587        this.fadeSpeed = 200; // モーダルの表示スピード
588        this.init();
589    }
590    // モーダルを削除するとき 共通関数
591    // モーダルの背景以外をクリックしたら削除
592    ModalFun.prototype.init = function () {
593        var self = this;
594        // モーダル非表示
595        document.addEventListener('click', function (e) {
596            // モーダル用のテキストリンク以外をクリック時
597            if (!$(e.target).hasClass("".concat(movie__inner__ClassName)) &&
598                !$(e.target).hasClass("".concat(self.target__link__click__ClassName)) &&
599                !$(e.target).hasClass("".concat(self.target__link__ClassName)) &&
600                !$(e.target).hasClass("".concat(self.target__link__item__ClassName)) &&
601                !$(e.target).hasClass("".concat(self.header__content__ClassName)) &&
602                !$(e.target).hasClass("".concat(self.header__check__icon__hamburger__ClassName)) &&
603                !$(e.target).hasClass("".concat(self.pop_js__ClassName)) &&
604                !$(e.target).parents().hasClass("".concat(self.pop_js__ClassName))
605               ) {
606                var flag = true;
607                for (var i = 0; i < $(e.target).parents().length; i++) {
608                    if ($($(e.target).parents()[i]).hasClass("".concat(self.header__content__ClassName))) {
609                        flag = false;
610                    }
611                }
612                if (flag === true) {
613                    // モーダルが1つ以上存在する場合
614                    if ($(".".concat(js_bg_modalClassName)).length > 0) {
615                        // ページscrollを解除
616                        scrollable();
617                        // モーダルを解除(フェードアウトし、HTMLを削除))
618                        $(".".concat(js_bg_modalClassName)).fadeOut(self.fadeSpeed, function () {
619                            $(".".concat(js_bg_modalClassName)).remove();
620                            $(tabindex_before).focus();
621                            modal_showflag = false;
622                        });
623                    }
624                }
625            }
626        });
627        // モーダル非表示
628        $('body').on('click', ".".concat(self.modal__close__ClassName), function (e) {
629            // モーダルが1つ以上存在する場合
630            if ($(".".concat(js_bg_modalClassName)).length > 0) {
631                // ページscrollを解除
632                scrollable();
633                // モーダルを解除(フェードアウトし、HTMLを削除))
634                $(".".concat(js_bg_modalClassName)).fadeOut(self.fadeSpeed, function () {
635                    $(".".concat(js_bg_modalClassName)).remove();
636                    $(tabindex_before).focus();
637                    modal_showflag = false;
638                });
639            }
640        });
641        $('body').on('keydown', ".".concat(self.modal__close__ClassName), function (event) {
642            if (event.keyCode == 13) {
643                // モーダルがなければ実行
644                if ($(".".concat(js_bg_modalClassName)).length > 0) {
645                    // ページscrollを解除
646                    scrollable();
647                    // モーダルを解除(フェードアウトし、HTMLを削除))
648                    $(".".concat(js_bg_modalClassName)).fadeOut(self.fadeSpeed, function () {
649                        $(".".concat(js_bg_modalClassName)).remove();
650                        $(tabindex_before).focus();
651                        modal_showflag = false;
652                    });
653                }
654            }
655        });
656    };
657    ;
658    return ModalFun;
659}());
660/*------------------------------------------------------------
661  ポップアップjs
662  ※モーダルの削除処理は、ModalFun()と組み合わせて使用します。
663------------------------------------------------------------*/
664function ModalPopUpFun() {
665  this.pop__up__ClassName = 'js-pop-up';
666  this.$pop = $('.' + this.pop__up__ClassName); //モーダルのリンクのClass
667  this.pop__up__html__ClassName = 'js-pop-up-html';
668  this.modal_set = '';//モーダル HTMLを代入する変数
669  this.modal_setClass = 'js-modal-pop-up modal-pop-up'; //モーダルに付与するClass
670  this.modal_textarea_setClassName = 'js-modal-textarea modal-textarea'; //モーダルコンテンツに付与するクラス
671  this.fadeSpeed = 200;//fadeのスピード
672  this.modalMenuElements ='.js-modal_close, a, button, input, textarea, [tabindex]';
673  this.init();
674}
675//初期設定
676ModalPopUpFun.prototype.init = function () {
677  var self = this;
678  //モーダル[動画]のリンクのClassがあるとき
679  if (self.$pop.length > 0) {
680    for( var i = 0; i < self.$pop.length; i++) {
681      $(self.$pop[i]).attr('tabindex' , 0);
682    }
683    self.event();
684  }
685};
686ModalPopUpFun.prototype.event = function () {
687  var self = this;
688 
689  $( document ).keydown( function( e ) {
690    self.focusEvent(e);
691  });
692  self.$pop.on('click', function (e) {
693    tabindex_before = document.activeElement;//前回のTABのアクティブなものを格納
694 
695    //ページscrollを禁止
696    scrollDisable();
697    //初期値設定
698    self.set($(this));
699    self.focusCliclkEvent(e);
700    //イベント処理停止
701    e.preventDefault();
702  });
703 
704 
705  self.$pop.keydown(function(e) {
706    if( e.keyCode == 13 ) {
707      tabindex_before = document.activeElement;//前回のTABのアクティブなものを格納
708     
709      //ページscrollを禁止
710       scrollDisable();
711      //モーダルがなければ実行
712      if( $( '.' + bg_modalClassName ).length === 0 ){
713        //初期値設定
714        self.set($(this));
715        self.focusCliclkEvent(e);
716      }
717    }
718  });
719};
720 
721ModalPopUpFun.prototype.focusEvent = function (event) {
722 
723  var self = this;
724  var $modalMenuElements = $( '.' + js_bg_modalClassName ).find( self.modalMenuElements );
725  // モーダルメニュー内でフォーカスを当てたい要素リスト
726    // キーイベント
727      var firstEl = $modalMenuElements[0];
728      // タブキーを押されたかどうか
729      var tabKey = ( 9 === event.keyCode );
730      // Shiftキーが押されているかどうか
731      var shiftKey = event.shiftKey;
732      // モーダルメニュー内でフォーカスを当てたい最後の要素
733      var lastEl = $modalMenuElements[ $modalMenuElements.length - 1 ];
734     
735      if ( $('.js-modal').length > 0 ) {
736        // フォーカスが当たっている要素
737        var activeEl = document.activeElement;
738 
739        // モーダルメニュー内でフォーカスを当てたい最初の要素
740        if(  modal_showflag  === false){
741          //クローズボタン以外があるとき
742          if(  $modalMenuElements.length > 1 ){
743           
744            $($modalMenuElements[1]).focus();
745          //クローズボタンのみ
746          }else{
747            $($modalMenuElements[0]).focus();
748          }
749          modal_showflag = true;
750        }else{
751 
752 
753          // 最後の要素でタブキーが押された場合は、最初の要素にフォーカスを当てる
754          if ( ! shiftKey && tabKey && lastEl === activeEl ) {
755            event.preventDefault();
756            firstEl.focus();
757          }
758       
759          // 最初の要素でタブキー+Shiftキーが押された場合は、最後の要素にフォーカスを当てる
760          if ( shiftKey && tabKey && firstEl === activeEl ) {
761            event.preventDefault();
762            lastEl.focus();
763          }
764        }
765 
766       
767      }else{
768        if( self.flag === true){
769          self.flag = false;
770        }
771      }
772}
773 
774ModalPopUpFun.prototype.focusCliclkEvent = function (event) {
775  var self = this;
776  var $modalMenuElements = $( '.' + js_bg_modalClassName ).find( self.modalMenuElements );
777 
778  //クローズボタン以外があるとき
779  if(  $modalMenuElements.length > 1 ){
780    $($modalMenuElements[1]).focus();
781  //クローズボタンのみ
782  }else{
783    $($modalMenuElements[0]).focus();
784  }
785  modal_showflag = true;
786}
787 
788//設定
789ModalPopUpFun.prototype.set = function ($this) {
790  var self = this;
791 
792  if( $($this).find('.' + self.pop__up__html__ClassName).length > 0 ){
793    self.modal_set = $($this).find('.' + self.pop__up__html__ClassName)[0].cloneNode(true);
794   
795    //モーダルhtmlを挿入
796    var modalhtml = '<div class="'  + bg_modalClassName + ' ' + js_bg_modalClassName +'"><div class="modal__wrap"><div class="modal_close__wrap">
796<div class="js-modal_close modal_close" tabindex="0"><span></span><span></span></div></div><div class="'+ movie__inner__ClassName +'"></div></div></div>';
797    $('body').append(modalhtml);
798    //モーダルHTMLに、Classを付与
799    $('.' + js_bg_modalClassName).addClass(self.modal_setClass);
800    //modalの中身を挿入
801    $($('.' + movie__inner__ClassName)[0]).append(self.modal_set);
802    //モーダルHTMLをwrap
803   
804    $(self.modal_set).wrapAll('<div class="' + self.modal_textarea_setClassName + '"></div>');
805 
806 
807    //モーダル表示
808    $($('.' + js_bg_modalClassName)[0]).fadeIn(self.fadeSpeed);
809  }
810};
811/*------------------------------------------------------------
812 グローバルヘッダー(PC)
813  リンクをクリックした際:吹き出し表示のリンク表示
814  
815  hover要素のclass
816  js-target-link-click-hover
817  開くターゲットに指定しておくための、class名(hover以外のときに非表示にするために必要)
818  js-target-link-click-item
819------------------------------------------------------------*/
820var TargetLinkHeaderFun = /** @class */ (function () {
821    function TargetLinkHeaderFun() {
822        this.headerClassName = 'js-l-header'; // hover要素を取得
823        this.targetLinkClassName = 'js-target-header-hover'; // hover要素を取得
824        this.dataName = 'data-name';
825        this.dataTargetName = 'data-target';
826        // 開く状態時のClass
827        this.openClassName = 'is-open';
828        // 開くターゲットに指定しておくための、class名(hover以外のときに非表示にするために必要)
829        this.targetLinkHoverItemClassName = 'js-target-header-hover-item';
830        this.$targetLinkHoverItem = document.querySelectorAll(".".concat(this.targetLinkHoverItemClassName));
831        // グレースケール要に必要(jsで代入するClass)
832        this.gHeader__menuOnPcClassName = 'g-header__menu-on-pc';
833        // 表示のスピード
834        this.speed = 100;
835        // SP時の初回切り替え用フラグ
836        this.sp_first_flag = true;
837        // 初期設定
838        if (document.querySelectorAll(".".concat(this.targetLinkClassName)).length > 0) {
839            this.init();
840        }
841    }
842    // 初期設定
843    TargetLinkHeaderFun.prototype.init = function () {
844        var self = this;
845        $(".".concat(self.targetLinkClassName)).attr('tabIndex', '0');//タブインデックス追加
846        self.event();
847    };
848    // イベント
849    TargetLinkHeaderFun.prototype.event = function () {
850        var self = this;
851        // スクロール時
852        $(window).on("scroll", function (e) {
853            self.set();
854        });
855        // リサイズ時
856        $(window).on("resize", function (e) {
857            // SP初回切り替え時
858            if (window_size === 'sp' && self.sp_first_flag === true) {
859                // 設定を全てリセット
860                self.reset();
861                self.sp_first_flag = false;
862                // PC初回切り替え時
863            }
864            else if (window_size === 'pc' && self.sp_first_flag === false) {
865                self.sp_first_flag = true;
866                self.set();
867                // PC時かつPC初回切り替え時以外
868            }
869            else if (window_size === 'pc' && self.sp_first_flag === true) {
870                // 背景削除
871                if ($(".".concat(self.gHeader__menuOnPcClassName)).length) {
872                    // self.gHeader__menuOnPcClassName削除
873                    $(".".concat(self.gHeader__menuOnPcClassName)).remove();
874                }
875                self.set();
876                // その他
877            }
878            else {
879            }
880        });
881        $('body').on('click', function (e) {
882            // モーダル用のテキストリンク以外をクリック時
883            if (!e.currentTarget.closest(".".concat(self.targetLinkClassName))) {
884                // 設定を全てリセット
885                self.reset();
886            }
887        });
888        var $targetLink = document.querySelectorAll(".".concat(self.targetLinkClassName)); // data-name=xxxx xxxxを指定する用の要素を取得
889        for (var i = 0; i < $targetLink.length; i++) {
890            var current = $targetLink[i]; // ターゲットのリンクにマウスがある
891            var $this;
892            // リンクのdata-targetと同じdata-nameを持つ吹き出しメニューを取得
893            const currentDataTarget = current.getAttribute(self.dataTargetName);
894            let targetHoverItem = null;
895            if (currentDataTarget) {
896                targetHoverItem = document.querySelector(`.${self.targetLinkHoverItemClassName}[${self.dataName}="${currentDataTarget}"]`);
897            }
898
899            //自リンク削除対応後
900            $(document).on('focus', '.' + self.targetLinkClassName + '.act', function(e) {
901                $this = $(e.currentTarget);
902                self.hide($($this));
903                // 表示位置
904                self.set();
905                // 表示処理
906                self.fade($this);
907            });
908           
909            //focus(リンク)
910            $(current)[0].addEventListener('focus', function(e){
911                $this = $(e.currentTarget);
912                self.hide($($this));
913                // 表示位置
914                self.set();
915                // 表示処理
916                self.fade($this);
917             });
918             //hover時
919            $($(current).parents()[0]).hover(function (e) {
920                $this = $(e.currentTarget).find('.' + self.targetLinkClassName).first();
921                if (!$this.length) {
922                    return;
923                }
924                self.hide($($this));
925                // 表示位置
926                self.set();
927                // 表示処理
928                self.fade($this);
929            }, function () {
930                self.reset();
931            });
932            // リンク本体と対応メニューの両方からフォーカスが外れたら閉じる
933            if (targetHoverItem) {
934                (function (currentEl, targetHoverItemEl) {
935                    $(currentEl).add(targetHoverItemEl).on('focusout', function () {
936                        // フォーカス先の確定後に、リンク本体と対応メニューの外へ出たかを判定
937                        setTimeout(function () {
938                            const activeEl = document.activeElement;
939                            const inCurrent = currentEl === activeEl || currentEl.contains(activeEl);
940                            const inHoverItem = targetHoverItemEl === activeEl || targetHoverItemEl.contains(activeEl);
941                            // 他のヘッダートリガー/吹き出し内へ移動した場合は閉じない
942                            const inAnyTrigger = activeEl && activeEl.closest && activeEl.closest('.' + self.targetLinkClassName);
943                            const inAnyHoverItem = activeEl && activeEl.closest && activeEl.closest('.' + self.targetLinkHoverItemClassName);
944                            if (!inCurrent && !inHoverItem && !inAnyTrigger && !inAnyHoverItem) {
945                                self.reset();
946                            }
947                        }, 0);
948                    });
949                })(current, targetHoverItem);
950            }
951        }
952        // currentをクリック時
953        for( var z= 0; z < $( '.' + self.headerClassName + ' a' ).length; z++ ){
954            $( '.' + self.headerClassName + ' a' )[z].addEventListener('focus', function(e){
955                if( !$(e.target).hasClass(self.targetLinkClassName) &&
956                    $(e.target).parents('.' + self.targetLinkHoverItemClassName).length === 0){
957                    $this = $(e.currentTarget).children();
958                    self.hide($($this));
959                    // 表示位置
960                    self.set();
961                    // 表示処理
962                    self.fade($this);
963                    self.reset();
964                }
965            });
966        }
967    };
968    // リセット
969    TargetLinkHeaderFun.prototype.reset = function () {
970        var self = this;
971        self.hide(null); // 全閉じ
972        // ページscrollを禁止を解除
973        scrollable();
974    };
975    // 要素の位置を設定
976    TargetLinkHeaderFun.prototype.set = function () {
977        var self = this;
978        var $targetLink = document.querySelectorAll(".".concat(self.targetLinkClassName)); // data-name=xxxx xxxxを指定する用の要素を取得
979        for (var i = 0; i < self.$targetLinkHoverItem.length; i++) {
980            var current = self.$targetLinkHoverItem[i];
981            var currentDataName = current.getAttribute(self.dataName);
982            for (var z = 0; z < $targetLink.length; z++) {
983                var targetLinkHref = $targetLink[z].getAttribute(self.dataTargetName);
984                if (currentDataName === targetLinkHref) {
985                    // positionで吹き出しリンクを設置する(left,top)代入
986                    var thisGetBoundingClientRect = $targetLink[z].getBoundingClientRect();
987                    // 吹き出し表示の要素:topを指定
988                    current.style.top = "".concat(thisGetBoundingClientRect.bottom - 8, "px");
989                }
990            }
991        }
992    };
993    TargetLinkHeaderFun.prototype.fade = function ($this) {
994        var self = this;
995        $this.addClass(self.openClassName);
996
997        var hrefTarget = $this[0].getAttribute(self.dataTargetName);
998        var $dataName = document.querySelectorAll("[".concat(self.dataName, "]"));
999        // data-name ループ
1000        for (var i = 0; i < $dataName.length; i++) {
1001            // data-name
1002            var current = $dataName[i];
1003            // data-nameの値を取得
1004            var currentDataName = current.getAttribute(self.dataName);
1005            // currentDataNameとhrefTargetが一致するとき
1006            if (currentDataName === hrefTarget) {
1007                // heightにautoを指定
1008                $(current).css('height', 'auto');
1009                // 高さを指定
1010                var currentH = "".concat(current.clientHeight, "px");
1011                // heightをリセット
1012                $(current).css({ 'height': '0', 'visibility': 'visible' });
1013                // 高さをcurrentHに変更
1014                $(current).stop().animate({
1015                    height: currentH
1016                }, self.speed, 'swing');
1017            }
1018        }
1019        ;
1020        // ページscrollを禁止
1021        scrollDisable();
1022        // モーダルの背景追加
1023        if ($('body').find(".".concat(js_bg_modalClassName)).length === 0) {
1024            $('body').append("<div class=\"".concat(self.gHeader__menuOnPcClassName, " ").concat(bg_modalClassName, " ").concat(js_bg_modalClassName, "\"></div>"));
1025            $(".".concat(self.gHeader__menuOnPcClassName)).on('click', function (e) {
1026                var $targetLink = document.querySelectorAll(".".concat(self.targetLinkClassName)); // data-name=xxxx xxxxを指定する用の要素を取得
1027                for (var i = 0; i < $targetLink.length; i++) {
1028                    var current = $targetLink[i]; // ターゲットのリンクにマウスがある
1029                    self.hide($(current));
1030                }
1031            });
1032        }
1033    };
1034    // 要素を非表示対応にする
1035    TargetLinkHeaderFun.prototype.hide = function ($this) {
1036        var self = this;
1037
1038        if (!$this || !$this.length) { // 全閉じ
1039            var $targetLink = document.querySelectorAll("." + self.targetLinkClassName);
1040            $($targetLink).removeClass(self.openClassName);
1041
1042            for (var i = 0; i < self.$targetLinkHoverItem.length; i++) {
1043                var current = self.$targetLinkHoverItem[i];
1044                $(current).removeClass(self.openClassName).stop(true, true).animate({ height: 0 }, self.speed, 'swing');
1045                $(current).css({ visibility: 'hidden', top: '' }); // ★閉じを明示
1046            }
1047
1048            if ($("." + self.gHeader__menuOnPcClassName).length) { // 部分閉じ
1049                $("." + self.gHeader__menuOnPcClassName).remove();
1050            }
1051            return;
1052        }
1053
1054        var $targetLink = document.querySelectorAll(".".concat(self.targetLinkClassName)); // data-name=xxxx xxxxを指定する用の要素を取得
1055        $($targetLink).removeClass('is-open');
1056        // $thisがあるとき
1057        // data-name ループ
1058        for (var i = 0; i < self.$targetLinkHoverItem.length; i++) {
1059            // data-name
1060            var current = self.$targetLinkHoverItem[i];
1061            // data-nameの値を取得
1062            var currentDataName = current.getAttribute(self.dataName);
1063            // currentDataNameとhrefTargetが一致するとき
1064            var hrefTarget = $this[0].getAttribute(self.dataTargetName);
1065            if (currentDataName !== hrefTarget) {
1066                // currentが存在するとき
1067                // 開く状態のクラスを削除
1068                $(current).removeClass(self.openClassName);
1069                $(current).stop().animate({
1070                    height: 0
1071                }, self.speed, 'swing', function () {
1072                    for (var z = 0; z < self.$targetLinkHoverItem.length; z++) {
1073                        // data-name
1074                        var current_2 = self.$targetLinkHoverItem[z];
1075                        // data-nameの値を取得
1076                        var currentDataName_1 = current_2.getAttribute(self.dataName);
1077                        // currentDataNameとhrefTargetが一致するとき
1078                        var hrefTarget_1 = $this[0].getAttribute(self.dataTargetName);
1079                        if (currentDataName_1 !== hrefTarget_1) {
1080                            $(current_2).css({
1081                                visibility: 'hidden',
1082                                //  'left': '',
1083                                'top': ''
1084                            });
1085                        }
1086                    }
1087                });
1088            }
1089        }
1090        if ($(".".concat(self.gHeader__menuOnPcClassName)).length) {
1091            // self.gHeader__menuOnPcClassName削除
1092            $(".".concat(self.gHeader__menuOnPcClassName)).remove();
1093        }
1094    };
1095    ;
1096    return TargetLinkHeaderFun;
1097}());
1098/*------------------------------------------------------------
1099  //グローバルヘッダー(SP):開閉リンク
1100  要素の開閉(高さ0⇒本来の高さ)
1101------------------------------------------------------------*/
1102var TargetHeaderLinkFun = /** @class */ (function () {
1103    /*
1104      headerNavListTopmenuLinkClassName: string | undefined;
1105    
1106      $headerNavListTopmenuLink: any | undefined;
1107    */
1108    function TargetHeaderLinkFun() {
1109        this.targetLinkClassName = 'js-target-header-link'; // リンクのclass名
1110        this.dataName = 'data-name';
1110 // データ名([data-name="xxxxxxx"])
1111        this.dataTargetName = 'data-target'; // データ名([data-name="xxxxxxx"])
1112        this.$dataName = document.querySelectorAll("[".concat(this.dataName, "]"));
1113        this.openClassName = 'is-open'; // 開いた時のclass
1114        this.closeClassName = 'is-close'; // 閉じた時のclass
1115        this.speed = 500; // 開閉速度
1116        this.sp_first_flag = true; // SP時の初回切り替え用フラグ
1117        if (document.querySelectorAll(".".concat(this.targetLinkClassName)).length > 0) {
1118            this.init();
1119        }
1120    }
1121    // 初期値の設定
1122    TargetHeaderLinkFun.prototype.init = function () {
1123        var self = this;
1124        self.event();
1125    };
1126    ;
1127    // イベントの設定
1128    TargetHeaderLinkFun.prototype.event = function () {
1129        var self = this;
1130        // リサイズ時
1131        $(window).on("resize", function (e) {
1132            // SP初回切り替え時
1133            if (window_size === 'sp' && self.sp_first_flag === false) {
1134                self.sp_first_flag === false;
1135                // PC初回切り替え時
1136            }
1137            else if (window_size === 'pc' && self.sp_first_flag === true) {
1138                self.sp_first_flag === false;
1139                // ハンバーガーメニュー表示をリセット
1140                self.reset();
1141                // その他
1142            }
1143        });
1144        $('body').on('click', ".".concat(self.targetLinkClassName), function (e) {
1145            // 開いた際のclassが付与されていないとき
1146            if (!$(e.currentTarget).hasClass(self.openClassName)) {
1147                // fadeの処理、開いた際のclassを付与
1148                self.fade($(e.currentTarget));
1149            }
1150            else {
1151                // hideの処理、開いた際のclassを削除
1152                self.hide($(e.currentTarget));
1153            }
1154            // リンクタグ本来の動作を停止
1155            e.preventDefault();
1156        });
1157    };
1158    ;
1159    // リセット
1160    TargetHeaderLinkFun.prototype.reset = function () {
1161        var self = this;
1162        var $targetLink = document.querySelectorAll(".".concat(self.targetLinkClassName));
1163        for (var i = 0; i < $targetLink.length; i++) {
1164            var current = $targetLink[i];
1165            self.hide($(current));
1166        }
1167    };
1168    // ターゲットのfade用の処理を記載
1169    TargetHeaderLinkFun.prototype.fade = function ($this) {
1170        var self = this; // クリックされた要素のターゲットを取得
1171        var hrefTarget = $this[0].getAttribute(self.dataTargetName); // 要素があるとき、リンクの開いた際のクラスを付与とheight0⇒xxx
1172        $this.addClass(self.openClassName);
1173        for (var i = 0; i < self.$dataName.length; i++) {
1174            var current = self.$dataName[i];
1175            var currentDataName = current.getAttribute(self.dataName);
1176            if (currentDataName === hrefTarget) {
1177                // 本来の高さを取得するためにauto
1178                current.style.height = 'auto'; // 本来の高さを入力
1179                var currentH = "".concat(current.offsetHeight, "px"); // 高さを戻す
1180                $(current).css({
1181                    height: 0,
1182                    visibility: 'visible'
1183                });
1184                $(current).stop().animate({
1185                    height: currentH
1186                }, self.speed);
1187            }
1188        }
1189    };
1190    ;
1191    // ターゲットのhide用の処理を記載
1192    TargetHeaderLinkFun.prototype.hide = function ($this) {
1193        var self = this;
1194        var hrefTarget = $this[0].getAttribute(self.dataTargetName); // クリックされた要素のターゲットを取得
1195        var current = document.querySelectorAll("[".concat(self.dataName, "=").concat(hrefTarget, "]")); // 要素があるとき、height⇒0と、リンクの開いた際のクラスを削除
1196        if (current) {
1197            // 0の高さまで、animate
1198            $(current).stop().animate({ height: 0 }, self.speed, function () {
1199                if ($this.hasClass(self.openClassName)) {
1200                    // Animation complete.
1201                    $this.removeClass(self.openClassName);
1202                    $(current).css({
1203                        visibility: ''
1204                    });
1205                }
1206            });
1207        }
1208    };
1209    ;
1210    return TargetHeaderLinkFun;
1211}());
1212/*------------------------------------------------------------
1213  ハンバーガーメニューをクリックしたときの動作+リサイズ、開閉に伴うメニューの高さ調整
1214  グローバルヘッダー(SP)
1215------------------------------------------------------------*/
1216var GMenuSPFun = /** @class */ (function () {
1217    function GMenuSPFun() {
1218        this.hamburgerClassName = 'js-header-check-icon-hamburger';
1219        this.target__header__itemClassName = 'js-target-header-item';
1220        this.gHeader__menuOnSpClassName = 'g-header__menu-on-sp';
1221        this.$hamburger = $(".".concat(this.hamburgerClassName));
1222        this.pc_first_flag = true;
1223        this.init();
1224    }
1225    // 初期設定
1226    GMenuSPFun.prototype.init = function () {
1227        var self = this;
1228        // self.$hamburgerが存在するとき
1229        if (self.$hamburger.length > 0) {
1230            self.event();
1231        }
1232    };
1233    ;
1234    // イベントの設定
1235    GMenuSPFun.prototype.event = function () {
1236        var self = this;
1237        window.addEventListener('resize', function (e) {
1238            // PC時(切り替わった時のみ)
1239            if (window_size === 'pc' && self.pc_first_flag === false) {
1240                // ハンバーガーのチェックボックスをfalseに変更
1241                self.$hamburger.prop('checked', false);
1242                // モーダルの背景削除
1243                $(".".concat(self.gHeader__menuOnSpClassName)).remove();
1244                // PC時のフラグをtrueに変更
1245                self.pc_first_flag = true;
1246                // SPC時(切り替わった時のみ)
1247            }
1248            else if (window_size === 'sp' && self.pc_first_flag === true) {
1249                // PC時のフラグをfalseに変更
1250                self.pc_first_flag = false;
1251            }
1252            else {
1253            }
1254        });
1255        // リンクをクリックしたとき
1256        $(self.$hamburger).on('click', function (e) {
1257            if ($($(e.currentTarget)).prop("checked")) {
1258                // ハンバーガーメニュー表示
1259                self.fade();
1260            }
1261            else {
1262                // ハンバーガーメニュー非表示
1263                self.hide();
1264            }
1265        });
1266        // リンクをクリックしたとき
1267        $('a').on('click', function (e) {
1268            var flag = false;
1269            for (var i = 0; i < $(e.currentTarget).parents().length; i++) {
1270                if ($($(e.currentTarget).parents()[i]).hasClass(self.target__header__itemClassName)) {
1271                    flag = true;
1272                }
1273            }
1274            if (flag === true) {
1275                // ハンバーガーのチェックボックスをfalseに変更
1276                self.$hamburger.prop('checked', false);
1277            }
1278        });
1279    };
1280    ;
1281    // ハンバーガーメニューの表示
1282    GMenuSPFun.prototype.fade = function () {
1283        var self = this;
1284        // モーダルの背景追加
1285        if ($('body').find(".".concat(js_bg_modalClassName)).length === 0) {
1286            $('body').append("<div class=\"".concat(self.gHeader__menuOnSpClassName, " ").concat(bg_modalClassName, " ").concat(js_bg_modalClassName, "\"></div>"));
1287            // モーダルをクリック
1288            $(".".concat(self.gHeader__menuOnSpClassName)).on('click', function (e) {
1289                // ハンバーガーメニュー表示をリセット
1290                self.reset();
1291            });
1292        }
1293    };
1294    ;
1295    // ハンバーガーメニューの非表示
1296    GMenuSPFun.prototype.hide = function () {
1297        var self = this;
1298        // モーダルの背景削除
1299        $(".".concat(self.gHeader__menuOnSpClassName)).remove();
1300    };
1301    ;
1302    // リセット
1303    GMenuSPFun.prototype.reset = function () {
1304        var self = this;
1305        // チェックを外す
1306        $(self.$hamburger).prop('checked', false);
1307        // モーダルの背景削除
1308        self.hide();
1309    };
1310    ;
1311    return GMenuSPFun;
1312}());
1313/*------------------------------------------------------------
1314  追従ボタン&メニュー
1315------------------------------------------------------------*/
1316var FollowFun = /** @class */ (function () {
1317    function FollowFun() {
1318        this.follow__js__ClassName = 'js-follow-wrap'; //追従メニュー用のClass:共通
1319        this.$follow__js = document.querySelector('.' + this.follow__js__ClassName); //追従メニュー用のHTML
1320        this.page_link_belt_ClassName = 'js-page-link-belt'; //追従メニュー用のClass:共通
1321        this.$page_link_belt = document.querySelector('.' + this.page_link_belt_ClassName); //追従メニュー用のHTML
1322        this.follow__js__inner__ClassName = 'js-follow-inner'; //追従メニュー用のClass:共通
1323        this.$follow__js__inner = document.querySelector('.' + this.follow__js__inner__ClassName); //
1324        this.follow__js__stop__flag = false; ///
1325        this.follow__js__stop__ClassName = 'is-stop'; //
1326        this.follow__js__inner__transition__no__ClassName = 'is-transition-no'; //
1327        this.follow__js__inner__top = ''; //追従メニュー用のTTOP位置
1328        this.first__load__flag = false; //初回ロード判定
1329        this.pageTop__flag = false; //ページスクロール判定
1330        this.scrollY = ''; //ScrollY量
1331        this.speed = 500; //ScrollY量
1332        this.init();
1333    }
1334    //モーダルを削除するとき 共通関数
1335    FollowFun.prototype.init = function () {
1336        var self = this;
1337        if (self.$follow__js) {
1338            if (!self.$page_link_belt) {
1339                self.event();
1340            }
1341        }
1342    };
1343    ;
1344    //モーダルを削除するとき 共通関数
1345    FollowFun.prototype.set = function () {
1346        var self = this;
1347        self.scrollY = getScrollY(window);
1348        //表示
1349        if (self.scrollY > h) {
1350            self.pageTop__flag = true;
1351            //非表示
1352        }
1353        else {
1354            self.pageTop__flag = false;
1355        }
1356    };
1357    ;
1358    FollowFun.prototype.follow__set = function () {
1359        var self = this;
1360        var timeoutId;
1361        //停止位置までScroll
1362        if (page_scroll === 'up') {
1363            self.follow__js__inner__top = self.$follow__js.offsetTop - h;
1364        }
1365        else if (page_scroll === 'down') {
1366            self.follow__js__inner__top = self.$follow__js.offsetTop - h + self.$follow__js__inner.offsetHeight;
1367        }
1368        else {
1369            self.follow__js__inner__top = self.$follow__js.offsetTop - h + self.$follow__js__inner.offsetHeight;
1370        }
1371        if (self.scrollY >= self.follow__js__inner__top) {
1372            self.follow__js__stop__flag = true;
1373            if (!$(self.$follow__js).hasClass(self.follow__js__stop__ClassName)) {
1374                $(self.$follow__js).addClass(self.follow__js__stop__ClassName);
1375            }
1376            //停止位置より上
1377        }
1378        else {
1379            self.follow__js__stop__flag = false;
1380            if ($(self.$follow__js).hasClass(self.follow__js__stop__ClassName)) {
1381                if (page_scroll === 'up') {
1382                    $(self.$follow__js).addClass(self.follow__js__inner__transition__no__ClassName);
1383                    // スクロールを停止してXXms後に終了とする
1384                    timeoutId = setTimeout(function () {
1385                        $(self.$follow__js).removeClass(self.follow__js__inner__transition__no__ClassName);
1386                    }, 100);
1387                }
1388                $(self.$follow__js).removeClass(self.follow__js__stop__ClassName);
1389            }
1390        }
1391    };
1392    ;
1393    FollowFun.prototype.event = function () {
1394        var self = this;
1395        //ロード時
1396        $(window).on("load", function (e) {
1397            // 初回読み込み表示フラグがfalseの時
1398            if (self.first__load__flag === false) {
1399                self.first__load__flag = true;
1400            }
1401        });
1402        $(window).on("load scroll resize", function (e) {
1403            self.set();
1404        });
1405        self.follow__event();
1406    };
1407    ;
1408    FollowFun.prototype.follow__event = function () {
1409        var self = this;
1410        var timeoutId;
1411        $(window).on("load", function (e) {
1412            self.follow__set();
1413            // 表示フラグがtrueの時
1414            if (self.pageTop__flag === true && self.follow__js__stop__flag === false) {
1415                // 処理内容(表示)
1416                self.$follow__js__inner.style.transform = 'translateY(0)';
1417            }
1418            else {
1419                // 処理内容(非表示)
1420                self.$follow__js__inner.style.transform = 'translateY(100%)';
1421            }
1422        });
1423        $(window).on("scroll", function (e) {
1424            self.follow__set();
1425            // 初回読み込み表示フラグがtrueの時
1426            if (self.first__load__flag === true &&
1427                self.follow__js__stop__flag === false) {
1428                // スクロールを停止してXXms後に終了とする
1429                clearTimeout(timeoutId);
1430                // 表示フラグがtrueの時
1431                if (self.pageTop__flag === true) {
1432                    /*
1433                            // 処理内容(非表示)
1434                            self.$follow__js__inner.style.transform = 'translateY(100%)';
1435                    
1436                    
1437                            // スクロールを停止してXXms後に終了とする
1438                            timeoutId = setTimeout( function () {
1439                              // 処理内容(表示)
1440                              self.$follow__js__inner.style.transform = 'translateY(0)';
1441                            }, self.speed );
1442                            */
1443                    self.$follow__js__inner.style.transform = 'translateY(0)';
1444                    //表示位置より上
1445                }
1446                else {
1447                    // スクロールを停止してXXms後に終了とする
1448                    timeoutId = setTimeout(function () {
1449                        // 処理内容(非表示)
1450                        self.$follow__js__inner.style.transform = 'translateY(100%)';
1451                    }, self.speed);
1452                }
1453            }
1454        });
1455    };
1456    ;
1457    return FollowFun;
1458}());
1459;
1460/*------------------------------------------------------------
1461  ページ内リンク
1462  (リンク全体の要素,タブパネル全体の要素,fadeのスピード,連動するタブがある場合は指定)
1463  data-category属性を指定。
1464  リンク全体の要素の表示用の初期値は.is-currentをhtmlタグで記載すること
1465  タブの全体の要素の表示用の初期値は.is-first-activeをhtmlタグで記載すること
1466------------------------------------------------------------*/
1467var FaqListWrap_Fun = /** @class */ (function () {
1468    function FaqListWrap_Fun() {
1469        this.faq__list__wrap__ClassName = 'js-faq-list-wrap';
1470        this.faq__list__ClassName = 'js-faq-list';
1471        this.$faq__list = $('.' + this.faq__list__ClassName);
1472        this.faq__list__open__ClassName = 'js-faq-list-open';
1473        this.$faq__list__open = $('.' + this.faq__list__open__ClassName);
1474        this.dataName = 'data-name';
1475        this.$dataName = document.querySelectorAll("[".concat(this.dataName, "]"));
1476        this.faq__list__question__ClassName = 'js-faq-question';
1477        this.faq__list__answer__ClassName = 'js-faq-answer';
1478        this.open__ClassName = 'is-open';
1479        this.open__Text = '';
1480        this.close__Text = '全て閉じる';
1481        this.open__btn__ClassName = 'is-open';
1482        this.speed = 300;
1483        this.init(); //初期設定
1484    }
1485    //初期設定
1486    FaqListWrap_Fun.prototype.init = function () {
1487        var self = this;
1488        if (self.$faq__list.length > 0) {
1489            self.event(); //イベント
1490        }
1491    };
1492    ;
1493    //イベント
1494    FaqListWrap_Fun.prototype.event = function () {
1495        var self = this;
1496        var CLICK_EVENT = function (e) {
1497            var $target = $(e.currentTarget);
1498            var targetDl = $target.parent()[0];
1499            var targetAnswer = $(targetDl).find('.' + self.faq__list__answer__ClassName)[0];
1500            if ($(targetDl).parents('.' + self.faq__list__wrap__ClassName).length > 0) {
1501                var faq__list__wrap_current = $(targetDl).parents('.' + self.faq__list__wrap__ClassName);
1502                var count = 0;
1503                var faq__list = $(faq__list__wrap_current).find('.' + self.faq__list__ClassName);
1504                if (faq__list.length > 0) {
1505                    for (var z = 0; z < faq__list.length; z++) {
1506                        var faq__list__current = faq__list[z];
1507                        if ($(faq__list__current).hasClass(self.open__ClassName)) {
1508                            count++;
1509                        }
1510                    }
1511                    //開くボタンにするとき
1512                    if ($target.parent().hasClass('is-open')) {
1513                        var faq__list__wrap__dataName = $(targetDl).parents('.' + self.faq__list__wrap__ClassName).attr(self.dataName);
1514                        if (faq__list__wrap__dataName !== undefined) {
1515                            var faq__list__wrap__dataName_1 = $(targetDl).parents('.' + self.faq__list__wrap__ClassName).attr(self.dataName);
1516                            if (faq__list__wrap__dataName_1 !== undefined) {
1517                                // リンクタグ ループ
1518                                for (var i_1 = 0; i_1 < $('a').length; i_1++) {
1519                                    var $a_current = $($('a')[i_1]);
1520                                    if ($a_current.attr('href') !== undefined) {
1521                                        var href = $a_current.attr('href').replace('#', '');
1522                                        if (href === faq__list__wrap__dataName_1) {
1523                                            $a_current.html(self.open__Text);
1524                                            $a_current.parent().removeClass(self.open__btn__ClassName);
1525                                        }
1526                                    }
1527                                }
1528                            }
1529                        }
1530                    }
1531                    //閉じるボタンにするとき
1532                    if (count === faq__list.length - 1 && !$target.parent().hasClass('is-open')) {
1533                        var faq__list__wrap__dataName = $(targetDl).parents('.' + self.faq__list__wrap__ClassName).attr(self.dataName);
1534                        if (faq__list__wrap__dataName !== undefined) {
1535                            // リンクタグ ループ
1536                            for (var i_2 = 0; i_2 < $('a').length; i_2++) {
1537                                var $a_current = $($('a')[i_2]);
1538                                if ($a_current.attr('href') !== undefined) {
1539                                    var href = $a_current.attr('href').replace('#', '');
1540                                    if (href === faq__list__wrap__dataName) {
1541                                        $a_current.html(self.close__Text);
1542                                        $a_current.parent().addClass(self.open__btn__ClassName);
1543                                    }
1544                                }
1545                            }
1546                        }
1547                    }
1548                }
1549            }
1550            if (!$(targetDl).hasClass(self.open__ClassName)) {
1551                //faq表示
1552                self.faq_show(targetDl, targetAnswer);
1553            }
1554            else {
1555                //faq非表示
1556                self.faq_hide(targetDl, targetAnswer);
1557            }
1558        };
1559        for (var i = 0; i < self.$faq__list.length; i++) {
1560            var $current = self.$faq__list[i];
1561            var $faq__list__question = $($current).find('.' + self.faq__list__question__ClassName);
1562            $faq__list__question.attr('tabindex', "0");
1563            $($faq__list__question).on("click", function (e) {
1564                CLICK_EVENT(e);
1565            });
1566            $($faq__list__question).keydown(function (e) {
1567                if (e.keyCode == 13) {
1568                    var $this = $(e.currentTarget);
1569                    CLICK_EVENT(e);
1570                }
1571            });
1572        }
1573        for (var i = 0; i < self.$faq__list__open.length; i++) {
1574            var $current = self.$faq__list__open[i];
1575            self.open__Text = $($current).find('a').html();
1576            $($current).find('a').on("click", function (e) {
1577                var $this = $(e.currentTarget);
1578                var href = $this.attr('href');
1579                if (!$this.parent().hasClass(self.open__btn__ClassName)) {
1580                    $this.html(self.close__Text);
1581                    $this.parent().addClass(self.open__btn__ClassName);
1582                }
1583                else {
1584                    $this.html(self.open__Text);
1585                    $this.parent().removeClass(self.open__btn__ClassName);
1586                }
1587                if (href) {
1588                    var hrefTarget = href.replace('#', '');
1589                    // data-name ループ
1590                    for (var i_3 = 0; i_3 < self.$dataName.length; i_3++) {
1591                        // data-name
1592                        var current = self.$dataName[i_3];
1593                        // data-nameの値を取得
1594                        var currentDataName = current.getAttribute(self.dataName);
1595                        // currentDataNameとhrefTargetが一致するとき
1596                        if (currentDataName === hrefTarget) {
1597                            //faq表示
1598                            var $target = $(current);
1599                            var $targetDls = $target.find('.' + self.faq__list__ClassName);
1600                            for (var z = 0; z < $targetDls.length; z++) {
1601                                var targetDl = $targetDls[z];
1602                                //開くボタンの時
1603                                if ($this.parent().hasClass(self.open__btn__ClassName)) {
1604                                    //ターゲットが開いていないとき
1605                                    if (!$(targetDl).hasClass(self.open__ClassName)) {
1606                                        var targetAnswer = $(targetDl).find('.' + self.faq__list__answer__ClassName)[0];
1607                                        self.faq_show(targetDl, targetAnswer);
1608                                    }
1609                                    //閉じるボタンの時
1610                                }
1611                                else {
1612                                    //ターゲットが開いているとき
1613                                    if ($(targetDl).hasClass(self.open__ClassName)) {
1614                                        var targetAnswer = $(targetDl).find('.' + self.faq__list__answer__ClassName)[0];
1615                                        self.faq_hide(targetDl, targetAnswer);
1616                                    }
1617                                }
1618                            }
1619                        }
1620                    }
1621                    ;
1622                }
1623                //本来の処理を停止
1624                e.preventDefault();
1625            });
1626        }
1627    };
1628    ;
1629    //faq表示
1630    FaqListWrap_Fun.prototype.faq_show = function (targetDl, targetAnswer) {
1631        var self = this;
1632        $(targetDl).addClass(self.open__ClassName);
1633        targetAnswer.style.height = 'auto';
1634        // 高さを指定
1635        var currentH = "".concat(targetAnswer.clientHeight, "px");
1636        // heightをリセット
1637        targetAnswer.style.height = '0';
1638        // 高さをcurrentHに変更
1639        $(targetAnswer).stop().animate({
1640            height: currentH
1641        }, self.speed, 'swing', function (e) {
1642            $(targetAnswer).css('height', 'auto');
1643        });
1644    };
1645    ;
1646    //faq非表示
1647    FaqListWrap_Fun.prototype.faq_hide = function (targetDl, targetAnswer) {
1648        var self = this;
1649        $(targetAnswer).stop().animate({
1650            height: 0
1651        }, self.speed, 'swing', function (e) {
1652            $(targetDl).removeClass(self.open__ClassName);
1653        });
1654    };
1655    ;
1656    return FaqListWrap_Fun;
1657}());
1658/*------------------------------------------------------------
1659  アコーディオン
1660------------------------------------------------------------*/
1661var Accordion_Fun = /** @class */ (function () {
1662    function Accordion_Fun() {
1663        this.accordion__wrap__ClassName = 'js-accordion-wrap';
1664        this.$accordion__wrap = $('.' + this.accordion__wrap__ClassName);
1665        this.btn__accordion__ClassName = 'js-btn-accordion';
1666        this.$btn__accordion = $('.' + this.btn__accordion__ClassName);
1667        this.dataName = 'data-name';
1668        this.$dataName = document.querySelectorAll("[".concat(this.dataName, "]"));
1669        this.open__ClassName = 'is-open';
1670        this.open__btn__ClassName = 'is-open';
1671        this.speed = 300;
1672        this.init(); //初期設定
1673    }
1674    //初期設定
1675    Accordion_Fun.prototype.init = function () {
1676        var self = this;
1677        if (self.$accordion__wrap.length > 0) {
1678            self.event(); //イベント
1679        }
1680    };
1681    ;
1682    //イベント
1683    Accordion_Fun.prototype.event = function () {
1684        var self = this;
1685        for (var i = 0; i < self.$btn__accordion.length; i++) {
1686            $(self.$btn__accordion[i]).find('a').on('click', function (e) {
1687                var $this = e.currentTarget;
1688                var this_href = $($this).attr('href');
1689                var opne_flag = false;
1690                for (var z = 0; z < self.$dataName.length; z++) {
1691                    if ($(self.$dataName[z]).attr(self.dataName) === this_href) {
1692                        if ($(self.$dataName[z]).hasClass(self.open__ClassName)) {
1693                            self.accordion_close(self.$dataName[z]);
1694                        }
1695                        else {
1696                            self.accordion_open(self.$dataName[z]);
1697                        }
1698                        opne_flag = true;
1699                    }
1700                }
1701                if (opne_flag === true) {
1702                    if ($($this).parent().hasClass(self.open__btn__ClassName)) {
1703                        $($this).parent().removeClass(self.open__btn__ClassName);
1704                    }
1705                    else {
1706                        $($this).parent().addClass(self.open__btn__ClassName);
1707                    }
1708                }
1709                e.preventDefault();
1710            });
1711        }
1712    };
1713    ;
1714    //アコーディオン表示
1715    Accordion_Fun.prototype.accordion_open = function (target) {
1716        var self = this;
1717        $(target).addClass(self.open__ClassName);
1718        target.style.height = 'auto';
1719        // 高さを指定
1720        var currentH = "".concat(target.clientHeight, "px");
1721        // heightをリセット
1722        target.style.height = '0';
1723        // 高さをcurrentHに変更
1724        $(target).stop().animate({
1725            height: currentH
1726        }, self.speed, 'swing', function (e) {
1727            $(target).css('height', 'auto');
1728        });
1729    };
1730    ;
1731    //アコーディオン非表示
1732    Accordion_Fun.prototype.accordion_close = function (target) {
1733        var self = this;
1734        $(target).stop().animate({
1735            height: 0
1736        }, self.speed, 'swing', function (e) {
1737            $(target).removeClass(self.open__ClassName);
1738        });
1739    };
1740    ;
1741    return Accordion_Fun;
1742}());
1743/*------------------------------------------------------------
1744  ページ内リンク
1745  (リンク全体の要素,タブパネル全体の要素,fadeのスピード,連動するタブがある場合は指定)
1746  data-category属性を指定。
1747  リンク全体の要素の表示用の初期値は.is-currentをhtmlタグで記載すること
1748  タブの全体の要素の表示用の初期値は.is-first-activeをhtmlタグで記載すること
1749------------------------------------------------------------*/
1750var Pagelinklist_pc_Fun = /** @class */ (function () {
1751    function Pagelinklist_pc_Fun() {
1752        this.page__link__belt__ClassName = 'js-page-link-belt'; //追従メニュー用のClass:共通
1753        this.$page__link__belt = document.querySelector('.' + this.page__link__belt__ClassName); //追従メニュー用のHTML
1754        this.page__link__belt__box__ClassName = 'js-page-link-belt-box'; //追従メニュー用のClass:共通
1755        this.$page__link__belt__box = document.querySelector('.' + this.page__link__belt__box__ClassName); //追従メニュー用のHTML
1756        this.page__link__belt__box_h = ''; //追従メニューの高さ
1757        this.moving__ClassName = 'is-moving'; //追従メニュー用のClass:共通
1758        this.follow__js__stop__flag = false; //
1759        this.follow__js__inner__top = ''; //追従メニュー用のTTOP位置
1760        this.first__load__flag = false; //初回ロード判定
1761        this.pageTop__flag = false; //ページスクロール判定
1762        this.scrollY = ''; //ScrollY量
1763        this.speed = 500; //ScrollY量
1764        this.flag = ''; //切り替え
1765        this.init();
1766    }
1767    //モーダルを削除するとき 共通関数
1768    Pagelinklist_pc_Fun.prototype.init = function () {
1769        var self = this;
1770        if (self.$page__link__belt) {
1771            self.event();
1772        }
1773    };
1774    ;
1775    //モーダルを削除するとき 共通関数
1776    Pagelinklist_pc_Fun.prototype.set = function () {
1777        var self = this;
1778        if (self.flag === '') {
1779            self.page__link__belt__box_h = self.$page__link__belt__box.offsetHeight; //追従メニューの高さ
1780            // PCサイズ
1781            if (window_size === 'pc') {
1782                self.flag = 'pc'; //切り替え
1783                // SPサイズ
1784            }
1785            else {
1786                self.flag = 'sp'; //切り替え
1787            }
1788        }
1789        else {
1790            // PC切り替え時
1791            if (window_size === 'pc' && self.flag === 'sp') {
1792                self.page__link__belt__box_h = self.$page__link__belt__box.offsetHeight; //追従メニューの高さ
1793                self.flag = 'pc'; //フラグ(PC)
1794                // SP切り替え時
1795            }
1796            else if (window_size === 'sp' && self.flag === 'pc') {
1797                self.page__link__belt__box_h = self.$page__link__belt__box.offsetHeight; //追従メニューの高さ
1798                self.flag = 'sp'; //フラグ(SP)
1799            }
1800            else {
1801            }
1802        }
1803        self.scrollY = getScrollY(window);
1804        //表示
1805        if (self.scrollY > self.$page__link__belt.offsetTop) {
1806            $(self.$page__link__belt__box).parent().css('height', self.page__link__belt__box_h);
1807            self.pageTop__flag = true;
1808            //非表示
1809        }
1810        else {
1811            $(self.$page__link__belt__box).parent().css('height', '');
1812            self.pageTop__flag = false;
1813        }
1814    };
1815    ;
1816    Pagelinklist_pc_Fun.prototype.follow__set = function () {
1817        var self = this;
1818        //追従開始
1819        if (self.scrollY >= self.$page__link__belt.offsetTop) {
1820            self.follow__js__stop__flag = true;
1821            if (!$(self.$page__link__belt).hasClass(self.moving__ClassName)) {
1822                $(self.$page__link__belt).addClass(self.moving__ClassName);
1823            }
1824            //追従開始位置より上
1825        }
1826        else {
1827            self.follow__js__stop__flag = false;
1828            if ($(self.$page__link__belt).hasClass(self.moving__ClassName)) {
1829                $(self.$page__link__belt).removeClass(self.moving__ClassName);
1830            }
1831        }
1832    };
1833    ;
1834    Pagelinklist_pc_Fun.prototype.event = function () {
1835        var self = this;
1836        //ロード時
1837        $(window).on("load", function (e) {
1838            // 初回読み込み表示フラグがfalseの時
1839            if (self.first__load__flag === false) {
1840                self.first__load__flag = true;
1841            }
1842        });
1843        $(window).on("load scroll resize", function (e) {
1844            self.set();
1845        });
1846        self.follow__event();
1847    };
1848    ;
1849    Pagelinklist_pc_Fun.prototype.follow__event = function () {
1850        var self = this;
1851        $(window).on("load", function (e) {
1852            self.follow__set();
1853        });
1854        $(window).on("scroll", function (e) {
1855            self.follow__set();
1856            // 初回読み込み表示フラグがtrueの時
1857            if (self.first__load__flag === true &&
1858                self.follow__js__stop__flag === false) {
1859            }
1860        });
1861    };
1862    ;
1863    return Pagelinklist_pc_Fun;
1864}());
1865/*------------------------------------------------------------
1866  ページ内リンク PC・SP共通
1867------------------------------------------------------------*/
1868var Pagelinklist_Fun = /** @class */ (function () {
1869    function Pagelinklist_Fun() {
1870        this.page__link__belt__title__area__ClassName = 'js-page-link-belt-title-area'; //追従メニュー用のClass:共通
1871        this.page__link__belt__title__wrap__ClassName = 'js-page-link-belt-title-wrap';
1872        this.$page__link__belt__title__area = $('.' + this.page__link__belt__title__area__ClassName); //追従メニュー用のHTML
1873        this.page__link__belt__box__ClassName = 'js-page-link-belt-box'; //追従メニュー用のClass:共通
1874        this.page__link__belt__list__ClassName = 'js-page-link-belt-list'; //追従メニュー移動:共通
1875        this.$page__link__belt__list = $('.' + this.page__link__belt__list__ClassName); //追従メニュー用のHTML
1876        this.page__link__belt__menu__sp__ClassName = 'js-page-link-belt-menu-sp'; //追従メニュー移動:共通
1877        this.$page__link__belt__menu__sp = $('.' + this.page__link__belt__menu__sp__ClassName); //追従メニュー用のHTML
1878        this.init();
1879    }
1880    //初期設定
1881    Pagelinklist_Fun.prototype.init = function () {
1882        var self = this;
1883        if (self.$page__link__belt__title__area.length > 0) {
1884            self.set();
1885        }
1886    };
1887    ;
1888    //共通関数
1889    Pagelinklist_Fun.prototype.set = function () {
1890        var self = this;
1891        //h1タグ
1892        if ($('h1').length > 0) {
1893            var h1_html = '<div class="page-link-belt-title-wrap ' + self.page__link__belt__title__wrap__ClassName + '">'
1894                + '<p class="page-link-belt-title js-page-link-belt-title">' + $($('h1')[0]).text() + '</p>'
1895                + '</div>';
1896            var $page__link__belt__box_chid = $($(self.$page__link__belt__title__area).find('.' + self.page__link__belt__box__ClassName).children()[0]);
1897            //html追加
1898            $page__link__belt__box_chid.prepend(h1_html);
1899            if (self.$page__link__belt__list) {
1900                var page__link__belt__list_html = $(self.$page__link__belt__list).clone();
1901                $('.' + self.page__link__belt__title__wrap__ClassName).append(page__link__belt__list_html);
1902                //コピー元のHTML削除
1903                self.$page__link__belt__list.remove();
1904            }
1905            if (self.$page__link__belt__menu__sp) {
1906                var page__link__belt__menu__sp_html = $(self.$page__link__belt__menu__sp).clone();
1907                $('.' + self.page__link__belt__title__wrap__ClassName).append(page__link__belt__menu__sp_html);
1908                //コピー元のHTML削除
1909                self.$page__link__belt__menu__sp.remove();
1910            }
1911        }
1912    };
1913    ;
1914    return Pagelinklist_Fun;
1915}());
1916/*------------------------------------------------------------
1917  ページ内リンク(SP)
1918  (リンク全体の要素,タブパネル全体の要素,fadeのスピード,連動するタブがある場合は指定)
1919  data-category属性を指定。
1920  リンク全体の要素の表示用の初期値は.is-currentをhtmlタグで記載すること
1921  タブの全体の要素の表示用の初期値は.is-first-activeをhtmlタグで記載すること
1922------------------------------------------------------------*/
1923var Pagelinklist_sp_Fun = /** @class */ (function () {
1924    function Pagelinklist_sp_Fun() {
1925        this.target__link__ClassName = 'js-page-link-belt-menu-sp';
1926        this.$target__link = $('.' + this.target__link__ClassName);
1927        this.target__link__belt__ClassName = 'js-page-link-belt';
1928        this.open__ClassName = 'is-open';
1929        this.init(); //初期設定
1930    }
1931    //初期設定
1932    Pagelinklist_sp_Fun.prototype.init = function () {
1933        var self = this;
1934        if (self.$target__link.length > 0) {
1935            self.event(); //イベント
1936        }
1937    };
1938    ;
1939    //イベント
1940    Pagelinklist_sp_Fun.prototype.event = function () {
1941        var self = this;
1942        $(document).on('click', function (e) {
1943            // ターゲット要素の外側をクリックした時の操作
1944            if (!$(e.target).closest('.' + self.target__link__ClassName).length) {
1945                //開閉用のClassを削除
1946                if ($('.' + self.target__link__belt__ClassName).hasClass(self.open__ClassName)) {
1947                    $('.' + self.target__link__belt__ClassName).removeClass(self.open__ClassName);
1948                }
1949                // ターゲット要素をクリックした時の操作
1950            }
1951            else {
1952            }
1953        });
1954        $(self.$target__link).find('a').on("click", function (e) {
1955            var $target = e.currentTarget;
1956            var $target_list = $($target).parents().find('.' + self.target__link__belt__ClassName);
1957            if ($target_list) {
1958                if (!$target_list.hasClass(self.open__ClassName)) {
1959                    $target_list.addClass(self.open__ClassName);
1960                }
1961                else {
1962                    $target_list.removeClass(self.open__ClassName);
1963                }
1964                $target_list.css({
1965                    'top': '',
1966                    'left': ''
1967                });
1968            }
1969            //リンクタグの本来の動作を停止
1970            e.preventDefault();
1971        });
1972        $(window).on("resize", function () {
1973            //開閉用のClassを削除
1974            if ($('.' + self.target__link__belt__ClassName).hasClass(self.open__ClassName)) {
1975                $('.' + self.target__link__belt__ClassName).removeClass(self.open__ClassName);
1976            }
1977        });
1978    };
1979    ;
1980    //イベント
1981    Pagelinklist_sp_Fun.prototype.position_set = function ($this) {
1982        var self = this;
1983        var $this_top = $($this)[0].getBoundingClientRect().top + $($this)[0].offsetHeight + 'px';
1984        var $this_left = $($this)[0].getBoundingClientRect().left + 'px';
1985        $($this).next('.' + self.target__link__ClassName).css({
1986            'top': $this_top,
1987            'left': $this_left
1988        });
1989    };
1990    return Pagelinklist_sp_Fun;
1991}());
1992/*------------------------------------------------------------
1993  ページ内リンク(SP)
1994  (リンク全体の要素,タブパネル全体の要素,fadeのスピード,連動するタブがある場合は指定)
1995  data-category属性を指定。
1996  リンク全体の要素の表示用の初期値は.is-currentをhtmlタグで記載すること
1997  タブの全体の要素の表示用の初期値は.is-first-activeをhtmlタグで記載すること
1998------------------------------------------------------------*/
1999var ShowBlock_Fun = /** @class */ (function () {
2000    function ShowBlock_Fun(targetWrap, targetItem, show_pc_val, show_sp_val, more_close_text, more_open_text) {
2001        this.target__contents__Class = targetWrap;
2002        this.$target__contents = $(this.target__contents__Class);
2003        this.targetItem__Class = targetItem;
2004        this.show_pc_val = show_pc_val;
2005        this.show_sp_val = show_sp_val;
2006        this.more_close_text = more_close_text;
2007        this.more_open_text = more_open_text;
2008        this.show_pc_pb = 100;
2009        this.show_sp_pb = 190;
2010        this.btn__more_box_ClassName = 'js-more-btn-box';
2011        this.btn__more__ClassName = 'btn-more btn-more-blue';
2012        this.btn__more__js__ClassName = 'js-btn-more';
2013        this.btn__more__show__ClassName = 'is-more-show';
2014        this.more__close_ClassName = 'is-more-close';
2015        this.load__set_ClassName = 'is-load-set';
2016        this.speed = 600;
2017        this.pc__flag;
2018        if (this.$target__contents.length > 0) {
2019            this.init(); //初期設定
2020        }
2021    }
2022    //初期設定
2023    ShowBlock_Fun.prototype.init = function () {
2024        var self = this;
2025        //PCサイズ
2026        if (window_size === 'pc') {
2027            self.pc__flag = true;
2028        }
2029        else {
2030            self.pc__flag = false;
2031        }
2032        self.event(); //イベント
2033    };
2034    ;
2035    //設定
2036    ShowBlock_Fun.prototype.set = function ($target__content) {
2037        var self = this;
2038        //PCサイズ
2039        if (window_size === 'pc') {
2040            var set = $target__content.find(self.targetItem__Class).length;
2041            if (self.show_pc_val) {
2042                //PC設定時の上限を超えるとき
2043                if ($target__content.find(self.targetItem__Class).length >= self.show_pc_val) {
2044                    var show_pc_val_item = $target__content.find(self.targetItem__Class)[self.show_pc_val - 1];
2045                    var show_pc_h = $(show_pc_val_item).offset().top - $target__content.offset().top + self.show_pc_pb;
2046                    return show_pc_h;
2047                }
2048            }
2049            //SPサイズ
2050        }
2051        else {
2052            if (self.show_sp_val) {
2053                //SP設定時の上限を超えるとき
2054                if ($target__content.find(self.targetItem__Class).length >= self.show_sp_val) {
2055                    var show_sp_val_item = $target__content.find(self.targetItem__Class)[self.show_sp_val - 1];
2056                    var show_sp_h = $(show_sp_val_item).offset().top - $target__content.offset().top + self.show_sp_pb;
2057                    return show_sp_h;
2058                }
2059            }
2060        }
2061    };
2062    ;
2063    //イベント
2064    ShowBlock_Fun.prototype.more_close_btn_set = function ($target__content, show_val) {
2065        var self = this;
2066        var set_val = self.set($target__content);
2067        if (set_val !== undefined) {
2068            //もっと見るボタンがないとき
2069            if ($target__content.parents().find('.' + self.btn__more__js__ClassName).length === 0) { //もっと見るボタン追加
2070                $target__content.parent().append("<div class=\"btn-col-box btn-center\"><p class=\"".concat(self.btn__more__ClassName, " ").concat(self.btn__more__js__ClassName, "\"><a class=\"is-noscroll\" href=\"#\"><span>").concat(self.more_close_text, "</span></a></p></div>"));
2071                $target__content.css('height', set_val);
2072                $target__content.addClass(self.more__close_ClassName);
2073                //もっと見るボタンがあるとき
2074            }
2075            else {
2076                //もっと見るが開いていないとき
2077                if (!$target__content.parents().find('.' + self.btn__more__js__ClassName).hasClass(self.btn__more__show__ClassName)) {
2078                    $target__content.css('height', set_val);
2079                    $target__content.addClass(self.more__close_ClassName);
2080                }
2081            }
2082            //TABキー対応
2083            for (var z = 0; z < $($target__content).find(self.targetItem__Class).length; z++) {
2084                if (show_val <= z + 1) {
2085                    if ($($($target__content).find(self.targetItem__Class)[z]).find('a').length > 0) {
2086                        $($($target__content).find(self.targetItem__Class)[z]).find('a').attr('tabindex', -1);
2087                    }
2088                }
2089            }
2090        }
2091    };
2092    ;
2093    //イベント
2094    ShowBlock_Fun.prototype.more_open_btn_set = function ($target__content) {
2095        var self = this;
2096        $target__content.css({ 'height': '' });
2097        $target__content.removeClass(self.more__close_ClassName);
2098        $('.' + self.btn__more__js__ClassName).parent().remove();
2099        //TABキー対応
2100        for (var z = 0; z < $($target__content).find(self.targetItem__Class).length; z++) {
2101            if ($($($target__content).find(self.targetItem__Class)[z]).find('a').length > 0) {
2102                $($($target__content).find(self.targetItem__Class)[z]).find('a').attr('tabindex', '');
2103            }
2104        }
2105    };
2106    ;
2107    //イベント
2108    ShowBlock_Fun.prototype.event = function () {
2109        var self = this;
2110        $(window).on("load scroll", function (e) {
2111            var set_val;
2112            for (var i = 0; i < self.$target__contents.length; i++) {
2113                var $target__content = $(self.$target__contents[i]);
2114                if (!$(self.$target__contents[i]).hasClass(self.load__set_ClassName)) {
2115                    //PC時
2116                    if (window_size === 'pc') {
2117                        self.more_close_btn_set($target__content, self.show_pc_val);
2118                        //SP時
2119                    }
2120                    else {
2121                        self.more_close_btn_set($target__content, self.show_sp_val);
2122                    }
2123                    $(self.$target__contents[i]).addClass(self.load__set_ClassName);
2124                }
2125            }
2126        });
2127        $(window).on("resize", function (e) {
2128            var set_val;
2129            setTimeout(function () {
2130                //PC切り替え初回
2131                if (window_size === 'pc' && self.pc__flag === false) {
2132                    for (var i = 0; i < self.$target__contents.length; i++) {
2133                        var $target__content = $(self.$target__contents[i]);
2134                        //PCの上限以上の時(設定)
2135                        if ($target__content.find(self.targetItem__Class).length >= self.show_pc_val) {
2136                            self.more_close_btn_set($target__content, self.show_pc_val);
2137                            //PCの上限以下の時(リセット)
2138                        }
2139                        else {
2140                            self.more_open_btn_set($target__content);
2141                        }
2142                    }
2143                    self.pc__flag = true;
2144                    //SP切り替え初回
2145                }
2146                else if (window_size === 'sp' && self.pc__flag === true) {
2147                    for (var i = 0; i < self.$target__contents.length; i++) {
2148                        var $target__content = $(self.$target__contents[i]);
2149                        //SPの上限以上の時(設定)
2150                        if ($target__content.find(self.targetItem__Class).length >= self.show_sp_val) {
2151                            self.more_close_btn_set($target__content, self.show_sp_val);
2152                            //SPの上限以下の時(リセット)
2153                        }
2154                        else {
2155                            self.more_open_btn_set($target__content);
2156                        }
2157                    }
2158                    self.pc__flag = false;
2159                    //PCとSP切り替え初回以外
2160                }
2161                else {
2162                    for (var i = 0; i < self.$target__contents.length; i++) {
2163                        var $target__content = $(self.$target__contents[i]);
2164                        if ($target__content.hasClass(self.more__close_ClassName)) {
2165                            set_val = self.set($(self.$target__contents[i]));
2166                            if (set_val !== undefined) {
2167                                $target__content.css('height', set_val);
2168                            }
2169                        }
2170                    }
2171                }
2172            }, 100);
2173        });
2174        //もっと見るボタンをクリック
2175        $('body').on('click', ".".concat(self.btn__more__js__ClassName, " > a"), function (e) {
2176            var currentTarget = e.currentTarget;
2177            if ($(currentTarget).parents().find('.' + self.btn__more_box_ClassName)) {
2178                var currentTargetContents_1 = $(currentTarget).parents().find(self.target__contents__Class);
2179                if (currentTargetContents_1) {
2180                    if (currentTargetContents_1.hasClass(self.more__close_ClassName)) {
2181                        currentTargetContents_1.removeClass(self.more__close_ClassName);
2182                        var before_h = currentTargetContents_1.css('height');
2183                        currentTargetContents_1.css('height', '');
2184                        var currentH = "".concat(currentTargetContents_1[0].clientHeight, "px");
2185                        currentTargetContents_1.css('height', before_h);
2186                        // 高さをcurrentHに変更
2187                        currentTargetContents_1.stop().animate({
2188                            height: currentH
2189                        }, self.speed, 'swing', function (e) {
2190                            currentTargetContents_1.css({
2191                                'height': ''
2192                            });
2193                        });
2194                        $(currentTarget).parent().addClass(self.btn__more__show__ClassName);
2195                        currentTarget.innerHTML = '<span>' + self.more_open_text + '</span>';
2196                        //TABキー対応
2197                        for (var z = 0; z < $(currentTargetContents_1).find(self.targetItem__Class).length; z++) {
2198                            if ($($(currentTargetContents_1).find(self.targetItem__Class)[z]).find('a').length > 0) {
2199                                $($(currentTargetContents_1).find(self.targetItem__Class)[z]).find('a').attr('tabindex', '');
2200                            }
2201                        }
2202                    }
2203                    else {
2204                        currentTargetContents_1.addClass(self.more__close_ClassName);
2205                        currentTargetContents_1.stop().animate({
2206                            height: self.set(currentTargetContents_1)
2207                        }, self.speed, 'swing');
2208                        $(currentTarget).parent().removeClass(self.btn__more__show__ClassName);
2209                        currentTarget.innerHTML = '<span>' + self.more_close_text + '</span>';
2210                        //TABキー対応
2211                        //PC時
2212                        if (window_size === 'pc') {
2213                            var show_val = self.show_pc_val;
2214                            //SP時
2215                        }
2216                        else {
2217                            var show_val = self.show_sp_val;
2218                        }
2219                        for (var z = 0; z < $(currentTargetContents_1).find(self.targetItem__Class).length; z++) {
2220                            if (show_val <= z + 1) {
2221                                if ($($(currentTargetContents_1).find(self.targetItem__Class)[z]).find('a').length > 0) {
2222                                    $($(currentTargetContents_1).find(self.targetItem__Class)[z]).find('a').attr('tabindex', -1);
2223                                }
2224                            }
2225                        }
2226                    }
2227                }
2228            }
2229            //本来の処理を停止
2230            e.preventDefault();
2231        });
2232        //TABキー対応
2233        $('body').on('keydown', ".".concat(self.btn__more__js__ClassName, " > a"), function (e) {
2234            for (var z = 0; z < $(self.target__contents__Class).find(self.targetItem__Class).length; z++) {
2235                if ($($(self.target__contents__Class).find(self.targetItem__Class)[z]).find('a').length > 0) {
2236                    $($(self.target__contents__Class).find(self.targetItem__Class)[z]).find('a').attr('tabindex', '');
2237                }
2238            }
2239        });
2240    };
2241    ;
2242    return ShowBlock_Fun;
2243}());
2244
2245// ---------------------------------------------------------
2246// コピーライト自動表示
2247// ---------------------------------------------------------
2248$(document).ready(function () {
2249    // <span class="thisYear"></span>を取得
2250    var yearElm = document.querySelector('.thisYear'); // 今の年を取得
2251    var thisYear = new Date().getFullYear(); // <span class="thisYear"></span>の中に年を表示
2252    yearElm.innerHTML = thisYear;
2253});
2254$(function () {
2255
2256    new ModalFun();
2257    // グローバルヘッダー(PC):リンクをクリックした際:吹き出し表示のリンク表示
2258	/*------------------------------------------------------------
2259  ポップアップ用のjs
2260  ※モーダルの削除処理は、ModalFun()と組み合わせて使用します。
2261  ------------------------------------------------------------*/
2262  new ModalPopUpFun();
2263    new TargetLinkHeaderFun();
2264    // グローバルヘッダー(SP):開閉リンク
2265    new TargetHeaderLinkFun();
2266    //追従エリア
2267    new FollowFun();
2268    // bodyのidとheaderのhrefの値が一部合致する場合。カレントのClassを付与
2269    new GlinkActive();
2270    // ハンバーガーメニューをクリックしたときの動作+リサイズ、開閉に伴うメニューの高さ調整
2271    new GMenuSPFun();
2272    //FAQ
2273    new FaqListWrap_Fun();
2274    //アコーディオン
2275    new Accordion_Fun();
2276    //ページ内リンク
2277    new Pagelinklist_Fun();
2278    //ページ内リンク(PC)
2279    new Pagelinklist_pc_Fun();
2280    //ページ内リンク(SP)
2281    new Pagelinklist_sp_Fun();
2282    /*
2283      もっと見る設定設定
2284      new showBlock_Fun( 大枠,大枠以下にある、個数を数えるコンテンツ, PC時の表示件数, SP時の表示件数,もっと見るボタンテキスト, 閉じるボタンテキスト);
2285    */
2286    new ShowBlock_Fun('.js-related-tile-contents', '.related-tile-contents-item', 7, 4, 'もっと見る', '閉じる');
2287    //高さぞろえ
2288    matchheightFun();
2289    //記事公開日1か月
2290    dayDateTimeNewFun('.js-related-tile-contents-item', '.js-related-tile-time');
2291    //swiper関連
2292    var js_top_key_visual_contents_item = document.querySelectorAll('.js-key-visual-wrap .swiper-slide');
2293    if (js_top_key_visual_contents_item.length > 1) {
2294        jsTopKeyVisualFun();
2295    }
2296    var js_article_card_contents_item = document.querySelectorAll('.js-article-card-wrap .swiper-slide');
2297    if (js_article_card_contents_item.length > 1) {
2298        jsArticleCardContentsFun();
2299    }
2300    //swiper関連
2301    var js_related_card_contents_item = document.querySelectorAll('.js-related-card-wrap .swiper-slide');
2302    if (js_related_card_contents_item.length > 1) {
2303        jsRelatedCardContentsFun();
2304    }
2305    // ---------------------------------------------------------
2306    // 自ページリンク削除
2307    // ---------------------------------------------------------
2308    ;
2309    (function () {
2310        var href = location.href.split('#');
2311        href[0] = href[0].replace(/\?.*$/, "");
2312        var href2 = "".concat(href[0], "index.html");
2313        var href2_1 = href[0].replace('index.html', '');
2314        var href3 = "".concat(href[0], "index_j.html");
2315        var href3_1 = href[0].replace('index_j.html', ''); // .doAct以下の自リンク削除
2316        $('a').each(function (num) {
2317            // lightboxのページャーは除外
2318            var $this = $($('a')[num]);
2319            var _c = $this.attr('class');
2320            var _dT = $this.attr('data-target');
2321            var _cVal = '';
2322            var _dTVal = '';
2323            var setVal = '';
2324            var thishtml = '';
2325            if ($this[0]) {
2326                if (href[0] == $this[0].href || href2 == $this[0].href || href2_1 == $this[0].href || href3 == $this[0].href || href3_1 == $this[0].href) {
2327                    var tabindexFlag = false;
2328                    if (_c) {
2329                        _cVal = _c + ' act';
2330                        if(_c.indexOf('js-target-header-hover') !== -1 ){
2331                            tabindexFlag = true;
2332                        }
2333                    } else {
2334                        _cVal = 'act';
2335                    }
2336                    if ($this.attr('data-target')) {
2337                        _dTVal = ' data-target="' + _dT + '"';
2338                    }
2339                    if( tabindexFlag === true ){
2340                        setVal = ' class="' + _cVal + '"' + _dTVal + ' tabindex="0"';
2341                    }else{
2342                        setVal = ' class="' + _cVal + '"' + _dTVal;
2343                    }
2344                    $this.replaceWith(  $('<span '.concat(setVal, '>') ).html($this.html()));
2345                }
2346            }
2347        });
2348
2349        function targetlinkFun($taegt) {
2350            var $this = $($taegt);
2351            var _c = $this.attr('class');
2352            var _dT = $this.attr('data-target');
2353            var _cVal = '';
2354            var _dTVal = '';
2355            var setVal = '';
2356            var thishtml = '';
2357            if ($this[0]) {
2358                if (href[0] == $this[0].href || href2 == $this[0].href || href2_1 == $this[0].href || href3 == $this[0].href || href3_1 == $this[0].href) {
2359                    if (_c) {
2360                        _cVal = _c + ' act';
2361                    }
2362                    else {
2363                        _cVal = 'act';
2364                    }
2365                    if ($this.attr('data-target')) {
2366                        _dTVal = ' data-target="' + _dT + '"';
2367                    }
2368                    setVal = ' class="' + _cVal + '"' + _dTVal;
2369                    thishtml = $this[0].innerHTML;
2370                    $this[0].parentElement.innerHTML = '<span' + setVal + '>' + thishtml + '</span>';
2371                }
2372            }
2373        }
2374        for (var i = 0; i < $('.js-target-header-hover a').length; i++) {
2375            targetlinkFun($('.js-target-header-hover a')[i]);
2376        }
2377        for (var i = 0; i < $('.js-target-header-hover-item a').length; i++) {
2378            targetlinkFun($('.js-target-header-hover-item a')[i]);
2379        }
2380        // SP追加
2381        for (var i = 0; i < $('.js-target-header-item a').length; i++) {
2382            targetlinkFun($('.js-target-header-item a')[i]);
2383        }
2384        for (var i = 0; i < $('.js-target-header-link').length; i++) {
2385            targetlinkFun($('.js-target-header-link')[i]);
2386        }
2387        ``
2388    })();
2389    /* ---------------------------------------------------------
2390      ページの先頭に戻るボタン
2391      #pagetop
2392    --------------------------------------------------------- */
2393    ;
2394    (function () {
2395        var $target = $('.js-page-top'); // スクロールしたとき
2396        var fadeSpeed = 400;
2397        var scrollSpeed = 400;
2398        var TARGETBOTTOM = 10;
2399        $(window).on('load scroll', function () {
2400            var scrollHeight = $(document).outerHeight(); // 
2401            var scrollPosition = $(window).scrollTop(); // scroll量
2402            var footHeight = $('.js-l-footer').innerHeight(); // フッターの高さ(=止めたい位置)
2403            //表示
2404            if (h <= scrollPosition) {
2405                $target.children().fadeIn(fadeSpeed);
2406                //非表示
2407            }
2408            else {
2409                $target.children().fadeOut(fadeSpeed);
2410            }
2411            if (scrollHeight - h - scrollPosition <= footHeight - $target.children().innerHeight() + TARGETBOTTOM) {
2412                $target.removeClass('is-moving');
2413            }
2414            else {
2415                $target.addClass('is-moving');
2416            }
2417        }); // ボタンをクリックしたとき
2418    })();
2419});
2420//load時
2421$(window).on('load', function () {
2422    //ロード用のフラグ js
2423    $('body').addClass('is-load');
2424    /*------------------------------------------------------------
2425    ハッシュリンクのScroll処理
2426    ------------------------------------------------------------*/
2427    var urlHash = location.hash;
2428    if (urlHash) {
2429        setTimeout(function () {
2430            //スムーズスクロール
2431            //urlHashまで移動
2432            //ハッシュ、上余白、スクロールのスピード
2433            scrollToAnker(urlHash, 0, 500);
2434        }, 100);
2435    }
2436    /*------------------------------------------------------------
2437    ページ内リンクのScroll処理
2438    ------------------------------------------------------------*/
2439    $('a').not('.is-noscroll').on('click', function (e) {
2440        var href = $(e.currentTarget).attr('href');
2441        //ページ内Scroll処理
2442        //hrefを代入
2443        var pathname = window.location.pathname;
2444        if (href) {
2445            //パラメーターありは除去
2446            href = href.replace(/\?.*$/, "");
2447            var replaced = href.replace(/\.\.\//, '');
2448            replaced = replaced.replace(/\.\//, '');
2449            replaced = '/' + replaced;
2450            if (replaced === pathname) {
2451                pageScrollFun('#' + href.split('#')[1]);
2452                e.preventDefault();
2453            }
2454            else {
2455                //aタグの先頭に「#」が含まれる場合
2456                if (href.slice(0, 1) === '#') {
2457                    pageScrollFun(href);
2458                    e.preventDefault();
2459                }
2460            }
2461        }
2462    });
2463});
2464
2465//クッキープラグインの処理
2466;(function(){
2467
2468    var onetrust_banner_sdkIDName = '#onetrust-banner-sdk';
2469    var stopClass = "is-stop";
2470    var js_l_footerClassName = ".js-l-footer";
2471    $(window).on("load scroll resize", function (e) {
2472        //クッキーのウィンドウがあるか
2473        if( $( onetrust_banner_sdkIDName ).length > 0 ){
2474            //フッターがあるか
2475            if( $( js_l_footerClassName ).length > 0 ){
2476
2477              //クッキー保存後
2478              if( $( onetrust_banner_sdkIDName )[0].style.display === 'none' ){
2479
2480                if($( js_l_footerClassName ).css('margin-top')){
2481                    $( js_l_footerClassName ).css({
2482                        'margin-top': ''
2483                    });
2484                }
2485                //クッキー保存前
2486              }else{
2487                var scrollPosition = $(window).scrollTop(); // scroll量
2488                var window_scrollPosition = (scrollPosition + h);
2489                var onetrust_buttom = window_scrollPosition - $(  js_l_footerClassName )[0].offsetTop;
2490
2491                //フッターのmargi-top 調整
2492                $( js_l_footerClassName ).css({
2493                    'margin-top': $( onetrust_banner_sdkIDName ).outerHeight() + 'px'
2494                });
2495                //フッターよりも上に表示
2496                if( onetrust_buttom >= 0 ){
2497                    var onetrust_buttom_set = 'translateY(' + '-' + onetrust_buttom + 'px)';
2498                    $( onetrust_banner_sdkIDName ).css({
2499                        'transform': onetrust_buttom_set
2500                    });
2501                    //ストップ用のクラス追加
2502                    $( onetrust_banner_sdkIDName ).addClass(stopClass);
2503                    
2504                }else{
2505                    
2506                    $( onetrust_banner_sdkIDName ).css({
2507                        'transform': ''
2508                    });
2509                    //ストップ用のクラス削除
2510                    $( onetrust_banner_sdkIDName ).removeClass(stopClass);
2511        
2512                }
2513              }
2514            }
2515        }
2516    });
2517    
2518})();

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.