// JavaScript Document


/* フラッシュの読み込み */
function mainflash(path) {
	document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="920" height="460" id="movie" align="middle" title="index">');
	document.write('<param name="allowScriptAccess" value="sameDomain" />')
	document.write('<param name="movie" value='+path+' />')
	document.write('<param name="quality" value="high" />')
	document.write('<param name="wmode" value="transparent" />')
	document.write('<param name="bgcolor" value="#000000" />')
	document.write('<embed src='+path+' quality="high" wmode="transparent" bgcolor="#000000" width="920" height="460" name="movie" align="middle" allowscriptaccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />')
	document.write('</object>')
}


/* 「ページのTOPへ戻る」設定 */

/* html記述例：<a href="#TOP" onkeypress="jumpToPageTop();return false;" onclick="jumpToPageTop();return false;">▲ページTOPへ</a> */

function getScrollLeft() { 
 if ((navigator.appName.indexOf("Microsoft Internet Explorer",0) != -1)) {

  /*WinIE6標準モード稼動オブジェクト差異対応
    WinIE6標準モードとそれ以外で、それぞれ稼動しているオブジェクトを取り出す*/
  docele=(document.compatMode=="CSS1Compat")?document.documentElement:document.body;

  return docele.scrollLeft;

 } else if (window.pageXOffset) {
  return window.pageXOffset;
 } else {
  return 0;
 }
}

function getScrollTop() { 
 if ((navigator.appName.indexOf("Microsoft Internet Explorer",0) != -1)) {

  /*WinIE6標準モード稼動オブジェクト差異対応
    WinIE6標準モードとそれ以外で、それぞれ稼動しているオブジェクトを取り出す*/
  docele=(document.compatMode=="CSS1Compat")?document.documentElement:document.body;
  
  return docele.scrollTop;

 } else if (window.pageYOffset) {
  return window.pageYOffset;
 } else {
  return 0;
 }
}

var pageScrollTimer;

function pageScroll(toX,toY,frms,cuX,cuY) { 
 if (pageScrollTimer) clearTimeout(pageScrollTimer);
 if (!toX || toX < 0) toX = 0;
 if (!toY || toY < 0) toY = 0;
 if (!cuX) cuX = 0 + getScrollLeft();
 if (!cuY) cuY = 0 + getScrollTop();
 if (!frms) frms = 6;

 if (toY > cuY && toY > (getAnchorPosObj('end','enddiv').y) - getInnerSize().height) toY = (getAnchorPosObj('end','enddiv').y - getInnerSize().height) + 1;
 cuX += (toX - getScrollLeft()) / frms; if (cuX < 0) cuX = 0;
 cuY += (toY - getScrollTop()) / frms;  if (cuY < 0) cuY = 0;
 var posX = Math.floor(cuX);
 var posY = Math.floor(cuY);
 window.scrollTo(posX, posY);

 if (posX != toX || posY != toY) {
  pageScrollTimer = setTimeout("pageScroll("+toX+","+toY+","+frms+","+cuX+","+cuY+")",6);
 }
}

function jumpToPageTop() { 
  pageScroll(0,0,8);
}


/* rolloverの設定 */

document.sdGetElementsByClassName = function(myClass, myTag, myRoot) {
	var d = document;
	var nodes = [];
	var myXPR;
	var myObj;
	try {
		myXPR = d.evaluate('.//' + (myTag || '*') + '[contains(@class, "' + myClass + '")]', (d.getElementById(myRoot) || d), null, XPathResult.ANY_TYPE, null);
		myObj = myXPR.iterateNext();
		while (myObj) {
			nodes.push(myObj);
			myObj = myXPR.iterateNext();
		}
	} catch(e) {
		var classes;
		var objects = (d.getElementById(myRoot) || d).getElementsByTagName((myTag || '*'));
		var i;
		var j;
		for(i = 0; i < objects.length; i++) {
			myObj = objects[i];
			if(myObj.className) {
				classes = myObj.className.split(/\s+/);
				for(j = 0; j < classes.length; j++) {
					if(classes[j] == myClass) {
						nodes[nodes.length] = myObj;
						break;
					}
				}
			}
		}
	}
	return (nodes.length > 0) ? nodes : null;
};

