PageSourceSearch

https://www.the-luxe.jp/common/js/site.js?update=20220624063758

js the-luxe.jp collected 2026-10-05 11:15:41 UTC 58,796 bytes, 1,494 lines download raw bytes

vendor: 4,128 bytes, lines 1-3
1/*! modernizr 3.3.1 (Custom Build) | MIT *
2 * https://modernizr.com/download/?-cssfilters-csspointerevents-csstransforms-csstransforms3d-csstransitions-cssvhunit-cssvwunit-pointerevents-preserve3d-touchevents-setclasses !*/
3!function(e,t,n){function r(e,t){return typeof e===t}function s(){var e,t,n,s,o,i,a;for(var u in C)if(C.hasOwnProperty(u)){if(e=[],t=C[u],t.name&&(e.push(t.name.toLowerCase()),t.options&&t.options.aliases&&t.options.aliases.length))for(n=0;n<t.options.aliases.length;n++)e.push(t.options.aliases[n].toLowerCase());for(s=r(t.fn,"function")?t.fn():t.fn,o=0;o<e.length;o++)i=e[o],a=i.split("."),1===a.length?Modernizr[a[0]]=s:(!Modernizr[a[0]]||Modernizr[a[0]]instanceof Boolean||(Modernizr[a[0]]=new Boolean(Modernizr[a[0]])),Modernizr[a[0]][a[1]]=s),y.push((s?"":"no-")+a.join("-"))}}function o(e){var t=x.className,n=Modernizr._config.classPrefix||"";if(S&&(t=t.baseVal),Modernizr._config.enableJSClass){var r=new RegExp("(^|\\s)"+n+"no-js(\\s|$)");t=t.replace(r,"$1"+n+"js$2")}Modernizr._config.enableClasses&&(t+=" "+n+e.join(" "+n),S?x.className.baseVal=t:x.className=t)}function i(){return"function"!=typeof t.createElement?t.createElement(arguments[0]):S?t.createElementNS.call(t,"http://www.w3.org/2000/svg",arguments[0]):t.createElement.apply(t,arguments)}function a(){var e=t.body;return e||(e=i(S?"svg":"body"),e.fake=!0),e}function u(e,n,r,s){var o,u,l,f,d="modernizr",p=i("div"),c=a();if(parseInt(r,10))for(;r--;)l=i("div"),l.id=s?s[r]:d+(r+1),p.appendChild(l);return o=i("style"),o.type="text/css",o.id="s"+d,(c.fake?c:p).appendChild(o),c.appendChild(p),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(t.createTextNode(e)),p.id=d,c.fake&&(c.style.background="",c.style.overflow="hidden",f=x.style.overflow,x.style.overflow="hidden",x.appendChild(c)),u=n(p,e),c.fake?(c.parentNode.removeChild(c),x.style.overflow=f,x.offsetHeight):p.parentNode.removeChild(p),!!u}function l(e,t){return!!~(""+e).indexOf(t)}function f(e){return e.replace(/([a-z])-([a-z])/g,function(e,t,n){return t+n.toUpperCase()}).replace(/^-/,"")}function d(e,t){return function(){return e.apply(t,arguments)}}function p(e,t,n){var s;for(var o in e)if(e[o]in t)return n===!1?e[o]:(s=t[e[o]],r(s,"function")?d(s,n||t):s);return!1}function c(e){return e.replace(/([A-Z])/g,function(e,t){return"-"+t.toLowerCase()}).replace(/^ms-/,"-ms-")}function m(t,r){var s=t.length;if("CSS"in e&&"supports"in e.CSS){for(;s--;)if(e.CSS.supports(c(t[s]),r))return!0;return!1}if("CSSSupportsRule"in e){for(var o=[];s--;)o.push("("+c(t[s])+":"+r+")");return o=o.join(" or "),u("@supports ("+o+") { #modernizr { position: absolute; } }",function(e){return"absolute"==getComputedStyle(e,null).position})}return n}function h(e,t,s,o){function a(){d&&(delete N.style,delete N.modElem)}if(o=r(o,"undefined")?!1:o,!r(s,"undefined")){var u=m(e,s);if(!r(u,"undefined"))return u}for(var d,p,c,h,v,g=["modernizr","tspan","samp"];!N.style&&g.length;)d=!0,N.modElem=i(g.shift()),N.style=N.modElem.style;for(c=e.length,p=0;c>p;p++)if(h=e[p],v=N.style[h],l(h,"-")&&(h=f(h)),N.style[h]!==n){if(o||r(s,"undefined"))return a(),"pfx"==t?h:!0;try{N.style[h]=s}catch(y){}if(N.style[h]!=v)return a(),"pfx"==t?h:!0}return a(),!1}function v(e,t,n,s,o){var i=e.charAt(0).toUpperCase()+e.slice(1),a=(e+" "+A.join(i+" ")+i).split(" ");return r(t,"string")||r(t,"undefined")?h(a,t,s,o):(a=(e+" "+P.join(i+" ")+i).split(" "),p(a,t,n))}function g(e,t,r){return v(e,n,n,t,r)}var y=[],C=[],w={_version:"3.3.1",_config:{classPrefix:"",enableClasses:!0,enableJSClass:!0,usePrefixes:!0},_q:[],on:function(e,t){var n=this;setTimeout(function(){t(n[e])},0)},addTest:function(e,t,n){C.push({name:e,fn:t,options:n})},addAsyncTest:function(e){C.push({name:null,fn:e})}},Modernizr=function(){};Modernizr.prototype=w,Modernizr=new Modernizr;var x=t.documentElement,S="svg"===x.nodeName.toLowerCase(),b=w._config.usePrefixes?" -webkit- -moz- -o- -ms- ".split(" "):["",""];w._prefixes=b,Modernizr.addTest("csspointerevents",function(){var e=i("a").style;return e.cssText="pointer-events:auto","auto"===e.pointerEvents}),Modernizr.addTest("preserve3d",function(){var e=i("a"),t=i("a");
3e.style.cssText="display: block; transform-style: preserve-3d; transform-origin: right; transform: rotateY(40deg);",t.style.cssText="display: block; width: 9px; height: 1px; background: #000; transform-origin: right; transform: rotateY(40deg);",e.appendChild(t),x.appendChild(e);var n=t.getBoundingClientRect();return x.removeChild(e),n.width&&n.width<4});var T=function(){function e(e,t){var s;return e?(t&&"string"!=typeof t||(t=i(t||"div")),e="on"+e,s=e in t,!s&&r&&(t.setAttribute||(t=i("div")),t.setAttribute(e,""),s="function"==typeof t[e],t[e]!==n&&(t[e]=n),t.removeAttribute(e)),s):!1}var r=!("onblur"in t.documentElement);return e}();w.hasEvent=T;var _="CSS"in e&&"supports"in e.CSS,z="supportsCSS"in e;Modernizr.addTest("supports",_||z);var E="Moz O ms Webkit",P=w._config.usePrefixes?E.toLowerCase().split(" "):[];w._domPrefixes=P,Modernizr.addTest("pointerevents",function(){var e=!1,t=P.length;for(e=Modernizr.hasEvent("pointerdown");t--&&!e;)T(P[t]+"pointerdown")&&(e=!0);return e});var k=w.testStyles=u;Modernizr.addTest("touchevents",function(){var n;if("ontouchstart"in e||e.DocumentTouch&&t instanceof DocumentTouch)n=!0;else{var r=["@media (",b.join("touch-enabled),("),"heartz",")","{#modernizr{top:9px;position:absolute}}"].join("");k(r,function(e){n=9===e.offsetTop})}return n}),k("#modernizr { height: 50vh; }",function(t){var n=parseInt(e.innerHeight/2,10),r=parseInt((e.getComputedStyle?getComputedStyle(t,null):t.currentStyle).height,10);Modernizr.addTest("cssvhunit",r==n)}),k("#modernizr { width: 50vw; }",function(t){var n=parseInt(e.innerWidth/2,10),r=parseInt((e.getComputedStyle?getComputedStyle(t,null):t.currentStyle).width,10);Modernizr.addTest("cssvwunit",r==n)});var A=w._config.usePrefixes?E.split(" "):[];w._cssomPrefixes=A;var j={elem:i("modernizr")};Modernizr._q.push(function(){delete j.elem});var N={style:j.elem.style};Modernizr._q.unshift(function(){delete N.style}),w.testAllProps=v,w.testAllProps=g,Modernizr.addTest("cssfilters",function(){if(Modernizr.supports)return g("filter","blur(2px)");var e=i("a");return e.style.cssText=b.join("filter:blur(2px); "),!!e.style.length&&(t.documentMode===n||t.documentMode>9)}),Modernizr.addTest("csstransforms",function(){return-1===navigator.userAgent.indexOf("Android 2.")&&g("transform","scale(1)",!0)}),Modernizr.addTest("csstransforms3d",function(){var e=!!g("perspective","1px",!0),t=Modernizr._config.usePrefixes;if(e&&(!t||"webkitPerspective"in x.style)){var n,r="#modernizr{width:0;height:0}";Modernizr.supports?n="@supports (perspective: 1px)":(n="@media (transform-3d)",t&&(n+=",(-webkit-transform-3d)")),n+="{#modernizr{width:7px;height:18px;margin:0;padding:0;border:0}}",k(r+n,function(t){e=7===t.offsetWidth&&18===t.offsetHeight})}return e}),Modernizr.addTest("csstransitions",g("transition","all",!0)),s(),o(y),delete w.addTest,delete w.addAsyncTest;for(var I=0;I<Modernizr._q.length;I++)Modernizr._q[I]();e.Modernizr=Modernizr}(window,document);
4
5!function(a,b){"function"==typeof define&&define.amd?define([],function(){return a.svg4everybody=b()}):"object"==typeof exports?module.exports=b():a.svg4everybody=b()}(this,function(){
6/*! svg4everybody v2.1.0 | github.com/jonathantneal/svg4everybody */
7;function c(d,f){if(f){var e=document.createDocumentFragment(),g=!d.getAttribute("viewBox")&&f.getAttribute("viewBox");g&&d.setAttribute("viewBox",g);for(var h=f.cloneNode(!0);h.childNodes.length;){e.appendChild(h.firstChild)}d.appendChild(e)}}function b(d){d.onreadystatechange=function(){if(4===d.readyState){var e=d._cachedDocument;e||(e=d._cachedDocument=document.implementation.createHTMLDocument(""),e.body.innerHTML=d.responseText,d._cachedTarget={}),d._embeds.splice(0).map(function(f){var g=d._cachedTarget[f.id];g||(g=d._cachedTarget[f.id]=e.getElementById(f.id)),c(f.svg,g)})}},d.onreadystatechange()}function a(g){function f(){for(var q=0;q<h.length;){var n=h[q],o=n.parentNode;if(o&&/svg/i.test(o.nodeName)){var t=n.getAttribute("xlink:href");if(m&&(!e.validate||e.validate(t,o,n))){o.removeChild(n);var r=t.split("#"),p=r.shift(),u=r.join("#");if(p.length){var s=d[p];s||(s=d[p]=new XMLHttpRequest(),s.open("GET",p),s.send(),s._embeds=[]),s._embeds.push({svg:o,id:u}),b(s)}else{c(o,document.getElementById(u))}}}else{++q}}l(f,67)}var m,e=Object(g),i=/\bTrident\/[567]\b|\bMSIE (?:9|10)\.0\b/,k=/\bAppleWebKit\/(\d+)\b/,j=/\bEdge\/12\.(\d+)\b/;m="polyfill" in e?e.polyfill:i.test(navigator.userAgent)||(navigator.userAgent.match(j)||[])[1]<10547||(navigator.userAgent.match(k)||[])[1]<537;var d={},l=window.requestAnimationFrame||setTimeout,h=document.getElementsByTagName("use");m&&f()}return a});svg4everybody();
8
9//jQueryの関数を実装
10/*
11hasClass:クラスの有無をtrue か falseで判定
12addClass:クラスを付与
13removeClass:クラスを削除
14trigger:イベントを手動で発火
15matches:IE9以上のpolyfill
16closest:IE9以上のpolyfill
17previousElementSibling:前の要素
18nextElementSibling:次の要素
19slideDown:要素をアコーディオンで表示 (cssにdisplay:none;height:0;overflow:hidden;が必要)
20slideUp:要素をアコーディオンで消す(cssにdisplay:none;height:0;overflow:hidden;が必要)
21remove:
22*/
23Element.prototype.hasClass=function(c){var d=this.className.split(" ");return ~d.indexOf(c)};
23Element.prototype.addClass=function(a){if(!this.hasClass(a)){this.className+=" "+a}return this};Element.prototype.removeClass=function(e){var d=this.className.split(" ");var f=d.indexOf(e);if(~f){d.splice(f,1);this.className=d.join(" ")}return this};Element.prototype.attr=function(d,c){this.setAttribute(d,c);return this};Element.prototype.prependChild=function(b){this.insertBefore(b,this.firstChild);return this};NodeList.prototype.addClass=HTMLCollection.prototype.addClass=function(d){for(var c=0;c<this.length;c=0|c+1){if(!this[c].hasClass(d)){this[c].className+=" "+d}}return this};NodeList.prototype.removeClass=HTMLCollection.prototype.removeClass=function(e){for(var f=0;f<this.length;f=0|f+1){var h=this[f].className.split(" ");var g=h.indexOf(e);if(~g){h.splice(g,1);this[f].className=h.join(" ")}}return this};Element.prototype.trigger=window.trigger=function(d){if(document.createEvent){var a=document.createEvent("HTMLEvents");a.initEvent(d,true,true);this.dispatchEvent(a)}else{this.fireEvent("on"+d,document.createEventObject())}};if(!Element.prototype.matches){Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector}if(!Element.prototype.closest){Element.prototype.closest=function(c){var d=this;if(!document.documentElement.contains(d)){return null}do{if(d.matches(c)){return d}d=d.parentElement}while(d!==null);return null}}(function(d){for(var c=0;c<d.length;c++){(function(a){if(!a.hasOwnProperty("previousElementSibling")){Object.defineProperty(a,"previousElementSibling",{configurable:true,enumerable:true,get:function(){var b=this;while(b=b.nextSibling){if(b.nodeType===1){return b}}return null},set:undefined})}if(!a.hasOwnProperty("nextElementSibling")){Object.defineProperty(a,"nextElementSibling",{configurable:true,enumerable:true,get:function(){var b=this;while(b=b.previousSibling){if(b.nodeType===1){return b}}return null},set:undefined})}}(d[c]))}}([Element.prototype,CharacterData.prototype]));Element.prototype.slideDown=function(b){var i=b?b+"s":"1.0s";var d=this;var j=d.cloneNode(true);j.style.display="block";j.style.height="auto";j.style.visibility="hidden";d.parentNode.appendChild(j);var a=j.offsetHeight;var h=window.getComputedStyle(d,null).getPropertyValue("margin-top");var e=window.getComputedStyle(d,null).getPropertyValue("margin-bottom");var g=window.getComputedStyle(d,null).getPropertyValue("padding-top");var c=window.getComputedStyle(d,null).getPropertyValue("padding-bottom");d.parentNode.removeChild(j);var f=new MutationObserver(function(){if(d.style.display&&d.style.height&&d.style.transition&&d.style.marginTop&&d.style.marginBottom&&d.style.paddingTop&&d.style.paddingBottom){f.disconnect();d.addEventListener("transitionend",function k(){d.style.height="";d.style.transition="";d.style.marginTop="";d.style.marginBottom="";d.style.paddingTop="";d.style.paddingBottom="";d.removeEventListener("transitionend",k)});setTimeout(function(){d.style.height=a+"px";d.style.marginTop=h;d.style.marginBottom=e;d.style.paddingTop=g;d.style.paddingBottom=c},100)}});f.observe(d,{attributes:true,attributeFilter:["style"]});d.style.display="block";d.style.height="0px";d.style.transition=i+" cubic-bezier(0.625, 0.010, 0.355, 1.000)";d.style.marginTop="0px";d.style.marginBottom="0px";d.style.paddingTop="0px";d.style.paddingBottom="0px"};Element.prototype.slideUp=function(c){var b=c?c+"s":"1.0s";var f=this;var d=f.cloneNode(true);d.style.display="block";d.style.height="auto";d.style.visibility="hidden";f.parentNode.appendChild(d);var e=d.offsetHeight;f.parentNode.removeChild(d);var a=new MutationObserver(function(){if(f.style.transition&&f.style.height){a.disconnect();f.addEventListener("transitionend",function g(){f.style.height="";f.style.transition="";f.style.marginTop="";f.style.marginBottom="";f.style.paddingTop="";f.style.paddingBottom="";f.style.display="";f.removeEventListener("transitionend",g)});setTimeout(function(){f.style.height="0px";f.style.marginTop="0px";f.style.marginBottom="0px";f.style.paddingTop="0px";f.style.paddingBottom="0px"},100)}});a.observe(f,{attributes:true,attributeFilter:["style"]});f.style.height=e+"px";f.style.transition=b+" cubic-bezier(0.625, 0.010, 0.355, 1.000)"};(function(a){a.forEach(function(c){if(c.hasOwnProperty("remove")){return}Object.defineProperty(c,"remove",{configurable:true,enumerable:true,writable:true,value:function b(){if(this.parentNode!==null){this.parentNode.removeChild(this)}}})})})([Element.prototype,CharacterData.prototype,DocumentType.prototype]);
24
25var Common = {
26	//スムーススクロール
27	//jump(数値かhash, {duration:速さ, onComplete:コールバック, easing:イージング関数の指定});
28	jump:function(value, options) {
29		//スクロール禁止
30		var wheelHandler = function(e){
31			e.preventDefault();
32			e.returnValue = false;
33		};
34		document.documentElement.addEventListener('mousewheel', wheelHandler, {passive:false});
35		document.documentElement.addClass('scrollingFlg');
36
37		var target;
38		switch(typeof value) {
39			case 'number':
40				value = value;
41				break;
42			case 'string':
43				target = document.querySelector(value);
44				if(!target) {
45					console.error('要素の指定ミス1');
46				}
47				value = window.pageYOffset+(target.getBoundingClientRect()).top;
48				break;
49			case 'object':
50				target = value;
51					console.error('要素の指定ミス2');
52				value = window.pageYOffset+(target.getBoundingClientRect()).top;
53				break;
54		}
55
56		//スクロール位置の微調整
57		if(target) {
58			switch(target.id){
59				case 'Ceremony':
60					if(720 < document.documentElement.clientWidth) value -= 120;
61					break;
62				case 'Party':
63					if(720 < document.documentElement.clientWidth) value -= 140;
64					break;
65				case 'Cuisine':
66					if(720 < document.documentElement.clientWidth) value -= 20;
67					break;
68				case 'Dress':
69					if(720 < document.documentElement.clientWidth) value -= 140;
70					break;
71				case 'Plan':
72					if(720 < document.documentElement.clientWidth) value += 50;
73					else value += 110;
74					break;
75				case 'Information':
76					if(720 < document.documentElement.clientWidth) value -= 140;
77					break;
78				case 'Access':
79					if(720 < document.documentElement.clientWidth) value -= 120;
80					break;
81			}
82			if(2 <= target.id.split('fairlist').length) {
83				if(720 < document.documentElement.clientWidth) value -= 60;
84			}
85		}
86		/*
87		if(720 < document.documentElement.clientWidth) value += 90;
88		*/
89
90		var duration = (options&&options.duration)?options.duration:1000;
91		var onComplete = (options&&options.onComplete)?options.onComplete:null;
92		var start = window.pageYOffset;
93		var mokushou = value - start;
94		var timeStart,timeElapsed;
95		//http://robertpenner.com/easing/
96		var easing = (options&&options.ease)?options.ease:function(t, b, c, d) {
97			if ((t/=d/2) < 1) return c/2*t*t + b;
98			return -c/2 * ((--t)*(t-2) - 1) + b;
99		};
100
101		var loopID;
102		var loop = function(time) {
103			timeElapsed = time - timeStart;
104			window.scrollTo(0, easing(timeElapsed, start, mokushou, duration));
105			if (timeElapsed < duration) {
106				loopID = requestAnimationFrame(loop);
107			}else{
108				window.scrollTo(0, start + mokushou);
109				document.documentElement.removeEventListener('mousewheel', wheelHandler, {passive:false});
110				document.documentElement.removeClass('scrollingFlg');
111				if (onComplete) onComplete();
112				cancelAnimationFrame(loopID);
113			}
114		};
115
116		loopID = requestAnimationFrame(function(time) {
117			timeStart = time;
118			loop(time);
119		});
120	}
121	,
122	//読み込み完了
123	addLoad:function(func){
124		if(document.readyState == 'complete') {
125			func();
126		}else{
127			window.addEventListener('load', function onload(){
128				func();
129				window.removeEventListener('load', onload);
130			});
131		}
132	}
133	,
134	//overflow:true  background-size:cover
135	//overflow:false background-size:contain
136	resizeTrimingRatio:function(wW,wH,iW,iH,overflow){
137		if(!overflow)overflow = true;
138		return (overflow)?
139			Math.max(
140				parseInt(wW) / (parseInt(iW)),
141				parseInt(wH) / (parseInt(iH))
142			)
143			:
144			Math.min(
145				parseInt(wW) / (parseInt(iW)),
146				parseInt(wH) / (parseInt(iH))
147			);
148	},
149	
150	//配列をシャッフル
151	arrayShuffle:function(array){
152		var n = array.length, t, i;
153		while(n){
154			i = Math.floor(Math.random() * n--);
155			t = array[n];
156			array[n] = array[i];
157			array[i] = t;
158		}
159		return array;
160	},
161	
162	//価格からカンマをつける
163	parseCommaFromValue:function(val){
164		return val.toString().replace(/(\d)(?=(\d\d\d)+$)/g,'$1,');
165	},
166	
167	//***有りの価格文字列から数値へ変換
168	parseValueFromChar:function(val, splitChar, jointChar){
169		if(!splitChar) splitChar = ',';
170		if(!jointChar) jointChar = '';
171		val = val.split(splitChar);
172		
173		var result = val.join(jointChar);
174		if(!jointChar){//つなぐ文字列がない場合
175			if(!isFinite(result)){//数値じあない場合
176				console.log(result);
177			}
178		}
179		return result;
180	},
181	
182	/**
183	 * PHP-like print_r() equivalent for JavaScript Object
184	 *
185	 * @author Faisalman <[email protected]>
186	 * @license http://www.opensource.org/licenses/mit-license.php
187	 * @link http://gist.github.com/879208
188	 */
189	print_r:function(obj,t){
190		// define tab spacing
191		var tab = t || '';
192	
193		// check if it's array
194		var isArr = Object.prototype.toString.call(obj) === '[object Array]';
195		
196		// use {} for object, [] for array
197		var str = isArr ? ('Array\n' + tab + '[\n') : ('Object\n' + tab + '{\n');
198	
199		// walk through it's properties
200		for (var prop in obj) {
201			if (obj.hasOwnProperty(prop)) {
202				var val1 = obj[prop];
203				var val2 = '';
204				var type = Object.prototype.toString.call(val1);
205				switch (type) {
206					
207					// recursive if object/array
208					case '[object Array]':
209					case '[object Object]':
210						val2 = Common.print_r(val1, (tab + '\t'));
211						break;
212						
213					case '[object String]':
214						val2 = '\'' + val1 + '\'';
215						break;
216						
217					default:
218						val2 = val1;
219				}
220				str += tab + '\t' + prop + ' => ' + val2 + ',\n';
221			}
222		}
223		
224		// remove extra comma for last property
225		str = str.substring(0, str.length - 2) + '\n' + tab;
226		
227		console.log(isArr ? (str + ']') : (str + '}'));
228	},
229	
230	//スクロールの折返位置からの移動量
231	sVecVal:0,
232	
233	//ページが表示された時/隠された時
234	pageHideFlg:false,
235	
236	//URLパラメータを取得し配列に格納
237	urlParams:new Object,
238	
239	//要素が現れたときにwill-changeを設定する
240	setWillchangeInviewEvent:function() {
241		$('[data-willchange]').each(function(index, element, events) {
242			events = $._data($(element).get(0)).events;
243			if(events)if(events.inview) return true;
244			$(element).on('inview.will-change', function(event, isInView, visiblePartX, visiblePartY) {
245				if(isInView){
246					$(element).css('will-change', $(element).attr('data-willchange'));
247				}else{
248					$(element).css('will-change', 'auto');
249				}
250			});
251			$(element).trigger('inview.will-change');
252		});
253	},
254	
255	//そろえる
256	setAlignElem:function(){
257		var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
258		//高さ・幅を揃える
259		$('[data-autowidth]').each(function(index, element) {
260			element.style.width = '';
261		});
262		$('[data-autoheight]').each(function(index, element) {
263			element.style.height = '';
264		});
265		Common.sortElementStyle('data-autowidth', 'width');
266		Common.sortElementStyle('data-autoheight', 'height');
267		
268		if(640 < w){//pc
269			//高さ・幅を揃える
270			$('[data-sp-autowidth]').each(function(index, element) {
271				element.style.width = '';
272			});
273			$('[data-sp-autoheight]').each(function(index, element) {
274				element.style.height = '';
275			});
276			Common.sortElementStyle('data-pc-autowidth', 'width');
277			Common.sortElementStyle('data-pc-autoheight', 'height');
278		}else{//smart
279			//高さ・幅を揃える
280			$('[data-pc-autowidth]').each(function(index, element) {
281				element.style.width = '';
282			});
283			$('[data-pc-autoheight]').each(function(index, element) {
284				element.style.height = '';
285			});
286			Common.sortElementStyle('data-sp-autowidth', 'width');
287			Common.sortElementStyle('data-sp-autoheight', 'height');
288		}
289	},
290	
291	//高さを揃える
292	sortElementStyle:function(targetVal, type, compareVals, cmp){
293		compareVals = {};
294		$('['+targetVal+']').each(function(index, element) {
295			if(!compareVals[element.getAttribute(targetVal)]){
296				compareVals[element.getAttribute(targetVal)] = [];
297			}
298			compareVals[element.getAttribute(targetVal)].push(element);
299		});
300		
301		
302		for(var key in compareVals){
303			cmp = [];
304			if(type == 'width'){
305				TweenMax.set(compareVals[key], {width:'auto', onComplete:function(){
306					for(var i = 0; i < compareVals[key].length; i++){
307						cmp.push($(compareVals[key][i]).outerWidth());
308					}
309					$(compareVals[key]).outerWidth(10+Math.max.apply(null, cmp));
310				}});
311			}else if(type == 'height'){
312				TweenMax.set(compareVals[key], {height:'auto', onComplete:function(){
313					for(var i = 0; i < compareVals[key].length; i++){
314						cmp.push($(compareVals[key][i]).outerHeight());
315					}
316					$(compareVals[key]).outerHeight(Math.max.apply(null, cmp));
317				}});
318			}
319		}
320		return false;
321	},
322	
323	topScrollFunc:function(target, deleteHash){
324		if(target){
325			if(target[0]){
326				var val = 90;
327				var w = $(window).width();
328				if(w < 640) val = 0;
329				
330				switch(target.attr('id')){
331					default:
332						break;
333				}
334				
335				if(deleteHash) location.hash = '';
336				$('html,body').animate({scrollTop:target.offset().top-val},700, 'swing');
337				return false;
338			}
339		}
340	},
341	
342	//任意のタイミングでスクロール
343	scrollByLoaded:function(target){
344		TweenMax.set('body', {delay:0.4, onComplete:function(){
345			Common.topScrollFunc($('#'+location.hash.split('scroll-')[1]), true);
346		}});
347	},
348	
349	//画面表示のタイミングでスクロールを無効
350	disableScrollInView:true
351	
352	
353};
354
355(function(){
356	//URLにハッシュ
357	(function(){
358		var pair = location.search.substring(1).split('&');
359		for(var i = 0; pair[i]; i++) {
360			var kv = pair[i].split('=');
361			Common.urlParams[kv[0]]=kv[1];
362		}
363	})();
364})();
365
366$(function() {
367	"use strict";
368	
369	//ページ読み込み時にURLにハッシュがついてるとスクロールする
370	if(location.hash) {
371		Common.addLoad(function(){
372			setTimeout(function(){
373				if(location.hash.split('scroll-')[1]) {
374					var target = document.getElementById(location.hash.split('scroll-')[1]);
375					if(target) {
376						Common.jump('#'+location.hash.split('scroll-')[1]);
377					}
378					location.hash = '';
379				}
380			}, 400);
381		});
382	}
383
384	//画面表示時にスクロール
385	if(Common.disableScrollInView) Common.scrollByLoaded();
386	
387	//consoleの調整
388	if(!window.console){
389		window.console = {log:function(msg){}};
390	}else{
391		if(Common.urlParams.debug){
392			var exLog = console.log;
393			console.log = function(msg, element) {
394				// Dateオブジェクトを作成 (引数なし)
395				var date = new Date() ;
396				// 現在のUNIX時間を取得する (秒単位)
397				var timestamp = String(Math.floor(date.getTime()/1000));
398				var unique = timestamp+Math.random();
399				
400				element = document.getElementById('ConsoleWindow');
401				if(document.getElementById('ConsoleWindow')){
402					var parentScope = (new Error().stack).split('\n')[1];
403					var shortSource = parentScope.replace(/[httpsfile]+:\/{2,3}([0-9a-zA-Z\.\-:]+?):?[0-9]*?\//,'');
404					$(element).append('<span class="line"><input id="'+unique+'_checkbox" type="checkbox" class="consolecheckbox"><label for="'+unique+'_checkbox" class="timestamp">'+timestamp.substr(8)+'</label><span class="content"><span class="source">' + shortSource + '</span><span class="msg">'+msg+'</span></span></span>');
405				}else{
406					element = document.createElement('div');
407					element.id = 'ConsoleWindow';
408					element.setAttribute('class', 'consoleWindow');
409					var objBody = document.getElementsByTagName('body').item(0);
410					objBody.appendChild(element);
411				}
412				exLog.apply(this, arguments);
413			}
414		}
415	}
416	
417	var w,
418		h,
419		s;
420	
421	//URLにハッシュ
422	/*(function(){
423		if(location.hash.indexOf('#scroll-') != -1){
424			var target = $('#'+location.hash.split('#scroll-')[1]);
425			Common.topScrollFunc(target);
426		}
427	})();*/
428	
429	//will-change
430	(function() {
431		Common.setWillchangeInviewEvent();
432	})();
433	
434	//タブのアクティブ
435	$(window).on('focus', function(e){
436		Common.pageHideFlg = false;
437		$('[data-willchange]').trigger('inview');
438	});
439	
440	//タブの非アクティブ
441	$(window).on('blur', function(e){
442		Common.pageHideFlg = true;
443		$('[data-willchange]').css('will-change', 'auto');
444	});
445	
446	// スムーズスクロール
447	$(document).on('click','a[href*="#"]',function(){
448		var str = this.getAttribute('href').split('#')[1];
449		var str2 = this.getAttribute('href').split('#scroll-')[1];
450		var target;
451		if($('#'+str)[0]){
452			target = $('#'+str);
453			Common.topScrollFunc(target);
454			return false;
455		}else if($('#'+str2)[0]){
456			target = $('#'+str2);
457			Common.topScrollFunc(target);
458			return false;
459		}else{
460		}
461	});
462	
463	//電話
464	$('[data-tel]').each(function(index, element) {
465		var val;
466		var target;
467		if($(element).find('[data-tel-source]')[0]){
468			target = $(element).find('[data-tel-source]');
469		}else{
470			target = $(element);
471		}
472		
473		var childtarget;
474		if(target.children()[0]){
475			childtarget = target.children();
476		}else{
477			childtarget = target;
478		}
479		
480		if(childtarget.prop('tagName') == 'IMG'){//子が画像の場合
481			val = childtarget.attr('alt');
482		}else if($(element).attr('data-tel')){
483			val = $(element).attr('data-tel');
484		}else{//子が文字の場合
485			val = childtarget.text();
486			//表示の-をスパンで囲う
487			childtarget.html(Common.parseValueFromChar(val, '-', '<span>-</span>'));
488		}
489		
490		//hrefに電話をかけれるようにする
491		if(Modernizr.touchevents){//タッチデバイスのとき
492			$(element).attr('href', 'tel:'+Common.parseValueFromChar(val, '-'));
493			
494			if($(element).attr('data-eventtracking')){
495				$(element).on('click', function(){
496					var eventtrackings = $(element).attr('data-eventtracking').split(',')
497					ga('send', {
498						hitType: 'event',
499						eventCategory: eventtrackings[0],
500						eventAction: eventtrackings[1],
501						eventLabel: eventtrackings[2]
502					});
503	
504				});
505			}
506		}
507	});
508	
509	//hover代わり
510	/*
511	(function() {
512		$(document).on('touchstart pointerdown', '*:not(html, body, main)', function(){
513			if(this.getAttribute('class')){
514				this.setAttribute('class', this.getAttribute('class') + ' hover');
515			}else{
516				this.setAttribute('class', 'hover');
517			}
518		});
519		$(document).on('touchend pointerup', '*:not(html, body, main)', function(){
520			$(this).removeClass('hover');
521		});
522		$(document).on('touchcancel pointercancel', '*:not(html, body, main)', function(){
523			$(this).removeClass('hover');
524		});
525	})();
526	*/
527	
528	//画面に領域が現れたときにページプラグインを読み込み
529	(function(){
530		if($('[data-fbpage]')[0]){
531			$('[data-fbpage]').each(function(index, element) {
532				$(element).on('inview', function(event, isInView, visiblePartX, visiblePartY) {
533					if(isInView){
534						$(element).html('<div class="fb-page" data-href="' + $(element).attr('data-fbpage') + '" data-tabs="timeline" data-height="210" data-width="'+$(element).width()+'" data-small-header="false" data-adapt-container-width="true" data-hide-cover="false" data-show-facepile="true" data-show-posts="false"></div>');
535						if(window.FB)window.FB.XFBML.parse();
536					}
537				});
538			});
539		}
540	})();
541	
542	//画面サイズ変更イベント
543	var switchResizeInit = true,
544		switchResizeName = '',
545		oldWidth;
546	
547	$(window).on('resize', function(){
548		if($('html,body').scrollTop() !=0){
549			s = $('html,body').scrollTop();
550		}else{
551			s = $(document).scrollTop();
552		}
553		w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
554		h = $(window).height();
555		
556		if(640 < w){//pc
557			//PCかスマホか切り替わった判定
558			if(switchResizeName != 'pc'){
559				switchResizeName = 'pc';
560				switchResizeInit = true;
561				
562				//styleを指定
563				$('[data-sc-sp-style]').each(function(index, element) {
564					element.style = '';
565				});
566			}
567		}else{//smart
568			
569			//PCかスマホか切り替わった判定
570			if(switchResizeName != 'sp'){
571				switchResizeName = 'sp';
572				switchResizeInit = true;
573				
574				//styleを指定
575				$('[data-sc-sp-style]').each(function(index, element) {
576					element.style = element.getAttribute('data-sc-sp-style');
577				});
578			}
579		}
580		
581		//PCからスマホ、スマホからPCへ繊維したとき一度だけ実行
582		if(switchResizeInit){
583			switchResizeInit = false;
584			$('[data-loadfile-area]').attr('data-loadfile-area', '0');
585			
586			//data-loadfile-area 要素を読み込む
587			$('[data-loadfile-area]').off('.loadfile');
588			$('[data-loadfile-area]').each(function(index, element) {
589				$(element).on('inview.loadfile', function(event, isInView, visiblePartX, visiblePartY){
590					if(isInView){
591						if(element.getAttribute('data-loadfile-area') == '1') return true;
592						$(element).attr('data-loadfile-area', '1');
593						$(element).find('[data-loadfile]').each(function(index1, element1) {
594							loadfileChech(element1);
595						});
596						loadfileChech(element);
597					}
598				});
599			});
600		}
601		
602		//幅のみリサイズされたとき
603		if(oldWidth != w){
604			oldWidth = w;
605			
606			Common.setAlignElem();
607		}
608		$(window).trigger('scroll');
609	});
610	
611	//画面スクロール処理
612	var	sVecSta = '';//スクロール状態
613	$(window).on('scroll', function() {
614		if($('html,body').scrollTop() !=0){
615			s = $('html,body').scrollTop();
616		}else{
617			s = $(document).scrollTop();
618		}
619		
620		//ヘッダー隠れる
621		if(100 < s){
622			if(!$('#HeaderArea').hasClass('hide')) $('#HeaderArea').addClass('hide');
623			if(!$('#topicPath').hasClass('hide')) $('#topicPath').addClass('hide');
624			if(!$('#SideFlowBtn').hasClass('lower_view')) $('#SideFlowBtn').addClass('lower_view');
625			if(!$('#SPPullupNav').hasClass('enable')) $('#SPPullupNav').addClass('enable');
626		}else{
627			if( $('#HeaderArea').hasClass('hide')) $('#HeaderArea').removeClass('hide');
628			if( $('#topicPath').hasClass('hide')) $('#topicPath').removeClass('hide');
629			if( $('#SideFlowBtn').hasClass('lower_view')) $('#SideFlowBtn').removeClass('lower_view');
630			if( $('#SPPullupNav').hasClass('enable')) $('#SPPullupNav').removeClass('enable');
631		}
632		
633		//PageTop 隠す
634		if(s < h){
635			if(!$('#PageTop').hasClass('hide')) $('#PageTop').addClass('hide');
636		}else{
637			if( $('#PageTop').hasClass('hide')) $('#PageTop').removeClass('hide');
638		}
639		
640		//原点からの移動量を計算
641		switch(sVecSta){
642			case 'up':
643				if(Common.sBeforeS < s){//下へ折返しスクロールしたとき
644					//スクロール状態を下へ
645					sVecSta = 'down';
646					//折り返し位置を保存
647					Common.sVecOri = Common.sBeforeS;
648				}
649				break;
650			case 'down':
651				if(s < Common.sBeforeS){//上へ折返しスクロールしたとき
652					//スクロール状態を下へ
653					sVecSta = 'up';
654					//折り返し位置を保存
655					Common.sVecOri = Common.sBeforeS;
656				}
657				break;
658			default:
659				sVecSta = 'down';
660				break;
661		}
662			
663		//原点からの移動量を計算
664		Common.sVecVal = s-Common.sVecOri;
665		
666		$('[data-pararax01-parent]').each(function(index, element) {
667			var pos = $(element).position().top;
668			if(pos < $(window).height()+s){
669				TweenMax.set($(element).find('[data-pararax01-child]'), {top:-(($(window).height()+s) - pos)*0.2});
670			}
671		});
672	});
673	$(window).trigger('resize');
674	
675	function loadfileChech(ele, result, string){
676		if(ele.getAttribute('data-loadfile')){
677			string = 'data-loadfile';
678			if(640 < w){//pc
679				if(ele.getAttribute('data-loadfile-pc')) string = 'data-loadfile-pc';
680			}else{//smart
681				if(ele.getAttribute('data-loadfile-sp')) string = 'data-loadfile-sp';
682			}
683			
684			//すでに読み込まれているとき
685			result = true;
686			switch(ele.tagName){
687				case 'IMG':
688					if(ele.getAttribute('src') == ele.getAttribute(string)) result = false;
689					break;
690				default:
691					//インラインスタイルにファイル名が含まれる場合
692					if(ele.getAttribute('style')){
693						if(ele.getAttribute('style').split(ele.getAttribute(string)).length > 1) result = false;
694					}
695					break;
696			}
697			
698			//読み込まれていないとき
699			if(result) loadfile(ele, string);
700		}else{
701			if(640 < w){//pc
702				loadfile(ele, 'data-loadfile-pc');
703			}else{//smart
704				loadfile(ele, 'data-loadfile-sp');
705			}
706		}
707	}
708	
709	function loadfile(element, attr){
710		if(!element.getAttribute(attr)){
711			switch(element.tagName){
712				case 'IMG':
713					element.setAttribute('src', '');
714					break;
715				default:
716					var withstyle = '';
717					if(element.getAttribute('style')) withstyle = element.getAttribute('style');
718					withstyle = withstyle.replace(/(background-image).*\);/g, '');
719					element.setAttribute('style', withstyle);
720					break;
721			}
722			return false;
723		}
724		
725		var image = new Image();
726		var ImageLoadFunc = function(){
727			//表示
728			switch(element.tagName){
729				case 'IMG':
730					element.setAttribute('src', image.src);
731					break;
732				default:
733					var withstyle = '';
734					if(element.getAttribute('style')) withstyle = element.getAttribute('style');
735					withstyle = withstyle.replace(/(background-image).*\);/g, '');
736					element.setAttribute('style', withstyle+'background-image:url('+image.src+');');
737					break;
738			}
739			
740			//イベント解除
741			if(image.addEventListener){// イベントリスナーに対応している
742				image.removeEventListener("load",ImageLoadFunc);
743			}else if(image.attachEvent){// アタッチイベントに対応している
744				image.detachEvent("onload",ImageLoadFunc);
745			}else{// イベントハンドラを使用する
746				//image.onload = ImageLoadFunc;
747			}
748		}
749		
750		//イベント登録
751		if(image.addEventListener){// イベントリスナーに対応している
752			image.addEventListener("load",ImageLoadFunc);
753		}else if(image.attachEvent){// アタッチイベントに対応している
754			image.attachEvent("onload",ImageLoadFunc);
755		}else{// イベントハンドラを使用する
756			image.onload = ImageLoadFunc;
757		}
758		
759		//読み込み開始
760		image.src = element.getAttribute(attr);
761	}
762	
763	
764	//スマホメニューボタンの開閉
765	(function() {
766		$('#MenuBtn').on('click', function(){
767			if($('#HeaderArea').hasClass('menuOn')){//閉じる
768				$('#HeaderArea').removeClass('menuOn');
769			}else{//開く
770				$('#HeaderArea').addClass('menuOn');
771			}
772		});
773		
774		//メニューをクリックしたらスマホメニュー画面を閉じる
775		$('#HeaderArea .row02 .links01 a').on('click', function(){
776			if(w <= 640) $('#HeaderArea').removeClass('menuOn');
777		});
778	})();
779	
780	(function(){
781		//loop img
782		$('[data-imgloop01]').each(function(index, element) {
783			var unique = Math.floor(Math.random()*1000000),
784				arrow = element.getAttribute('data-imgloop01'),
785				option = arrow.split(','),
786				time = parseInt(option[0]),
787				imgsource = option[2],
788				imgsourceSP;
789			
790			var	imgE;
791			if(option.length > 3){
792				imgsourceSP = option[3];
793				imgE = $('<img data-loadfile data-loadfile-pc="'+imgsource+'" data-loadfile-sp="'+imgsourceSP+'">');
794			}else{
795				imgE = $('<img data-loadfile="'+imgsource+'">');
796			}
797			
798			var	script = '';
799			script+='[data-imgloop01="'+unique+'"]>*>img{';
800			script+='	-webkit-animation:imgloop'+unique+' '+time+'s linear infinite;';
801			script+='	-o-animation:imgloop'+unique+' '+time+'s linear infinite;';
802			script+='	animation:imgloop'+unique+' '+time+'s linear infinite;';
803			script+='}';
804			script+='@media screen and (max-width:640px) {';
805			script+='	[data-imgloop01="'+unique+'"]>*>img{';
806			script+='		-webkit-animation:none;';
807			script+='		-o-animation:none;';
808			script+='		animation:none;';
809			script+='	}';
810			script+='}';
811	
812			if(option[1] && option[1] == 'right'){
813				script += '@-webkit-keyframes imgloop'+unique+'{from{-webkit-transform:translateX(-100%);}to{-webkit-transform:translateX(0%);}}@-moz-keyframes imgloop'+unique+'{from{-moz-transform:translateX(-100%);}to{-moz-transform:translateX(0%);}}@-ms-keyframes imgloop'+unique+'{from{-ms-transform:translateX(-100%);}to{-ms-transform:translateX(0%);}}@-o-keyframes imgloop'+unique+'{from{-o-transform:translateX(-100%);}to{-o-transform:translateX(0%);}}@keyframes imgloop'+unique+'{from{transform:translateX(-100%);}to{transform:translateX(0%);}}';
814			}else{
815				script += '@-webkit-keyframes imgloop'+unique+'{from{-webkit-transform:translateX(0%);}to{-webkit-transform:translateX(-100%);}}@-moz-keyframes imgloop'+unique+'{from{-moz-transform:translateX(0%);}to{-moz-transform:translateX(-100%);}}@-ms-keyframes imgloop'+unique+'{from{-ms-transform:translateX(0%);}to{-ms-transform:translateX(-100%);}}@-o-keyframes imgloop'+unique+'{from{-o-transform:translateX(0%);}to{-o-transform:translateX(-100%);}}@keyframes imgloop'+unique+'{from{transform:translateX(0%);}to{transform:translateX(-100%);}}';
816			}
817			
818			var moveEle = $('<div></div>');
819			$(element).append(moveEle);
820			moveEle.append(imgE.clone()).append(imgE.clone()).append(imgE.clone());
821			
822			$(element).append('<style type="text/css">'+script+'</style>');
823			element.setAttribute('data-imgloop01', unique);
824			
825			var oldWidth;
826			$(window).on('resize.imgloop'+unique, function(){
827				var w = parseInt(window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth);
828				//幅のみリサイズされたとき
829				if(oldWidth != w){
830					oldWidth = w;
831
832					if($(window).width() <= 640){
833						if(option[1] && option[1] == 'right'){
834							TweenMax.fromTo('[data-imgloop01="'+unique+'"]>*>img', time, {x:'-100%%'}, {x:'0%', ease:Power0.easeNone, repeat:-1});
835						}else{
836							TweenMax.fromTo('[data-imgloop01="'+unique+'"]>*>img', time, {x:'0%'}, {x:'-100%', ease:Power0.easeNone, repeat:-1});
837						}
838					}else{
839						TweenMax.killTweensOf('[data-imgloop01="'+unique+'"]>*>img');
840						$('[data-imgloop01="'+unique+'"]>*>img').removeAttr('style');
841					}
842				}
843			}).trigger('resize.imgloop'+unique);
844		});
845	})();
846
847	(function(){
848		var inview = ('IntersectionObserver' in window)?
849			function(target, enter, leave, rootMargin){
850				var targets;
851				if(typeof target == 'string') {
852					targets = document.querySelectorAll(target);
853				}else if(target.length){
854					targets = target;
855				}else{
856					targets = [];
857					targets.push(target);
858				}
859				for(var i = 0; i < targets.length; i++) {
860					(function(target) {
861						if(leave) {
862							var first = true;
863							var triggered = false;
864							(new IntersectionObserver(
865								function(entries, observer){
866									var flg = false;
867									for(var h = 0; h < entries.length; h++) {
868										if(entries[h].isIntersecting) {//見えた
869											flg = true;
870										}
871									}
872									if(flg === true && (triggered === false || first)) {
873										triggered = true;
874										enter(entries[0].target);
875									} else if(flg === false && (triggered === true || first)) {
876										triggered = false;
877										leave(entries[0].target);
878									}
879									first = false;
880								}
881								,
882								{threshold: [0.00, 0.25, 0.5, 0.75, 1.00], rootMargin:(rootMargin == '0px' || rootMargin == '0' || rootMargin === null || rootMargin === undefined)?'0px':Common.pxcelValueFromObject(rootMargin)}
883							)).observe(target);
884						} else {
885							(new IntersectionObserver(
886								function(entries, observer){
887									var flg = false;
888									for(var h = 0; h < entries.length; h++) {
889										if(entries[h].isIntersecting) {//見えた
890											flg = true;
891										}
892									}
893									if(flg === true) {
894										enter(entries[0].target);
895										observer.disconnect();
896									}
897								}
898								,
899								{threshold: [0.00, 0.25, 0.5, 0.75, 1.00], rootMargin:(rootMargin == '0px' || rootMargin == '0' || rootMargin === null || rootMargin === undefined)?'0px':Common.pxcelValueFromObject(rootMargin)}
900							)).observe(target);
901						}
902					}(targets[i]));
903				}
904			}
905			:
906			function(target, enter, leave){
907				var targets;
908				if(typeof target == 'string') {
909					targets = document.querySelectorAll(target);
910				}else if(target.length){
911					targets = target;
912				}else{
913					targets = [];
914					targets.push(target);
915				}
916				for(var i = 0; i < targets.length; i++) {
917					(function(child) {
918						var fromS,toS;
919						//resize
920						var resize = function(){
921							fromS =  window.pageYOffset + child.getBoundingClientRect().top - document.documentElement.clientHeight;
922							toS =  child.clientHeight + fromS + document.documentElement.clientHeight;
923						};
924						window.addEventListener('resize', resize);
925						resize();
926	
927						//scroll
928						var enterFlg = false;
929						var scroll = function(){
930							var s = window.pageYOffset;
931							if(fromS < s && s < toS) {//見えたとき
932								enter(child);
933								enterFlg = true;
934								if(!leave) {//一度だけの処理の設定のとき
935									window.removeEventListener('resize', resize);
936									window.removeEventListener('scroll', scroll);
937								}
938							}else{//見えないとき
939								if(enterFlg) {//見えてる状態だったとき
940									leave(child);
941									enterFlg = false;
942								}
943							}
944						};
945						window.addEventListener('scroll', scroll);
946						scroll();
947					}(targets[i]));
948				}
949			}
950		;
951	
952		var slideModules = document.querySelectorAll('[data-slidearea01a]:not([data-slidearea01a-ok])');
953		for(var i = 0; i < slideModules.length; i++) {
954			(function(element){
955				element.setAttribute('data-slidearea01a-ok', '');
956				var setSlide = function(){
957					//最低限の設定
958					var slidearea = element.querySelector('.slidearea01_content'),
959						slides = element.querySelectorAll('.slidearea01_link'),
960						length = slides.length-1,
961						now = -1,
962						slideDistByDammy = 6,
963						slidesWithDammy;
964	
965					//スライドの速さ
966					var speed = 0.4,
967						transitionValue = speed + 's cubic-bezier(0.445, 0.050, 0.550, 0.950)',
968						transitionValueByFlick = speed + 's cubic-bezier(0.165, 0.840, 0.440, 1.000)';
969					setTimeout(function(){
970						$(slidearea).css('transition', transitionValue);
971					}, 1);
972	
973					//前へ・次へボタン
974					var prev = element.querySelector('.prev'),
975						next = element.querySelector('.next');
976	
977					//自動切換え
978					var loop,
979						loopDur = 6000;
980	
981					//ページング
982					var pager = element.querySelector('.slidearea01_pager'),
983						pagers;
984	
985					var imgpager = element.querySelector('.slidearea01_imgpager'),
986						imgpagers = element.querySelectorAll('.slidearea01_imgpager_btn');
987	
988					//カウンター
989					var counter = element.querySelector('.slidearea01_count'),
990						counterTotal,
991						counterNow,
992						counterZeroPadding;
993	
994					//フリックで切り替え
995					var flickFlg = false,
996						flickArea = element.querySelector('.slidearea01_wrapin'),
997						flickPosXBefore = 0,
998						flickPosXNow = 0,
999						flickPosXFirst = 0,
1000						flickPosYBefore = 0,
1001						flickPosYNow = 0,
1002						flickPosYFirst = 0,
1003						flickArrow,
1004						flickLoop,
1005						flickAnimTimeFlg = false;
1006	
1007					//ループ処理
1008					var loopFunc = function(){
1009						if(!element.hasAttribute('data-slidearea01a-no-autoslide')) nextFunc();
1010					}
1011	
1012					//ループをセット
1013					var setLoop = function() {
1014						clearInterval(loop);
1015						loop = setInterval(loopFunc, loopDur);
1016					};
1017	
1018					//ループを解除
1019					var removeLoop = function() {
1020						clearInterval(loop);
1021					};
1022	
1023					//flick 常時処理
1024					var flickLoopFunc = function(){
1025						if(flickFlg) {
1026							if(Math.abs(flickPosXNow-flickPosXBefore) > 10){//タッチ開始位置から一定の距離の場合
1027								if(flickPosXNow-flickPosXBefore < 0){//マイナスのとき
1028									flickArrow = 'next';
1029								}else{
1030									flickArrow = 'prev';
1031								}
1032							}else{
1033								flickArrow = 'none';
1034							}
1035							flickPosXBefore = flickPosXNow;
1036						}
1037					};
1038					var flickPosSetFunc = function(){
1039						slidearea.style.left = (-100*(now+slideDistByDammy))-((flickPosXFirst-flickPosXNow)/flickArea.offsetWidth)*100+'%';
1040					};
1041					var flickPosResetFunc = function(){
1042						slidearea.style.left = -100*(now+slideDistByDammy)+'%';
1043					};
1044	
1045					//フリックのループをセット
1046					var setFlickLoop;			
1047					//フリックのループを解除
1048					var removeFlickLoop;
1049					var flickLoopFuncByRequestAnimationFrame = function(){
1050						flickLoopFunc();
1051						flickLoop = window.requestAnimationFrame(flickLoopFuncByRequestAnimationFrame);
1052					};
1053					if($(document.documentElement).hasClass('touchevents')) {
1054						if(window.requestAnimationFrame) {
1055							setFlickLoop = function() {
1056								window.cancelAnimationFrame(flickLoop);
1057								flickLoopFuncByRequestAnimationFrame();
1058							}
1059							removeFlickLoop = function() {
1060								window.cancelAnimationFrame(flickLoop);
1061							}
1062						}else{
1063							setFlickLoop = function() {
1064								clearInterval(flickLoop);
1065								flickLoop = setInterval(function(){
1066									flickLoopFunc();
1067								}, 33);
1068							}
1069							removeFlickLoop = function() {
1070								clearInterval(flickLoop);
1071							}
1072						}
1073					}else{
1074						setFlickLoop = function() {
1075						}
1076						removeFlickLoop = function() {
1077						}
1078					}
1079	
1080					(function(i){
1081						//スライドに番号を付与
1082						for(i = 0; i < slides.length; i = 0|i+1) {
1083							slides[i].setAttribute('data-slide-num', i);
1084						}
1085	
1086						//端の要素を生成
1087						var closeElesPrev = [],
1088							closeElesNext = [],
1089							closeEle,
1090							closeEleNow;
1091	
1092						//ダミー要素 前 作成
1093						closeEleNow = length+1;
1094						for(i = 0; i < slideDistByDammy; i = 0|i+1){
1095							closeEleNow--;
1096							if(closeEleNow < 0) closeEleNow = length;
1097							var c = $(slides[closeEleNow]).clone(true);
1098							closeElesPrev.push(c);
1099						}
1100						//ダミー要素 後 作成
1101						closeEleNow = -1;
1102						for(i = 0; i < slideDistByDammy; i = 0|i+1){
1103							closeEleNow++;
1104							if(length < closeEleNow) closeEleNow = 0;
1105							var c = $(slides[closeEleNow]).clone(true);
1106							closeElesNext.push(c);
1107						}
1108						//ダミー要素をいれる
1109						for(i = 0; i < closeElesPrev.length; i = 0|i+1){
1110							closeElesPrev[i].addClass('dammy');
1111							$(slidearea).prepend(closeElesPrev[i]);
1112						}
1113						for(i = 0; i < closeElesNext.length; i = 0|i+1){
1114							closeElesNext[i].addClass('dammy');
1115							$(slidearea).append(closeElesNext[i]);
1116						}
1117	
1118						slidesWithDammy = $(slidearea).children();
1119						
1120						$(slidearea).css('width', slidesWithDammy.length*100+'%');
1121						for(i = 0; i < slidesWithDammy.length; i = 0|i+1) {
1122							slidesWithDammy[i].style.width = +(100/slidesWithDammy.length)+"%";
1123						}
1124	
1125						//ページングを生成
1126						if(pager) {
1127							for(i = 0; i <= length; i = 0|i+1) {
1128								var li = document.createElement('button');
1129								li.setAttribute('data-slide-num', i);
1130								li.addEventListener('click', function(e){
1131									//loop
1132									setLoop();
1133									var arrow = 'next';
1134									if(~~e.currentTarget.getAttribute('data-slide-num') < now) arrow = 'prev';
1135									changeFunc(~~e.currentTarget.getAttribute('data-slide-num'), arrow);
1136								});
1137								pager.appendChild(li);
1138							}
1139							pagers = pager.children;
1140						}
1141	
1142						//画像のページング
1143						if(imgpager) {
1144							for(i = 0; i <= length; i = 0|i+1) {
1145								var li = imgpagers[i];
1146								li.setAttribute('data-slide-num', i);
1147								li.addEventListener('click', function(e){
1148									//loop
1149									setLoop();
1150									var arrow = 'next';
1151									if(~~e.currentTarget.getAttribute('data-slide-num') < now) arrow = 'prev';
1152									changeFunc(~~e.currentTarget.getAttribute('data-slide-num'), arrow);
1153								});
1154							}
1155						}
1156	
1157						//要素の画像読み込み
1158						$(window).trigger('resize');
1159					})();
1160	
1161					if(counter) {
1162						counterNow = element.querySelector('.slidearea01_count_now');
1163						counterTotal = element.querySelector('.slidearea01_count_total');
1164						if(counterTotal && counterNow) {
1165							if(slides.length < 100) {
1166								counterZeroPadding = function(val) {
1167									return ('00' + val).slice(-2);
1168								}
1169							}else{
1170								counterZeroPadding = function(val) {
1171									return ('000' + val).slice(-3);
1172								}
1173							}
1174							counterNow.innerText = counterZeroPadding(1);
1175							counterTotal.innerText = counterZeroPadding(length+1);
1176						}else{
1177							if(!counterTotal) {
1178								console.error('.slidearea01_count_now という要素が無い');
1179							}
1180							if(!counterNow) {
1181								console.error('.slidearea01_count_total という要素が無い');
1182							}
1183						}
1184					}
1185	
1186					//prev
1187					var prevFunc = function(){
1188						var val = -1+now;
1189						if(val < 0) val = length;
1190						changeFunc(val, 'prev');
1191	
1192						//loop
1193						setLoop();
1194					};
1195					if(prev) prev.addEventListener('click', prevFunc);
1196	
1197					//next
1198					var nextFunc = function(){
1199						var val = +1+now;
1200						if(length < val) val = 0;
1201						changeFunc(val, 'next');
1202	
1203						//loop
1204						setLoop();
1205					};
1206					if(next) next.addEventListener('click', nextFunc);
1207	
1208					//スライドエリアが見えたときに自動切換え・フリックの処理を有効にする
1209					inview(element, function(){
1210						setLoop();
1211						setFlickLoop();
1212					}, function(){
1213						removeLoop();
1214						removeFlickLoop();
1215					});
1216	
1217					//flick touchstart
1218					flickArea.addEventListener('touchstart', function(e){
1219						flickPosXNow = flickPosXBefore = flickPosXFirst = e.changedTouches[0].pageX;
1220						flickPosYNow = flickPosYBefore = flickPosYFirst = e.changedTouches[0].pageY;
1221						removeLoop();
1222						flickFlg = false;
1223						$(slidearea).addClass('disableTrs');
1224					}, {passive:true});
1225	
1226					//flick touchmove
1227					flickArea.addEventListener('touchmove', function(e){
1228						flickPosXNow = e.changedTouches[0].pageX;
1229						flickPosYNow = e.changedTouches[0].pageY;
1230						if(Math.abs(flickPosYNow-flickPosYFirst) < Math.abs(flickPosXNow-flickPosXFirst)){//Y軸よりX軸のほうが値が大きい場合
1231							//スクロール禁止
1232							//e.preventDefault();
1233							e.stopPropagation();
1234							flickPosSetFunc();
1235							flickFlg = true;
1236						}
1237					}, {passive:true});
1238	
1239					//flick touchend
1240					flickArea.addEventListener('touchend', function(e){
1241						$(slidearea).removeClass('disableTrs');
1242						if(flickFlg){
1243							switch(flickArrow){
1244								case 'next':
1245									flickFlg = false;
1246									flickAnimTimeFlg = true;
1247									nextFunc();
1248									break;
1249								case 'prev':
1250									flickFlg = false;
1251									flickAnimTimeFlg = true;
1252									prevFunc();
1253									break;
1254								default:
1255									setLoop();
1256	
1257									flickPosResetFunc();
1258									break;
1259							}
1260							flickArrow = 'none';
1261						}else{
1262							setLoop();
1263						}
1264						flickFlg = false;
1265					}, {passive:true});
1266	
1267					//スライドの処理
1268					var timeoutID01,
1269						timeoutID02,
1270						timeoutID03;
1271					var changeFunc = function(num, arrow, target, targetP){
1272						//ループしているようにみせる処理
1273						var moveNum = num;
1274	
1275						if(element.hasAttribute('data-slidearea01a-slidelimit')) {
1276							if(num == 0 && arrow == 'next') {
1277								moveNum = length;
1278								num = length;
1279							}
1280							if(num == length && arrow == 'prev') {
1281								moveNum = 0;
1282								num = 0;
1283							}
1284						} else {
1285							if(2 <= length){
1286								if(length == now && num == 0) moveNum = length+1;
1287								if(0 ==  now && num == length) moveNum = -1;
1288							}else{
1289								if(num == 0 && arrow == 'next') moveNum = length+1;
1290								if(num == length && arrow == 'prev') moveNum = -1;
1291							}
1292						}
1293	
1294						//フリック時のスピード調整
1295						var time = speed*1000;
1296						if(flickAnimTimeFlg){
1297							time = (time*0.8);
1298							slidearea.style.WebkitTransition = transitionValueByFlick;
1299							slidearea.style.transition = transitionValueByFlick;
1300						}
1301						
1302						//スライド一時無効化
1303						$(element).css('pointer-events', 'none');
1304	
1305						//スライド実行
1306						$(slidearea).css('left', -100*(moveNum+slideDistByDammy)+'%');
1307						clearTimeout(timeoutID01);
1308						clearTimeout(timeoutID02);
1309						clearTimeout(timeoutID03);
1310						timeoutID01 = setTimeout(function(){
1311							$(slidearea).addClass('disableTrs');
1312							timeoutID02 = setTimeout(function(){
1313								$(slidearea).css('left', -100*(num+slideDistByDammy)+'%');
1314								timeoutID03 = setTimeout(function(){
1315									$(slidearea).removeClass('disableTrs');
1316									$(slidearea).css('transition', transitionValue);
1317									//スライド一時無効化
1318									$(element).css('pointer-events', 'auto');
1319									if(flickAnimTimeFlg){
1320										flickAnimTimeFlg = false;
1321									}
1322								}, 33);
1323							}, 33);
1324						}, time);
1325	
1326						//pager 切り替え
1327						if(pager) {
1328							target = pagers[num];
1329							pagers.removeClass('active');
1330							target.addClass('active');
1331						}
1332						//pager 切り替え
1333						if(imgpager) {
1334							target = imgpagers[num];
1335							imgpagers.removeClass('active');
1336							target.addClass('active');
1337						}
1338	
1339						//カウンター
1340						if(counter) {
1341							counterNow.innerText = counterZeroPadding(num + 1);
1342						}
1343	
1344						//値保存
1345						now = ~~num;
1346	
1347						if(element.hasAttribute('data-slidearea01a-slidelimit')) {
1348							if(now == 0) {
1349								if(prev) prev.addClass('disabled');
1350							} else {
1351								if(prev) prev.removeClass('disabled');
1352							}
1353							if(now == length) {
1354								if(next) next.addClass('disabled');
1355							} else {
1356								if(next) next.removeClass('disabled');
1357							}
1358						}
1359					};
1360					changeFunc(0);
1361				};
1362				var loadfile = element.querySelector('[data-lf]');
1363				if(loadfile) {
1364					var loadfilearea = loadfile.closest('[data-lf-area]');
1365					if(~~(loadfilearea.getAttribute('data-lf-area')) == 1) {
1366						setSlide();
1367					}else{
1368						loadfilearea.addEventListener('loadfileComplete', setSlide, {once:true});
1369					}
1370				}else{
1371					setSlide();
1372				}
1373			}(slideModules[i]));
1374		}
1375	}());
1376
1377	(function(){
1378		var btn = document.querySelector('.recofairArea .cmnBtn01');
1379		if(btn) {
1380			btn.addEventListener('click', function(){
1381				$('[data-slidearea01a].type01 .slidearea01_link').addClass('view');
1382				$(btn).remove();
1383			});
1384		}
1385	}());
1386});
1387
1388
1389
1390$(function() {
1391	smartRollover();
1392	opacityRollover();
1393	addClasses();
1394/*
1395	var soudan = $('.onlinesoudan');
1396	var setHidden = function(){
1397		soudan.addClass('hidden')
1398	};
1399	var timer = setTimeout(setHidden, 6500);
1400	window.addEventListener('scroll', function(){
1401		soudan.removeClass('hidden');
1402		clearTimeout(timer);
1403		timer = setTimeout(setHidden, 3500);
1404	});
1405	document.querySelector('.onlinesoudan').addEventListener('mouseover', function(){
1406		soudan.removeClass('hidden');
1407		clearTimeout(timer);
1408		timer = setTimeout(setHidden, 3500);
1409	});
1410*/
1411});
1412
1413/* smartRollover
1414============================================================================================================ */
1415function smartRollover() {
1416	var imgCount = 0;
1417	var images_pre = new Array();
1418	$('img[src*="_off."],input[src*="_off."]').each (function(){
1419		images_pre[imgCount] = new Image();
1420		images_pre[imgCount].src = $(this).attr("src").replace("_off.", "_on.");
1421		$(this).hover(
1422			function () {
1423				$(this).attr("src", $(this).attr("src").replace("_off.", "_on."));
1424			},
1425			function () {
1426				$(this).attr("src", $(this).attr("src").replace("_on.", "_off."));
1427			}
1428		);
1429		imgCount ++;
1430	});
1431}
1432
1433/* opacityRollover
1434============================================================================================================ */
1435function opacityRollover() {
1436	$('img[src*="_op."],input[src*="_op."]').hover(
1437		function () {
1438			$(this).css('opacity', 0.7);
1439		},
1440		function () {
1441			$(this).css('opacity', 1);
1442		}
1443	);
1444}
1445
1446/* addClasses
1447============================================================================================================ */
1448function addClasses() {
1449	$('table.stripe tr:nth-child(even)').addClass('even');
1450	$('table.stripe tr:nth-child(odd)').addClass('odd');
1451}
1452
1453
1454$(function() {
1455	//フェアモーダル
1456	(function(){
1457		var modal = document.querySelector('.fairmodalarea');
1458		var modaltriggerbtns = document.querySelectorAll('[data-fairmodal]');
1459		if(modal && modaltriggerbtns.length) {
1460			var closeHandler = function(){
1461				modal.removeClass('active');
1462			};
1463			modal.querySelector('.bg').addEventListener('click', closeHandler);
1464			modal.querySelector('.close').addEventListener('click', closeHandler);
1465			for(var i = 0; i < modaltriggerbtns.length; i++) {
1466				(function(btn){
1467					btn.addEventListener('click', function(){
1468						if(modal.hasClass('active')) {
1469							closeHandler();
1470						} else {
1471							modal.addClass('active');
1472							var fairid = btn.getAttribute('data-fairmodal-fairid');
1473							var tit = btn.getAttribute('data-fairmodal-title');
1474							var dateid = btn.getAttribute('data-fairmodal-dateid');
1475							var date = btn.getAttribute('data-fairmodal-date');
1476							var time = btn.getAttribute('data-fairmodal-time');
1477							var ph = btn.getAttribute('data-fairmodal-ph');
1478							modal.querySelector('.table_fairtit').innerText = tit;
1479							modal.querySelector('[name="fair_id"]').value = fairid;
1480							modal.querySelector('[name="fair_date"]').value = dateid;
1481							modal.querySelector('.fairdate').innerText = date;
1482							var timevalue = time.split('/');
1483							modal.querySelector('[name="fair_time"]').innerHTML = '';
1484							for(var i = 0; i < timevalue.length; i++) {
1485								modal.querySelector('[name="fair_time"]').innerHTML += '<option value="'+timevalue[i]+'">'+timevalue[i]+'</option>';
1486							}
1487							modal.querySelector('.table_fairimg img').src = ph;
1488						}
1489					});
1490				}(modaltriggerbtns[i]));
1491			}
1492		}
1493	}());
1494});

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.