/*----------------------------------------------------------------
スムーススクロール
----------------------------------------------------------------*/
(function(){var marginTop=10;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;addEvent(window,'load',init);function init(){setOnClickHandler();if(incomingHash){if(window.attachEvent && !window.opera){setTimeout(function(){scrollTo(0,0);setScroll('#'+incomingHash);},50);}else{scrollTo(0,0);setScroll('#'+incomingHash);}}}function addEvent(eventTarget,eventName,func){if(eventTarget.addEventListener){eventTarget.addEventListener(eventName,func,false);}else if(window.attachEvent){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();}else if(window.event){window.event.returnValue=false;}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;}var maxScroll=getScrollMaxXY();targetX=Math.min(x,maxScroll.x);targetY=Math.min(y,maxScroll.y);targetHash=hash;if(!scrolling){scrolling=true;scroll();}}function scroll(){var currentX=d.documentElement.scrollLeft||d.body.scrollLeft;var currentY=d.documentElement.scrollTop-marginTop||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-marginTop)){/*scrollTo(targetX,targetY);location.hash=targetHash;*/prevX=prevY=null;scrolling=false;return;}else{scrollTo(parseInt(nextX),parseInt(nextY));prevX=currentX;prevY=currentY-marginTop;setTimeout(function(){scroll()},interval);}}function getDocumentSize(){return{width:Math.max(document.body.scrollWidth,document.documentElement.scrollWidth),height:Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)};}function getWindowSize(){var result={};if(window.innerWidth){var box=d.createElement('div');with(box.style){position='absolute';top='0px';left='0px';width='100%';height='100%';margin='0px';padding='0px';border='none';visibility='hidden';}d.body.appendChild(box);var width=box.offsetWidth;var height=box.offsetHeight;d.body.removeChild(box);result={width:width,height:height};}else{result={width:d.documentElement.clientWidth||d.body.clientWidth,height:d.documentElement.clientHeight||d.body.clientHeight};}return result;}function getScrollMaxXY(){if(window.scrollMaxX && window.scrollMaxY){return{x:window.scrollMaxX,y:window.scrollMaxY};}var documentSize=getDocumentSize();var windowSize=getWindowSize();return{x:documentSize.width - windowSize.width,y:documentSize.height - windowSize.height};}}());


/*----------------------------------------------------------------
Droppy （globalNavの2階層目のドロップダウンメニュー）
----------------------------------------------------------------*/
/*
 * Droppy 0.1.2
 * (c) 2008 Jason Frame (jason@onehackoranother.com)
 */
$.fn.droppy=function(options){options=$.extend({speed:300},options||{});this.each(function(){var root=this,zIndex=1000;
function getSubnav(ele){if(ele.nodeName.toLowerCase()=='li'){var subnav=$('>ul',ele);return subnav.length?subnav[0]:null;}else{return ele;}}
function getActuator(ele){if(ele.nodeName.toLowerCase()=='ul'){return $(ele).parents('li')[0];}else{return ele;}}
function hide(){var subnav=getSubnav(this);if(!subnav) return;$.data(subnav,'cancelHide',false);setTimeout(
	function(){
		if(!$.data(subnav,'cancelHide')){$(subnav).slideUp(options.speed);}
	
	},100);

	//Discographyの場合
	if(this.id =="gnavi-discography"){
		setTimeout(function(){
			$("#discographyImage").attr("src",$("#discographyImage").attr("src").replace(/^(.+)_on(\.[a-z]+)$/, "$1$2"))},430);
	}

	}
function show(){var subnav=getSubnav(this);if(!subnav) return;$.data(subnav,'cancelHide',true);$(subnav).css({zIndex:zIndex++}).slideDown(options.speed);
	if(this.nodeName.toLowerCase()=='ul'){var li=getActuator(this);$(li).addClass('hover');$('>a',li).addClass('hover');}
	//Discographyの場合
	if(this.id =="gnavi-discography"){
		if(!$("#discographyImage").attr("src").match(/^(.+)_on(\.[a-z]+)$/)){ //画像名に_onがついていない場合
			$("#discographyImage").attr("src",$("#discographyImage").attr("src").replace(/^(.+)(\.[a-z]+)$/, "$1_on$2"));
		}
	}
}
$('ul,li',this).hover(show,hide);
/*$('li',this).hover(function(){
	$(this).addClass('hover');$('>a',this).addClass('hover');
		
	//Discographyの場合
		if(this.id =="gnavi-discography"){
			$("#discographyImage").attr("src",$("#discographyImage").attr("src").replace(/^(.+)(\.[a-z]+)$/, "$1_on$2"));
		}
	},function(){
		$(this).removeClass('hover');
		$('>a',this).removeClass('hover');
	});*/
});
};

$(function(){
	/*----------------------------------------------------------------
	Droppy（gnaviドロップダウン）
	----------------------------------------------------------------*/
	$("#gnavi").droppy();  	
	
	/*----------------------------------------------------------------
	globalnavフェード処理 （img要素に.fade追加して使用）
	----------------------------------------------------------------*/
	/*$("img.fade").fadeTo(0,1.0);
	$("img.fade").hover(function(){
			$(this).fadeTo(200,0);
		},
		function(){
			$(this).fadeTo(300,1.0);
		});*/
		
	/*----------------------------------------------------------------
	ロールオーバー （img要素に.over追加して使用）
	----------------------------------------------------------------*/
    $("img.over").mouseover(function(){
			$(this).attr("src",$(this).attr("src").replace(/^(.+)(\.[a-z]+)$/, "$1_on$2"))
		}).mouseout(function(){
			$(this).attr("src",$(this).attr("src").replace(/^(.+)_on(\.[a-z]+)$/, "$1$2"));
		}).each(function(){
			$("<img>").attr("src",$(this).attr("src").replace(/^(.+)(\.[a-z]+)$/, "$1_on$2"))
    });
	
	/*----------------------------------------------------------------
	クラスの追加
	----------------------------------------------------------------*/
	$('body :first-child').addClass('firstChild'); //最後の要素
	$('body :last-child').addClass('lastChild'); //最初の要素

});

function snsLink(url){
	window.open(url,"tweet","width=550,height=450");
}