function sdRollOverInit(myTag, myRoot) {
	if(document.getElementsByTagName) {
		var myTargets = document.sdGetElementsByClassName('rollover', myTag, myRoot);
		if(myTargets) {
			var i;
			var imgSrc
			var imgExt;
			var imgAlt = [];
			var imgPre = [];
			var imgTmp;
			for(i = 0; i < myTargets.length; i++) {
				imgSrc = myTargets[i].getAttribute('src');
				imgExt = imgSrc.slice(imgSrc.lastIndexOf('.', (imgSrc.length - 1)));
				imgAlt[imgSrc] = imgSrc.replace(imgExt, 'o' + imgExt);
				// preload
				imgPre[imgSrc] = new Image();
				imgPre[imgSrc].src = imgAlt[imgSrc];
				// set
				myTargets[i].onmouseover = function() {
					imgTmp = this.getAttribute('src');
					this.setAttribute('src', imgAlt[imgTmp]);
				};
				myTargets[i].onmouseout = function() {
					if(!imgTmp) {
						return;
					} else {
						this.setAttribute('src', imgTmp);
					}
				};
			}
		}
	}
}

function sdRollOverExec() {
	sdRollOverInit('img', 'menu');
	sdRollOverInit('img', 'navi');
	sdRollOverInit('img', 'column2-right');
}

if(window.addEventListener) {
	window.addEventListener('load', sdRollOverExec, false);
}
else if(window.attachEvent) {
	window.attachEvent('onload', sdRollOverExec);
}


/* ie6png透過 */
if (typeof IEPNGFIX == 'undefined') {
//--============================================================================

var IEPNGFIX = {
	blank:  'http://www.isella.com/aod2/images/blank.gif',
	filter: 'DXImageTransform.Microsoft.AlphaImageLoader',

	fixit: function (elem, src, method) {
		if (elem.filters[this.filter]) {
			var filter = elem.filters[this.filter];
			filter.enabled = true;
			filter.src = src;
			filter.sizingMethod = method;
		}
		else {
			elem.style.filter = 'progid:' + this.filter +
				'(src="' + src + '",sizingMethod="' + method + '")';
		}
	},

	fixwidth: function(elem) {
		if (elem.currentStyle.width == 'auto' &&
			elem.currentStyle.height == 'auto') {
			elem.style.width = elem.offsetWidth + 'px';
		}
	},

	fixchild: function(elem, recursive) {
		if (!/MSIE (5\.5|6\.|7\.)/.test(navigator.userAgent)) return;

		for (var i = 0, n = elem.childNodes.length; i < n; i++) {
			var childNode = elem.childNodes[i];
			if (childNode.style) {
				if (childNode.style.position) {
					childNode.style.position = childNode.style.position;
				}
				else {
					childNode.style.position = 'relative';
				}
			}
			if (recursive && childNode.hasChildNodes()) {
				this.fixchild(childNode, recursive);
			}
		}
	},

	fix: function(elem) {
		if (!/MSIE (5\.5|6\.|7\.)/.test(navigator.userAgent)) return;

		var bgImg =
			elem.currentStyle.backgroundImage || elem.style.backgroundImage;

		if (elem.tagName == 'IMG') {
			if ((/\.png$/i).test(elem.src)) {
				this.fixwidth(elem);
				this.fixit(elem, elem.src, 'scale');
				elem.src = this.blank;
				elem.runtimeStyle.behavior = 'none';
			}
		}
		else if (bgImg && bgImg != 'none') {
			if (bgImg.match(/^url[("']+(.*\.png)[)"']+$/i)) {
				var s = RegExp.$1;
				this.fixwidth(elem);
				elem.style.backgroundImage = 'none';
				this.fixit(elem, s, 'scale'); // crop | image | scale

				if (elem.tagName == 'A' && elem.style) {
					if (!elem.style.cursor) {
						elem.style.cursor = 'pointer';
					}
				}

				this.fixchild(elem);
				elem.runtimeStyle.behavior = 'none';
			}
		}
	},

	hover: function(elem, hvImg) {
		var bgImg = elem.style.backgroundImage;

		if (!bgImg && elem.currentStyle) bgImg = elem.currentStyle.backgroundImage;

		if (elem.tagName == 'IMG' && hvImg) {
			var image = elem.src;
			elem.onmouseover = function() {
				elem.src = hvImg;
				IEPNGFIX.fix(elem);
			};
			elem.onmouseout = function() {
				elem.src = image;
				IEPNGFIX.fix(elem);
			};
		}
		else if (bgImg && bgImg != 'none' && hvImg) {
			elem.onmouseover = function() {
				elem.style.backgroundImage = 'url(' + hvImg + ')';
				IEPNGFIX.fix(elem);
			};
			elem.onmouseout = function() {
				elem.style.backgroundImage = bgImg;
				IEPNGFIX.fix(elem);
			};
		}

		IEPNGFIX.fix(elem);
	}
};

//--============================================================================
} // end if (typeof IEPNGFIX == 'undefined')


