<!--
var negoExeclock = 0;
var negoNowTimeNumber = negoGetNowSecond();

var negoUserAgent = navigator.userAgent;
var negoMimeTypes = navigator.mimeTypes;

var negoIE = /*@cc_on!@*/false;
var negoWIN = (negoUserAgent.indexOf("Win", 0) != -1);

var negoFlashPlugin			= 0;
var negoFlashVer			= "0.0.0";


//----------------------------------------
//--MAIN FUNCTIONS
//----------------------------------------
function negolog(swfurl)
{
	//----------------------------------------
	//--変数・定数
	//----------------------------------------
	expireCookieDate = "Mon, 1-Dec-2070 20:00:00";
	uniqueId = 0;
	visiting = 0;
	visited = 0;
	stayedTime = (0);
	negoNowTimeNumber = negoGetNowSecond();
	url = !swfurl ? document.URL : swfurl; 	// <-- このURL
	domain = document.domain;
	refe = document.referrer;

	if (refe == "" || refe == null || refe == "null" || negoExeclock > 0 || refe.indexOf("http://" + domain) == 0 || refe.indexOf("https://" + domain) == 0)	// <-- ローカルのreferrerは信用していない
	{
		refe = unescape(negoGetCookie("_referrer"));
	}

	if(refe == "" || refe == null || refe == "null")
	{
		refe = "";
	}

	//alert("\n▼\nDOCUMENT REF : " + refe + "\n▼\nDOCUMENT URL" + document.URL);

	if (swfurl && negoExeclock == 1) url = document.URL;
	
	negoSetCookie("_referrer", escape(url), "", "/");

	if (negoExeclock != 1)
	{
		vingC = negoGetCookie("_visiting");
		vtedC = negoGetCookie("_visited");

		colDep = screen.colorDepth;			//--画面色数(bit)
		scrW = screen.width;				//--画面サイズ幅
		scrH = screen.height;				//--画面サイズ高

		var negoViewArea = negoGetViewportArea();
		var viewW = negoViewArea.w;
		var viewH = negoViewArea.h;

		//----------------------------------------
		if(vingC)
		{
			pairs = vingC.split(";");
			visiting = pairs[0];
			beforeTimeNumber = pairs[1];
			refUrl = pairs[2];

			visiting++;
			stayedTime = negoNowTimeNumber - beforeTimeNumber;

			if(refUrl == url) refe = url;	// <== リロード対策
//			if(refe == "") visiting = 0;		// <== 訪問中なのに、リファラがなかったり、外部だと最初からカウントさせる。
//			alert(visiting + " <-- " + refe);
		}

		negoSetCookie("_visiting", visiting + ";" + negoNowTimeNumber + ";" + url, "", "/");
//		negoSetCookie("_referrer", url, "", "/");

		if(!vtedC)
		{
			uniqueId = negoNowTimeNumber + "" + Math.floor(Math.random() * 9) + "" + Math.floor(Math.random() * 9);
			negoSetCookie("_visited", uniqueId + ";" + visited, expireCookieDate, "/");
		}
		else
		{
			pairs = vtedC.split(";");
			uniqueId = pairs[0];
			visited = pairs[1];
			if(!visiting)
			{
				visited++;
				negoSetCookie("_visited", uniqueId + ";" + visited, expireCookieDate , "/");
			}
		}
		//-Flash Ver.-----------------------------
		negoFlashPlugin = negoGetFlashPlugin();
		negoFlashVer = negoGetFlashVer(negoFlashPlugin);
		var negoFlaMajorVer = negoGetMajorVer(negoFlashVer);
		var negoFlaMinorVer = negoGetMinorVer(negoFlashVer);
		var negoFlaRevisionVer = negoGetRevision(negoFlashVer);
		var negoFlaVer = negoFlaMajorVer + "." + negoFlaMinorVer + "." + negoFlaRevisionVer;

		//----------------------------------------
		var param		= 'id=' + uniqueId
						+ '&url=' + TEscape(document.URL)
						+ '&colDep=' + colDep
						+ '&scrW=' + scrW
						+ '&scrH=' + scrH
						+ '&swfurl=' + TEscape(url)		// <= escp
						+ '&referrer=' + TEscape(refe)	// <= escp
						+ '&ving=' + visiting
						+ '&vted=' + visited
						+ '&stime=' + stayedTime
						+ '&flaver=' + negoFlaVer		// FlashPlayerのバージョン(2008/07/22追加)
						+ '&viewW=' + viewW
						+ '&viewH=' + viewH;
		negoOutputLog(param);
	}
	negoExeclock++;
}

