$(function(){
	imagePreLoad('img1','/_common/images/bg_entry.gif',0);
	imagePreLoad('img2','/_common/images/bg_entry_main.gif',0);
	imagePreLoad('img3','/_common/images/bg_entry_head.gif',0);
	imagePreLoad('img4','/_common/images/bg_entry_foot.gif',1);

 $('._hover').hover(
  function(){ $(this).fadeTo(100, 0.7); },
  function(){ $(this).fadeTo(500, 1.0); }
 );

});


function imagePreLoad(obj,val,flg) {
    var d = document;
    var img = obj;
    d.img = new Image();
    d.img.src = val;
				if(flg == 1){	setWindowSize();	}
}

function setWindowSize(){
 var windowHeight = $(window).height();
 var mainHeight = $("div#ct_foot").height();
	if(mainHeight<windowHeight) {
		if(windowHeight < 725){$('div#ct_foot').css({"height":725});}
		else{$('div#ct_foot').css({"height":windowHeight-30});}
 }	
}

function writeSwf(src,target,width,height,param,id,align,scale,salign,wmode,bgcolor,version){
	tgt = '#' + target;
	var swf = '<object ';
	swf += 'classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" ';
	swf += 'codebase="https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=' + version + '" ';
	swf += 'width="' + width + '" ';
	swf += 'height="' + height + '" ';
	swf += 'id="' + id + '" ';
	swf += 'align="' + align + '">';
	swf += '<param name="allowScriptAccess" value="sameDomain" />';
	swf += '<param name="allowFullScreen" value="false" />';
	swf += '<param name="movie" value="' + src + '?' + param + '" />';
	swf += '<param name="menu" value="false" />';
	swf += '<param name="quality" value="best" />';
	swf += '<param name="scale" value="' + scale + '" />';
	swf += '<param name="salign" value="' + salign + '" />';
	swf += '<param name="wmode" value="' + wmode + '" />';
	swf += '<param name="bgcolor" value="' + bgcolor + '" />';
	swf += '<embed src="' + src + '?' + param + '" ';
	swf += 'menu="false" ';
	swf += 'quality="best" ';
	swf += 'scale="' + scale + '" ';
	swf += 'salign="' + salign + '" ';
	swf += 'wmode="' + wmode + '" ';
	swf += 'bgcolor="' + bgcolor + '" ';
	swf += 'width="' + width + '" ';
	swf += 'height="' + height + '" ';
	swf += 'name="' + id + '" ';
	swf += 'align="' + align + '" ';
	swf += 'allowScriptAccess="always" ';
	swf += 'allowFullScreen="false" ';
	swf += 'type="application/x-shockwave-flash" ';
	swf += 'pluginspage="https://www.macromedia.com/go/getflashplayer"';
	swf += '/></object>';
$(tgt).html(swf);
}


function writeLogo(){
var src='<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="185" height="137" id="logo" align="left"><param name="allowScriptAccess" value="sameDomain" /><param name="allowFullScreen" value="false" /><param name="movie" value="/_common/swf/logo.swf" /><param name="quality" value="best" /><param name="scale" value="noscale" /><param name="salign" value="lt" /><param name="wmode" value="transparent" /><param name="bgcolor" value="#ffffff" />	<embed src="/_common/swf/logo.swf" quality="best" scale="noscale" salign="lt" wmode="transparent" bgcolor="#ffffff" width="185" height="137" name="logo" align="left" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /></object>';
window.document.write(src);
}

function setVertical(n){
	var w = $(n).outerWidth();
	var h = $(n).outerHeight();
	var ph = $(n).parent().height();
/*
alert('w='+w);
	alert('h='+h);
	alert('ph='+ph);
*/
	if (h <= w){
		var mt = (ph - h)/2;
		$(n).css({"margin-top": mt});
	}
}

function setVerticalOnClick(tgt){
	var set_tgt = $(tgt + ' div a img');
	var w = set_tgt.outerWidth();
	var h = set_tgt.outerHeight();
	var ph = set_tgt.parent().height();
	if (h <= w){
		var mt = (ph - h)/2;
		set_tgt.css({"margin-top": mt});
	}
}


