/*@cc_on _d=document;eval('var document=_d')@*/
//EZ RollOver 1.8.1



var UD = 0,IE7 = 0,MOSC = (undefined !== window.ActiveXObject)? 1:0,Domain,PreLoad = new Array(),PreLoadD = new Array(),PreLoadL = new Array(),CrDIR,CorrectDir,ABFX = 'fixed',exScriptsLoad,NN7 = window.globalStorage,FF2=(function x(){})[-6]=='x',db = document.documentElement||document.body,aRemover,bRemover;
IE7 = (window.XMLHttpRequest)? 1:0;//0=IE6,1=IE7,2=IE8
NN7 = (undefined !== window.Components && !NN7)? 1:0;//1=NetScape7

function mB(tagId){
	return document.getElementById(tagId);
}

$(function(){
	ezrLoad();
});

function ezrLoad(){
	var d = document,AbsPass,cDomain,ele,eleL,cdr;
	if(MOSC == 1){
		IE7 = (undefined !== d.body.style.outline)? 2:IE7;
		ABFX = (IE7 == 0)? 'absolute':ABFX;
		if(IE7 == 0){
			   try {
			   	d.execCommand('BackgroundImageCache', false, true);
			   }catch(e){
				void(0)
			   }
		}
	}

	CrDIR = new String(window.location);

	Domain = (mB('domainhref'))? mB('domainhref').href:'';
	if(!Domain.match(/\/$/)){
		var arr = [Domain,'/'];
		Domain = arr.join('');
	}
	cDomain = Domain;
	AbsPass = CrDIR;
	CrDIR = CrDIR.match(/\//g);
	CrDIR = RegExp.rightContext;
	CrDIR = CrDIR.match(/\./);
	CrDIR = RegExp.leftContext;
	cdr = CrDIR;
	CorrectDir = '../';
	if(!AbsPass.match(/\.html/)){
		CorrectDir = '';
		UD = 1;
	}
	ele = d.getElementsByTagName("IMG");
	eleL = ele.length;
	for(var i=0;i<eleL;i++){
		var ImgFile;
		if(ele[i].style.filter != '' && mB('iepngfix') && IE7 == 0 && window.ActiveXObject){
			ImgFile = ele[i].style.filter;
		}else{
			ImgFile = ele[i].src;
		}
		if(ImgFile.match(/_d\./)){
			PreLoad[i] = new Image();
			PreLoad[i].src = ImgFile.replace(/_d/,"_r");
		}

		if(ImgFile.match(/_d\./)){
			observe(ele[i],'mouseover',function (e){
				EzRollOver(this)
			},false);
			observe(ele[i],'mouseout',function (e){
				EzRollOut(this)
			},false);
		}

	}

	ele = d.getElementsByTagName("*");
	eleL = ele.length;
	for(var i=0;i<eleL;i++){
		var Liimg = ele[i].currentStyle||document.defaultView.getComputedStyle(ele[i], '');

		if(mB('iepngfix') && IE7 == 0 && window.ActiveXObject){
			ImgFile = Liimg.filter;
		}else{
			ImgFile = (ele[i].tagName == 'LI' && [i].className == 'colist'||ele[i].tagName != 'LI')? Liimg.backgroundImage:Liimg.listStyleImage;
		}

		if(ImgFile.indexOf("_d.") != -1){
			PreLoadL[i] = new Image();
			PreLoadL[i].src = ImgFile.replace(/_d/,"_r");
			observe(ele[i],'mouseover',function (e){
				EzRollOver(this)
			},false);
			observe(ele[i],'mouseout',function (e){
				EzRollOut(this)
			},false);
		}
	}


	//外部サイトを_blankウィンドウで開くのを自動判定
	ele = d.getElementsByTagName('A');
	eleL = ele.length;
	for(var i=0;i<eleL;i++){
		if(ele[i].href.indexOf("http://") !== -1){
			if(ele[i].href.indexOf(cDomain) === -1){
				observe(ele[i],'click',function (e){
					OpenBlankWindow(this,e)
				},false);
				observe(ele[i],'keypress',function (e){
					OpenBlankWindow(this,e)
				},false);
			}
		}

		if(ele[i].href.match(/#/)){
			if(window.location.href.indexOf(RegExp.leftContext) !== -1){
				observe(ele[i],'click',function(e){
					goToMove(this,e)
				},false);

				observe(ele[i],'keypress',function(e){
					goToMove(this,e)
				},false);
			}
		}
	}



	if(exScriptsLoad) exScriptsLoad();

	arr = new Array(cDomain,'images/default/img_common/white.png');
	arr = arr.join('');
/*
	 if(MOSC == 0 || IE7 > 0){
		 $("img").lazyload({
		     placeholder : arr,
		     effect : "fadeIn",
		     threshold:100
		 });
	 }
*/
}

var n = 0,m = 0,tID,IID;
function EzRollOut(obj){
	var ImgFile,fname,ftype,ID;
	ID = obj.id;
	if(ID == IID) return;
	var Divimg = obj.currentStyle || document.defaultView.getComputedStyle(obj, '');

	if(MOSC == 0 && obj.tagName == 'IMG'||MOSC == 1 && IE7 > 0 && obj.tagName == 'IMG'||obj.style.filter == '' && window.createPopup && obj.tagName == 'IMG'){
		ImgFile = obj.src;
		if(ImgFile.match(/_r\./)){
			fname = RegExp.leftContext;
			ftype = RegExp.rightContext;
			obj.src = fname + '_d.' + ftype;
		}
	}else if(obj.style.filter != '' && window.createPopup && obj.tagName == 'IMG'){
		ImgFile = obj.style.filter;
		if(ImgFile.match(/_r\./)){
			fname = RegExp.leftContext;
			ftype = RegExp.rightContext;
			obj.style.filter =  fname + '_d.' + ftype;
		}
	}else if(obj.tagName == 'LI' && obj.className == 'colist'){
		ImgFile = Divimg.backgroundImage;
		obj.style.backgroundImage = ImgFile.replace(/_r\./,"_d\.");
	}else if(obj.tagName == 'LI'){
		ImgFile = Divimg.listStyleImage;
		obj.style.listStyleImage = ImgFile.replace(/_r\./,"_d\.");
	}else{
		if(MOSC == 1 && IE7 == 0 && obj.style.filter != ''){
			ImgFile = obj.style.filter;
			if(ImgFile.match(/_r\./)){
				fname = RegExp.leftContext;
				ftype = RegExp.rightContext;
				obj.style.filter = fname + '_d.' + ftype;
			}
		}else{
			ImgFile = Divimg.backgroundImage;
			obj.style.backgroundImage = ImgFile.replace(/_r\./,"_d\.");
		}
	}
}

function EzRollOver(obj){
	var ImgFile,fname,ftype,ID;
	ID = obj.id;
	if(ID == IID) return;
	var Divimg = obj.currentStyle||document.defaultView.getComputedStyle(obj, '');

	if(MOSC == 0 && obj.tagName == 'IMG'||MOSC == 1 && IE7 > 0 && obj.tagName == 'IMG'||obj.style.filter == '' && window.createPopup && obj.tagName == 'IMG'){
		ImgFile = obj.src;
		if(ImgFile.match(/_d\./)){
			fname = RegExp.leftContext;
			ftype = RegExp.rightContext;
			obj.src = fname + '_r.' + ftype;
		}
	}else if(obj.style.filter != '' && window.createPopup && obj.tagName == 'IMG'){
		ImgFile = obj.style.filter;
		if(ImgFile.match(/_d\./)){
			fname = RegExp.leftContext;
			ftype = RegExp.rightContext;
			obj.style.filter = fname + '_r.' + ftype;
		}
	}else if(obj.tagName == 'LI' && obj.className == 'colist'){
		ImgFile = Divimg.backgroundImage;
		obj.style.backgroundImage = ImgFile.replace(/_d\./,"_r\.");
	}else if(obj.tagName == 'LI'){
		ImgFile = Divimg.listStyleImage;
		obj.style.listStyleImage = ImgFile.replace(/_d\./,"_r\.");
	}else{
		if(MOSC == 1 && IE7 == 0 && obj.style.filter != ''){
			ImgFile = obj.style.filter;
			if(ImgFile.match(/_d\./)){
				fname = RegExp.leftContext;
				ftype = RegExp.rightContext;
				obj.style.filter = fname + '_r.' + ftype;
			}
		}else{
			ImgFile = Divimg.backgroundImage;
			obj.style.backgroundImage = ImgFile.replace(/_d\./,"_r\.");
		}
	}

}

function CurrentPage(){//現在のページのメニュー画像を変更する。
	var PID,AID;
	if(CrDIR == 'sitemap'||CrDIR == 'about'){
		IID = 'others';
		return
	}
	for(i=0;i<ImageId.length;i++){
		PID = PageId[i];
		IID = ImageId[i];

		if(CrDIR == PID){
			if(window.createPopup && IE7 == 0){
				mB(IID).style.filter = mB(IID).style.filter.replace(/_d\.png/,"_r.png");
			}else{
				mB(IID).src = mB(IID).src.replace(/_d\.png/,"_r.png");
			}
			AID = IID + '_a';
			mB(AID).href = "#";
			return;
		}else if(UD == 1){
			if(window.createPopup && IE7 == 0){
				mB("menu_top").style.filter = mB("menu_top").style.filter.replace(/_d\.png/,"_r.png");
			}else{
				mB("menu_top").src = mB("menu_top").src.replace(/_d\.png/,"_r.png");
			}
			AID = 'menu_top_a';
			mB(AID).href = "#";
			return;
		}
	}
}

function IntervalFade(){
	if(window.createPopup){
		mB("email").style.filter = 'alpha(enabled=1)';
		var BK = document.all.item('email').filters['Alpha'];
		if(BK.opacity >= 100){
			BK.opacity = 100;
			BK.finishopacity = Math.abs(Math.sin(n+=0.1)) * 100;
		}
		if(BK.finishopacity <= 10){
			BK.finishopacity = 0;
			BK.opacity = Math.abs(Math.sin(m+=0.1)) * 100;
		}
		tID=setTimeout('IntervalFade()',16);
	}else{
		var BK = mB("email").style;
		BK.opacity = Math.abs(Math.sin(n+=0.1));
		tID=setTimeout('IntervalFade()',32);
	}
}

function clearBlink(){
	clearTimeout(tID);
	n = 0;
	if(window.createPopup){
		var BK = document.all.item('email').filters['Alpha'];
		BK.opacity = 100;
		BK.finishopacity = 100;
	}else{
	var BK = mB("email").style;
		BK.opacity = 1;
	}

}

function GradateListColor(){
	var d = document,ele = d.getElementsByTagName("SELECT"),eleL = ele.length;

	for(var i=0;i<eleL;i++){
		if(ele[i].id != 'traffictype'){
			var OPT = ele[i].childNodes,OPTl = OPT.length,ColorRenge = Math.ceil(50 / OPT.length),R = 254,G = 255,B = 250,TargetRed = 0,TargetGreen = 0,TargetBlue = 1;
			
			ele[i].backgroundColor = 'rgb(' + R + ',' + G + ',' + B + ')';
			for(var j=0;j<OPTl;j++){
				if(OPT[j].tagName == 'OPTION'){
					if(R < 0){
						R = 0
					}else if(R > 255){
						R = 255
					}
	
					if(G < 0){
						G = 0
					}else if(G > 255){
						G = 255
					}
	
					if(B < 0){
						B = 0
					}else if(B > 255){
						B = 255
					}
	
					if(TargetRed > 0){
						R = (j % 2 != 0)? Math.ceil(R - ColorRenge - TargetRed):R - ColorRenge - TargetRed;
					}
	
					if(TargetGreen > 0){
						G = (j % 2 != 0)? Math.ceil(G - ColorRenge - TargetGreen):G - ColorRenge - TargetGreen;
					}
	
					if(TargetBlue > 0){
						B = (j % 2 != 0)? Math.ceil(B - ColorRenge - TargetBlue):B - ColorRenge - TargetBlue;
					}
					OPT[j].style.backgroundColor = 'rgb(' + R + ',' + G + ',' + B + ')';
				}
			}
		}
	}
}

function OpenBlankWindow(obj,e){
	var Jump = obj.getAttribute("href");
	window.open(Jump,"_blank");
	if(undefined !== window.ActiveXObject){
		e.returnValue = false;
	}else{
		e.preventDefault()
	}
}

function EventRemover(target,type,listener){
    if(target.removeEventListener){
    	target.removeEventListener(type, listener, false);
    }else if(target.detachEvent){
    	target.detachEvent('on' + type, function(){listener.call(target, window.event);})
	}else{
		target['on' + type] = function(e) { listener.call(target, e || window.event); }
	}
}

aRemover = function(){
	var d = document,elea = d.getElementsByTagName('A'),eleaL = elea.length,cDomain = Domain;
	if(MOSC == 1){
		for(var i=0;i<eleaL;i++){
			if(elea[i].href.match(/http:\/\//)){
				if(!elea[i].href.match(Domain)){
					EventRemover(elea[i],'click',OpenBlankWindow,false);
					EventRemover(elea[i],'keypress',OpenBlankWindow,false);
				}
			}
			if(elea[i].href.indexOf(cDomain) !== -1 && elea[i].href.indexOf("#") !== -1){
				EventRemover(elea[i],'click',goToMove,false);

				EventRemover(elea[i],'keypress',goToMove,false);
			}
		}
	}else{
		for(var i=0;i<eleaL;i++){
			if(elea[i].href.match(/http:\/\//)){
				if(!elea[i].href.match(Domain)){
					EventRemover(elea[i],'click',OpenBlankWindow,false);
					EventRemover(elea[i],'keypress',OpenBlankWindow,false);
				}
			}
		}
	}
}

window.onunload = function(){
	aRemover();
}

function goToMove(obj,e){
	if(MOSC == 1){
		e.returnValue = false;
	}else{
		e.preventDefault()
	}
	var jump = obj.href.match(/#([\w_\-]+)/);
	jump = RegExp.$1;
	jump = (jump == '')? document.body:jump;
	try{
		smScroll(jump)
	}catch(e){
		void(0)
	}
}

function numberGet(str){
	var pixeler;
	return pixeler = new Number(str.replace(/px/,''));
}

function EscapeChar(str){
	str = str.replace(/(\!|\"|#|\$|\%|\&|\'|\(|\)|\*|\+|\,|-|\.|\/|:|\;|<|=|>|\?|\@|\[|\\|\]|\^|_|\`|\{|\||\}|~)/g,function(whole,s1){
		var ENC = encodeURIComponent(s1)
		return ENC
	});
	return str
}

function cellDt(dtEle){
	var ele = dtEle.childNodes,eleL = ele.length,num,arr,nextDD,cellHeight;
	for(var i=0;i<eleL;i++){
		if(ele[i].tagName == 'DT'){
			num = ele[i].offsetHeight >> 1;
			nextDD = ele[i].nextSibling;
			cellHeight = (nextDD.offsetHeight >> 1);
			arr = new Array(cellHeight + num,'px');
			ele[i].style.height = arr.join('');
			arr[0] = cellHeight - num;
			ele[i].style.paddingTop = arr.join('');
		}
	}
}

function cellDt2(dtEle){
	var ele = dtEle.childNodes,eleL = ele.length,num,arr,nextDD,cellHeight;
	for(var i=0;i<eleL;i++){
		if(ele[i].tagName == 'DT'){
			cellHeight = 0;
			num = ele[i].offsetHeight >> 1;
			nextDD = ele[i].nextSibling;
			do{
				cellHeight = cellHeight + (nextDD.offsetHeight >> 1);
				nextDD =nextDD.nextSibling;
			}while(nextDD && nextDD.tagName == 'DD');
			arr = new Array(cellHeight + num,'px');
			ele[i].style.height = arr.join('');
			arr[0] = cellHeight - num;
			ele[i].style.paddingTop = arr.join('');
		}
	}
}

function SendTimeStomp(){
	var date = new Date();
	date = date.getTime();
	return date;
}



function createXMLHttpRequest(cbFunc){
	var XMLhttpObject = null;
	try{
		XMLhttpObject = new XMLHttpRequest();
	}catch(e){
		try{
			XMLhttpObject = new ActiveXObject("Msxml2.XMLHTTP");
		}catch(e){
			try{
				XMLhttpObject = new ActiveXObject("Microsoft.XMLHTTP");
			}catch(e){
				return null;
			}
		}
	}
	try{
		if (XMLhttpObject) XMLhttpObject.onreadystatechange = cbFunc;
	}catch(e){
		void(0)
	}
	return XMLhttpObject;
}

function sendRequest (method,url,data,async,callback,ucs){
	// XMLHttpRequestオブジェクト生成
	var XMLhttpObject = createXMLHttpRequest();
   
	// 受信時に起動するイベント
	XMLhttpObject.onreadystatechange = function(){ 
		// readyState値は4で受信完了
	if (XMLhttpObject.readyState == 4) { 
		//コールバック
		callback(XMLhttpObject,ucs);
		}
	}
	// open メソッド
	XMLhttpObject.open(method, url, async);
	// HTTPリクエストヘッダを設定
	XMLhttpObject.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	XMLhttpObject.setRequestHeader("If-Modified-Since","Thu, 01 Jun 1970 00:00:00 GMT");
	XMLhttpObject.send(data);
}


/*
LiosK氏[http://liosk.blog103.fc2.com/blog-entry-61.html]の書いたコードを使用しています。
*/

function observe(target,type,listener){
    if(target.addEventListener){
    	target.addEventListener(type, listener, false);
    }else if(target.attachEvent){
    	target.attachEvent('on' + type, function(){listener.call(target, window.event);})
	}else{
		target['on' + type] = function(e) { listener.call(target, e || window.event); }
	}
}