function negoOnLeftClick(e)
{
	negoClickEvent(e, 0);
}

function negoOnRightClick(e)
{
	negoClickEvent(e, 1);
}

function negoClickEvent(e, lorr)
{
	var tgt,oTgt,tgtNodeName,tgtType;
	var url,name;
	var ax,ay;

	if(e) // Firefox,Opera,Netscape
	{
		if (e.button == '0' && lorr == '1') return;
		if (e.button == '2' && lorr == '0') lorr = '1';

		oTgt = e.target;
		ax = e.pageX;
		ay = e.pageY;
	}
	else // IE
	{
		oTgt = event.srcElement;
		ax = document.body.scrollLeft + event.clientX;
		ay = document.body.scrollTop + event.clientY;
	}

	tgt = negoGetLinkTag(oTgt);

	if(!tgt) return true;

	if(tgt.nodeName) tgtNodeName = tgt.nodeName.toLowerCase();
	if(tgt.type) tgtType = tgt.type.toLowerCase();

	if(tgtNodeName == 'a')
	{
		url = tgt.href;
		if(oTgt.nodeName.toLowerCase() == 'img') // <a><img /></a>でクリックされた場合
		{
			name = oTgt.alt;
		}
		else
		{
			if(tgt.text)
			{
				name = tgt.text
			}
			else if(tgt.innerText)
			{
				name = tgt.innerText
			}
			else
			{
				name = tgt.innerHTML
			}
		}

		if(!name) name = url;

		tgtType = tgtNodeName;
	}
	else if(tgtNodeName == 'input')
	{
		if(tgtType == 'submit')
		{
			name = tgt.value;
			if(!name) name = tgt.name;
			url = tgt.form.action;
		}
		else if(tgtType == 'button')
		{
			name = tgt.value;
			if(!name) name = tgt.name;
			url = tgt.onclick;
		}
		else // text,password,radio,checkboxなど
		{
			name = tgt.name;
			url = "";
		}
	}
	else if(tgtNodeName == 'select' || tgtNodeName == 'textarea' || tgtNodeName == 'button')
	{
		name = tgt.name != '' ? tgt.name : tgtNodeName;
		url = "";
		tgtType = tgtNodeName; // tgtNodeNameを敢えて入れる、入れない場合は、tgtNodeNameがselectの場合tgtTypeにはselect-oneが入っている
	}
	else if(tgtNodeName == 'img')
	{
		name = tgt.alt;
		if(!name) name = tgt.src;
		url = "";
		tgtType = tgtNodeName;
	}

	if(!ax || !ay) return true;

	//----------------------------------------
	stayedTime = negoGetNowSecond() - negoNowTimeNumber;
	var negoViewArea = negoGetViewportArea();
	var aw = negoViewArea.w;
	var ah = negoViewArea.h;

	//alert("(X,Y) = (" + ax + ", " + ay + ") / (W,H) = (" + aw + ", " + ah + ") / NAME --> " + name + " / URL --> " + url + "(" + typeof(url) + ")");

	var param		= 'id=' + uniqueId
					+ '&url=' + TEscape(document.URL)
					+ '&ax=' + ax
					+ '&ay=' + ay
					+ '&aw=' + aw
					+ '&ah=' + ah
					+ '&aname=' + TEscape(name)
					+ '&aurl=' + TEscape(url)
					+ '&stime=' + stayedTime
					+ '&lorr=' + lorr
					+ '&type=' + tgtType;
					
	negoOutputLog(param);
}

