
var tab = {
	//////////////////////////////////////////////////////////////タブの初期表示設定
	//0：feature、1：満タン、2：フォント、3：デクスイメージ
	//末尾のカンマを消さないで下さい。
	defaultShow : 0,
	//--------------------------------------------------------------ここまで//
	tabTotal : {
	//////////////////////////////////////////////////////////////////タブの数
	//0：3タブ、1：4タブ
	//100304現在3タブは機能しません。
	//末尾のカンマを消さないで下さい。
		Total : 1,
	//--------------------------------------------------------------ここまで//
		plus: ''
	},
	ini : [
	//////////////////////////////////////////////////////////////各要素設定
	//	index：画像の接頭語
	//		mantanに設定した場合以下のように使用されます。
	//			・タブのデフォルト画像　/img/mantan.gif
	//			・タブのアクティブ画像　/img/mantan_o.gif
	//			・タブ中のh2の代替画像　/img/mantan_copy.gif
	//	page：タブをオンマウスした際に表示されるエリア（下）。IDを指定。
	//　タブの数を3に設定した場合は一番上が非表示となります。
		{ 'index' : 'feature', 'page' : 'page1' },
		{ 'index' : 'mantan', 'page' : 'page2' },
		{ 'index' : 'deximage', 'page' : 'page4' }
	///////////////////////////////////////////////////////////////////////
	],
	tabs : new Array,
	pages : new Array,
	nowVisible : new Number,
	tabLengthAdjustment : 0,
	iniLength : new Number,
	init : function(slidesSettings){
		tab.iniLength = tab.ini.length;
		tab.slide.ini = slidesSettings.concat(slidesSettings);
		delete slidesSettings;
		tab.adjustment();
		tab.tabSet();
		tab.slide.set();
		tab.setH3();
		tab.preLoad();
	},
	adjustment : function(){//タブの数調整
		if(tab.tabTotal.Total!==0) tab.tabTotal.plus = '2'; else tab.tabLengthAdjustment++;
		var temp = document.getElementById('tab').getElementsByTagName('li');
		var tempLength = temp.length;
		for (i=0; i<tempLength; i++) tab.tabs[tab.tabLengthAdjustment+i] = temp[i];
	},
	tabSet : function(){//タブ関連
		var h2Elements = document.getElementsByTagName('h2');
		var width = (tab.tabTotal.Total===0) ? '155' : '228';
		for (i=tab.tabLengthAdjustment; i<tab.iniLength; i++) {
			tab.pages[i] = document.getElementById(tab.ini[i]['page']);
			tab.setH2(i,h2Elements,width);
			(function(i){ tab.tabs[i].onmouseover = function(){tab.showpage(i);} })(i);
//			tab.tdAction.defaultAction(i);
		}
		tab.linkTarget = document.getElementById('linkTarget');
		tab.showpage(tab.defaultShow);
	},
	slide : {
		ini : new Array,
		lists : new Array,
		navLeft : new Object,
		navRight : new Object,
		nowPoint : {
			//現在の#linkTargetのleftのpx値
			//デフォ値は#linkTargetのleftと同じにすること
			a : -295,
			//変動値。スライドする度に++とか
			b : 0,
			//拡大したliを元に戻すときに使うテンポラリ値
			//#linkTargetのleftのpx値
			c : 0
		},
		set : function(){
			tab.slide.listsFunc();
			tab.slide.navLeft = document.getElementById('linkTargetLeft');
			tab.slide.navLeft.onclick = function(){ tab.slide.leftRightFunc('left'); };
			tab.slide.navRight = document.getElementById('linkTargetRight');
			tab.slide.navRight.onclick = function(){ tab.slide.leftRightFunc('right'); };
		},
		listsFunc : function(){
			tab.slide.lists = tab.linkTarget.getElementsByTagName('li');
			$(tab.slide.lists).clone(true).appendTo(tab.linkTarget);
			var temp2 = tab.slide.lists.length;
			for(i=0; i<temp2; i++){
				(function(i){
					var img1 = tab.slide.lists[i].getElementsByTagName('img')[0];
					var p = tab.slide.lists[i].getElementsByTagName('p');
					img1.onclick = p[0].onclick = function(){ tab.slide.show(this.parentNode,i); };
					p[1].style.left = tab.slide.ini[i].bL;
					p[1].style.top = tab.slide.ini[i].bT;
					p[1].getElementsByTagName('a')[0].style.color = tab.slide.ini[i].bC;
				})(i);
			}
			tab.slide.lists[0].style.display = 'block';
			$(tab.slide.lists[1]).fadeIn(300, (function(){
				$(tab.slide.lists[2]).fadeIn(300, (function(){
					$(tab.slide.lists[3]).fadeIn(300, (function(){
						$(tab.slide.lists[4]).fadeIn(300, (function(){
							for(i=5; i<temp2; i++) tab.slide.lists[i].style.display = 'block';
							tab.slide.navLeft.style.display = tab.slide.navRight.style.display = 'block';
						}))
					}));
				}));
			}));
		},
		leftRightFunc : function(a){
			if(a=='left'){
				tab.slide.nowPoint.b++;
				$(tab.slide.lists[tab.slide.lists.length-1]).css('width','0').prependTo(tab.linkTarget).animate({width:'220px'},100,(function(){
					$(this).animate({width:'200px'},150);
				}));
			}else{
				tab.slide.nowPoint.b--;
				$(tab.linkTarget).append(tab.slide.lists[0]).css('paddingLeft','200px');
				$(tab.linkTarget).animate({paddingLeft:'0'},100,(function(){
					$(tab.slide.lists[0]).css('marginLeft','-20px').animate({marginLeft:'0'},150);
				}));
			}
			if(tab.slide.lists.length<=tab.slide.nowPoint.b) tab.slide.nowPoint.b=0;
			else if(tab.slide.nowPoint.b<0) tab.slide.nowPoint.b=tab.slide.lists.length-1;
		},
		show : function(a,i){
			var classs = (tab.isIE) ? 'className' : 'class';
			var prevClass = a.getAttribute(classs);
			var d = a.getElementsByTagName('img')[0];
			var e = a.getElementsByTagName('p')[1];
			if(prevClass.indexOf('clicked')!==-1){
				location.href = e.childNodes[0];
				//a.setAttribute(classs,prevClass.replace(' clicked',''));
				//tab.linkTarget.style.left = tab.slide.nowPoint.a+'px';
				//d.src = '/img/'+((d.src.split('.')).reverse()[1].split('/')).reverse()[0]+'_o.jpg';
				//a.style.width = d.style.width = '200px';
				//e.style.left = tab.slide.ini[i].bL;
				//e.style.top = tab.slide.ini[i].bT;
				//e.getElementsByTagName('a')[0].style.color = tab.slide.ini[i].bC;
				//tab.slide.navLeft.style.display = tab.slide.navRight.style.display = 'block';
			}else{
				tab.slide.navLeft.style.display = tab.slide.navRight.style.display = 'none';
				var c = false;
				for(ii=0;ii<tab.slide.nowPoint.b;ii++) if(i==tab.slide.lists.length-tab.slide.nowPoint.b+ii) { c = true; break; };
//var b =tab.slide.nowPoint.b+i-tab.slide.lists.length;
				var b = (0<tab.slide.nowPoint.b&&c)?(tab.slide.nowPoint.b+i-tab.slide.lists.length):tab.slide.nowPoint.b+i;
				d.src = '/img/'+((d.src.split('.')).reverse()[1].split('/')).reverse()[0].substr(0,10)+'.jpg';
				$(tab.linkTarget).animate({left:-b*220+'px'},100);
				e.style.left = tab.slide.ini[i].aL;
				e.style.top = tab.slide.ini[i].aT;
				e.getElementsByTagName('a')[0].style.color = tab.slide.ini[i].aC;
				if(prevClass.indexOf('page')!==-1)　tab.showpage(prevClass.replace('page','')-1);
				a.setAttribute(classs,prevClass+' clicked');
				a.style.width = d.style.width = '715px';
			}
			return false;
		}
	},
	setH2 : function(i,h2Elements,width){//中央カラムタブ画像とh2を画像に変える
			var temp = tab.tabs[i].getElementsByTagName('a')[0];
			temp.innerHTML = '<img src="/img/'+tab.ini[i]['index']+tab.tabTotal.plus+'.jpg" alt="'+temp.innerHTML+'" width="'+width+'" height="70" />';
			h2Elements[i-tab.tabLengthAdjustment].innerHTML = '<img src="/img/'+tab.ini[i]['index']+'_copy.gif" alt="'+h2Elements[i-tab.tabLengthAdjustment].innerHTML+'" height="12" />';
	},
	setH3 : function(){//左カラムのh4を画像に変える
		var h3Elements = document.getElementsByTagName('h4');
		var h3Length = h3Elements.length;
		for (i=0; i<h3Length; i++) h3Elements[i].innerHTML = '<img src="img/mn_0'+(i+1)+'.gif" alt="'+h3Elements[i].innerHTML+'" width="200" height="17" />';
	},
	preLoad : function(){//プリロード
		var preLoad = new Object;
		for(i=tab.tabLengthAdjustment; i<tab.iniLength; i++){
			preLoad[i] = new Object;
			preLoad[i][0] = preLoad[i][1] = new Image();
			preLoad[i][0].src = '/img/'+tab.ini[i]['index']+tab.tabTotal.plus+'.jpg';
			preLoad[i][1].src = '/img/'+tab.ini[i]['index']+tab.tabTotal.plus+'_o.jpg';
		}
		for(i=0; i<tab.slide.lists.length/2; i++){
			preLoad[preLoad.length] = new Image();
			preLoad[preLoad.length].src = '/img/mainimg_'+((i<10)?'0':'')+(i+1)+'.jpg';
		}
	},
	showpage : function(objctI){
		if(objctI!==tab.nowVisible) {
			for(i=tab.tabLengthAdjustment; i<tab.iniLength; i++) {
				(objctI===i)?(function(){
					tab.pages[i].style.display = 'block';
					tab.tabs[i].getElementsByTagName('img')[0].setAttribute('src', '/img/'+tab.ini[i]['index']+tab.tabTotal.plus+'_o.jpg');
					tab.nowVisible = i;
				})():(function(){
					tab.pages[i].style.display = 'none';
					tab.tabs[i].getElementsByTagName('img')[0].setAttribute('src', '/img/'+tab.ini[i]['index']+tab.tabTotal.plus+'.jpg');
				})();
			}
		}
	},
	tdAction : {//タブ内の古い情報をhide
		defaultAction : function(i){
			tab.tdAction[tab.ini[i]['index']] = tab.pages[i].getElementsByTagName('li');
			var temp = tab.tdAction[tab.ini[i]['index']];
			for (i2=0; i2<temp.length; i2++) if (i2>2) temp[i2].style.display = 'none';
		}
	},
	isIE : (document.documentElement.getAttribute("style") == document.documentElement.style)
}



