// 拡張
(function(){
	var ie = (/msie/.test(navigator.userAgent.toLowerCase()))? true:false,
		mb = (window.addEventListener)? true:false;
	// DOM判定用Documentメソッド追加
	document.ready = function(fn){
		if(!mb && !ie) window.onload = fn;
		if(mb) document.addEventListener("DOMContentLoaded",fn,false);
		if(ie){
			(function(){
				try{
					document.documentElement.doScroll("left");
				}catch(error){
					window.setTimeout(arguments.callee,1);
					return;
				}
				fn();
			})();
		}
	}
	// イベントリスナ登録削除の統一
	document.addEvent = function(obj,evt,fn,flg){
		flg = (flg)? true:false;
		evt = (ie)? "on"+evt:evt;
		if(ie) obj.attachEvent(evt,fn);
		if(mb) obj.addEventListener(evt,fn,flg);
		if(!ie && !mb) return false;
	}
	document.removeEvent = function(obj,evt,fn,flg){
		flg = (flg)? true:false;
		evt = (ie)? "on"+evt:evt;
		if(ie) obj.detachEvent(evt,fn);
		if(mb) obj.removeEventListener(evt,fn,flg);
		if(!ie && !mb) return false;
	}
	// 簡易のXMLHttpRequestの統一
	if(typeof ActiveXObject == "function" && typeof XMLHttpRequest == "undefined"){
		XMLHttpRequest = function(){
			return new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	// 全角英数→半角英数メソッドをStringオブジェクトに追加
	String.prototype.toHan = function(delKana){
		var s = "", ch = "";
		for(var n=0,l=this.length; n<l; n++){
			var c = this.charCodeAt(n);
			if(c>=65281 && c<=65374) ch = s+String.fromCharCode(c-65248);
			if(c==12540 || c==8722 || c==8213 || c==8208) ch = s+String.fromCharCode(45);
			if(delKana && !(ch!="" || /[!-~]/.test(this.charAt(n)))) continue;
			s = ch||s+this.charAt(n);
			ch = "";
		}
		return s;
	}
})();


// 共通
(function(){
	// background rollover
	var bgRoll = function(id,def,rol){
		var img = new Image(); img.src = rol;
		document.ready(function(){
			var o = document.getElementById(id);
			if(!o) return;
			document.addEvent(o,"mouseover",function(){ o.style.backgroundImage = "url("+rol+")";},false);
			document.addEvent(o,"mouseout",function(){ o.style.backgroundImage = "url("+def+")";},false);
			document.addEvent(o,"click",function(){ o.style.backgroundImage = "url("+def+")";},false);
		});
	}
	bgRoll("gn_index","/controls/images/btn_index.png","/controls/images/btn_index_over.png");
	bgRoll("gn_ecosy","/controls/images/btn_ecosystem.png","/controls/images/btn_ecosystem_over.png");
	bgRoll("gn_econo","/controls/images/btn_economy.png","/controls/images/btn_economy_over.png");
	bgRoll("gn_const","/controls/images/btn_construct.png","/controls/images/btn_construct_over.png");
	bgRoll("gn_equip","/controls/images/btn_equipment.png","/controls/images/btn_equipment_over.png");
	bgRoll("gn_inqui","/controls/images/btn_inquire.png","/controls/images/btn_inquire_over.png");
	bgRoll("gn_pipes","/controls/images/btn_pipe.png","/controls/images/btn_pipe_over.png");
	bgRoll("gn_publi","/controls/images/btn_public.png","/controls/images/btn_public_over.png");
	bgRoll("gn_homee","/controls/images/btn_home.png","/controls/images/btn_home_over.png");

	// generate mail address
	var genMail = function(id,acc){
		document.ready(function(){
			var a = document.createElement("a");
			var addr = decodeURI(acc+"@"+"%69%73%73%68%69%6b%69%73%68%6f%6b%61%69%2e%63%6f%6d");
			a.innerHTML = addr;
			a.href = "mailto:"+decodeURIComponent(addr);
			var o = document.getElementById(id);
			if(o){
				o.innerHTML = "";
				o.appendChild(a);
			}
		});
	}
	genMail("mail1","%61%64%6d%69%6e");
	genMail("mail2","%73%6f%6c%61%72");
	genMail("mail3","%73%6f%6c%61%72");
})();

