var _ready=function(){ Array.prototype.forEach.call(document.querySelectorAll('[data-lib="1998"]'),function(element){ var pattern=element.getAttribute('data-pattern'); if(pattern == 1){ var top_load_off = element.getElementsByClassName('top_loading_off')[0]; var load_off = element.getElementsByClassName('loading_off')[0]; if((location.pathname != '/' && !load_off) || (location.pathname == '/' && !top_load_off)){ element.classList.add('domloaded'); setTimeout(function(){ element.classList.add('showlogo'); },2000); window.addEventListener('load',function(){ setTimeout(function(){ element.classList.add('loaded'); },5000); setTimeout(function(){ element.style.display = 'none'; },6000); }); } } if(pattern != 1){ /*! pace 0.4.17 */ (function(){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V=[].slice,W={}.hasOwnProperty,X=function(a,b){function c(){this.constructor=a}for(var d in b)W.call(b,d)&&(a[d]=b[d]);return c.prototype=b.prototype,a.prototype=new c,a.__super__=b.prototype,a},Y=[].indexOf||function(a){for(var b=0,c=this.length;c>b;b++)if(b in this&&this[b]===a)return b;return-1};for(t={catchupTime:500,initialRate:.03,minTime:500,ghostTime:500,maxProgressPerFrame:10,easeFactor:1.25,startOnPageLoad:!0,restartOnPushState:!0,restartOnRequestAfter:500,target:"#pace",elements:{checkInterval:100,selectors:["#pace"]},eventLag:{minSamples:10,sampleCount:3,lagThreshold:3},ajax:{trackMethods:["GET"],trackWebSockets:!1}},B=function(){var a;return null!=(a="undefined"!=typeof performance&&null!==performance?"function"==typeof performance.now?performance.now():void 0:void 0)?a:+new Date},D=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame,s=window.cancelAnimationFrame||window.mozCancelAnimationFrame,null==D&&(D=function(a){return setTimeout(a,50)},s=function(a){return clearTimeout(a)}),F=function(a){var b,c;return b=B(),(c=function(){var d;return d=B()-b,d>=33?(b=B(),a(d,function(){return D(c)})):setTimeout(c,33-d)})()},E=function(){var a,b,c;return c=arguments[0],b=arguments[1],a=3<=arguments.length?V.call(arguments,2):[],"function"==typeof c[b]?c[b].apply(c,a):c[b]},u=function(){var a,b,c,d,e,f,g;for(b=arguments[0],d=2<=arguments.length?V.call(arguments,1):[],f=0,g=d.length;g>f;f++)if(c=d[f])for(a in c)W.call(c,a)&&(e=c[a],null!=b[a]&&"object"==typeof b[a]&&null!=e&&"object"==typeof e?u(b[a],e):b[a]=e);return b},p=function(a){var b,c,d,e,f;for(c=b=0,e=0,f=a.length;f>e;e++)d=a[e],c+=Math.abs(d),b++;return c/b},w=function(a,b){var c,d,e;if(null==a&&(a="options"),null==b&&(b=!0),e=document.querySelector("[data-pace-"+a+"]")){if(c=e.getAttribute("data-pace-"+a),!b)return c;try{return JSON.parse(c)}catch(f){return d=f,"undefined"!=typeof console&&null!==console?console.error("Error parsing inline pace options",d):void 0}}},g=function(){function a(){}return a.prototype.on=function(a,b,c,d){var e;return null==d&&(d=!1),null==this.bindings&&(this.bindings={}),null==(e=this.bindings)[a]&&(e[a]=[]),this.bindings[a].push({handler:b,ctx:c,once:d})},a.prototype.once=function(a,b,c){return this.on(a,b,c,!0)},a.prototype.off=function(a,b){var c,d,e;if(null!=(null!=(d=this.bindings)?d[a]:void 0)){if(null==b)return delete this.bindings[a];for(c=0,e=[];cO;O++)I=S[O],C[I]===!0&&(C[I]=t[I]);i=function(a){function b(){return T=b.__super__.constructor.apply(this,arguments)}return X(b,a),b}(Error),b=function(){function a(){this.progress=0}return a.prototype.getElement=function(){var a;if(null==this.el){if(a=document.querySelector(C.target),!a)throw new i;this.el=document.createElement("div"),this.el.className="pace pace-active",element.className=element.className.replace("pace-done",""),element.className+=" pace-running",this.el.innerHTML='
\n
\n
\n
',null!=a.firstChild?a.insertBefore(this.el,a.firstChild):a.appendChild(this.el)}return this.el},a.prototype.finish=function(){var a;return a=this.getElement(),a.className=a.className.replace("pace-active",""),a.className+=" pace-inactive",element.className=element.className.replace("pace-running",""),element.className+=" pace-done"},a.prototype.update=function(a){return this.progress=a,this.render()},a.prototype.destroy=function(){try{this.getElement().parentNode.removeChild(this.getElement())}catch(a){i=a}return this.el=void 0},a.prototype.render=function(){var a,b;return null==document.querySelector(C.target)?!1:(a=this.getElement(),a.children[0].style.width=""+this.progress+"%",(!this.lastRenderedProgress||this.lastRenderedProgress|0!==this.progress|0)&&(a.children[0].setAttribute("data-progress-text",""+(0|this.progress)+"%"),this.progress>=100?b="99":(b=this.progress<10?"0":"",b+=0|this.progress),a.children[0].setAttribute("data-progress",""+b)),this.lastRenderedProgress=this.progress)},a.prototype.done=function(){return this.progress>=100},a}(),h=function(){function a(){this.bindings={}}return a.prototype.trigger=function(a,b){var c,d,e,f,g;if(null!=this.bindings[a]){for(f=this.bindings[a],g=[],d=0,e=f.length;e>d;d++)c=f[d],g.push(c.call(this,b));return g}},a.prototype.on=function(a,b){var c;return null==(c=this.bindings)[a]&&(c[a]=[]),this.bindings[a].push(b)},a}(),N=window.XMLHttpRequest,M=window.XDomainRequest,L=window.WebSocket,v=function(a,b){var c,d,e,f;f=[];for(d in b.prototype)try{e=b.prototype[d],null==a[d]&&"function"!=typeof e?f.push(a[d]=e):f.push(void 0)}catch(g){c=g}return f},z=[],Pace.ignore=function(){var a,b,c;return b=arguments[0],a=2<=arguments.length?V.call(arguments,1):[],z.unshift("ignore"),c=b.apply(null,a),z.shift(),c},Pace.track=function(){var a,b,c;return b=arguments[0],a=2<=arguments.length?V.call(arguments,1):[],z.unshift("track"),c=b.apply(null,a),z.shift(),c},H=function(a){var b;if(null==a&&(a="GET"),"track"===z[0])return"force";if(!z.length&&C.ajax){if("socket"===a&&C.ajax.trackWebSockets)return!0;if(b=a.toUpperCase(),Y.call(C.ajax.trackMethods,b)>=0)return!0}return!1},j=function(a){function b(){var a,c=this;b.__super__.constructor.apply(this,arguments),a=function(a){var b;return b=a.open,a.open=function(d,e){return H(d)&&c.trigger("request",{type:d,url:e,request:a}),b.apply(a,arguments)}},window.XMLHttpRequest=function(b){var c;return c=new N(b),a(c),c},v(window.XMLHttpRequest,N),null!=M&&(window.XDomainRequest=function(){var b;return b=new M,a(b),b},v(window.XDomainRequest,M)),null!=L&&C.ajax.trackWebSockets&&(window.WebSocket=function(a,b){var d;return d=new L(a,b),H("socket")&&c.trigger("request",{type:"socket",url:a,protocols:b,request:d}),d},v(window.WebSocket,L))}return X(b,a),b}(h),P=null,x=function(){return null==P&&(P=new j),P},x().on("request",function(b){var c,d,e,f;return f=b.type,e=b.request,Pace.running||C.restartOnRequestAfter===!1&&"force"!==H(f)?void 0:(d=arguments,c=C.restartOnRequestAfter||0,"boolean"==typeof c&&(c=0),setTimeout(function(){var b,c,g,h,i,j;if(b="socket"===f?e.readyState<2:0<(h=e.readyState)&&4>h){for(Pace.restart(),i=Pace.sources,j=[],c=0,g=i.length;g>c;c++){if(I=i[c],I instanceof a){I.watch.apply(I,d);break}j.push(void 0)}return j}},c))}),a=function(){function a(){var a=this;this.elements=[],x().on("request",function(){return a.watch.apply(a,arguments)})}return a.prototype.watch=function(a){var b,c,d;return d=a.type,b=a.request,c="socket"===d?new m(b):new n(b),this.elements.push(c)},a}(),n=function(){function a(a){var b,c,d,e,f,g,h=this;if(this.progress=0,null!=window.ProgressEvent)for(c=null,a.addEventListener("progress",function(a){return h.progress=a.lengthComputable?100*a.loaded/a.total:h.progress+(100-h.progress)/2}),g=["load","abort","timeout","error"],d=0,e=g.length;e>d;d++)b=g[d],a.addEventListener(b,function(){return h.progress=100});else f=a.onreadystatechange,a.onreadystatechange=function(){var b;return 0===(b=a.readyState)||4===b?h.progress=100:3===a.readyState&&(h.progress=50),"function"==typeof f?f.apply(null,arguments):void 0}}return a}(),m=function(){function a(a){var b,c,d,e,f=this;for(this.progress=0,e=["error","open"],c=0,d=e.length;d>c;c++)b=e[c],a.addEventListener(b,function(){return f.progress=100})}return a}(),d=function(){function a(a){var b,c,d,f;for(null==a&&(a={}),this.elements=[],null==a.selectors&&(a.selectors=[]),f=a.selectors,c=0,d=f.length;d>c;c++)b=f[c],this.elements.push(new e(b))}return a}(),e=function(){function a(a){this.selector=a,this.progress=0,this.check()}return a.prototype.check=function(){var a=this;return document.querySelector(this.selector)?this.done():setTimeout(function(){return a.check()},C.elements.checkInterval)},a.prototype.done=function(){return this.progress=100},a}(),c=function(){function a(){var a,b,c=this;this.progress=null!=(b=this.states[document.readyState])?b:100,a=document.onreadystatechange,document.onreadystatechange=function(){return null!=c.states[document.readyState]&&(c.progress=c.states[document.readyState]),"function"==typeof a?a.apply(null,arguments):void 0}}return a.prototype.states={loading:0,interactive:50,complete:100},a}(),f=function(){function a(){var a,b,c,d,e,f=this;this.progress=0,a=0,e=[],d=0,c=B(),b=setInterval(function(){var g;return g=B()-c-50,c=B(),e.push(g),e.length>C.eventLag.sampleCount&&e.shift(),a=p(e),++d>=C.eventLag.minSamples&&a=100&&(this.done=!0),b===this.last?this.sinceLastUpdate+=a:(this.sinceLastUpdate&&(this.rate=(b-this.last)/this.sinceLastUpdate),this.catchup=(b-this.progress)/C.catchupTime,this.sinceLastUpdate=0,this.last=b),b>this.progress&&(this.progress+=this.catchup*a),c=1-Math.pow(this.progress/100,C.easeFactor),this.progress+=c*this.rate*a,this.progress=Math.min(this.lastProgress+C.maxProgressPerFrame,this.progress),this.progress=Math.max(0,this.progress),this.progress=Math.min(100,this.progress),this.lastProgress=this.progress,this.progress},a}(),J=null,G=null,q=null,K=null,o=null,r=null,Pace.running=!1,y=function(){return C.restartOnPushState?Pace.restart():void 0},null!=window.history.pushState&&(R=window.history.pushState,window.history.pushState=function(){return y(),R.apply(window.history,arguments)}),null!=window.history.replaceState&&(U=window.history.replaceState,window.history.replaceState=function(){return y(),U.apply(window.history,arguments)}),k={ajax:a,elements:d,document:c,eventLag:f},(A=function(){var a,c,d,e,f,g,h,i;for(Pace.sources=J=[],g=["ajax","elements","document","eventLag"],c=0,e=g.length;e>c;c++)a=g[c],C[a]!==!1&&J.push(new k[a](C[a]));for(i=null!=(h=C.extraSources)?h:[],d=0,f=i.length;f>d;d++)I=i[d],J.push(new I(C));return Pace.bar=q=new b,G=[],K=new l})(),Pace.stop=function(){return Pace.trigger("stop"),Pace.running=!1,q.destroy(),r=!0,null!=o&&("function"==typeof s&&s(o),o=null),A()},Pace.restart=function(){return Pace.trigger("restart"),Pace.stop(),Pace.start()},Pace.go=function(){return Pace.running=!0,q.render(),r=!1,o=F(function(a,b){var c,d,e,f,g,h,i,j,k,m,n,o,p,s,t,u,v;for(j=100-q.progress,d=o=0,e=!0,h=p=0,t=J.length;t>p;h=++p)for(I=J[h],m=null!=G[h]?G[h]:G[h]=[],g=null!=(v=I.elements)?v:[I],i=s=0,u=g.length;u>s;i=++s)f=g[i],k=null!=m[i]?m[i]:m[i]=new l(f),e&=k.done,k.done||(d++,o+=k.tick(a));return c=o/d,q.update(K.tick(a,c)),n=B(),q.done()||e||r?(q.update(100),Pace.trigger("done"),setTimeout(function(){return q.finish(),Pace.running=!1,Pace.trigger("hide")},Math.max(C.ghostTime,Math.min(C.minTime,B()-n)))):b()})},Pace.start=function(a){u(C,a),Pace.running=!0;try{q.render()}catch(b){i=b}return document.querySelector(".pace")?(Pace.trigger("start"),Pace.go()):setTimeout(Pace.start,50)},"function"==typeof define&&define.amd?define(function(){return Pace}):"object"==typeof exports?module.exports=Pace:C.startOnPageLoad&&Pace.start()}).call(this); } if(pattern == 2){ var pace = (function(){ 'use strict'; var d = {}; var s = {}; var c = {}; s.target = 'pace'; s.targetProgress = s.target + '-progress'; s.targetActivity = s.target + '-activity'; s.targetLogo = s.target + '-logo'; s.targetTransition1 = s.target + '-transition-1'; s.targetTransition2 = s.target + '-transition-2'; s.hide = s.target + '-hide'; Object.keys(s).forEach(function(data) { c[data] = s[data]; }); init(); function init(){ d.active = false; d.browser = getBrowserInfo(); d.transition = d.browser.name == 'safari' || d.browser.isTouch ? c.targetTransition2 : c.targetTransition1; Pace.on('start', function(){ if(!d.active) d.active = setObject(); }); Pace.on('done', function(){ setTimeout(function(){ d.$pace.style.transform = 'translate3d(100%, 0, 0)'; d.$logo.style.transform = 'translate3d(-100%, 0, 0)'; d.$paceActivity.addEventListener("transitionend", function(e) { if(this.classList.contains(c.targetActivity) && e.propertyName == 'transform'){ d.$pace.style.display = 'none'; } //d.$paceActivity.off('transitionend'); }); }, 1200); }); //android Firefoxは、キャッシュがある場合、Paceの startが実行されない d.tid = setInterval(function(){ var s_target = document.getElementsByClassName(s.target)[0]; if(s.target.length){ clearInterval(d.tid); if(!d.active) d.active = setObject(); } }, 100); } function setObject(){ var img = document.getElementsByTagName('img'); img.onload = function(){ d.$logo.classList.remove(c.hide); }; img.src = '/_img/ja/resource/9/logo/'; var p = document.getElementById('pace'); p.classList.add(d.transition); d.$pace = p; d.$paceProgress = d.$pace.getElementsByClassName(s.targetProgress)[0]; d.$paceActivity = d.$pace.getElementsByClassName(s.targetActivity)[0]; d.$paceActivity.insertAdjacentHTML("beforeend", ''); d.$logo = d.$paceActivity.getElementsByClassName(s.targetLogo)[0]; return true; }; function getBrowserInfo(){ var i,e=window.navigator.userAgent.toLowerCase(),n=window.navigator.appVersion.toLowerCase(),d=-1!=e.indexOf("webkit"),f="ontouchstart"in window,o="unknown";return-1!=e.indexOf("msie")||-1!=e.indexOf("trident")?-1!=n.indexOf("msie 6")?o="ie_6":-1!=n.indexOf("msie 7")?o="ie_7":-1!=n.indexOf("msie 8")?o="ie_8":-1!=n.indexOf("msie 9")?o="ie_9":-1!=n.indexOf("msie 10")?o="ie_10":-1!=e.indexOf("trident/7")&&(o="ie_11"):-1!=e.indexOf("webkit")&&-1!=e.indexOf("edge")?o="edge":-1!=e.indexOf("android")&&-1!=e.indexOf("webkit")&&-1!=e.indexOf("version")?o="android_default_browser":-1!=e.indexOf("opr")||-1!=e.indexOf("opera")||-1!=e.indexOf("opios")?o=-1!=e.indexOf("opera mini")?"opera_mini":"opera":-1!=e.indexOf("vivaldi")?o="vivaldi":-1!=e.indexOf("chrome")||-1!=e.indexOf("crios")?o="chrome":-1!=e.indexOf("firefox")||-1!=e.indexOf("fxios")?o="firefox":-1!=e.indexOf("smooz")?o="smooz":-1!=e.indexOf("fban")?o="facebook":-1!=e.indexOf("safari")&&(o="safari"),-1!=e.indexOf("windows")&&-1!=e.indexOf("phone")?i="windows_phone":-1!=e.indexOf("windows")?i="windows":-1!=e.indexOf("iphone")?i="iphone":-1!=e.indexOf("ipad")?i="ipad":-1!=e.indexOf("ipod")?i="ipod":-1!=e.indexOf("mac")?i="mac":-1!=e.indexOf("android")&&(i="android"),{name:o,device:i,isMobile:-1!=e.indexOf("windows")&&-1!=e.indexOf("phone")||-1!=e.indexOf("iphone")||-1!=e.indexOf("ipod")||-1!=e.indexOf("android")&&-1!=e.indexOf("mobile")||-1!=e.indexOf("firefox")&&-1!=e.indexOf("mobile")||-1!=e.indexOf("blackberry"),isTablet:-1!=e.indexOf("windows")&&-1!=e.indexOf("touch")||-1!=e.indexOf("ipad")||-1!=e.indexOf("android")&&-1==e.indexOf("mobile")||-1!=e.indexOf("firefox")&&-1!=e.indexOf("tablet")||-1!=e.indexOf("kindle")||-1!=e.indexOf("silk")||-1!=e.indexOf("playbook"),isTouch:f,isWebkit:d,ua:e} }; }); pace(); } });Array.prototype.forEach.call(document.querySelectorAll('[data-lib="4897"]'),function(element){ function showElementAnimation() { var element = document.getElementsByClassName('-w-anima-fade'); if(!element) return; var showTiming = window.innerHeight > 768 ? 200 : 40; var scrollY = window.pageYOffset; var windowH = window.innerHeight; for(var i=0;i elemY) { element[i].classList.add('-w-is-show'); } else if(scrollY + windowH < elemY) { element[i].classList.remove('-w-is-show'); } } } showElementAnimation(); window.addEventListener('scroll', showElementAnimation); });Array.prototype.forEach.call(document.querySelectorAll('[data-lib="14270"]'),function(element){ var images=element.querySelectorAll('.-w-top-main li'); var texts=element.querySelectorAll('.-w-top-main-txt .-w-text'); var breakPoint = 768; var current=0; window.addEventListener('load',function(){ var t = document.getElementsByClassName('-w-top-main-txt02'); var text_length = t[0].clientWidth; if(t[1] && text_length < t[1].clientWidth){ text_length = t[1].clientWidth; } if(t[2] && text_length < t[2].clientWidth){ text_length = t[2].clientWidth; } //var w = document.getElementsByClassName('-w-top-main-txt')[0]; //for(var i=0;i 50){ scroll_top.style.opacity ="0"; }else{ scroll_top.style.opacity =""; } if(getTopPosition > (height/2)){ scroll_top2.style.opacity ="0"; }else{ scroll_top2.style.opacity =""; } if(getTopPosition > (height/2)){ scroll_top3.style.opacity ="0"; }else{ scroll_top3.style.opacity =""; } if(getTopPosition > 2500){ scroll_top4.style.opacity ="0"; }else{ scroll_top4.style.opacity =""; } } function topMainVisualHeight() { var winH = window.innerHeight; var winH2 = window.innerHeight; if (window.innerWidth >= breakPoint){ var tmvH = winH ; } else{ var spH = 50; var tmvH = winH - spH; } var box_main_image = document.getElementsByClassName('-w-box-main-image'); box_main_image[0].style.height = tmvH+'px'; var top_main = document.getElementsByClassName('-w-top-main'); top_main[0].style.height = tmvH+'px'; var top_main_li = top_main[0].getElementsByTagName('li'); for(var i=0; i showPos) { var delay = (elm.dataset[dataDelay])? elm.dataset[dataDelay] : 0; setTimeout(function(index) { scrollAnimationElm[index].classList.add('show'); }.bind(null, i), delay); } } } window.addEventListener('load', scrollAnimationFunc); window.addEventListener('scroll', scrollAnimationFunc); });Array.prototype.forEach.call(document.querySelectorAll('[data-lib="735"]'),function(element){ function showElementAnimation() { var element = document.getElementsByClassName('-w-anima-fade'); if(!element) return; var showTiming = window.innerHeight > 768 ? 200 : 40; var scrollY = window.pageYOffset; var windowH = window.innerHeight; for(var i=0;i elemY) { element[i].classList.add('-w-is-show'); } else if(scrollY + windowH < elemY) { element[i].classList.remove('-w-is-show'); } } } showElementAnimation(); window.addEventListener('scroll', showElementAnimation); });Array.prototype.forEach.call(document.querySelectorAll('[data-lib="1502"]'),function(element){ var nodes=Array.prototype.slice.call(element.querySelectorAll('[data-bg]'),0); nodes.forEach(function(e){ e.style.background='url('+e.getAttribute('data-bg')+') no-repeat 0 0/cover'; }); window.addEventListener('load', function() { var s = document.getElementsByClassName('swiper-slide'); if(s.length > 2){ var mySwiper = new Swiper('.swiper-container',{ navigation: { nextEl: '.swiper-button-next', prevEl: '.swiper-button-prev', }, loop: true, autoHeight: true, slidesPerView: 3, spaceBetween: 30, autoplay: { delay: 3000, disableOnInteraction: true }, breakpoints: { 768: { slidesPerView: 2, spaceBetween: 10 } }, }); }; }) });Array.prototype.forEach.call(document.querySelectorAll('[data-lib="987"]'),function(element){ function showElementAnimation() { var element = document.getElementsByClassName('-w-anima-fade'); if(!element) return; var showTiming = window.innerHeight > 768 ? 200 : 40; var scrollY = window.pageYOffset; var windowH = window.innerHeight; for(var i=0;i elemY) { element[i].classList.add('-w-is-show'); } else if(scrollY + windowH < elemY) { element[i].classList.remove('-w-is-show'); } } } showElementAnimation(); window.addEventListener('scroll', showElementAnimation); });Array.prototype.forEach.call(document.querySelectorAll('[data-lib="1104"]'),function(element){ function showElementAnimation() { var element = document.getElementsByClassName('-w-anima-fade'); if(!element) return; var showTiming = window.innerHeight > 768 ? 200 : 40; var scrollY = window.pageYOffset; var windowH = window.innerHeight; for(var i=0;i elemY) { element[i].classList.add('-w-is-show'); } else if(scrollY + windowH < elemY) { element[i].classList.remove('-w-is-show'); } } } showElementAnimation(); window.addEventListener('scroll', showElementAnimation); });/*layout:25*/ /*ページ内リンク*/ let headH = document.getElementById('-w-header').offsetHeight; document.body.style.marginTop = headH + "px"; //CSSの調整部分。 /** * スムーススクロール実行関数 */ let smoothScroll = (target, offset) => { let toY; let nowY = window.pageYOffset; //現在のスクロール値 const divisor = 8; //近づく割合(数値が大きいほどゆっくり近く) const range = (divisor / 2) + 1; //どこまで近づけば処理を終了するか(無限ループにならないように divisor から算出) //ターゲットの座標 const targetRect = target.getBoundingClientRect(); //ターゲットの座標取得 const targetY = targetRect.top + nowY - offset; //現在のスクロール値 & ヘッダーの高さを踏まえた座標 //スクロール終了まで繰り返す処理 (function () { let thisFunc = arguments.callee; //自身を呼び出すために変数に代入 toY = nowY + Math.round((targetY - nowY) / divisor); //次に移動する場所(近く割合は除数による。) window.scrollTo(0, toY); //スクロールさせる nowY = toY; //nowY更新 if (document.body.clientHeight - window.innerHeight < toY) { //最下部にスクロールしても対象まで届かない場合は下限までスクロールして強制終了 window.scrollTo(0, document.body.clientHeight); return; } if (toY >= targetY + range || toY <= targetY - range) { //+-rangeの範囲内へ近くまで繰り返す window.setTimeout(thisFunc, 10); } else { //+-range の範囲内にくれば正確な値へ移動して終了。 window.scrollTo(0, targetY); } })(); }; /** * アンカータグにクリックイベントを登録 */ const smoothOffset = headH; //Fixされているヘッダーの高さ分スクロール先の座標をずらすために、変数に高さを入れておく const links = document.querySelectorAll('a[href*="#"]'); //#がリンクに含まれているアンカータグを全て取得 for (let i = 0; i < links.length; i++) { links[i].addEventListener('click', function (e) { const href = e.currentTarget.getAttribute('href'); //href取得 const splitHref = href.split('#'); const targetID = splitHref[1]; const target = document.getElementById(targetID); //リンク先の要素(ターゲット)取得 if (target) { smoothScroll(target, smoothOffset); } else { return true; } return false; }); } (function() { var duration = 800; var ignore = '.noscroll'; var easing = function (t, b, c, d) { return c * (0.5 - Math.cos(t / d * Math.PI) / 2) + b; }; //jswing var smoothScrollElm = document.querySelectorAll('a[href^="#"]:not(' + ignore +')'); Array.prototype.forEach.call(smoothScrollElm, function(elm) { elm.addEventListener('click', function(e) { e.preventDefault(); var targetElm = document.querySelector(elm.getAttribute('href')); if(!targetElm) return; var targetPos = targetElm.getBoundingClientRect().top; var startTime = Date.now(); var scrollFrom = scrollElm.scrollTop; (function loop() { var currentTime = Date.now() - startTime; if(currentTime < duration) { scrollTo(0, easing(currentTime, scrollFrom, targetPos, duration)); window.requestAnimationFrame(loop); } else { scrollTo(0, targetPos + scrollFrom); } })(); }) }); })(); /*page*/ }; if (document.readyState !== 'loading') { _ready(); } else { document.addEventListener('DOMContentLoaded', _ready, false); }