(function (){
'use strict';
var MAX_PARAM_LEN=100;
var PRODUCT_HOSTNAMES=['saiyo-kakaricho.com', 'www.saiyo-kakaricho.com'];
var EXCLUDED_PATH_PREFIXES=['/wp/', '/contact/', '/contact_partner/'];
var EXCLUDED_CONTAINER_SELECTOR='.kkr-sp-fixed-cta, .fixed-overlay-adv-container';
var BLOCK_SELECTOR='.cta, .sidebar_banner_div, .sponsored, .scouting-media-cta, .related_ads';
var CALLBACK_TIMEOUT_MS=1000;
var CALLBACK_SAFETY_MS=1500;
function trimToMaxLen(str, maxLen){
if(typeof str!=='string') return '';
var s=str.trim();
return s.length <=maxLen ? s:s.substring(0, maxLen);
}
function copyParams(params){
var copy={};
if(!params) return copy;
for (var k in params){
if(Object.prototype.hasOwnProperty.call(params, k)) copy[k]=params[k];
}
return copy;
}
function sendGaEvent(eventName, params){
if(typeof window.gtag==='function'){
window.gtag('event', eventName, params||{});
return;
}
window.dataLayer=window.dataLayer||[];
var payload=copyParams(params);
payload.event=eventName;
window.dataLayer.push(payload);
}
function sendGaEventWithCallback(eventName, params, callback){
var fired=false;
function once(){
if(fired) return;
fired=true;
try { callback(); } catch (e){  }}
window.setTimeout(once, CALLBACK_SAFETY_MS);
if(typeof window.gtag==='function'){
var p=copyParams(params);
p.event_callback=once;
p.event_timeout=CALLBACK_TIMEOUT_MS;
window.gtag('event', eventName, p);
return;
}
window.dataLayer=window.dataLayer||[];
var payload=copyParams(params);
payload.event=eventName;
payload.eventCallback=once;
payload.eventTimeout=CALLBACK_TIMEOUT_MS;
window.dataLayer.push(payload);
}
function isCtaHref(href){
if(!href) return false;
var u;
try {
u=new URL(href, location.href);
} catch (e){
return false;
}
var hostOk=false;
for (var i=0; i < PRODUCT_HOSTNAMES.length; i++){
if(u.hostname===PRODUCT_HOSTNAMES[i]){ hostOk=true; break; }}
if(!hostOk) return false;
for (var j=0; j < EXCLUDED_PATH_PREFIXES.length; j++){
if(u.pathname.indexOf(EXCLUDED_PATH_PREFIXES[j])===0) return false;
}
return true;
}
function closestSafe(el, sel){
if(!el||!el.closest) return null;
return el.closest(sel);
}
function findCtaBlock(a){
var attrEl=closestSafe(a, '[data-academy-cta]');
if(attrEl) return attrEl;
var blockEl=closestSafe(a, BLOCK_SELECTOR);
if(blockEl) return blockEl;
return a;
}
function classifyBlock(block){
if(closestSafe(block, EXCLUDED_CONTAINER_SELECTOR)) return null;
if(closestSafe(block, '#sidebar1, #fixed_sidebar')){
return { placement: 'pc_sidebar', source: 'container:sidebar' };}
if(closestSafe(block, 'footer.article-footer')){
return { placement: 'article_end', source: 'container:article-footer' };}
if(closestSafe(block, '.entry-content .sponsored.dfont')){
return { placement: 'article_end', source: 'container:sponsored-dfont' };}
var dataEl=closestSafe(block, '[data-academy-cta]');
if(dataEl){
var v=dataEl.getAttribute('data-academy-cta')||'';
if(v.indexOf('pc-sidebar-')===0) return { placement: 'pc_sidebar', source: 'data-attr:' + v };
if(v.indexOf('article-end-')===0) return { placement: 'article_end', source: 'data-attr:' + v };
if(v.indexOf('inline-')===0) return { placement: 'inline', source: 'data-attr:' + v };}
if(closestSafe(block, '.entry-content')){
return { placement: 'inline', source: 'fallback:entry-content' };}
return null;
}
function getDestination(a){
try {
var u=new URL(a.href, location.href);
return trimToMaxLen(u.pathname + u.search, MAX_PARAM_LEN);
} catch (e){
return '';
}}
function getLabel(a){
var txt=a.innerText||a.textContent||'';
txt=txt.replace(/\s+/g, ' ').trim();
if(txt) return trimToMaxLen(txt, MAX_PARAM_LEN);
var img=a.querySelector ? a.querySelector('img[alt]'):null;
if(img&&img.alt) return trimToMaxLen(img.alt.trim(), MAX_PARAM_LEN);
return '(no label)';
}
function chooseRepresentativeLink(block, qualifyingLinks){
if(block.querySelectorAll){
var raisedList=block.querySelectorAll('a.raised');
for (var i=0; i < raisedList.length; i++){
for (var j=0; j < qualifyingLinks.length; j++){
if(raisedList[i]===qualifyingLinks[j]) return raisedList[i];
}}
}
return qualifyingLinks[0];
}
function buildCtaInventory(){
var allLinks=document.querySelectorAll('a[href]');
var blocks=[];
function findBlockIdx(blockEl){
for (var i=0; i < blocks.length; i++){
if(blocks[i].block===blockEl) return i;
}
return -1;
}
for (var i=0; i < allLinks.length; i++){
var a=allLinks[i];
if(!isCtaHref(a.href)) continue;
if(closestSafe(a, EXCLUDED_CONTAINER_SELECTOR)) continue;
var blockEl=findCtaBlock(a);
var idx=findBlockIdx(blockEl);
if(idx===-1){
blocks.push({ block: blockEl, links: [a] });
}else{
blocks[idx].links.push(a);
}}
var counters={ pc_sidebar: 0, article_end: 0, inline: 0 };
var inventory=[];
for (var k=0; k < blocks.length; k++){
var b=blocks[k];
var c=classifyBlock(b.block);
if(!c) continue;
counters[c.placement] +=1;
var rep=chooseRepresentativeLink(b.block, b.links);
inventory.push({
block: b.block,
links: b.links,
representativeLink: rep,
label: getLabel(rep),
destination: getDestination(rep),
placement: c.placement,
order: counters[c.placement],
source: c.source,
impressionSent: false
});
}
return inventory;
}
function buildEventPayload(item){
return {
cta_placement: item.placement,
cta_label: item.label,
cta_destination: item.destination,
cta_order: item.order,
cta_source: item.source
};}
function setupImpressionObserver(inventory){
if(typeof IntersectionObserver==='undefined') return;
function findItemByBlock(el){
for (var i=0; i < inventory.length; i++){
if(inventory[i].block===el) return inventory[i];
}
return null;
}
var io=new IntersectionObserver(function (entries){
for (var i=0; i < entries.length; i++){
var entry=entries[i];
if(!entry.isIntersecting) continue;
var item=findItemByBlock(entry.target);
if(!item||item.impressionSent) continue;
item.impressionSent=true;
sendGaEvent('academy_cta_impression', buildEventPayload(item));
io.unobserve(entry.target);
}}, { threshold: 0 });
for (var k=0; k < inventory.length; k++){
io.observe(inventory[k].block);
}}
function findInventoryItemForLink(inventory, a){
var block=findCtaBlock(a);
for (var i=0; i < inventory.length; i++){
if(inventory[i].block===block) return inventory[i];
}
return null;
}
function shouldInterceptForReliability(a, e, isAuxClick){
if(isAuxClick) return false;
if(typeof e.button==='number'&&e.button!==0) return false;
if(e.ctrlKey||e.metaKey||e.shiftKey||e.altKey) return false;
if(a.target==='_blank') return false;
return true;
}
function handleNavigation(e, isAuxClick){
if(isAuxClick&&e.button!==1) return;
var target=e.target;
if(!target) return;
var a=closestSafe(target, 'a[href]');
if(!a) return;
if(!isCtaHref(a.href)) return;
if(closestSafe(a, EXCLUDED_CONTAINER_SELECTOR)) return;
var item=findInventoryItemForLink(window._academyCtaInventory, a);
var payload;
if(item){
payload=buildEventPayload(item);
}else{
var block=findCtaBlock(a);
var c=classifyBlock(block);
if(!c) return;
payload={
cta_placement: c.placement,
cta_label: getLabel(a),
cta_destination: getDestination(a),
cta_order: 1,
cta_source: c.source + ':late'
};}
if(shouldInterceptForReliability(a, e, isAuxClick)){
e.preventDefault();
var href=a.href;
sendGaEventWithCallback('academy_cta_click', payload, function (){
window.location.href=href;
});
return;
}
sendGaEvent('academy_cta_click', payload);
}
function setupClickListeners(){
document.addEventListener('click', function (e){ handleNavigation(e, false); }, true);
document.addEventListener('auxclick', function (e){ handleNavigation(e, true); }, true);
}
function init(){
var inventory=buildCtaInventory();
window._academyCtaInventory=inventory;
setupClickListeners();
if(inventory.length){
setupImpressionObserver(inventory);
}}
if(document.readyState==='loading'){
document.addEventListener('DOMContentLoaded', init);
}else{
init();
}})();
(function (){
'use strict';
function sendGaEvent(eventName, box){
var params={
academy_cta_variant: box.getAttribute('data-variant')||'',
cta_placement: 'inbody_form'
};
if(typeof window.gtag==='function'){
window.gtag('event', eventName, params);
return;
}
window.dataLayer=window.dataLayer||[];
window.dataLayer.push({
event: eventName,
academy_cta_variant: params.academy_cta_variant,
cta_placement: params.cta_placement
});
}
function init(){
var boxes=document.querySelectorAll('.kkr-inline-regist');
for (var i=0; i < boxes.length; i++){
(function (box){
var started=false;
var pref=box.querySelector('select[name="adv[state]"]');
var wrap=box.querySelector('.kkr-inline-regist__pref');
var btn=box.querySelector('.kkr-inline-regist__submit');
var form=box.querySelector('form');
box.addEventListener('change', function (){
if(!started){
started=true;
sendGaEvent('academy_cta_form_start', box);
}});
if(pref){
pref.addEventListener('change', function (){
var ok=pref.value!=='';
if(btn){ btn.disabled = !ok; }
if(ok&&wrap){ wrap.classList.remove('blink'); }});
}
if(form){
form.addEventListener('submit', function (){
sendGaEvent('academy_cta_form_submit', box);
});
}})(boxes[i]);
}
if('IntersectionObserver' in window){
var io=new IntersectionObserver(function (entries){
entries.forEach(function (en){
if(en.isIntersecting){
var wrap=en.target.querySelector('.kkr-inline-regist__pref');
var pref=en.target.querySelector('select[name="adv[state]"]');
if(wrap&&pref&&pref.value===''){ wrap.classList.add('blink'); }
sendGaEvent('academy_cta_form_impression', en.target);
io.unobserve(en.target);
}});
}, { threshold: 0.55 });
for (var j=0; j < boxes.length; j++){ io.observe(boxes[j]); }}else{
for (var k=0; k < boxes.length; k++){
var w=boxes[k].querySelector('.kkr-inline-regist__pref');
if(w){ w.classList.add('blink'); }
sendGaEvent('academy_cta_form_impression', boxes[k]);
}}
}
if(document.readyState==='loading'){
document.addEventListener('DOMContentLoaded', init);
}else{
init();
}})();