	/*
		ブラウザチェック
	*/
	function checkBrowser(){
		// userAgent読み込み
		var VarUsrAgt = navigator.userAgent.toLowerCase();

		// OS判断
		isMac = (navigator.appVersion.indexOf("Mac") != -1);

		// ブラウザ判断
		isSF = VarUsrAgt.indexOf("safari") != -1;

		// MACかつSafariの場合
		if(isMac==true && isSF==true) return true;
		else return false;
	}

	/*
		祝日データ有無チェック
	*/
	function holidayDataCheck(){
		// 当月における年取得
		var dateObj = new Date();
		var nowYear = dateObj.getYear();
		nowYear = (nowYear < 2000) ? nowYear+1900 : nowYear;

		// 3ヵ月後の年取得
		dateObj.setMonth(dateObj.getMonth()+3);
		var threeMonth = dateObj.getYear();
		threeMonth = (threeMonth < 2000) ? threeMonth+1900 : threeMonth;

		// 当月における年度の祝日データと3ヶ月後における年度の祝日データ取得できるか
		try{
			var maxNow = eval('holiday.month_of_' +nowYear+ '.length');
			var maxThree = eval('holiday.month_of_' +threeMonth+ '.length');


			return true;
		}catch(e){
			var error = "<p style='color: red; font-weight: bold;'>祝日データがありません。</p>";
			document.getElementById('srchOptionDate').innerHTML=error;
			return false;
		}
	}
	/*
		onload処理
	*/
	function setstay(objTarget){
		var dateObj = new Date();
		// 今日から7日後
		dateObj.setDate(dateObj.getDate() + 7);
		
		var yyyy =dateObj.getYear();
		yyyy = (yyyy < 2000) ? yyyy+1900 : yyyy;

		var mm=dateObj.getMonth()+1;
		var dd=dateObj.getDate();

		if(setstay_day(objTarget)==false) return;

		var objym=document.fmSearch.stay_yymm;
		var objy=document.fmSearch.stay_yyyy;
		var objm=document.fmSearch.stay_mm;
		var objd=document.fmSearch.stay_day;

		try{
			// 初期表示年
			if(mm < 10) objym.value= yyyy + '0' + mm;
			else objym.value = yyyy + '' + mm;
			// 初期年値
			objy.value = yyyy;
			// 初期月値
			objm.value = mm;
			// 初期表示日
			objd.value = dd;
			// 初期表示日付着色
			changeViewColor();

		}catch(e){
		}

		setSearchButton();

	}

	// 曜日表示
	function holidayView(year, month, date, day){
		var max = eval('holiday.month_of_'+year+'.length');
		var checkValue;

		// 曜日配列
		var Day = new Array("(日)", "(月)", "(火)", "(水)", "(木)", "(金)", "(土)", "(祝)");

		for (var i = 0; i < max; i++) {
			checkValue = 'holiday.month_of_' +year+ '[' +i+ '].day_of_' +month;
			// 祝日の場合
			if (date == eval(checkValue))return Day[7];
		}
		// 祝日以外の場合
		return Day[day];
	}

	/*
		日コンボチェンジ処理：年または月コンボを変更したとき日コンボの日数を設定する。
	*/
	function setstay_day(objTarget){
		var objym = document.fmSearch.stay_yymm;
		var sel_day='';

		// セレクトボックスから年月を取得
		var yyyymm=objym.options[objym.selectedIndex].value;
		if(yyyymm == "") return false;

		// 年取得
		var yyyy = yyyymm.substring(0,4);
		if(isNaN(yyyy)) return false;

		// 月取得
		var mm = yyyymm.substring(4);
		if(mm < 10) mm= mm.slice(-1);
		if(isNaN(mm)) return false;

		//うるう年判定
		var month_days= new Array(31,28,31,30,31,30,31,31,30,31,30,31);

		// 2月の日数を変更
		if(((yyyy%4==0)&&(yyyy%100!=0))||(yyyy%400==0)) month_days[1]=29;

		// 曜日取得用日付オブジェクト
		var CheckDay = new Date(yyyy,mm-1,1,00,00,000);

		sel_day='<select name="stay_day" id="stay_dd" onchange="changeViewColor()" onkeyup="changeViewColor()">';

		// MacかつSafariか　それ以外か
		if(checkBrowser()){
			// 着色処理なし
			sel_day +='<option value="1" selected="selected">1日'+holidayView(yyyy,mm,1,CheckDay.getDay())+'</option>';
		}else{
			// 着色処理あり
			sel_day +='<option value="1" selected="selected" style="'+selectBoxValueColor(yyyy,mm,1)+'">1' +'日'+holidayView(yyyy,mm,1,CheckDay.getDay())+'</option>';
		}

		for(var i=2;i<=month_days[mm-1];i++){
			CheckDay.setDate(i);

			// MacかつSafariか　それ以外か
			if(checkBrowser()){
				// 着色処理なし
				sel_day +='<option value="'+i+'">'+i+'日'+holidayView(yyyy,mm,i,CheckDay.getDay())+'</option>';
			}else{
				// 着色処理あり
				sel_day +='<option value="'+i+'" style="'+selectBoxValueColor(yyyy,mm,i)+'">'+i+'日'+holidayView(yyyy,mm,i,CheckDay.getDay())+'</option>';
			}
		}
		sel_day +='</select>';

		document.getElementById(objTarget).innerHTML=sel_day;

		// 検索パラメータに反映
		document.fmSearch.stay_yyyy.value=yyyy;
		document.fmSearch.stay_mm.value=mm;
		return true;
	}