function negoGetLinkTag(tgt)
{
	var ttgt = tgt;
	while(true)
	{
		if(!ttgt) break;
		var nodeName = ttgt.nodeName;
		if(nodeName){ nodeName = nodeName.toLowerCase(); }
		if(nodeName == 'a')
		{
			tgt = ttgt;
			break;
		}
		ttgt = ttgt.parentNode;
	}
	return tgt;
}

function negoGetNowSecond()
{
	return Math.floor(new Date().getTime() / 1000);
}

function negoOutputLog(param)
{
	var dummyimg = new Image();
	dummyimg.src = '/negolog/negocnt.cgi?' + param;
}

function negoGetCookie(name)
{
	var arg = name + "=";
	var alen = arg.length;
	var clen = document.cookie.length;
	var i = 0;
	while (i < clen)
	{
		var j = i + alen;
		if (document.cookie.substring(i, j) == arg)
		{
			return negoGetCookieVal(j);
		}
		i = document.cookie.indexOf(" ", i) + 1;
		if (i == 0)
		break;
	}
	return null;
}

function negoGetCookieVal(offset)
{
	var endstr = document.cookie.indexOf (";", offset);
	if (endstr == -1) endstr = document.cookie.length;
	return unescape(document.cookie.substring(offset, endstr));
}

function negoSetCookie(name, value, expires, path, domain)
{
	var c_expires = "";
	var c_path = "";
	var c_domain = "";

	if(expires)
	{
		c_expires = " expires="+expires+";";
	}

	c_path = " path="+path+";";

	if(domain)
	{
		c_domain = " domain="+domain+";";
	}
	
	var myCookie = name + "=" + escape(value) + ";" + c_expires + c_path + c_domain;
	document.cookie = myCookie;
}

function TEscape(str)
{
	if(!str) return "";

	var s0, i, s, u;
	s0 = "";				// encoded str
	for (i = 0; i < str.length; i++){   // scan the source
		s = str.charAt(i);
		u = str.charCodeAt(i);		  // get unicode of the char
		if (s == " "){s0 += "+";}	   // SP should be converted to "+"
		else {
			if ( u == 0x2a || u == 0x2d || u == 0x2e || u == 0x5f || ((u >= 0x30) && (u <= 0x39)) || ((u >= 0x41) && (u <= 0x5a)) || ((u >= 0x61) && (u <= 0x7a))){	   // check for escape
				s0 = s0 + s;			// don't escape
			}
			else {				  // escape
				if ((u >= 0x0) && (u <= 0x7f)){	 // single byte format
					s = "0"+u.toString(16);
					s0 += "%"+ s.substr(s.length-2);
				}
				else if (u > 0x1fffff){	 // quaternary byte format (extended)
					s0 += "%" + (oxf0 + ((u & 0x1c0000) >> 18)).toString(16);
					s0 += "%" + (0x80 + ((u & 0x3f000) >> 12)).toString(16);
					s0 += "%" + (0x80 + ((u & 0xfc0) >> 6)).toString(16);
					s0 += "%" + (0x80 + (u & 0x3f)).toString(16);
				}
				else if (u > 0x7ff){		// triple byte format
					s0 += "%" + (0xe0 + ((u & 0xf000) >> 12)).toString(16);
					s0 += "%" + (0x80 + ((u & 0xfc0) >> 6)).toString(16);
					s0 += "%" + (0x80 + (u & 0x3f)).toString(16);
				}
				else {					  // double byte format
					s0 += "%" + (0xc0 + ((u & 0x7c0) >> 6)).toString(16);
					s0 += "%" + (0x80 + (u & 0x3f)).toString(16);
				}
			}
		}
	}
	return s0;
}

