





(function(d){
    var SITE = "//omt.shinobi.jp/";
    var CKEY = "VDQtnme";
    var CLS = "buzzurl:delicious:evernote:facebook:favorite:feedly:google:gree:grow:hatena:instapaper:ldrpocket:line:live:livedoor:mailto:mixi:mixifavorite:ninja:pinterest:plusone:pocket:readitlater:rss:tumblr:tweet:tweethashtag:tweetmention:twitter:yahoo:youtube";
    var SOURCEKEY = "9eacc20d8e0e01d4c4f12a7e59f978d9";
    var w = window;
    var ob = "NT_OMT_BTN_" + SOURCEKEY;
    var QRY = "__ntomt";
    var obsk = "NINJA_CO_JP_ONETAG_BUTTON_" + SOURCEKEY;
    var eUC = encodeURIComponent;
    var ANLZ = Boolean(true);
    var useCanonical = Boolean(false);
    var designType = 5;
    var buttonClassName;
    switch (designType) {
      case 5:
        buttonClassName = ' onebtn_responsive_large';
        break;
      case 6:
        buttonClassName = ' onebtn_responsive_large_left';
        break;
      case 7:
        buttonClassName = ' onebtn_responsive_small';
        break;
      case 8:
        buttonClassName = ' onebtn_responsive_small_left';
        break;
      default :
        break;
    }


    var ORIGINAL_BUTTON = {};

    var isSmartPhone = (/iPhone|Android|Windows Phone/.test(navigator.userAgent));

    try {
        var link = d.createElement("link");
        link.rel = "stylesheet";
        link.href = SITE + "css/ninja_onetag.css?202507140035";
        d.getElementsByTagName("head")[0].appendChild(link);
    } catch(e) {}

    var asumi = {
      minSize: 0,
      height: function() {
        var height = 0;
        var elements = Array.prototype.slice.call(document.querySelectorAll('div[id^="asumi"]'));
        for (var index = 0; elements.length !== index; index++) {
          if (elements[index].style.position === 'absolute') {
            height = Math.max(asumi.minSize, elements[index].offsetHeight, elements[index].clientHeight, elements[index].scrollHeight, height);
          }
        }

        return height === 0 ? null : height;
      }
    };

    var display = {
      isLandscape: function() {
        if (window.hasOwnProperty('orientation')) {
          return (window.orientation % 180 !== 0 || window.innerWidth > window.innerHeight);
        }

        return window.innerWidth > window.innerHeight;
      },
      margin: function() {
        if (/iPhone OS 9.+?/.test(navigator.userAgent) && window.hasOwnProperty('devicePixelRatio') && window.window.devicePixelRatio === 3 && window.innerHeight < 414 && window.innerHeight > 337) {
          return 44;
        } else if (window.innerHeight <= 337) {
          return 77;
        } else {
          return 0;
        }
      }
    };

    ///////////////////////////////// NINJA_CO_JP_ONETAG_BUTTON /////////////////////////////////
    if (typeof(w[ob]) == 'undefined') {
        w[ob] = {
            CKEY : CKEY,
            SITE : SITE,
            CLS : CLS,
            SOURCEKEY : SOURCEKEY,
            Recorder : function (type, o){
                if (o.classname != 'undefined') {
                    var head = o.classname = o.classname.split(" ")[0];
                    var cls = w[ob].CLS.split(":");
                    var matchflg = 0;
                    for (var i=0; i < cls.length; i++ ) {
                        if (head.split("_")[0] == cls[i]) {matchflg = 1; break;}
                    }
                    if (!matchflg) { return; }
                }
                o.type = type;
                var params = new Array();
                for (var i in o) {
                    params.push( i+"="+encodeURIComponent(o[i]) );
                }
                var url = w[ob].SITE + "l/" + w[ob].SOURCEKEY + "?" + params.join("&");
                var script = d.createElement('script');
                script.src = url;
                script.type = "text/javascript";
                script.defer = "defer";
                var e = d.getElementsByTagName("script")[0];
                e.parentNode.insertBefore(script, e);
            },
            analyzeHref: function(url){
                var anc = url.split("#");
                if (anc.length != 2) { return {original_url:url,ckey:""}; }
                return {original_url: anc[0],ckey:anc[1]};
            },
            checkView: function(){
                if (!ANLZ) {return;}
                var ckey = "";
                var original_url = "";
                var title = d.title;

                if (location.href.indexOf("fb_ref=") != -1) {
                    var parseQuery = function(s){
                        var ret = {};
                        var vs = s.split("&");
                        for (var i=0; i < vs.length; i++) {
                            var v = vs[i].split("=");
                            ret[v[0]] = decodeURIComponent(v[1]);
                        }
                        return ret;
                    };
                    var o = parseQuery(location.href.split("?")[1]);
                    if (typeof(o.fb_ref) != 'undefined') {
                        ckey = o.fb_ref.substr(1);
                        original_url = location.href;
                    }
                }else if (location.href.indexOf("#") != -1) {
                    var href = w[ob].analyzeHref(location.href);
                    original_url = href.original_url;
                    ckey = href.ckey;
                } else{
                    return;
                }
                if (ckey == "undefined" || ckey == "") {return;}
                var s = ckey.split("\.");
                if (s.length != 2 || s[0] == "" || s[0] == "undefined" || s[1] == "" || s[1] == "undefined") { return;}
                w[ob].Recorder("v", {url: original_url,title: title, ckey: s[0], classname: s[1]});
            },
            getCanonicalUrl: function() {
              var canonical = (function() {
                return Array.prototype.slice.call(document.getElementsByTagName('link')).filter(function(linkNode) {
                  return linkNode.getAttribute('rel') === 'canonical'
                });
              })()[0];

              switch (true) {
              case canonical === undefined:
                return null;
              case /^http/.test(canonical.getAttribute('href')):
                return canonical.getAttribute('href');
              case /^\/{2}/.test(canonical.getAttribute('href')):
                return window.location.protocol + canonical.getAttribute('href');
              }
            },
            getURL: function(url, className, isOriginlUrl) {
                var isOriginlUrl = typeof (isOriginlUrl) === 'undefined' ? false : isOriginlUrl;
                var original_url = w[ob].analyzeHref(url).original_url;
                var canonicalUrl;

                if (isOriginlUrl && useCanonical && (canonicalUrl = w[ob].getCanonicalUrl()) !== null) {
                  return canonicalUrl;
                } else if (useCanonical && (canonicalUrl = w[ob].getCanonicalUrl()) !== null) {
                  return !ANLZ ? canonicalUrl : canonicalUrl + "#" + CKEY + "." + className;
                }

                if (isOriginlUrl) {
                  return original_url;
                }

                return !ANLZ ? url : original_url + "#" + CKEY + "." + className;
            },
            getSnsShareURL: function(provider, url, title) {
              switch (provider) {
                case 'facebook':
                  return 'http://www.facebook.com/sharer/sharer.php?u='+ encodeURIComponent(url) +'&t=' + encodeURIComponent(title);
                case 'twitter':
                  return 'https://twitter.com/share?original_referer='+encodeURIComponent(url)+'&url='+encodeURIComponent(url)+'&text=' + encodeURIComponent(title) + '&source=tweetbutton';
                case 'hatena':
                  return 'https://b.hatena.ne.jp/add?url=' + encodeURIComponent(url);
                case 'google-plus':
                  return 'https://plus.google.com/share?url=' + encodeURIComponent(url);
                case 'mail':
                  return 'mailto:?subject='+encodeURIComponent(title)+'&body='+encodeURIComponent(title+"\n"+url);
                case 'pocket':
                  return 'https://getpocket.com/edit?url='+ url + '&title='+ title;
                case 'feedly':
                  
                  return null;
                  
                case 'tumblr':
                  return 'https://www.tumblr.com/widgets/share/tool?shareSource=legacy&url=' + encodeURIComponent(url);
                case 'line':
                  return 'http://line.me/R/msg/text/?'+ encodeURIComponent(title+"\n")+encodeURIComponent(url);
                default :
                  break;
              }
            },
            getNext : function(n){
                if (!n) return null;
                var y = n.nextSibling;
                while (y && (y.nodeType != 1)) {
                    y=y.nextSibling;
                }
                return y;
            },
            clicked: new Array(),
            processIFrameClick :function(e) {
                if(w[ob].activeDiv == null) { return; }

                try{
                    if (w[ob].activeDiv.tagName == 'undefined' || w[ob].activeDiv.tagName != "IFRAME") {
                        w[ob].activeDiv = document.activeElement;
                    }
                }catch(er){
                    w[ob].activeDiv = document.activeElement;
                }

                if (w[ob].activeDiv.tagName == 'undefined' || w[ob].activeDiv.tagName != "IFRAME") {
                    return;
                }

                for (var i=0;i < w[ob].clicked.length; i++) {
                    if (w[ob].clicked[i] === w[ob].activeDiv) {
                        return;
                    }
                }
                w[ob].clicked.push(w[ob].activeDiv);
                var i = 0;
                var parent = w[ob].activeDiv.parentNode || w[ob].activeDiv.parentElement;
                while(i < 5 && parent.getAttribute('data-onetagbutton') != "true") {
                    parent = parent.parentNode || parent.parentElement;
                    i++;
                }
                var url = parent.getAttribute('data-url');
                var title = parent.getAttribute('data-title');
                var cn = parent.className;
                w[ob].Recorder("c", {classname: cn.split(" ")[0], url: url,ckey: w[ob].CKEY, title: title});
            },
            getAttribute: function(e){
                return e.target || e.srcElement;
            },
            clickInterceptor : function () {
                if (!ANLZ) {return;}

                if (typeof window.attachEvent != 'undefined') {
                    top.attachEvent('onblur', w[ob].processIFrameClick);
                } else if (typeof window.addEventListener != 'undefined') {
                    top.addEventListener('blur', w[ob].processIFrameClick, false);
                }

                for (var tc=1; tc <= w[obsk]["ONETAGButton_Count"]; tc++) {
                    var obj = d.getElementById(obsk + "_" +tc);
                    if (!obj || tc > 50) {
                        break;
                    }
                    var url = location.href;
                    var title = d.title;
                    var urlObj = (function(current) {
                      while (current.parentNode !== null) {
                        var element = current.parentNode.querySelector('.ninja_onebutton > .ninja_onebutton_hidden');
                        if (element !== null) {
                          return element;
                        }
                        current = current.parentNode;
                      }
                    })(obj);

                    var titleObj = w[ob].getNext(urlObj);
                    if (urlObj && titleObj) {
                        if ((urlObj.innerHTML != '') && (titleObj.innerHTML != '') && (/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/.test(urlObj.innerHTML))) {
                            url = urlObj.innerHTML;
                            title = titleObj.innerHTML;
                        }
                    }
                    var elements = obj.childNodes;
                    for (var i=0; i < elements.length; i++) {
                        var cn = elements[i].className;
                        if(cn =='undefined' || !cn|| cn == null || cn == "ninja_onebutton_clear" || cn == "ninja_onebutton_ninja") {
                            continue;
                        }
                        elements[i].setAttribute("data-url", url);
                        elements[i].setAttribute("data-title", title);
                        elements[i].setAttribute("data-onetagbutton", "true");
                        w[ob].watchIframeLoaded(elements[i]);
                    }
                }
                for (var tc=1; tc <= w[obsk]["ONETAGButton_Count"]; tc++) {
                  var obj = document.getElementById('ninja_omatome_button_output_type_overlay');
                  if (!obj || tc > 50) {
                    break;
                  }
                  var url = location.href;
                  var title = d.title;
                  var urlObj = w[ob].getNext(obj);
                  var titleObj = w[ob].getNext(urlObj);
                  if (urlObj && titleObj) {
                    if ((urlObj.innerHTML != '') && (titleObj.innerHTML != '') && (/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/.test(urlObj.innerHTML))) {
                      url = urlObj.innerHTML;
                      title = titleObj.innerHTML;
                    }
                  }
                  var elements = obj.childNodes;
                  for (var i=0; i < elements.length; i++) {
                    var cn = elements[i].className;
                    if(cn =='undefined' || !cn|| cn == null || cn == "ninja_onebutton_clear" || cn == "ninja_onebutton_ninja") {
                      continue;
                    }
                    elements[i].setAttribute("data-url", url);
                    elements[i].setAttribute("data-title", title);
                    elements[i].setAttribute("data-onetagbutton", "true");
                    w[ob].watchIframeLoaded(elements[i]);
                  }
                }
            },
            watchIframeLoaded: function(element){
                var type = element.getAttribute('data-type');
                if (type != 'undefined' && type == 'iframe') {
                    var click_timer = null;
                    var check_num = 0;
                    var iframe = element.getElementsByTagName("iframe");
                    if (iframe.length > 0) {
                        w[ob].setClickInterceptor(element);
                    }else{
                        click_timer = setInterval(function() {
                            var iframe = element.getElementsByTagName("iframe");
                            check_num++;
                            if (iframe.length > 0) {
                                clearTimeout(click_timer);
                                w[ob].setClickInterceptor(element);
                            } else if (check_num>50) {
                                clearTimeout(click_timer);
                            }
                        }, 200);
                    }
                }else{
                    w[ob].setClickInterceptor(element);
                }
            },
            setClickInterceptor: function (element) {
                var type = element.getAttribute('data-type');
                if (type != 'undefined' && type == 'iframe') {
                    w[ob].iframeClickInterceptor(element);
                }else{
                    w[ob].divClickInterceptor(element);
                }
            },
            divClickInterceptor: function(element){
                var cn = element.className;
                var click_done = false;

                var frameClicker = function(evt) {
                    if (click_done) return;
                    click_done = true;
                    var obj = evt.target || evt.srcElement;
                    var i = 0;
                    while(i < 5 && obj.getAttribute('data-onetagbutton') != "true") {
                        obj = obj.parentNode || obj.parentElement;
                        i++;
                    }
                    var url = obj.getAttribute('data-url');
                    var title = obj.getAttribute('data-title');
                    w[ob].Recorder("c", {classname: cn, url: url,ckey: w[ob].CKEY, title: title});
                }

                if (w.addEventListener) {
                    element.addEventListener("click", frameClicker, false);
                }else if (w.attachEvent) {
                    element.attachEvent("onclick", frameClicker);
                }
            },
            activeDiv : null,
            iframeClickInterceptor: function(element) {
                var className = element.className;
                var iframe = element.getElementsByTagName("iframe");
                var ninja_frame = iframe[0];
                var iframeMouseOut = function(e) {
                    w[ob].activeDiv = null;
                    top.focus();
                };
                var iframeMouseOver = function(e) {
                    w[ob].activeDiv = this;
                    var obj = e.target || e.srcElement;;
                    var i = 0;
                    while(i < 5 && obj.getAttribute('data-onetagbutton') != "true") {
                        obj = obj.parentNode || obj.parentElement;
                        i++;
                    }
                    var cn = obj.className;
                };

                if (w.addEventListener) {
                    ninja_frame.addEventListener("mouseover", iframeMouseOver, false);
                    ninja_frame.addEventListener("mouseout", iframeMouseOut, false);
                }else if (w.attachEvent) {
                    ninja_frame.attachEvent("onmouseover", iframeMouseOver);
                    ninja_frame.attachEvent("onmouseout", iframeMouseOut);
                }
            },

            clickShareInterceptor :function(className, url, title){
                if (!ANLZ) {return;}
                w[ob].Recorder("c", {classname:className,url:url,ckey:w[ob].CKEY,title:title});
                return true;
            },
            clickSmartInterceptor :function(obj){
                if (!ANLZ) {return;}
                w[ob].Recorder("c", {classname: obj.getAttribute("data-class"),url: obj.getAttribute("data-url"),ckey:w[ob].CKEY,title: obj.getAttribute("data-title")});
                return true;
            },
            ONETAGButton_Tag : new Array(),
            ONETAGButton_RunFlg : false,
            ONETAGButton_Output : function () {
                if (w[ob].ONETAGButton_RunFlg) {
                    return;
                }

                w[ob].ONETAGButton_RunFlg = true;
                w[ob].checkView();
                for (var i = 0; i< w[ob].ONETAGButton_Tag.length; i++) {
                    if (w[w[ob].ONETAGButton_Tag[i]]) {
                        w[w[ob].ONETAGButton_Tag[i]].ONETAGButton_Pre();
                    }
                }
                for (var i = 0; i< w[ob].ONETAGButton_Tag.length; i++) {
                    if (w[w[ob].ONETAGButton_Tag[i]]) {
                        w[w[ob].ONETAGButton_Tag[i]].ONETAGButton_Render();
                    }
                }
                for (var i = 0; i< w[ob].ONETAGButton_Tag.length; i++) {
                    if (w[w[ob].ONETAGButton_Tag[i]]) {
                        w[w[ob].ONETAGButton_Tag[i]].ONETAGButton_Post();
                    }
                }
                w[ob].clickInterceptor();
            }
        };
        ///////////////////////////////// NINJA_CO_JP_ONETAG_BUTTON /////////////////////////////////

        if (d.addEventListener) {
            w[ob].u = function (){
                d.removeEventListener("DOMContentLoaded", w[ob].u, false);
                w[ob].ONETAGButton_Output();
            };
        } else if (d.attachEvent) {
            w[ob].u = function () {
                if (d.readyState === "complete") {
                    d.detachEvent("onreadystatechange", w[ob].u);
                    w[ob].ONETAGButton_Output();
                }
            };
        }

        w[ob].a = function () {
            if (d.readyState !== "complete") {
                try {
                    d.documentElement.doScroll("left")
                } catch (j) {
                    setTimeout(w[ob].a, 64);
                    return
                }
                d.detachEvent("onreadystatechange", w[ob].u);
                w[ob].ONETAGButton_Output();
            }
        }

        if (d.readyState === "complete") {
            w[ob].ONETAGButton_Output();
        }
        if (d.addEventListener) {
            d.addEventListener("DOMContentLoaded", w[ob].u, false);
        } else if (window.document.attachEvent) {
            d.attachEvent("onreadystatechange", w[ob].u);
            w[ob].a();
        }

    };

    ///////////////////////////////// NINJA_CO_JP_ONETAG_BUTTON+SOURCEKEY /////////////////////////////////
    if (typeof(w[obsk]) == 'undefined') {
        w[ob].ONETAGButton_Tag.push(obsk);
        w[obsk] = {
            ONETAGButton_Count : 0,
            LoadJsonp: function(url,provider,domobj){
                var t = new Date();
                var tm = t.getTime() +""+ t.getMilliseconds();
                var script = document.createElement("script");
                var api = null;
                var identifier = null;
                var objName = null;
                switch (provider) {
                case 'facebook':
                  identifier = "NT"+CKEY+"OMT_FBCB" + crc32(encodeURIComponent(url));
                  objName = "share.share_count";
                  api = "//graph.facebook.com/" + encodeURIComponent(url) + "?callback=window." + identifier + "&_=" + tm;
                  break;
                case 'hatena':
                  identifier = "NT"+CKEY+"OMT_HTCB" + crc32(encodeURIComponent(url));
                  objName = "count";
                  api = "//b.hatena.ne.jp/entry/jsonlite/?callback=window." + identifier + "&url=" + encodeURIComponent(url) + "&_=" + tm;
                  break;
                case 'feedly':
                  identifier = "NT_OMT_FDLY" + crc32(encodeURIComponent(url));
                  objName = "subscribers";
                  api = '//ajax-proxy.shinobi.jp/feedly/v3/feed?format=json&callback=window.' + identifier +'&url=' + encodeURIComponent(url);
                  break;
                }

                if (typeof(w[identifier]) === 'undefined') {
                    w[identifier] = function(obj) {
                      var count = 0;
                      switch (objName) {
                      case 'share.share_count':
                        if (typeof(obj) !== 'undefined' && obj !== null && typeof (obj.share) !== 'undefined' && typeof(obj.share.share_count) !== 'undefined') {
                          count += obj.share.share_count;
                        }
                        break;

                      case 'subscribers':
                        if (typeof(obj) !== 'undefined' && obj !== null && typeof(obj.subscribers) !== 'undefined') {
                          count = obj.subscribers;
                        }
                        break;

                      default:
                        if (typeof(obj) !== 'undefined' && obj !== null && typeof(obj[objName]) !== 'undefined') {
                          count = obj[objName];
                        }
                      }

                      if (typeof(domobj.getElementsByClassName("count")[0]) !== 'undefined' && domobj.getElementsByClassName("count")[0].childNodes[2].nodeName == "#text") {
                        domobj.getElementsByClassName("count")[0].childNodes[2].nodeValue = count;
                      } else if (typeof(domobj.getElementsByClassName("count_responsive")[0]) !== 'undefined' && domobj.getElementsByClassName("count_responsive")[0].childNodes[0].nodeName == "#text") {
                        domobj.getElementsByClassName("count_responsive")[0].childNodes[0].nodeValue = count;
                      } else if (typeof(domobj.getElementsByClassName("count_responsive_br")[0]) && domobj.getElementsByClassName("count_responsive_br")[0].childNodes[0].nodeName == "#text") {
                        domobj.getElementsByClassName("count_responsive_br")[0].childNodes[0].nodeValue = count;
                      }

                      eval("window."+identifier + "=" + count + ";");
                    }
                } else {
                    var check_num = 0;
                    var click_timer = setInterval(function() {
                        check_num++;
                        if (typeof(w[identifier]) != "function") {
                            clearTimeout(click_timer);
                            if (typeof(domobj.getElementsByClassName("count")[0]) !== 'undefined' && domobj.getElementsByClassName("count")[0].childNodes[2].nodeName == "#text") {
                                domobj.getElementsByClassName("count")[0].childNodes[2].nodeValue = w[identifier];
                            } else if (typeof(domobj.getElementsByClassName("count_responsive")[0]) !== 'undefined' && domobj.getElementsByClassName("count_responsive")[0].childNodes[0].nodeName == "#text") {
                                domobj.getElementsByClassName("count_responsive")[0].childNodes[0].nodeValue = w[identifier];
                            } else if (typeof(domobj.getElementsByClassName("count_responsive_br")[0]) !== 'undefined' && domobj.getElementsByClassName("count_responsive_br")[0].childNodes[0].nodeName == "#text") {
                                domobj.getElementsByClassName("count_responsive_br")[0].childNodes[0].nodeValue = w[identifier];
                            }
                            return;
                        } else if (check_num>200) {
                            clearTimeout(click_timer);
                        }
                    }, 50);
                    return;

                }

                script.src = api;
                script.type = "text/javascript";
                script.defer = "defer";
                var target = document.getElementsByTagName("script")[0];
                target.parentNode.insertBefore(script, target);
            },

            ONETAGButton_Load:function() {

                w[obsk].ONETAGButton_Count ++;
                
                
                    d.write('<div id="'+obsk+'_'+w[obsk].ONETAGButton_Count+'" class="ninja_onebutton_output_responsive"></div>');
                

            },
            ONETAGButton_Render:function() {
                for (var tc=1; tc <= w[obsk].ONETAGButton_Count; tc++) {
                    var obj = d.getElementById(obsk + "_" +tc);

                    if (!obj || tc > 50) {
                        break;
                    }

                    var url = location.href;
                    var title = d.title;
                    var urlObj = (function(current) {
                      while (current.parentNode !== null) {
                        var element = current.parentNode.querySelector('.ninja_onebutton > .ninja_onebutton_hidden');
                        if (element !== null) {
                          return element;
                        }
                        current = current.parentNode;
                      }
                    })(obj);
                    var titleObj = getNext(urlObj);

                    if (urlObj && titleObj) {
                        if ((urlObj.innerHTML != '') && (titleObj.innerHTML != '') && (/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/.test(urlObj.innerHTML))) {
                            url = urlObj.innerHTML.replace(/(^[\s　]+)|([\s　]+$)/g, "");
                            title = titleObj.innerHTML.replace(/(^[\s　]+)|([\s　]+$)/g, "");
                        }
                    }

                    
                        
                            
                              (function(url, absoluteUrl, obj, title, original_url, lang) {
                                
(function(className, original_url, title){
  var ele = document.createElement('div');
  var url = w[ob].getURL(original_url, 'twitter_responsive');
  ele.className = "twitter_responsive twitter" +className;
  ele.onclick = function(url, title) {
    return function() {
      window.open(w[ob].getSnsShareURL('twitter', url, title), "_blank", "width=550,height=450", false);
    }
  }(url, title);
  obj.appendChild(ele);
}(buttonClassName, original_url, title));

                              })(
                                 w[ob].getURL(url, "twitter_responsive"),
                                 w[ob].getURL(url, "twitter_responsive", true),
                                 obj,
                                 title,
                                 url,
                                 getLanguage()
                              );
                            
                              (function(url, absoluteUrl, obj, title, original_url, lang) {
                                
(function(className, original_url, title){
  var ele = document.createElement('div');
  var url = w[ob].getURL(original_url, 'facebook_responsive');
  ele.className = "facebook_responsive facebook" + className;
  ele.onclick = function(url, title){
    return function(){
      window.open(w[ob].getSnsShareURL('facebook', url, title), "_blank", "width=550,height=450", false);
    }
  }(url, title);
  obj.appendChild(ele);
}(buttonClassName, original_url, title));
                              })(
                                 w[ob].getURL(url, "facebook_responsive"),
                                 w[ob].getURL(url, "facebook_responsive", true),
                                 obj,
                                 title,
                                 url,
                                 getLanguage()
                              );
                            
                              (function(url, absoluteUrl, obj, title, original_url, lang) {
                                
(function(className){
  var ele = document.createElement('div');
  var url = w[ob].getURL(original_url, 'facebook_responsive');
  ele.className = "hatena_responsive hatena" + className;
  ele.onclick = function(url, title) {
    return function() {
      window.open(w[ob].getSnsShareURL('hatena', url, title), "_blank", "width=700,height=600", false);
    }
  }(url, title);
  obj.appendChild(ele);
}(buttonClassName,  original_url, title));
                              })(
                                 w[ob].getURL(url, "hatena_responsive"),
                                 w[ob].getURL(url, "hatena_responsive", true),
                                 obj,
                                 title,
                                 url,
                                 getLanguage()
                              );
                            
                              (function(url, absoluteUrl, obj, title, original_url, lang) {
                                
(function(className, original_url, title){
  var ele = document.createElement('a');
  var url = w[ob].getURL(original_url, 'line_responsive');
  ele.href = w[ob].getSnsShareURL('line', url, title);
  ele.className = "line_responsive line" + className;
  ele.target = '_blank';
  obj.appendChild(ele);
}(buttonClassName, original_url, title));
                              })(
                                 w[ob].getURL(url, "line_responsive"),
                                 w[ob].getURL(url, "line_responsive", true),
                                 obj,
                                 title,
                                 url,
                                 getLanguage()
                              );
                            
                              (function(url, absoluteUrl, obj, title, original_url, lang) {
                                
(function(className, original_url, title){
  var ele = document.createElement('div');
  var url = w[ob].getURL(original_url, 'google_plusone_responsive');
  ele.className = "google_plusone_responsive google-plus" +className;
  ele.onclick = function(url, title) {
    return function() {
      window.open(w[ob].getSnsShareURL('google-plus', url, title), "_blank", "width=550,height=450", false);
    }
  }(url, title);
  obj.appendChild(ele);
}(buttonClassName, original_url, title));
                              })(
                                 w[ob].getURL(url, "google_plusone_responsive"),
                                 w[ob].getURL(url, "google_plusone_responsive", true),
                                 obj,
                                 title,
                                 url,
                                 getLanguage()
                              );
                            
                              (function(url, absoluteUrl, obj, title, original_url, lang) {
                                

(function(){
  var ele = document.createElement('div');
  var span = getAppendElement('ninja_responsive_text', 'text');
  ele.onclick = function(event) {
    window.NINJA_CO_JP_ONETAG_BUTTON.NINJA_SHARE_MOUSE_OVER(this, event)
  };

  ele.appendChild(span);
  ele.className = "ninja_responsive_text omt_share onebtn_responsive_large text";
  ele.setAttribute("data-sort",'5');
  obj.appendChild(ele);
}());
                              })(
                                 w[ob].getURL(url, "ninja_responsive_text"),
                                 w[ob].getURL(url, "ninja_responsive_text", true),
                                 obj,
                                 title,
                                 url,
                                 getLanguage()
                              );
                            
                        
                    

                  
                }
            },
            ONETAGButton_Pre:function() {
                
                    
                        


window.NINJA_CO_JP_ONETAG_BUTTON = window.NINJA_CO_JP_ONETAG_BUTTON || {};
window.NINJA_CO_JP_ONETAG_BUTTON.NINJA_SHARE_MOUSE_OVER = window.NINJA_CO_JP_ONETAG_BUTTON.NINJA_SHARE_MOUSE_OVER || (function (obj, e) {
  var isResponsive = (obj.className.indexOf('responsive') !== -1);
  var isOverlay = (obj.className.indexOf('overlay') !== -1);
  var imgWidth = 0;
  var imgHeight = 0;
  if (obj.firstChild !== null) {
    imgWidth = obj.firstChild.clientWidth;
    imgHeight = obj.firstChild.clientHeight;
  }

  var pageHeight = Math.max(document.body.clientHeight, document.body.scrollHeight);
  var pageWidth = Math.max(document.body.clientWidth, document.body.scrollWidth);
  var body_pos = {
    top: 0,
    left: 0
  };

  if ((window.getComputedStyle !== undefined ? document.defaultView.getComputedStyle(document.body, null) : document.body.currentStyle).position === 'relative') {
    body_pos = getElementPosition(document.body);
  }

  var position = {
    top: getElementPosition(obj).top + imgHeight - body_pos.top,
    left: getElementPosition(obj).left - body_pos.left,
    width:0,
    height:0
  };

  var sort_id;
  var tag_id;

  if (isResponsive) {
    position.width = 170;
    position.height = 260;
    sort_id = obj.getAttribute('data-sort');
    tag_id = obj.parentNode.getAttribute('id');

    // レスポンシブボタンの表示位置の計算を行う
    // Windowサイズよりボタン表示予定位置とボタンの大きさを足した大きさがWindowサイズを超えていた場合は画面に沿わせるように表示させる

    position.left = (obj.getBoundingClientRect().left + position.width) > pageWidth
        ? obj.getBoundingClientRect().left - ((obj.getBoundingClientRect().left + position.width) - pageWidth)
        : obj.getBoundingClientRect().left;

    // シェアボタン表示位置のbottomよりボタンがでるように調整
    var scrollY = document.documentElement.scrollTop || document.body.scrollTop;
    position.top = ((obj.scrollTop + scrollY + position.height) > pageHeight)
        ? (obj.getBoundingClientRect().bottom + scrollY) - position.height
        : obj.getBoundingClientRect().bottom + scrollY;
  } else if (isOverlay) {
    position.width = 250;
    position.left = (obj.getBoundingClientRect().left + position.width) > pageWidth
        ? obj.getBoundingClientRect().left - ((obj.getBoundingClientRect().left + position.width) - pageWidth)
        : obj.getBoundingClientRect().left;
    sort_id = obj.getAttribute('data-sort');
    tag_id = obj.getAttribute('data-sourceKey');
    var view_position = obj.getAttribute('data-ovarlay-designype');

  } else {

    position.width = 344;
    position.height = 300;
    sort_id = obj.parentNode.getAttribute('sort');
    tag_id = obj.parentNode.parentNode.getAttribute('id');
    // 通常のボタンの表示位置の計算を行う
    if ((position.left + position.width) > pageWidth) {
      position.left = position.left - position.width + imgWidth - 2;
    }
    if ((position.top + position.height) > pageHeight) {
      position.top = position.top - position.height - imgHeight - 2;
    }
  }
  tag_id = tag_id.substr(26, 32);
  if (tag_id.length !== 32 || obj.parentNode.parentNode === null) {
    return;
  }

  var url = location.href;
  var title = document.title;
  var urlObj = (function(current) {
    while (current.parentNode !== null) {
      var element = current.parentNode.querySelector('.ninja_onebutton > .ninja_onebutton_hidden');
      if (element !== null) {
        return element;
      }
      current = current.parentNode;
    }
  })(obj);

  var titleObj = getNext(urlObj);
  if (urlObj !== null && titleObj !== null && urlObj.innerHTML !== '' && titleObj.innerHTML !== '' && /^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/.test(urlObj.innerHTML)) {
    url = urlObj.innerHTML;
    title = titleObj.innerHTML;
  }

  var share_obj_id;

  share_obj_id  = !isOverlay ? 'ninja_button_share_' + tag_id + '_' + sort_id + '-inline' : 'ninja_button_share_' + tag_id + '_' + sort_id + '-overlay';
  clearTimeout(window.NINJA_CO_JP_ONETAG_BUTTON['NINJA_SHARE_MOUSE_OUT_TIMER_' + share_obj_id]);

  var share_button = document.getElementById(share_obj_id);
  // すでにボタン要素がある場合
  if (share_button !== null) {
    share_button.style.display = 'block';
    share_button.style.left = position.left + 'px';
    if (isOverlay) {
      var margin = Math.max(asumi.height(), 0);
      switch (view_position) {
        case '0':
          var tabMargin = 0;
          if (/iPhone OS 9.+?/.test(navigator.userAgent) && window.hasOwnProperty('devicePixelRatio') && window.window.devicePixelRatio === 3 && window.innerHeight < 414 && window.innerHeight > 337) {
            tabMargin = 44;
          } else if (/iPhone OS 9.+?/.test(navigator.userAgent)  && window.hasOwnProperty('devicePixelRatio') && window.window.devicePixelRatio === 3 && window.innerHeight <= 337) {
            tabMargin = 77;
          }
          share_button.style.bottom = -(window.scrollY - obj.clientHeight - tabMargin - margin) + 'px';
          break;
        case '1':
          share_button.style.top = + (window.scrollY + obj.clientHeight + margin) + 'px';
          break;
      }
    } else {
      share_button.style.top = position.top + 'px';
      share_button.setAttribute('data-href', url);
      share_button.setAttribute('data-title', title);
    }

  } else {
    var ele = document.createElement('div');
    ele.setAttribute('id', share_obj_id);
    ele.setAttribute('data-href', url);
    ele.setAttribute('data-title', title);

    if (isResponsive) {
      ele.setAttribute('data-layoutype', '1');
    } else if (isOverlay) {
      ele.setAttribute('data-layoutype', 'overlay');
    } else {
      ele.setAttribute('data-layoutype', '0');
    }
    ele.style.cssText = 'position: absolute; display:block;background-color:#fff;z-index:10350002;';
    ele.style.width = position.width + 'px';
    ele.className = 'ninja_omatome_box';
    ele.style.top = position.top + 'px';
    ele.style.left =  position.left + 'px';
    if (isResponsive) {
      document.addEventListener('click', function (event) {
        if (event.target !== ele && event.target.className !== 'share_close' && event.target.className.indexOf('share_text') === -1 && event.target.className.indexOf('responsive') === -1) {
          ele.style.display = 'none';
        }
      }, false);
      ele.style.boxShadow = '0px 5px 10px 0px rgba(50, 50, 50, 0.14)';
      ele.style.border = 'none';
      ele.style.overflow = 'visible';
      ele.style.height = 'auto';

    } else if (isOverlay) {
      ele.style.position = 'absolute';
      ele.style.zIndex = '1';
      ele.style.width = position.width + 'px';
      ele.style.left = position.left + 'px';
      ele.style.boxShadow = '0px 5px 10px 0px rgba(50, 50, 50, 0.14)';
      ele.style.border = 'none';
      ele.style.overflow = 'visible';
      ele.style.backgroundColor = '#fff';
      ele.style.top = 'initial';

      var margin = Math.max(asumi.height(), 0);
      switch (view_position) {
        case '0':
          var tabMargin = 0;
          if (/iPhone OS 9.+?/.test(navigator.userAgent) && window.hasOwnProperty('devicePixelRatio') && window.window.devicePixelRatio === 3 && window.innerHeight < 414 && window.innerHeight > 337 && display.isLandscape()) {
            tabMargin = 44;
          } else if (/iPhone OS 9.+?/.test(navigator.userAgent)  && window.hasOwnProperty('devicePixelRatio') && window.window.devicePixelRatio === 3 && window.innerHeight <= 337 && display.isLandscape()) {
            tabMargin = 77;
          }

          ele.style.bottom = -(window.scrollY - obj.clientHeight - tabMargin - margin) + 'px';
          break;
        case '1':
          ele.style.top = + (window.scrollY + obj.clientHeight + margin) + 'px';
          break;
      }

      document.addEventListener('click', function (event) {
        if (event.target !== ele && event.target.className.indexOf('overlay') === -1 && event.target.className.indexOf('ninja') === -1) {
          ele.style.display = 'none';
        }
      }, false);

      var onResize = function() {
        ele.style.display = 'none';
      };

      window.addEventListener('resize', onResize, false);
      window.addEventListener('orientationchange', onResize, false);
      var moveTimer;
      var displayPosition = -1;
      document.addEventListener('touchmove', function (event) {
        displayPosition = window.pageYOffset;
        clearTimeout(moveTimer);
        setTimeout(function() {
          if (displayPosition > (window.pageYOffset + 50) || (displayPosition +50 ) < window.pageYOffset) {
            ele.style.display = 'none';
          }
        }, 100);
      }, false);


    } else {
      ele.style.height = position.height + 'px';
      ele.style.border = '1px solid #ccc';
      ele.onmouseover = function (event) {
        clearTimeout(window.NINJA_CO_JP_ONETAG_BUTTON['NINJA_SHARE_MOUSE_OUT_TIMER_' + share_obj_id]);
        this.style.display = 'block';
      };
      ele.onmouseout = function (event) {
        window.NINJA_CO_JP_ONETAG_BUTTON['NINJA_SHARE_MOUSE_OUT_TIMER_' + share_obj_id] = setTimeout(function () {
          var share_obj = document.getElementById(share_obj_id);
          share_obj.style.display = 'none';
        }, 500);
      };
    }


    var scriptElement = document.createElement('script');
    scriptElement.type = 'text/javascript';
    scriptElement.async = true;
    scriptElement.charset = 'UTF-8';
    if (isOverlay) {
      document.body.insertBefore(ele, document.body.firstChild);
      scriptElement.src = '//omt.shinobi.jp/' + 's/' + tag_id + '_' + sort_id + '-overlay';
    } else {
      document.body.appendChild(ele);
      scriptElement.src = '//omt.shinobi.jp/' + 's/' + tag_id + '_' + sort_id + '-inline';
    }
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(scriptElement, s);
  }
});

window.NINJA_CO_JP_ONETAG_BUTTON.NINJA_SHARE_MOUSE_OUT = window.NINJA_CO_JP_ONETAG_BUTTON.NINJA_SHARE_MOUSE_OUT || (function (obj, e) {
  if (obj.parentNode && obj.parentNode.parentNode) {
    var tag_id = obj.parentNode.parentNode.getAttribute("id") === null ? obj.parentNode.getAttribute("id") : obj.parentNode.parentNode.getAttribute("id");
    tag_id = tag_id.substr(26, 32);
    if (tag_id.length != 32) {
      return;
    }
    var sort_id;
    sort_id = obj.parentNode.getAttribute("sort") === null ? obj.getAttribute("sort") : obj.parentNode.getAttribute("sort");
    var share_obj_id = 'ninja_button_share_' + tag_id + '_' + sort_id;
    var share_obj = document.getElementById(share_obj_id);
    if (share_obj !== null) {
      window.NINJA_CO_JP_ONETAG_BUTTON['NINJA_SHARE_MOUSE_OUT_TIMER_' + share_obj_id] = setTimeout( function() {
        var share_obj = document.getElementById(share_obj_id);
        share_obj.style.display = "none";
      }, 500);
    }
  }
});


window.NINJA_CO_JP_ONETAG_BUTTON.NINJA_SHARE_CLOSE = window.NINJA_CO_JP_ONETAG_BUTTON.NINJA_SHARE_CLOSE || (function (sorcekey, sort) {
  var share_obj = document.getElementById('ninja_button_share_'+ sorcekey +'_' + sort +'-inline') !== null
                ? document.getElementById('ninja_button_share_'+ sorcekey +'_' + sort + '-inline')
                : document.getElementById('ninja_button_share_'+ sorcekey +'_' + sort + '-overlay');
  if (share_obj !== null) {
    share_obj.style.display = "none";
  }
});

                    
                
            },
            ONETAGButton_Post:function() {
                
                    
                        
(function(className, buttonIdsCount) {
  function adjustment(element) {
    var buttonCount = element.children.length;
    var offsetWidth = (element.offsetWidth / buttonCount);
    var clientWidth = (element.clientWidth / buttonCount);
    var scrollWidth = (element.scrollWidth / buttonCount);
    var textElements = element.getElementsByClassName('share_text').length === 0 ?
        Array.prototype.slice.call(element.getElementsByClassName('share_text_br')) : Array.prototype.slice.call(element.getElementsByClassName('share_text'));

    if (offsetWidth <= 119 || clientWidth <= 119 || scrollWidth <= 119) {
      textElements.forEach(function (text) {
        text.style.display = 'block';
        text.className = 'share_text_br';
      });

      if (offsetWidth <= 58 || clientWidth <= 58 || scrollWidth <= 58) {
        textElements.forEach(function (text) {
          text.style.display = 'none';
          text.style.padding = 0;
          text.style.margin = 0;
        });
      }
    } else {
      textElements.forEach(function (text) {
        text.className = 'share_text';
        text.style.display = 'inline';
      });
    }
  }
  function sendEvent() {
    for (var index = buttonIdsCount; index !== 0; index--) {
      adjustment(document.getElementById(obsk + "_" + index));
    }
  }

  window.addEventListener('load', function() {
    sendEvent();
  }, false);

  var waitTimer;
  window.addEventListener('orientationchange', function () {
    clearTimeout(waitTimer);
    waitTimer = setTimeout(sendEvent, 100);
  }, false);

  var resizeTimer;
  window.addEventListener('resize', function () {
    clearTimeout(resizeTimer);
    resizeTimer = setTimeout(sendEvent, 100);
  }, false);

}(buttonClassName, w[obsk].ONETAGButton_Count));


                    
                
            },


            ONETAGButton_Overlay:function() {
                //スマホ設定
              if (!isSmartPhone) {
                return ;
              }
                window.NINJA_CO_JP_ONETAG_BUTTON_SMART = "4";
                
                  if (document.getElementById('ninja_omatome_button_output_type_overlay') !== null) {
                    //すでに表示済み
                    return ;
                  }
                  var borderClasname;
                  switch (0) {
                    case 0 :
                      borderClasname = 'bottom';
                      break;
                    case 1 :
                      borderClasname = 'top';
                      break;
                  }

                  document.write('<div id="ninja_omatome_button_output_type_overlay" class="ninja_onebutton_output_overlay '+ borderClasname + '"></div>');
                  var containerElement = document.getElementById('ninja_omatome_button_output_type_overlay');


                  //古いAndroidはfixedが動かないためabsoluteで対応
                  //iOS9のiPhone6*Plusはタブバーが表示されるとelementの位置計算がおかしくなるためabsoluteで対応
                  if ((/Android 2.[0-3].+?[0-9].*?/.test(navigator.userAgent) || (/iPhone OS 9.+?/.test(navigator.userAgent) && window.hasOwnProperty('devicePixelRatio') && window.devicePixelRatio === 3)) && !/CriOS/.test(navigator.userAgent)) {
                    containerElement.style.position = 'absolute';
                    document.body.insertBefore(containerElement, document.body.firstChild);
                  }

                  var url = location.href;
                  var title = document.title;
                  var buttonClassName;
                  if (window.NINJA_CO_JP_ONETAG_BUTTON_SMART === '4') {
                    buttonClassName = ' onebtn_overlay_sp';
                  }

                  var overlayEventType = 0;
                  var overlayDesignType = 0;
                  switch (overlayDesignType) {
                    case 0 :
                      buttonClassName += ' bottom';
                      break;
                    case 1 :
                      buttonClassName += ' top';
                      break;
                  }
                  switch (overlayEventType) {
                    case 0 :
                      buttonClassName += ' static';
                      break;
                    case 1 :
                      buttonClassName += ' scroll';
                      break;
                    case 2 :
                      buttonClassName += ' tag_positon';
                      break;
                    case 3 :
                      buttonClassName += ' user_percent';
                      break;
                  }
                  var overlayAnimetionType = 0;
                  
                      (function(url, absoluteUrl, obj, title, original_url, buttonClassName) {
                        
(function(className, original_url, title){
  var ele = document.createElement('div');
  var url = w[ob].getURL(original_url, 'twitter_overlay');
  ele.className = "twitter_overlay twitter" +className;
  ele.onclick = function(url, title) {
    return function() {
      window.open(w[ob].getSnsShareURL('twitter', url, title), "_blank", "width=550,height=450", false);
    }
  }(url, title);
  obj.appendChild(ele);
}(buttonClassName, original_url, title));

                      })(
                        w[ob].getURL(url, "twitter_overlay"),
                        w[ob].getURL(url, "twitter_overlay", true),
                        containerElement,
                        title,
                        url,
                        buttonClassName
                      );
                  
                      (function(url, absoluteUrl, obj, title, original_url, buttonClassName) {
                        
(function(className, original_url, title){
  var ele = document.createElement('div');
  var url = w[ob].getURL(original_url, 'facebook_overlay');
  ele.className = "facebook_overlay facebook" + className;
  ele.onclick = function(url, title){
    return function(){
      window.open(w[ob].getSnsShareURL('facebook', url, title), "_blank", "width=550,height=450", false);
    }
  }(url, title);
  obj.appendChild(ele);
}(buttonClassName, original_url, title));
                      })(
                        w[ob].getURL(url, "facebook_overlay"),
                        w[ob].getURL(url, "facebook_overlay", true),
                        containerElement,
                        title,
                        url,
                        buttonClassName
                      );
                  
                      (function(url, absoluteUrl, obj, title, original_url, buttonClassName) {
                        
(function(className){
  var ele = document.createElement('div');
  var url = w[ob].getURL(original_url, 'hatena_overlay');
  ele.className = "hatena_overlay hatena" + className;
  ele.onclick = function(url, title) {
    return function() {
      window.open(w[ob].getSnsShareURL('hatena', url, title), "_blank", "width=700,height=600", false);
    }
  }(url, title);
  obj.appendChild(ele);
}(buttonClassName,  original_url, title));
                      })(
                        w[ob].getURL(url, "hatena_overlay"),
                        w[ob].getURL(url, "hatena_overlay", true),
                        containerElement,
                        title,
                        url,
                        buttonClassName
                      );
                  
                      (function(url, absoluteUrl, obj, title, original_url, buttonClassName) {
                        
(function(className, original_url, title){
  var ele = document.createElement('a');
  var url = w[ob].getURL(original_url, 'line_overlay');
  ele.href = w[ob].getSnsShareURL('line', url, title);
  ele.className = "line_overlay line" + className;
  ele.target = '_blank';
  obj.appendChild(ele);
}(buttonClassName, original_url, title));
                      })(
                        w[ob].getURL(url, "line_overlay"),
                        w[ob].getURL(url, "line_overlay", true),
                        containerElement,
                        title,
                        url,
                        buttonClassName
                      );
                  
                      (function(url, absoluteUrl, obj, title, original_url, buttonClassName) {
                        
(function(className, original_url, title){
  var ele = document.createElement('div');
  var url = w[ob].getURL(original_url, 'google_plusone_overlay');
  ele.className = "google_plusone_overlay google-plus" +className;
  ele.onclick = function(url, title) {
    return function() {
      window.open(w[ob].getSnsShareURL('google-plus', url, title), "_blank", "width=550,height=450", false);
    }
  }(url, title);
  obj.appendChild(ele);
}(buttonClassName, original_url, title));
                      })(
                        w[ob].getURL(url, "google_plusone_overlay"),
                        w[ob].getURL(url, "google_plusone_overlay", true),
                        containerElement,
                        title,
                        url,
                        buttonClassName
                      );
                  
                      (function(url, absoluteUrl, obj, title, original_url, buttonClassName) {
                        

(function(className){
  var ele = document.createElement('div');

  ele.onclick = function(event) {
    window.NINJA_CO_JP_ONETAG_BUTTON.NINJA_SHARE_MOUSE_OVER(this, event);
  };

  ele.className = "ninja_overlay omt_share" + className;
  ele.setAttribute("data-sourceKey", obsk);
  ele.setAttribute("data-sort",'5');
  ele.setAttribute("data-ovarlay-designype", 0);
  obj.appendChild(ele);
}(buttonClassName));
                      })(
                        w[ob].getURL(url, "ninja_overlay"),
                        w[ob].getURL(url, "ninja_overlay", true),
                        containerElement,
                        title,
                        url,
                        buttonClassName
                      );
                  
                  var overlayButton = {
                    margin: 90,
                    size: 50, // 50px * 50px
                    landscapeSourceValue: 25,
                    maxFontSize: 12,
                    designType: {
                      bottom: 0,
                      top: 1
                    },
                    eventType: {
                      always: 0, // 常時表示
                      scrollUp: 1, // 上スクロール時
                      tagPosition: 2, //インラインタグ位置
                      specified: 3 // ユーザー定義
                    },
                    animetionType: {
                      none: 0,
                      slideIn: 1,
                      fadeIn: 2
                    },
                    inAnimetion: false,
                    showWait: false,
                    showStatus: false,
                    devideLandscape: undefined,
                    asumiWait: false,
                    //古いAndroidはfixedが動かないためabsoluteで対応
                    //iOS9のiPhone6*Plusはタブバーが表示されるとelementの位置計算がおかしくなるためabsoluteで対応
                    isAbsoluteElements: (/Android 2.[0-3].+?[0-9].*?/.test(navigator.userAgent) || (/iPhone OS 9.+?/.test(navigator.userAgent) && window.hasOwnProperty('devicePixelRatio') && window.devicePixelRatio === 3)) && !/CriOS/.test(navigator.userAgent),
                    userSpecifiedMargin: 0,
                    asumiMargin: asumi.height(),
                    elements: Array.prototype.slice.call(containerElement.getElementsByClassName('onebtn_overlay_sp')),
                    userScrolledHeight: function() {
                      return Math.max(window.pageYOffset, document.documentElement.scrollTop, document.body.scrollTop);
                    },
                    pageContentsHeight: function() {
                      return Math.max(document.body.offsetTop, document.body.clientHeight, document.body.scrollHeight);
                    },
                    classList: {
                      remove: function(classname, removeClassname) {
                        return classname.replace(new RegExp(' ' + removeClassname, 'g'), '');
                      },
                      add: function(classname, addClassname) {
                        if (classname.indexOf(addClassname) !== -1) {
                          return classname;
                        }

                        return classname + ' ' + addClassname;
                      }
                    },

                    adjust: function() {
                      var bodyWidth = Math.max(document.body.clientWidth, document.body.scrollWidth);
                      // ディスプレイのサイズから表示できるボタン数を計算
                      var showableButtonCount = Math.floor(bodyWidth / overlayButton.size);
                      var sliceStart = showableButtonCount;
                      var sliceEnd = undefined;

                      // 忍者シェアボタンを一番右へ
                      if (containerElement.getElementsByClassName('ninja_overlay').length !== 0) {
                        containerElement.appendChild(containerElement.getElementsByClassName('ninja_overlay')[0]);
                        sliceStart -= 1;
                        sliceEnd = -1;
                      }

                      // 表示できないボタンは隠す
                      overlayButton.elements.slice(sliceStart, sliceEnd).forEach(function(button) {
                        button.style.display = 'none';
                      });

                      if (overlayButton.isAbsoluteElements) {
                        containerElement.display = 'none';
                      }

                      if (!overlayButton.asumiWait) {
                        overlayButton.asumiWait = true;
                        var tried = 0;
                        var asumiFindTimer;
                        asumiFindTimer = setInterval(function () {
                          var asumiHeight = asumi.height();
                          if (asumiHeight !== null && overlayButton.asumiMargin !== asumiHeight) {
                            clearInterval(asumiFindTimer);
                            overlayButton.asumiMargin = asumiHeight;
                            overlayButton.asumiWait = false;
                            //表示位置調整のため、hide->showを行う
                            if (overlayButton.showStatus && !overlayButton.isAbsoluteElements) {
                              overlayButton.hide();
                              overlayButton.showWait = false;
                              overlayButton.show();
                            }
                          } else if (++tried >= 7) {
                            clearInterval(asumiFindTimer);
                            overlayButton.asumiWait = false;
                          }
                        }, 300);
                      }

                      var landscape = display.isLandscape();
                      // 前回取得時ランドスケープ状態と変化があれば
                      if (overlayButton.devideLandscape !== landscape && landscape) {
                        overlayButton.devideLandscape = landscape;
                        containerElement.style.height = Math.round(window.innerHeight / overlayButton.landscapeSourceValue) + 'px';
                        overlayButton.elements.forEach(function(botton) {
                          botton.style.fontSize = Math.round(window.innerHeight / overlayButton.landscapeSourceValue) > overlayButton.maxFontSize
                              ? overlayButton.maxFontSize
                              : Math.round(window.innerHeight / overlayButton.landscapeSourceValue) + 'px';
                        });
                      } else if (overlayButton.devideLandscape !== landscape && !landscape) {
                        overlayButton.devideLandscape = display.isLandscape();
                        containerElement.style.height = '';
                        overlayButton.elements.forEach(function (botton) {
                          botton.style.fontSize = '';
                        });
                      }
                    },

                    show: function() {
                      if (overlayButton.showStatus || overlayButton.showWait || overlayButton.inAnimetion) {
                        return;
                      }
                      containerElement.className = overlayButton.classList.remove(containerElement.className, 'hide');
                      containerElement.className = overlayButton.classList.add(containerElement.className, 'show');

                      var self = this;
                      var margin = Math.max(self.userSpecifiedMargin, self.asumiMargin);
                      var interval = 5; // 実行間隔
                      var action = null;// 実行する内容
                      var shownDelay = 1000; // showWaitをfalseにするまでの遅延

                      switch (overlayAnimetionType) {
                        case overlayButton.animetionType.slideIn:
                          action = (function() {
                            var position = - 50;
                            return function() {
                              position++;
                              self.elements.forEach(function(button) {
                                switch (overlayDesignType) {
                                  case overlayButton.designType.bottom:
                                    containerElement.style.bottom = margin + position + 'px';
                                    break;
                                  case overlayButton.designType.top:
                                    containerElement.style.top = margin + position + 'px';
                                    containerElement.style.bottom = 0;
                                    break;
                                }
                              });

                              return position === 0;
                            };
                          })();
                          break;
                        case overlayButton.animetionType.fadeIn:
                          action = (function() {
                            var opacity = 0;
                            return function() {
                              opacity++;
                              self.elements.forEach(function(button) {
                                button.style.opacity = (opacity / 100);
                                switch (overlayDesignType) {
                                  case overlayButton.designType.bottom:
                                    containerElement.style.bottom = margin + 'px';
                                    break;
                                  case overlayButton.designType.top:
                                    containerElement.style.top = margin + 'px';
                                    containerElement.style.bottom = 0;
                                    break;
                                }
                              });

                              return opacity === 100;
                            };
                          })();
                          break;
                        default:
                          interval = 0;
                          shownDelay = 500;
                          action = function() {
                            self.elements.forEach(function(button) {
                              switch (overlayDesignType) {
                                case overlayButton.designType.bottom:
                                  containerElement.style.bottom = margin + 'px';
                                  break;
                                case overlayButton.designType.top:
                                  containerElement.style.top = margin + 'px';
                                  containerElement.style.bottom = 0;
                                  break;
                              }
                            });

                            return true;
                          };
                          break;
                      }
                      var timer = setInterval(function() {
                        overlayButton.inAnimetion = true;
                        if (action()) {
                          clearInterval(timer);
                          overlayButton.showStatus = true;
                          setTimeout(function() {
                            overlayButton.showWait = false;
                            overlayButton.inAnimetion = false;
                          }, shownDelay);
                        }
                      }, interval);
                    },

                    hide: function() {
                      if (!overlayButton.showStatus) {
                        return;
                      }
                      containerElement.className = overlayButton.classList.remove(containerElement.className, 'show');
                      containerElement.className = overlayButton.classList.add(containerElement.className, 'hide');
                      overlayButton.showStatus = false;
                    },
                    isBottomRange:function() {
                      return overlayButton.pageContentsHeight() <= (overlayButton.userScrolledHeight() + window.innerHeight + overlayButton.margin);
                    }
                  };

                  var displayPosition = -1;
                  function scroll() {
                    // 前回のイベントと同じ場合は何もしない
                    if (window.pageYOffset === displayPosition) {
                      return;
                    }

                    if (window.pageYOffset > displayPosition) {
                      overlayButton.hide();
                    } else {
                      overlayButton.show();
                    }

                    displayPosition = window.pageYOffset < 0 ? 0 : window.pageYOffset;
                  }

                  var inlineButton2Top;
                  function tagPosition() {
                    inlineButton2Top = document.getElementById(obsk + '_1').offsetTop;
                    if (overlayButton.userScrolledHeight() + window.innerHeight - overlayButton.size - overlayButton.asumiMargin > inlineButton2Top) {
                      overlayButton.show();
                    }
                  }

                  var specifiedPercent = 70;
                  function specified() {
                    if (overlayButton.userScrolledHeight() > (overlayButton.pageContentsHeight() * (specifiedPercent / 100))) {
                      overlayButton.show();
                    }
                  }

                  // 古いAndroid及びiPhone6*plus系はfixedElementの扱いにバグがあるため分岐
                  if (overlayButton.isAbsoluteElements) {
                    overlayEventType = 0;
                    overlayAnimetionType = 0;
                    overlayButton.elements.forEach(function(button) {
                      button.style.bottom = 0;
                    });
                    containerElement.style.display = 'none';
                  } else  {
                    // load前は非表示
                    containerElement.className = overlayButton.classList.add(containerElement.className, 'hide')
                  }

                  window.addEventListener('load', function() {
                    w[ob].clickInterceptor();
                    overlayButton.adjust();
                    setTimeout(function(){
                      if (overlayEventType === overlayButton.eventType.always) {
                        overlayButton.show();
                        containerElement.bottom = 'auto';
                      }
                    }, 1000);
                    inlineButton2Top = document.getElementById(obsk + '_1').offsetTop;
                  }, false);

                  var scrollEventTimer;
                  var onScroll = function() {

                    if (overlayButton.isAbsoluteElements) {
                      containerElement.style.display ='none';
                      overlayButton.showWait = true;
                      setTimeout(function() {
                        overlayButton.showWait = false;
                      }, 500);
                    }

                    clearTimeout(scrollEventTimer);
                    scrollEventTimer = setTimeout(function() {
                      if (overlayButton.isBottomRange()) {
                        if (!overlayButton.isAbsoluteElements) {
                          overlayButton.hide();
                        } else {
                          containerElement.display = 'none';
                        }
                        //末尾につき再描画処理を行わず終了
                        return;
                      } else if (!overlayButton.showStatus && overlayEventType === overlayButton.eventType.always && !overlayButton.isAbsoluteElements) {
                        overlayButton.show();
                      }

                      if (overlayButton.isAbsoluteElements) {
                        if (overlayButton.showWait) {
                          return ;
                        }
                        overlayButton.showWait = true;
                        containerElement.style.display = 'table';
                        containerElement.bottom = 'auto';
                        var windowInHeight = Math.max(window.innerHeight, window.parent.innerHeight, window.top.innerHeight);
                        switch (overlayDesignType) {
                          case overlayButton.designType.bottom:
                            containerElement.style.top = (overlayButton.userScrolledHeight() + windowInHeight) - containerElement.offsetHeight - Math.max(overlayButton.userSpecifiedMargin, overlayButton.asumiMargin) + 'px';
                            break;
                          case overlayButton.designType.top:
                            containerElement.style.top = overlayButton.userScrolledHeight() + overlayButton.userSpecifiedMargin + 'px';
                            break;
                        }

                        setTimeout(function() {
                          overlayButton.showWait = false;
                        }, 1000);

                      } else {
                        switch (overlayEventType) {
                          case overlayButton.eventType.scrollUp:
                            scroll();
                            break;
                          case overlayButton.eventType.tagPosition:
                            tagPosition();
                            break;
                          case overlayButton.eventType.specified:
                            specified();
                            break;
                        }
                      }
                    }, 100);
                  };

                  var resizeTimer;
                  var onResize = function(event) {
                    if (overlayButton.isAbsoluteElements) {
                      containerElement.style.display ='none';
                      overlayButton.showWait = true;
                      setTimeout(function() {
                        overlayButton.showWait = false;
                      }, 1000);
                    }

                    clearTimeout(resizeTimer);
                    resizeTimer = setTimeout(function() {
                      overlayButton.adjust();
                    }, 500);

                    switch (overlayEventType) {
                      case overlayButton.eventType.scrollUp:
                        scroll();
                        break;
                      case overlayButton.eventType.tagPosition:
                        tagPosition();
                        break;
                      case overlayButton.eventType.specified:
                        specified();
                        break;
                    }
                  };

                  window.addEventListener('scroll', onScroll);
                  window.addEventListener('touchmove', onScroll);
                  window.addEventListener('orientationchange', onResize, false);
                  window.addEventListener('resize', onResize, false);
              
            }


        };
        ///////////////////////////////// NINJA_CO_JP_ONETAG_BUTTON+SOURCEKEY /////////////////////////////////

        w[obsk].ONETAGButton_Load();

        //スマホ設定フラグが入っている場合は、以下が実行される
        w[obsk].ONETAGButton_Overlay();


        function getNext(n) {
            if (!n) {
                return null;
            }

            var y = n.nextSibling;
            while (y && (y.nodeType != 1)) {
                y=y.nextSibling;
            }
            return y;
        }

        function getLanguage() {
            try {
                var raw_lang = "en-US,en;q=0.5".toLowerCase();
                if (raw_lang.length < 2) { return "en";}
                var lang = raw_lang.substr(0,2);
                if (lang == "zh") {
                    var zhstr = raw_lang.match(/^zh-[a-z]{2}/);
                    if (zhstr) {
                        return zhstr;
                    }
                }
                return lang;
            } catch(e) {
                return "en";
            }
        }

        function getElementPosition(elem){
            var html = document.documentElement;
            var body = document.body;
            var scrollLeft = (body.scrollLeft || html.scrollLeft);
            var scrollTop  = (body.scrollTop || html.scrollTop);

            var pos = getElementScreenPosition(elem);

            var left = pos.left + scrollLeft;
            var top  = pos.top + scrollTop;
            return {left:left, top:top};
        }
        function getElementScreenPosition(elem){
            var html = document.documentElement;
            var rect = elem.getBoundingClientRect();
            var left = rect.left - html.clientLeft;
            var top = rect.top - html.clientTop;
            return {left:left, top:top};
        }

        function rmHash(str) {
            return str;
            //return str.replace( /#.*$/, "");
        }
        function crc32(s/*, polynomial = 0x04C11DB7, initialValue = 0xFFFFFFFF, finalXORValue = 0xFFFFFFFF*/) {
          s = String(s);
          var polynomial = arguments.length < 2 ? 0x04C11DB7 : arguments[1],
              initialValue = arguments.length < 3 ? 0xFFFFFFFF : arguments[2],
              finalXORValue = arguments.length < 4 ? 0xFFFFFFFF : arguments[3],
              crc = initialValue,
              table = [], i, j, c;

          function reverse(x, n) {
            var b = 0;
            while (n) {
              b = b * 2 + x % 2;
              x /= 2;
              x -= x % 1;
              n--;
            }
            return b;
          }

          for (i = 255; i >= 0; i--) {
            c = reverse(i, 32);

            for (j = 0; j < 8; j++) {
              c = ((c * 2) ^ (((c >>> 31) % 2) * polynomial)) >>> 0;
            }

            table[i] = reverse(c, 32);
          }

          for (i = 0; i < s.length; i++) {
            c = s.charCodeAt(i);
            if (c > 255) {
              throw new RangeError();
            }
            j = (crc % 256) ^ c;
            crc = ((crc / 256) ^ table[j]) >>> 0;
          }

          return (crc ^ finalXORValue) >>> 0;
        }
        function htmlentities(str) {
            return String(str).replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;').replace(/'/g, '&#039;');
        }

        function getOriginalButton(button_info_obj, className){
            var isTwitterButton = className.indexOf("twitter") !== -1;
            var text = "";
            var addClass = "";
            var icon_name = "";
            var icon_size = "";

            if (className.indexOf("twitter") != -1) {
                text = "ツイート";
                icon_name = "twitter";
            } else if (className.indexOf("facebook") != -1) {
                text = "シェア";
                icon_name = "facebook";
            } else if (className.indexOf("hatena") != -1) {
                text = "Bookmark";
                icon_name = "hatena";
            }

            if (className.indexOf("icon") == -1) {
                if (className.indexOf("vertical") != -1) {
                    addClass = "vertical";
                }
            }else{
                addClass = "icon";
                text = "";
                if (className.indexOf("medium") != -1) {
                    icon_size = "medium";
                } else if (className.indexOf("small") != -1) {
                    icon_size = "small";
                } else if (className.indexOf("large") != -1) {
                    icon_size = "large";
                }
            }

            var div_wrap_omatome_icon_font_button = document.createElement('div');
            div_wrap_omatome_icon_font_button.className = "wrap-omatome-icnfont-button";
            if (addClass != "") {
                div_wrap_omatome_icon_font_button.className += " " + addClass;
                if (icon_size != "") {
                    div_wrap_omatome_icon_font_button.className += " " + icon_size;
                }
            }

            var span_gradient = document.createElement('span');
            if (button_info_obj['gradient']) {
                span_gradient.className = "gradient";
            }

            var span_omatome_icn_font = document.createElement('span');
            span_omatome_icn_font.className = "omatome-icnfont " + "omatome-icn-" + icon_name; //< TODO


            var span_omatome_icn_font_button = document.createElement('span');
            span_omatome_icn_font_button.className = "omatome-icnfont-button";
            span_omatome_icn_font_button.style.borderRadius = button_info_obj['radius']+"px";
            span_omatome_icn_font_button.style.color = button_info_obj['icon_color'];
            span_omatome_icn_font_button.style.backgroundColor = button_info_obj['back_color'];
            span_omatome_icn_font_button.style.borderColor = button_info_obj['border_color'];


            if (addClass != "icon") {
                var span_text = document.createElement('span');
                span_text.appendChild(document.createTextNode(text));
                span_text.className = "text";
                span_text.style.color = button_info_obj['text_color'];
                span_omatome_icn_font.appendChild(span_text);
            }

            span_gradient.appendChild(span_omatome_icn_font);
            span_omatome_icn_font_button.appendChild(span_gradient);

            if (addClass != "icon") {
                var span_wrap_count = document.createElement('span');
                span_wrap_count.className = "wrap-count";
                span_wrap_count.style.color = button_info_obj['baloon_text_color'];

                var i_front = document.createElement('i');
                if (addClass == "vertical") {
                    i_front.className = "balloon-bottom-front";
                    i_front.style.borderTopColor = button_info_obj['baloon_border_color'];
                }else{
                    i_front.className = "balloon-left-front";
                    i_front.style.borderRightColor = button_info_obj['baloon_border_color'];
                }

                var i_back = document.createElement('i');
                if (addClass == "vertical") {
                    i_back.className = "balloon-bottom-back";
                    i_back.style.borderTopColor = button_info_obj['baloon_back_color'];
                }else{
                    i_back.className = "balloon-left-back";
                    i_back.style.borderRightColor = button_info_obj['baloon_back_color'];
                }

                var textnode;
                textnode = !isTwitterButton ? document.createTextNode("0") : document.createTextNode("見る");

                var span_count = document.createElement('span');
                span_count.className = "count";
                span_count.style.backgroundColor = button_info_obj['baloon_back_color'];
                span_count.style.borderColor = button_info_obj['baloon_border_color'];

                span_count.appendChild(i_front);
                span_count.appendChild(i_back);
                span_count.appendChild(textnode);

                span_wrap_count.appendChild(span_count);

                if (addClass == "vertical") {
                    div_wrap_omatome_icon_font_button.appendChild(span_wrap_count);
                    div_wrap_omatome_icon_font_button.appendChild(span_omatome_icn_font_button);
                }else{
                    div_wrap_omatome_icon_font_button.appendChild(span_omatome_icn_font_button);
                    div_wrap_omatome_icon_font_button.appendChild(span_wrap_count);
                }
            }else{
                div_wrap_omatome_icon_font_button.appendChild(span_omatome_icn_font_button);
            }

            return div_wrap_omatome_icon_font_button;
        }
      function getAppendElement(className, appendType) {
        var text;

        switch (true) {
          case className.indexOf("twitter") !== -1:
            text = "ツイート";
            break;
          case className.indexOf("facebook") !== -1:
            text = "シェア";
            break;
          case className.indexOf("hatena") !== -1:
            text = "追加";
            break;
          case className.indexOf("line") !== -1:
            text = "送る";
            break;
          case className.indexOf("ninja") !== -1:
            text = "共有";
            break;
          case className.indexOf("feedly") !== -1:
          text = "フォロー";
            break;
          case className.indexOf("google_plusone") !== -1:
            text = "共有";
            break;
          case className.indexOf("tumblr") !== -1:
            text = "ポスト";
            break;
          case className.indexOf("pocket") !== -1:
            text = "あとで";
            break;
          case className.indexOf("mailto") !== -1:
            text = "送る";
            break;
        }

        switch (appendType) {
          case 'count':

            var textNode_count = document.createTextNode("0");
            var span_count = document.createElement('span');

            span_count.className = 'count_responsive';
            span_count.appendChild(textNode_count);

            return span_count;
          case 'text':
            var textNode_text = document.createTextNode(text);
            var span_text = document.createElement('span');
            span_text.className = 'share_text';
            span_text.appendChild(textNode_text);

            return span_text;
        }
      }
    } else {
        w[obsk].ONETAGButton_Load();
    }
})(document);

document.write('<sc' + 'ript type="text/javascript" src="'
  + '//omt.shinobi.jp/tsumugi?location='
  + encodeURIComponent(window.location.href)
  + '&source_key=9eacc20d8e0e01d4c4f12a7e59f978d9'
  + '&st=4'
  + '&rd=' + Math.random()
  + '"></sc' + 'ript>');

(function(d) {
  var script = d.createElement('script');
  script.defer = 'defer';
  script.src = '//x9.shinobi.jp/ufo/453134534';
  d.body.appendChild(script);
})(document);
(function() {
  if (typeof window.__NINJA_CO_JP_ONETAG_BUTTON_LOAD__ === 'undefined') {
    window.__NINJA_CO_JP_ONETAG_BUTTON_LOAD__ = 'loaded';
    (new Image()).src = '//omt.shinobi.jp/pv?t=' + (new Date).getTime()
  }
})();
