function browserCheck(){ 
	this.ver=navigator.appVersion
	this.agent=navigator.userAgent
	this.dom=document.getElementById?1:0
	this.opera6=((this.agent.indexOf("Opera 6")>-1) && this.dom)?1:0;
	this.ie5=((this.ver.indexOf("MSIE 5")>-1) && this.dom && !this.opera6)?1:0; 
	this.ie6r=((this.ver.indexOf("MSIE 6")>-1) && this.dom && (document.compatMode == "BackCompat"))?1:0;
	this.ie6s=((this.ver.indexOf("MSIE 6")>-1) && this.dom && (document.compatMode == "CSS1Compat"))?1:0;
	this.ie4=(document.all && !this.dom)?1:0;
	this.ie=(this.ie4||this.ie5||this.ie6r||this.ie6s)?1:0;
	this.mac=(this.agent.indexOf("Mac")>-1)?1:0;
	this.ns6=(this.dom && (parseInt(this.ver) >= 5)) ?1:0; 
	this.ns4=(document.layers && !this.dom)?1:0;
	this.ns=(this.ns4||this.ns6)?1:0;
	this.bw5=(this.ie5||this.ie6r)?1:0;
	this.bw6=(this.ie6s||this.ns6||this.opera6)?1:0;
	this.bw=(this.ie6r||this.ie6s||this.ie5||this.ns6||this.opera6)?1:0;
	return this;
}

// Global Variables
var ENMarginTop, ENMarginBottom, ENTop;
var ENDivName, ENObject, ENCurrentY;

function ENInit(id, mt, mb, tp) // DIVid, margin-top, margin-bottom, position-top,
{
	bw=new browserCheck;
	if (bw.bw) {
		ENDivName = bw.bw5 ? document.all(id) : bw.bw6 ? document.getElementById(id) : 0;
		ENObject = ENDivName.style;
		ENObject.position = 'absolute';
		ENMarginTop = mt ? mt : 0; // 引数mt省略時は0
		ENMarginBottom = mb ? mb : 0; // 引数mb省略時は0
		ENCurrentY = ENTop = tp ? tp : ENDivName.offsetTop; //引数tp省略時は自動取得
		ENSmoothMove();
	} 
}

function ENSmoothMove()
{
	var winh = bw.ie6s ? document.documentElement.clientHeight : (bw.ns6||bw.opera6) ? innerHeight : bw.bw5 ? document.body.clientHeight : 0 ;
	var yt = bw.ie6s ? document.documentElement.scrollTop : bw.bw5 ? document.body.scrollTop : (bw.ns6||bw.opera6) ? window.pageYOffset : 0;
	var divh = ENDivName.offsetHeight;

	if (winh >= ENMarginTop + divh + ENMarginBottom) {
		yt = Math.max(yt + ENMarginTop, ENTop);
	} else {
		// 下へ向かう力
		var yt1 = Math.max(yt + ENMarginTop, ENTop);
		var f1 = (yt1 > ENCurrentY) ? 1 : 0;
		// 上へ向かう力
		var yt2 = yt - (divh + ENMarginBottom - winh);
		yt2 = Math.max(yt2, ENTop);
		var f2 = (yt2< ENCurrentY) ? 1 : 0;
		// 両方の力が働いている場合は相殺
		if (f1 && f2) yt = ENCurrentY;
		else yt = f2 ? Math.max(yt1, yt2) : Math.min(yt1, yt2);
	}

	if (yt != ENCurrentY) {
		// 目標値に徐々に近づける
		var vy = (yt - ENCurrentY) * 0.25;
		if (Math.abs(vy)< 1) vy = (vy > 0) ? 1 : (vy< 0) ? -1 : 0;
		ENCurrentY += Math.round(vy);
		ENObject.top = ENCurrentY + 'px';
	}
	setTimeout('ENSmoothMove()', 20);
}

var bgColorMes102="#FFFFFF"; 
var bgColorShaMes102="#C0C0C0"; 
var stopXMes102=10;
var stopYMes102=10;
var wMes102=120;
var hMes102=100;
var speedMes102=100;
var moPoXMes102,moPoYMes102,ob0Mes102,ob1Mes102,ob2Mes102,ob3Mes102;
var xMes102,yMes102,wwMes102,hhMes102,dWMes102,dHMes102;
var countMes102=1,startFlgMes102=false;

function getMoMes102(e) {
	if (window.opera) {
		moPoXMes102=e.clientX+stopXMes102;
		moPoYMes102=e.clientY+stopYMes102;
	}
	else if (document.all) {
		moPoXMes102=document.body.scrollLeft+event.clientX+stopXMes102;
		moPoYMes102=document.body.scrollTop+event.clientY+stopYMes102;
	}
	else if (document.layers || document.getElementById) {
		moPoXMes102=e.pageX+stopXMes102;
		moPoYMes102=e.pageY+stopYMes102;
	}
}