function negoGetMajorVer(ver){ return negoGetVerDetail(ver, 0); }
function negoGetMinorVer(ver){ return negoGetVerDetail(ver, 1); }
function negoGetRevision(ver){ return negoGetVerDetail(ver, 2); }

function negoGetVerDetail(ver, len)
{
	ver = ver + "";
	var tmpVer = 0;
	if(ver.indexOf(".") != -1)
	{
		var sepVer = ver.split(".");
		if(sepVer.length > len)
		{
			tmpVer = sepVer[len];
		}
	}
	return parseInt(tmpVer);
}

function negoGetFlashPlugin()
{
	return (negoMimeTypes && negoMimeTypes["application/x-shockwave-flash"]) ? negoMimeTypes["application/x-shockwave-flash"].enabledPlugin : 0;
}

function negoGetFlashVer(plugin)
{
	var tmpVer = "0.0.0";
	
	if(plugin && plugin.description)
	{
		tmpVer = plugin.description.replace(/^[A-Za-z\s]+/, '').replace(/(\s+r|\s+b[0-9]+)/, ".");
	}
	else if(negoIE && negoWIN)
	{
		var num = 15;	// <-- とりあえず、ver.15から下がっていく
		var x = '';
		var axo;

		while(true)
		{
			try
			{
				var ssf = "ShockwaveFlash.ShockwaveFlash";
				if(num != 0 && num != 2) ssf += "." + num;
				
				axo = new ActiveXObject(ssf);
				x = axo.GetVariable("$version");
			}
			catch(e)
			{
			}
			num--;
			if(x || num < 0) break;
		}
		if(x != 0) tmpVer = x.replace(/^WIN /,'').replace(/,[0-9]+$/,'').replace(/,/g,'.');
	}

	return tmpVer;
}

if(document.body)
{
	document.body.onclick = negoOnLeftClick;
	document.body.oncontextmenu = negoOnRightClick;
}
else if(document)
{
	if(document.layers) document.captureEvents(Event.CLICK);
	document.onclick = negoOnLeftClick;
	document.oncontextmenu = negoOnRightClick;
}

negoAddOnloadEvent(negolog);

function negoGetDocumentArea()
{
	return {
		w:  negoGetDocumentWidth(),
		h:  negoGetDocumentHeight()
	}
}

function negoGetDocumentWidth()
{
	val = [
		document.documentElement.scrollWidth ? document.documentElement.scrollWidth : 0,
		document.body.scrollWidth ? document.body.scrollWidth : 0
	]
	return Math.max(val[0], val[1]);
}

function negoGetDocumentHeight()
{
	val = [
		document.documentElement.scrollHeight ? document.documentElement.scrollHeight : 0,
		document.body.scrollHeight ? document.body.scrollHeight : 0
	]
	return Math.max(val[0], val[1]);
}

function negoGetViewportArea()
{
	return {
		x: document.body.scrollLeft || document.documentElement.scrollLeft,
		y: document.body.scrollTop  || document.documentElement.scrollTop,
		w:  negoGetViewportWidth(),
		h:  negoGetViewportHeight()
	}
}

function negoGetViewportWidth()
{
	val = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body.clientWidth;
	return val;
}

function negoGetViewportHeight()
{
	val = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight;
	return val;
}

function negoAddOnloadEvent(func)
{
	var oldonload = window.onload;
	
	if(typeof window.onload != 'function')
	{
		window.onload = func;
	}
	else
	{
		window.onload = function()
		{
			oldonload();
			func();
		}
	}
}

function negoAddOnreseziEvent(func)
{
	var oldonresize = window.onresize;
	
	if(typeof window.onresize != 'function')
	{
		window.onresize = func;
	}
	else
	{
		window.onresize = function()
		{
			oldonresize();
			func();
		}
	}
}

//-->