function switchMainPh(showID){
	var show_tgt = '#box'+showID;
	var hide_tgt = '#box'+ _default_box;
	$(hide_tgt).hide();
	$(show_tgt).show();
	_default_box = showID;
	//表示した画像のタテイチを調整
	//表示した画像のタテイチを調整
	setVerticalOnClick(show_tgt);
	var set_tgt = $(show_tgt + ' div a img');
}


(function(){
    var easing = 0.25;
    var interval = 20;
    var d = document;
    var targetX = 0;
    var targetY = 0;
    var targetHash = '';
    var scrolling = false;
    var splitHref = location.href.split('#');
    var currentHref_WOHash = splitHref[0];
    var incomingHash = splitHref[1];
    var prevX = null;
    var prevY = null;

    // ドキュメント読み込み完了時にinit()を実行する
    addEvent(window, 'load', init);

    // ドキュメント読み込み完了時の処理
    function init(){
        // ページ内リンクにイベントを設定する
        setOnClickHandler();
        // 外部からページ内リンク付きで呼び出された場合
        if(incomingHash){
            if(window.attachEvent && !window.opera){
                // IEの場合はちょっと待ってからスクロール
                setTimeout(function(){scrollTo(0,0);setScroll('#'+incomingHash);},50);
            }else{
                // IE以外はそのままGO
                scrollTo(0, 0);
                setScroll('#'+incomingHash);
            }
        }
    }

    // イベントを追加する関数
    function addEvent(eventTarget, eventName, func){
        if(eventTarget.addEventListener){
            // モダンブラウザ
            eventTarget.addEventListener(eventName, func, false);
        }else if(window.attachEvent){
            // IE
            eventTarget.attachEvent('on'+eventName, function(){func.apply(eventTarget);});
        }
    }
    
    function setOnClickHandler(){
        var links = d.links;
        for(var i=0; i<links.length; i++){
            // ページ内リンクならスクロールさせる
            var link = links[i];
            var splitLinkHref = link.href.split('#');
            if(currentHref_WOHash == splitLinkHref[0] && d.getElementById(splitLinkHref[1])){
                addEvent(link, 'click', startScroll);
            }
        }
    }

    function startScroll(event){
        // リンクのデフォルト動作を殺す
        if(event){ // モダンブラウザ
            event.preventDefault();
            //alert('modern');
        }else if(window.event){ // IE
            window.event.returnValue = false;
            //alert('ie');
        }
        // thisは呼び出し元になってる
        setScroll(this.hash);
    }

    function setScroll(hash){
        // ハッシュからターゲット要素の座標をゲットする
        var targetEle = d.getElementById(hash.substr(1));
        if(!targetEle)return;
        // スクロール先座標をセットする
        var ele = targetEle
        var x = 0;
        var y = 0;
        while(ele){
            x += ele.offsetLeft;
            y += ele.offsetTop;
            ele = ele.offsetParent;
        }
        targetX = x;
        targetY = y;
        targetHash = hash;
        // スクロール停止中ならスクロール開始
        if(!scrolling){
            scrolling = true;
            scroll();
        }
    }

    function scroll(){
        var currentX = d.documentElement.scrollLeft||d.body.scrollLeft;
        var currentY = d.documentElement.scrollTop||d.body.scrollTop;
        var vx = (targetX - currentX) * easing;
        var vy = (targetY - currentY) * easing;
        var nextX = currentX + vx;
        var nextY = currentY + vy;
        if((Math.abs(vx) < 1 && Math.abs(vy) < 1)
           || (prevX === currentX && prevY === currentY)){
            // 目標座標付近に到達していたら終了
            scrollTo(targetX, targetY);
            scrolling = false;
            location.hash = targetHash;
            prevX = prevY = null;
            return;
        }else{
            // 繰り返し
            scrollTo(parseInt(nextX), parseInt(nextY));
            prevX = currentX;
            prevY = currentY;
            var scope = this;
            setTimeout(function(){scroll.apply(scope)},interval);
        }
    }

}());