function setBgCoMes102(obj,color) {
	if (document.all || document.getElementById) obj.style.backgroundColor=color;
	else if (document.layers) obj.bgColor=color;
}

function writeStMes102(obj,mes) {
	if (document.all || document.getElementById) obj.innerHTML=mes;
	else if (document.layers) {
		obj.document.open();
		obj.document.write(mes);
		obj.document.close();
	}
}

function setViMes102(obj,flag) {
	if (document.all || document.getElementById) {
		if (flag) obj.style.visibility="visible";
		else obj.style.visibility="hidden";
	}
	else if (document.layers) {
		if (flag) obj.visibility="show";
		else obj.visibility="hide";
	}
}

function setWhMes102(obj,w,h) {
	if (document.all) {
		if (window.opera || navigator.appVersion.indexOf("Mac")!=-1 && navigator.appVersion.indexOf("MSIE 4")!=-1) {
			obj.style.pixelWidth=w;
			obj.style.pixelHeight=h;
		}
		else obj.style.clip="rect(0px "+w+"px "+h+"px 0px)";
	}
	else if (document.getElementById) {
		obj.style.width=w;
		obj.style.height=h;
	}
	else if (document.layers) obj.resizeTo(w,h);
}

function setPoMes102(obj,x,y) {
	if (document.all) {
		obj.style.pixelLeft=x;
		obj.style.pixelTop=y;
	}
	else if (document.getElementById) {
		obj.style.left=x;
		obj.style.top=y;
	}
	else if (document.layers) obj.moveTo(x,y);
}

function moveShMes102() {
	if (startFlgMes102) {
		if (countMes102<=6) {
			setWhMes102(ob3Mes102,wwMes102,hhMes102);
			setPoMes102(ob3Mes102,xMes102,yMes102);
			countMes102++;
			xMes102-=dWMes102,yMes102-=dHMes102;
			wwMes102+=dWMes102*2,hhMes102+=dHMes102*2;
		}
		else {
			setViMes102(ob3Mes102,false);
			setViMes102(ob1Mes102,true);
			setViMes102(ob2Mes102,true);
			startFlgMes102=false;
		}
	}
	setTimeout("moveShMes102()",speedMes102);
}

function showMes102(e,mes) {
	if (document.all || document.getElementById || document.layers) {
		getMoMes102(e);
		dWMes102=wMes102/7/2,dHMes102=hMes102/7/2;
		wwMes102=wMes102/7,hhMes102=hMes102/7;
		xMes102=wMes102/2-dWMes102,yMes102=hMes102/2-dHMes102;
		setPoMes102(ob3Mes102,xMes102,yMes102);
		setWhMes102(ob3Mes102,wwMes102,hhMes102);
		setPoMes102(ob0Mes102,moPoXMes102,moPoYMes102);
		writeStMes102(ob2Mes102,mes);
		setBgCoMes102(ob1Mes102,bgColorMes102);
		setBgCoMes102(ob3Mes102,bgColorShaMes102);
		setViMes102(ob0Mes102,true);
		setViMes102(ob3Mes102,true);
		startFlgMes102=true;
	}
}

function hideMes102() {
	if (document.all || document.getElementById || document.layers) {
		startFlgMes102=false;
		countMes102=1;
		setViMes102(ob3Mes102,false);
		setViMes102(ob2Mes102,false);
		setViMes102(ob1Mes102,false);
		setViMes102(ob0Mes102,false);
		setPoMes102(ob0Mes102,-500,0);
	}
}

function preLoadMes102() {
	if (document.all || document.getElementById || document.layers) {
		if (document.all) {
			ob0Mes102=document.all("FrMes102");
			ob1Mes102=document.all("FrrMes102");
			ob2Mes102=document.all("MaMes102");
			ob3Mes102=document.all("ShMes102");
			ob0Mes102.style.overflow="hidden";
		}
		else if (document.getElementById) {
			ob0Mes102=document.getElementById("FrMes102");
			ob1Mes102=document.getElementById("FrrMes102");
			ob2Mes102=document.getElementById("MaMes102");
			ob3Mes102=document.getElementById("ShMes102");
		}
		else if (document.layers) {
			ob0Mes102=document.layers["FrMes102"];
			ob1Mes102=ob0Mes102.document.layers["FrrMes102"];
			ob2Mes102=ob1Mes102.document.layers["MaMes102"];
			ob3Mes102=ob0Mes102.document.layers["ShMes102"];
		}
		moveShMes102();
	}
}
