/*
	fade animation
*/
var thumb;
var thumbTimer;

jQuery.extend(jQuery.easing,{
	easeOutQuad: function (x, t, b, c, d) {
		return -c *(t/=d)*(t-2) + b;
	}
});
$(function(){
	$('ul.mainimg li').each(function(index){
		if(index == 0) $(this).show(); 
		if(index > 0) $(this).hide(); 
	});
	$('ul.marker li').each(function(index){
		if(index == 0) $('img',this).attr('src','asset/images/mark_on.png');
	});
	$('ul.photo').each(function(ind){
		$('li',this).each(function(index){
			if(index == 0) $(this).show(); 
			if(index > 0) $(this).hide();
		});
	});
	$('article.products').hover(function(){
		$(this).css({backgroundColor:'#f5f5f5'});
		thumb=$('ul',this);
		thumbTimer=setInterval(updateThumb,2000);
		updateThumb();
	},function(){
		clearInterval(thumbTimer);
		$(this).css({backgroundColor:'#ffffff'});
	});
});
function initMainImg(){
	var interval = 4000;
	setInterval(updateMainImg,interval);
}

function updateThumb(){
	var fadeInSpeed = 300;
	var fadeOutSpeed = 250;
	var delay = 200;
	$(thumb).each(function(index){
		$('li:visible', this).animate({opacity:"toggle"}, fadeOutSpeed, 'easeOutQuad', function(){
			var target = $(this);
			setTimeout(function(){
				if(target.is('li:last-child')){
					$('li:first',thumb).animate({opacity:"toggle"}, fadeInSpeed, 'easeOutQuad');
				}else{
					target.next().animate({opacity:"toggle"}, fadeInSpeed, 'easeOutQuad');
				}
			},delay);
		});
	});
}

function updateMainImg(){
	var fadeInSpeed = 500;
	var fadeOutSpeed = 250;
	var delay = 400;
	$('ul.mainimg').each(function(index){
		$('li:visible', this).animate({opacity:"toggle"}, fadeOutSpeed, 'easeOutQuad', function(){
			var target = $(this);
			setTimeout(function(){
				if(target.is('li:last-child')){
					$('ul.mainimg li:first').animate({opacity:"toggle"}, fadeInSpeed, 'easeOutQuad');
				}else{
					target.next().animate({opacity:"toggle"}, fadeInSpeed, 'easeOutQuad');
				}
			},delay);
		});
	});
	var nextTarget;
	$('ul.marker li').each(function(index){
		var img = $('img',this).attr('src');
		if(img=='asset/images/mark_on.png'){
			if($(this).is('li:last-child')){
				nextTarget = $('ul.marker li:first');
			}else{
				nextTarget = $(this).next();
			}
		}
		$('img',this).attr('src','asset/images/mark_off.png');
	});
	$('img',nextTarget).attr('src','asset/images/mark_on.png');
}
//////////////////////////////////////////////////////////////////
if (window.addEventListener) {
	window.addEventListener("load",initMainImg,false);
}else if (window.attachEvent && document.getElementById) {
	window.attachEvent("onload",initMainImg);
}



/*
	onDocumentTreeLoaded
*/
$('document').ready(function(){
	
	// アンカースクロール
	$('#contentsNav a[href*=#]').click(function() {
		var $target = $(this.hash);
		var targetY = $target.offset().top - 130;
		$('html,body').animate({scrollTop: targetY}, {duration:1200, easing:'easeOutQuad'});
		return false;
	});
	// アンカースクロール 2
	$('#mainHeader a[href*=#], #productsNav a[href*=#], #contents a[href*=#]').bind({
		mousedown:function(event){
			return false;
		},
		click:function(event){
			var $target = $(this.hash);
			var targetY = $target.offset().top - 130;
			$('html,body').animate({scrollTop: targetY}, {duration:1200, easing:'easeOutQuad'});
			return false;
		}
	});
	
	// ナビゲーション位置固定
	$(window).scroll( function(){
		if($(window).scrollTop() > 199){
			$("#contentsNav").css({position:"fixed", top:"125px"});
		}else{
			$("#contentsNav").css({position:"absolute", top:"325px"});
		}
	});
	
});

function setHashScroll (_hash) {
	var $target = $(_hash);
	var targetY = $target.offset().top - 120;
	$('html,body').animate({scrollTop: targetY}, {duration:800, easing:'easeOutQuad'});
	return false;
}

/*
	slideBox
*/
$(function(){
	$("#companyProfile .open").click(function(){
		$("#companyProfile .slider").slideToggle("slow");
	});
	$("#service .open").click(function(){
		$("#service .slider").slideToggle("slow");
	});
	$("#worksAndProducts .open").click(function(){
		$("#worksAndProducts .slider").slideToggle("slow");
	});
	$("#access .open").click(function(){
		$("#access .slider").slideToggle("slow");
	});
	$("#jobs .open").click(function(){
		$("#jobs .slider").slideToggle("slow");
	});
	$("#contact .open").click(function(){
		$("#contact .slider").slideToggle("slow");
	});
});

/*
	クラス追加・削除
*/
$(function(){
	$("#companyProfile header").click(function(){
		var d = $('#companyProfile header');
		if (d.hasClass('selected')){
			d.removeClass('selected');
		}else{
			d.addClass('selected');
		}
	});
	$("#service header").click(function(){
		var d = $('#service header');
		if (d.hasClass('selected')){
			d.removeClass('selected');
		}else{
			d.addClass('selected');
		}
	});
	$("#worksAndProducts header").click(function(){
		var d = $('#worksAndProducts header');
		if (d.hasClass('selected')){
			d.removeClass('selected');
		}else{
			d.addClass('selected');
		}
	});
	$("#access header").click(function(){
		var d = $('#access header');
		if (d.hasClass('selected')){
			d.removeClass('selected');
		}else{
			d.addClass('selected');
		}
	});
	$("#jobs header").click(function(){
		var d = $('#jobs header');
		if (d.hasClass('selected')){
			d.removeClass('selected');
		}else{
			d.addClass('selected');
		}
	});
	$("#contact header").click(function(){
		var d = $('#contact header');
		if (d.hasClass('selected')){
			d.removeClass('selected');
		}else{
			d.addClass('selected');
		}
	});
});

