(function($) {
/*-------------------------------------------------------

	[実行]
	関数の実行をここで行います。
	※通常編集するのはここのみです。
	※必要の無いものはコメントアウトしてください。

-------------------------------------------------------*/
	
	$(function() {
	
		/*BASE関数の実行*/
		//何番目のボックスをマージンカットしたいかをxnで指定。
		mrCutFuncTarget = [
		    '.clm3Box li:nth-child(3n)',
		    '.clm4Box li:nth-child(4n)',
		    '.clm5Box li:nth-child(5n)',
		    '.clm3FrameBox li:nth-child(3n)'
		];
		mrCutFunc();
		eqHeightFunc();    //高さを揃えたいliの親要素のulにクラス"eqHeight"を付加。
		eqHeightsFunc();   //高さを揃えたいliの親要素のulにクラス"eqHeights"を付加。
		stripeTableFunc(); //ストライプ柄にしたいtable要素にクラス"stripeTable"を付加。色はpage.cssのtable settingで行う。
		switchListFunc();   //dl要素にクラス"switchList"を付加。
		accordionListFunc();   //dl要素にクラス"accordionList"を付加。

		/*LIB関数の実行*/
		//※外部ライブラリの実行をbase.jsで行いたい場合はここに記述
	
	});


/*-------------------------------------------------------

	[BASE関数]
	サイトに使用する基本的な関数群です。

-------------------------------------------------------*/

	/*最左端カラムボックスのマージンのカット*/
	function mrCutFunc() {
		$.each(mrCutFuncTarget, function(key,value) {
		    $(value).addClass('mrCut');
		});
	}

	/*横三つ並びのボックスの高さ合わせ*/
	function eqHeightFunc() {
		var maxHeight = 0;
		var row = 3;
		$('.eqHeight li').each(
			function(e){
				if( $(this).height() > maxHeight ) {
					maxHeight = $(this).height();
				}
				$(this).addClass('target');
				if( e%row == row-1 ) {
					$('li.target').height(maxHeight).removeClass('target');
					maxHeight = 0;
				}
			}
		);
		$('li.target').removeClass('target');
	}
	

	/*横三つ並びのボックスがulくくりで1ページに複数存在する場合のボックスの高さ合わせ*/	
	function eqHeightsFunc() {
		for( var i = 0; i < $('.eqHeights').length; i++ ) {
			var maxHeight = 0;
			var row = 3;
			$('.eqHeights').eq(i).children('li').each (
				function(e) {
					if($(this).height() > maxHeight) {
						maxHeight = $(this).height();
					}
					$(this).addClass('target');
					if( e%row == row-1 ){
						$('li.target').height(maxHeight).removeClass('target');
						$(this).addClass('tes');
						maxHeight = 0;
					}
				}
			);
			$('li.target').removeClass('target');
		}
	}

	/*ストライプのテーブル*/
	function stripeTableFunc() {
		$('table.stripeTable tr:even td').addClass('stripeColor');
	}
	
	/*開閉リストナビ*/
	function switchListFunc() {
		$('.switchList dd').hide();
		$('.switchList dt')
			.toggle(
				function() {
					$('+dd',this)
						.slideDown(300)
					.end()
						.addClass('plus').removeClass('minus');
				},
				function() {
					$('+dd',this)
						.slideUp(300)
					.end()
						.addClass('minus').removeClass('plus');
				}
			)
		;
	}
	
	/*アコーディオンリストナビ*/
	function accordionListFunc() {
		$('.accordionList dd:gt(0)').hide();
		$('.accordionList dt')
			.click(function() {
				//開いているリストのクリック
				if($('+dd',this).css('display') == 'block'){
					$('+dd',this).slideUp(300);
				}
				//開いていないリストのクリック
				if($('+dd',this).css('display') != 'block'){
					$('.accordionList dd').slideUp(300);
					$('+dd',this).slideDown(300);
				}
			})
		;
	}
	
		
})(jQuery);