/*
	初期表示年月作成関数
*/	
	function createYear(){

		if(holidayDataCheck()==false){

			setSearchButton();
			
		}else{

		var dateObj = new Date();
		var yyyy=dateObj.getYear();
		yyyy = (yyyy < 2000) ? yyyy+1900 : yyyy;
		var mm=dateObj.getMonth()+1;

		var sel_htm='';
		var count=1;
		var i=mm;

		sel_htm+='<select id="stay_yymm" onchange="setstay_day(\'sp_day\');changeViewColor();">';

		//　初期表示年月取得(7日後)
		var firstDate = new Date();
		firstDate.setDate(dateObj.getDate()+7);
		var thisMonth = firstDate.getMonth()+1;
		var thisYear = firstDate.getYear();
		thisYear = (thisYear < 2000) ? thisYear+1900 : thisYear;

		// 3ヶ月分表示処理
		while(count < 5){
			// 年月更新
			if(i == 13){
				i=1;
				yyyy+=1;
			}

			if(i < 10) valueMM = '0'+''+i;
			else valueMM=''+i;

			// 当月を選択する
			if(i == thisMonth && yyyy == thisYear){
				sel_htm +='<option selected="selected" value="'+yyyy+''+valueMM+'">'+yyyy+'年'+i+'月</option>';
			}else{
				sel_htm +='<option value="'+yyyy+''+valueMM+'">'+yyyy+'年'+i+'月</option>';
			}
			count++;
			i++;
		}
		sel_htm +='</select>';

		document.getElementById('sp_yyyy').innerHTML=sel_htm;
		
		setstay('sp_day');
		
		}
	}

// ボタン色を選択する
function setSearchButton(){

	var search_id=document.fmSearch.h_selectarea.value;
	var obj_btn_hotel=document.getElementById('btn_hotel');
	var obj_btn_plan=document.getElementById('btn_plan');
	var filepass= "";
	if(document.getElementById("buttonType") != null) {
		if(document.getElementById("buttonType").value=="platinum"){
			filepass="/search_skin/platinum";
		}
	}

	if(search_id=='3' || search_id=='4'){
		// 詳細エリアまたはスポットが選択されている場合

		if(holidayDataCheck()==false){
			return;
		}else{
			obj_btn_hotel.src=filepass + '/images/btn_yado.gif';
			obj_btn_plan.src=filepass + '/images/btn_plan.gif';
			obj_btn_hotel.disabled = false;
			obj_btn_plan.disabled = false;
			
			obj_btn_hotel.style.cursor = "auto";
			obj_btn_plan.style.cursor = "auto";

		}
	}else{
		// 詳細エリアまたはスポットが選択されていない場合
		obj_btn_hotel.src=filepass + '/images/btn_yado_gray.gif';
		obj_btn_plan.src=filepass + '/images/btn_plan_gray.gif';
		obj_btn_hotel.disabled = true;
		obj_btn_plan.disabled = true;
		
		obj_btn_hotel.style.cursor = "default";
		obj_btn_plan.style.cursor = "default";
	}
}
/***********************明日あさってページ用↓*******************************/

function createYear4Recently(){
		var dateObj = new Date();
		var yyyy=dateObj.getYear();
		yyyy = (yyyy < 2000) ? yyyy+1900 : yyyy;
		var mm=dateObj.getMonth()+1;

		//　明日年月取得(1日後)
		var firstDate = new Date();
		firstDate.setDate(dateObj.getDate()+1);
		var thisMonth = firstDate.getMonth()+1;
		var thisYear = firstDate.getYear();
		var thisDay = firstDate.getDate();
		thisYear = (thisYear < 2000) ? thisYear+1900 : thisYear;

		document.fmSearch.stay_yyyy_tomorrow.value=thisYear;
		document.fmSearch.stay_mm_tomorrow.value=thisMonth;
		document.fmSearch.stay_day_tomorrow.value=thisDay;
		document.getElementById('stay_tomorrow').innerHTML="<label for=\"stay_OptionDate01\"><em>明日</em> 【" + thisMonth +"月"+thisDay+"日】</label>";
		//　明後日年月取得(2日後)
		var SecondDate = new Date();
		SecondDate.setDate(dateObj.getDate()+2);
		var secondMonth = SecondDate.getMonth()+1;
		var secondYear = SecondDate.getYear();
		var secondDay = SecondDate.getDate();
		secondYear = (secondYear < 2000) ? secondYear+1900 : secondYear;

		document.fmSearch.stay_yyyy_aftertomorrow.value=secondYear;
		document.fmSearch.stay_mm_aftertomorrow.value=secondMonth;
		document.fmSearch.stay_day_aftertomorrow.value=secondDay;
		document.getElementById('stay_aftertomorrow').innerHTML="<label for=\"stay_OptionDate02\"><em>あさって</em> 【" + secondMonth +"月"+secondDay+"日】</label>";

		//もしパラメータ「optiondate=2」があった場合は、明後日を初期値選択する。
var QS = new Array;
		if (location.search.length > 1) {
		var m_Array = location.search.substr(1).split("&"); 
		for (idx in m_Array) {
			QS.push(m_Array[idx].split("="));
			for (idx in QS) {
			if (QS[idx][0]=="OptionDate" && QS[idx][1]=="2"){
				if ( document.fmSearch.stay_OptionDate.value == void(0) ) {
				for ( i = 0; i < document.fmSearch.stay_OptionDate.length; i++ ) {
				if ( document.fmSearch.stay_OptionDate[i].value=="2" ) {
					document.fmSearch.stay_OptionDate[i].checked= true;
        		}
				}
			    }
				}
			}
		}
		}
}