//
//
//	フォーム制御
//
//
function formHandling(selector){
	
	this.form_obj = null;
	
	//操作対象とするフォーム要素（jQueryオブジェクト）
	if($(selector).length!=0) this.form_obj = $(selector);
	
	//input type="text"、textareaのエフェクト判定用フラグ
	this.flag = false;
	
}

//
//	input type="text"、textareaのエフェクト
//
formHandling.prototype.boxEffect = function(selector){
	
	if(this.form_obj&&$(selector,this.form_obj).length!=0){
		
		//操作対象フォームの子要素のみ取得
		var form_part_objs = $(selector,this.form_obj);
		
		form_part_objs.each(function(){
			$(this).mouseover(function(){
				if(this.flag){
					$(this).css({"border":"1px solid #cc6666","color":"#000000","background-color":"#fffcf6"});
				}else{
					$(this).css({"border":"1px solid #cc6666","color":"#000000","background-color":"#ffffff"});
				}
			});
			$(this).mouseout(function(){
				if(this.flag){
					$(this).css({"border":"1px solid #cc6666","color":"#000000","background-color":"#fffcf6"});
				}else{
					$(this).css({"border":"1px solid #aaaaaa","color":"#000000","background-color":"#ffffff"});
				}
			});
			$(this).focus(function(){
				$(this).css({"border":"1px solid #cc6666","color":"#000000","background-color":"#fffcf6"});
				this.flag = true;
			});
			$(this).blur(function(){
				$(this).css({"border":"1px solid #aaaaaa","color":"#000000","background-color":"#ffffff"});
				this.flag = false;
			});
		});
	
	}
}

//
//	class="fNokeydown"のキー操作を無効
//
formHandling.prototype.noKeydown = function(selector){
	
	if(this.form_obj&&$(selector,this.form_obj).length!=0){
		
		//操作対象フォームの子要素のみ取得
		var form_part_objs = $(selector,this.form_obj);
		var v ;
		form_part_objs.each(function(){
			
			$(this).keydown(function(e){
				v = $(this).val();
				switch(e.keyCode){
					case 9:
					case 13:
					case 14:
						break;
					default:
						return false;
						break;
				}
			});
			
		});
	
	}
}

//
//　入力値チェック
//　引数：各フォーム毎の入力内容チェック関数
//
formHandling.prototype.check = function(func){
	if(this.form_obj){
		if(func) this.form_obj.submit();
	}
}

//
//	リセット
//
formHandling.prototype.reset = function(){
	if(this.form_obj){
		if(window.confirm("ご入力内容を消去しますがよろしいですか？"))
			this.form_obj.get()[0].reset();
	}
}

//
//	戻る
//
formHandling.prototype.back = function(){
	
	if(this.form_obj){
		//history.back();
		var mode = $("#mode").val();
		$("#mode").val(mode.replace("reg","form"));
		this.form_obj.submit();
	}
}


//
//	フォーム送信
//
formHandling.prototype.submit = function(){
	if(this.form_obj){
		this.form_obj.submit();
	}
}


//
//　キャリアエントリー　入力内容チェック
//	引数：操作対象とするフォーム
//
function career_chk(f){
	
	if(f){
		
		var flag = true;
		
		//アラート要素初期化
		$("td.caution").removeClass("caution");
		$("p.caution").remove();
		
		//氏名
		if(!$("#fFamilyName").val()||!$("#fFirstName").val()){
			$("#fFamilyName").parent("td").addClass("caution");
			$("#fFamilyName").parent("td").append('<p class="caution">※ 必須項目です。姓・名どちらも入力して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fFamilyName").parent("td")).remove();
			$("#fFamilyName").parent("td").removeClass("caution");
		}
		
		//フリガナ
		if(!$("#fFamilyKana").val()||!$("#fFirstKana").val()){
			$("#fFamilyKana").parent("td").addClass("caution");
			$("#fFamilyKana").parent("td").append('<p class="caution">※ 必須項目です。姓・名どちらも入力して下さい。</p>');
			flag = false;
		}else if(!zenkana_chk($("#fFamilyKana").val())||!zenkana_chk($("#fFirstKana").val())){
			$("#fFamilyKana").parent("td").addClass("caution");
			$("#fFamilyKana").parent("td").append('<p class="caution">※ 全角カタカナで入力して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fFamilyKana").parent("td")).remove();
			$("#fFamilyKana").parent("td").removeClass("caution");
		}
		
		//生年月日
		if(!$("#fBirthYear").val()||!$("#fBirthMonth").val()||!$("#fBirthDay").val()){
			$("#fBirthYear").parent("td").addClass("caution");
			$("#fBirthYear").parent("td").append('<p class="caution">※ 必須項目です。プルダウンメニューより選択して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fBirthYear").parent("td")).remove();
			$("#fBirthYear").parent("td").removeClass("caution");
		}
		
		//性別
		if(!$("#fSexMale").attr("checked")&&!$("#fSexFemale").attr("checked")){
			$("#fSexMale").parent("td").addClass("caution");
			$("#fSexMale").parent("td").append('<p class="caution">※ 必須項目です。上記より選択して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fSexMale").parent("td")).remove();
			$("#fSexMale").parent("td").removeClass("caution");
		}
		
		//郵便番号
		//郵便番号
		if(!$("#fPostalCode1").val()&&!$("#fPostalCode2").val()){
			$("#fPostalCode2").parent("td").addClass("caution");
			$("#fPostalCode2").parent("td").append('<p class="caution">※ 必須項目です。入力して下さい。</p>');
		}else if($("#fPostalCode1").val()||$("#fPostalCode2").val()){
			
			var hankaku = true;
			var count = true;
			
			if(!$("#fPostalCode1").val()){
				count = false;
			}
			if(!hannum_chk($("#fPostalCode1").val())){
				flag = false;
				hankaku = false;
			}
			if($("#fPostalCode1").val()&&!num_count($("#fPostalCode1").val(),3)){
				flag = false;
				count = false;
			}
			
			if(!$("#fPostalCode2").val()){
				count = false;
			}
			if($("#fPostalCode2").val()&&!hannum_chk($("#fPostalCode2").val())){
				hankaku = false;
				flag = false;
			}
			if(!num_count($("#fPostalCode2").val(),4)){
				count = false;
				flag = false;
			}
			
			if(!hankaku){
				$("#fPostalCode2").parent("td").addClass("caution");
				$("#fPostalCode2").parent("td").append('<p class="caution">※ 半角数字で入力して下さい。</p>');
			}
			if(!count){
				$("#fPostalCode2").parent("td").addClass("caution");
				$("#fPostalCode2").parent("td").append('<p class="caution">※ 桁数をご確認下さい。</p>');
			}
			
			if(hankaku&&count){
				$("p.caution",$("#fPostalCode2").parent("td")).remove();
				$("#fPostalCode2").parent("td").removeClass("caution");
			}
		}		
		
		//都道府県
		if(!$("#fRegion").val()){
			$("#fRegion").parent("td").addClass("caution");
			$("#fRegion").parent("td").append('<p class="caution">※ 必須項目です。プルダウンメニューより選択して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fRegion").parent("td")).remove();
			$("#fRegion").parent("td").removeClass("caution");
		}
		
		//都道府県以下の住所
		if(!$("#fLocality").val()){
			$("#fLocality").parent("td").addClass("caution");
			$("#fLocality").parent("td").append('<p class="caution">※ 必須項目です。入力して下さい。</p>');
			flag = false;
		}else if(!zenkaku_chk($("#fLocality").val())){
			$("#fLocality").parent("td").addClass("caution");
			$("#fLocality").parent("td").append('<p class="caution">※ 全角で入力して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fLocality").parent("td")).remove();
			$("#fLocality").parent("td").removeClass("caution");
		}

		//電話番号
		if(!$("#fTel1").val()&&!$("#fTel2").val()&&!$("#fTel3").val()&&!$("#fMobileTel1").val()&&!$("#fMobileTel2").val()&&!$("#fMobileTel3").val()){
			$("#fTel1").parent().parent("td").addClass("caution");
			$("#fTel1").parent().parent("td").append('<p class="caution">※ 必須項目です。携帯電話番号か電話番号のどちらか一方は必ず入力して下さい。</p>');
			flag = false;
		}else{
			
			var tel_flag = true;
			
			//電話番号
			if(!$("#fTel1").val()&&!$("#fTel2").val()&&!$("#fTel3").val()){
				
			}else if(!$("#fTel1").val()||!$("#fTel2").val()||!$("#fTel3").val()){
				$("#fTel1").parent().parent("td").addClass("caution");
				$("#fTel1").parent("div").append('<p class="caution">※ 市外局番から全て入力して下さい。</p>');
				flag = false;
				tel_flag = false;
			}else{
				var hankaku = true;
				var count = true;
				
				if(!hannum_chk($("#fTel1").val())){
					flag = false;
					tel_flag = false;
					hankaku = false;
				}
				if(num_count($("#fTel1").val(),1)){
					flag = false;
					tel_flag = false;
					count = false;
				}
				
				if(!hannum_chk($("#fTel2").val())){
					flag = false;
					tel_flag = false;
					hankaku = false;
				}
				if(num_count($("#fTel2").val(),1)){
					flag = false;
					tel_flag = false;
					count = false;
				}
	
				if(!hannum_chk($("#fTel3").val())){
					flag = false;
					tel_flag = false;
					hankaku = false;
				}
				if(!num_count($("#fTel3").val(),4)){
					flag = false;
					tel_flag = false;
					count = false;
				}
	
				
				if(!hankaku){
					$("#fTel1").parent().parent("td").addClass("caution");
					$("#fTel1").parent("div").append('<p class="caution">※ 半角数字で入力して下さい。</p>');
				}
				
				if(!count){
					$("#fTel1").parent().parent("td").addClass("caution");
					$("#fTel1").parent("div").append('<p class="caution">※ 桁数をご確認下さい。</p>');
				}
				
				if(hankaku&&count){
					$("p.caution",$("#fTel1").parent("div")).remove();
				}
			}
			
			//携帯電話番号
			if(!$("#fMobileTel1").val()&&!$("#fMobileTel2").val()&&!$("#fMobileTel3").val()){
				
			}else if(!$("#fMobileTel1").val()||!$("#fMobileTel2").val()||!$("#fMobileTel3").val()){
				$("#fMobileTel1").parent().parent("td").addClass("caution");
				$("#fMobileTel1").parent("div").append('<p class="caution">※ 市外局番から全て入力して下さい。</p>');
				flag = false;
				tel_flag = false;
			}else{
				
				var m_hankaku = true;
				var m_count = true;
				
				if(!hannum_chk($("#fMobileTel1").val())){
					flag = false;
					tel_flag = false;
					m_hankaku = false;
				}
				if(num_count($("#fMobileTel1").val(),1)){
					flag = false;
					tel_flag = false;
					m_count = false;
				}
				
				if(!hannum_chk($("#fMobileTel2").val())){
					flag = false;
					tel_flag = false;
					m_hankaku = false;
				}
				if(num_count($("#fMobileTel2").val(),1)){
					flag = false;
					tel_flag = false;
					m_count = false;
				}
	
				if(!hannum_chk($("#fMobileTel3").val())){
					flag = false;
					tel_flag = false;
					m_hankaku = false;
				}
				if(!num_count($("#fMobileTel3").val(),4)){
					flag = false;
					tel_flag = false;
					m_count = false;
				}
	
				
				if(!m_hankaku){
					$("#fMobileTel1").parent().parent("td").addClass("caution");
					$("#fMobileTel1").parent("div").append('<p class="caution">※ 半角数字で入力して下さい。</p>');
				}
				
				if(!m_count){
					$("#fMobileTel1").parent().parent("td").addClass("caution");
					$("#fMobileTel1").parent("div").append('<p class="caution">※ 桁数をご確認下さい。</p>');
				}
				
				if(m_hankaku&&m_count){
					$("p.caution",$("#fMobileTel1").parent("div")).remove();
				}
			}
		
			if(tel_flag){
				$("#fMobileTel1").parent().parent("td").removeClass("caution");
			}
			
		}
		
		//希望連絡時間
		if(!$("#fContactTime").val()){
			$("#fContactTime").parent("td").addClass("caution");
			$("#fContactTime").parent("td").append('<p class="caution">※ 必須項目です。入力して下さい。</p>');
			flag = false;
		//}else if(!hantime_chk($("#fContactTime").val())){
		//	$("#fContactTime").parent("td").addClass("caution");
		//	$("#fContactTime").parent("td").append('<p class="caution">※ 半角で入力して下さい。</p>');
		//	flag = false;
		}else{
			$("p.caution",$("#fContactTime").parent("td")).remove();
			$("#fContactTime").parent("td").removeClass("caution");
		}
		
		//PCメールアドレス
		if(!$("#fEmailPC").val()){
			$("#fEmailPC").parent("td").addClass("caution");
			$("#fEmailPC").parent("td").append('<p class="caution">※ 必須項目です。入力して下さい。</p>');
			flag = false;
		}else if(!mail_chk($("#fEmailPC").val())){
			$("#fEmailPC").parent("td").addClass("caution");
			$("#fEmailPC").parent("td").append('<p class="caution">※ メールアドレスの内容をご確認下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fEmailPC").parent("td")).remove();
			$("#fEmailPC").parent("td").removeClass("caution");
		}
		
		//携帯メールアドレス
		if($("#fEmailMobile").val()){
			if(!mail_chk($("#fEmailMobile").val())){
				$("#fEmailMobile").parent("td").addClass("caution");
				$("#fEmailMobile").parent("td").append('<p class="caution">※ メールアドレスの内容をご確認下さい。</p>');
				flag = false;
			}else{
				$("p.caution",$("#fEmailMobile").parent("td")).remove();
				$("#fEmailMobile").parent("td").removeClass("caution");
			}
		}

		
		//最終学歴
		if(!$("#fLatestEdHistory").val()){
			$("#fLatestEdHistory").parent("td").addClass("caution");
			$("#fLatestEdHistory").parent("td").append('<p class="caution">※ 必須項目です。プルダウンメニューより選択して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fLatestEdHistory").parent("td")).remove();
			$("#fLatestEdHistory").parent("td").removeClass("caution");
		}
		
		//就業状況
		if(!$("#fAtWork").attr("checked")&&!$("#fTurnover").attr("checked")){
			$("#fAtWork").parent("td").addClass("caution");
			$("#fAtWork").parent("td").append('<p class="caution">※ 必須項目です。上記より選択して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fAtWork").parent("td")).remove();
			$("#fAtWork").parent("td").removeClass("caution");
		}
		
		//経験業界
		if(!$("#fBusinessHistory").val()){
			$("#fBusinessHistory").parent("td").addClass("caution");
			$("#fBusinessHistory").parent("td").append('<p class="caution">※ 必須項目です。入力して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fBusinessHistory").parent("td")).remove();
			$("#fBusinessHistory").parent("td").removeClass("caution");
		}
		
		//経験職種
		if(!$("#fJobTypeHistory").val()){
			$("#fJobTypeHistory").parent("td").addClass("caution");
			$("#fJobTypeHistory").parent("td").append('<p class="caution">※ 必須項目です。入力して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fJobTypeHistory").parent("td")).remove();
			$("#fJobTypeHistory").parent("td").removeClass("caution");
		}
		
		//職務経歴
		if(!$("#fJobHistory").val()){
			$("p.zen",$("#fJobHistory").parent("td")).remove();
			$("#fJobHistory").parent("td").append('<p class="note zen">※ 全角500文字以内で入力して下さい。</p>');
			$("#fJobHistory").parent("td").addClass("caution");
			$("#fJobHistory").parent("td").siblings("th").addClass("caution");
			$("#fJobHistory").parent("td").append('<p class="caution">※ 必須項目です。入力して下さい。</p>');
			flag = false;
		}else if(count_byte($("#fJobHistory").val())>1000){
			$("p.zen",$("#fJobHistory").parent("td")).remove();
			$("#fJobHistory").parent("td").append('<p class="caution zen">※ 全角500文字以内で入力して下さい。</p>');
			$("#fJobHistory").parent("td").addClass("caution");
			$("#fJobHistory").parent("td").siblings("th").addClass("caution");
			flag = false;
		}else{
			$("p.zen",$("#fJobHistory").parent("td")).remove();
			$("#fJobHistory").parent("td").append('<p class="note zen">※ 全角500文字以内で入力して下さい。</p>');
			$("p.caution",$("#fJobHistory").parent("td")).remove();
			$("#fJobHistory").parent("td").removeClass("caution");
			$("#fJobHistory").parent("td").siblings("th").removeClass("caution");
		}
		

		//希望職種
		if(!$("#fDesiredJobType").val()){
			$("#fDesiredJobType").parent("td").addClass("caution");
			$("#fDesiredJobType").parent("td").append('<p class="caution">※ 必須項目です。入力して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fDesiredJobType").parent("td")).remove();
			$("#fDesiredJobType").parent("td").removeClass("caution");
		}
		
		//仕事内容希望
		$("p.zen",$("#fDesiredJobStuffs").parent("td")).remove();
		if($("#fDesiredJobStuffs").val()){
			if(count_byte($("#fDesiredJobStuffs").val())>300){
				$("#fDesiredJobStuffs").parent("td").append('<p class="caution zen">※ 全角150文字以内で入力して下さい。</p>');
				$("#fDesiredJobStuffs").parent("td").addClass("caution");
				flag = false;
			}else{
				$("#fDesiredJobStuffs").parent("td").append('<p class="note zen">※ 全角150文字以内で入力して下さい。</p>');
				$("#fDesiredJobStuffs").parent("td").removeClass("caution");
			}
		}else{
				$("#fDesiredJobStuffs").parent("td").append('<p class="note zen">※ 全角150文字以内で入力して下さい。</p>');
		}
		
		//希望勤務地
		if(!$("#fDesiredLocation1").val()&&!$("#fDesiredLocation2").val()&&!$("#fDesiredLocation3").val()){
			$("#fDesiredLocation1").parent("td").addClass("caution");
			$("#fDesiredLocation1").parent("td").append('<p class="caution">※ 必須項目です。プルダウンメニューより選択して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fDesiredLocation").parent("td")).remove();
			$("#fDesiredLocation").parent("td").removeClass("caution");
		}

		//転職理由
		$("p.zen",$("#fReason").parent("td")).remove();
		if($("#fReason").val()){
			if(count_byte($("#fReason").val())>300){
				$("#fReason").parent("td").append('<p class="caution zen">※ 全角150文字以内で入力して下さい。</p>');
				$("#fReason").parent("td").addClass("caution");
				flag = false;
			}else{
				$("#fReason").parent("td").append('<p class="note zen">※ 全角150文字以内で入力して下さい。</p>');
				$("#fReason").parent("td").removeClass("caution");
			}
		}else{
				$("#fReason").parent("td").append('<p class="note zen">※ 全角150文字以内で入力して下さい。</p>');
		}

		//備考欄
		$("p.zen",$("#fRemarks").parent("td")).remove();
		if($("#fRemarks").val()){
			if(count_byte($("#fRemarks").val())>300){
				$("#fRemarks").parent("td").append('<p class="caution zen">※ 全角150文字以内で入力して下さい。</p>');
				$("#fRemarks").parent("td").addClass("caution");
				flag = false;
			}else{
				$("#fRemarks").parent("td").append('<p class="note zen">※ 全角150文字以内で入力して下さい。</p>');
				$("#fRemarks").parent("td").removeClass("caution");
			}
		}else{
				$("#fRemarks").parent("td").append('<p class="note zen">※ 全角150文字以内で入力して下さい。</p>');
		}
		


		//判定
		if(flag){
			return true;
		}else{
			alert("************ご入力内容についての注意************\n\nご入力いただいた内容に関して注意事項があります。\n各項目内の赤字の注意文に従って再度入力して下さい。");
			window.location.href="#sec1";
			return false;
		}
	}
}


//
//	クイックエントリー　入力内容チェック
//	引数：操作対象とするフォーム
//
function quick_chk(f){
	
	if(f){
		
		var flag = true;
		
		//アラート要素初期化
		$("td.caution").removeClass("caution");
		$("p.caution").remove();
		
		//氏名
		if(!$("#fFamilyName").val()||!$("#fFirstName").val()){
			$("#fFamilyName").parent("td").addClass("caution");
			$("#fFamilyName").parent("td").append('<p class="caution">※ 必須項目です。姓・名どちらも入力して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fFamilyName").parent("td")).remove();
			$("#fFamilyName").parent("td").removeClass("caution");
		}
		
		//フリガナ
		if(!$("#fFamilyKana").val()||!$("#fFirstKana").val()){
			$("#fFamilyKana").parent("td").addClass("caution");
			$("#fFamilyKana").parent("td").append('<p class="caution">※ 必須項目です。姓・名どちらも入力して下さい。</p>');
			flag = false;
		}else if(!zenkana_chk($("#fFamilyKana").val())||!zenkana_chk($("#fFirstKana").val())){
			$("#fFamilyKana").parent("td").addClass("caution");
			$("#fFamilyKana").parent("td").append('<p class="caution">※ 全角カタカナで入力して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fFamilyKana").parent("td")).remove();
			$("#fFamilyKana").parent("td").removeClass("caution");
		}
		
		//生年月日
		if(!$("#fBirthYear").val()||!$("#fBirthMonth").val()||!$("#fBirthDay").val()){
			$("#fBirthYear").parent("td").addClass("caution");
			$("#fBirthYear").parent("td").append('<p class="caution">※ 必須項目です。プルダウンメニューより選択して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fBirthYear").parent("td")).remove();
			$("#fBirthYear").parent("td").removeClass("caution");
		}
		
		//性別
		if(!$("#fSexMale").attr("checked")&&!$("#fSexFemale").attr("checked")){
			$("#fSexMale").parent("td").addClass("caution");
			$("#fSexMale").parent("td").append('<p class="caution">※ 必須項目です。上記より選択して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fSexMale").parent("td")).remove();
			$("#fSexMale").parent("td").removeClass("caution");
		}
		
		//郵便番号
		if(!$("#fPostalCode1").val()&&!$("#fPostalCode2").val()){
			$("#fPostalCode2").parent("td").addClass("caution");
			$("#fPostalCode2").parent("td").append('<p class="caution">※ 必須項目です。入力して下さい。</p>');
		}else if($("#fPostalCode1").val()||$("#fPostalCode2").val()){
			
			var hankaku = true;
			var count = true;
			
			if(!$("#fPostalCode1").val()){
				count = false;
			}
			if($("#fPostalCode1").val()&&!hannum_chk($("#fPostalCode1").val())){
				flag = false;
				hankaku = false;
			}
			if(!num_count($("#fPostalCode1").val(),3)){
				flag = false;
				count = false;
			}
			
			if(!$("#fPostalCode2").val()){
				count = false;
			}
			if($("#fPostalCode2").val()&&!hannum_chk($("#fPostalCode2").val())){
				hankaku = false;
				flag = false;
			}
			if(!num_count($("#fPostalCode2").val(),4)){
				count = false;
				flag = false;
			}
			
			if(!hankaku){
				$("#fPostalCode2").parent("td").addClass("caution");
				$("#fPostalCode2").parent("td").append('<p class="caution">※ 半角数字で入力して下さい。</p>');
			}
			if(!count){
				$("#fPostalCode2").parent("td").addClass("caution");
				$("#fPostalCode2").parent("td").append('<p class="caution">※ 桁数をご確認下さい。</p>');
			}
			
			if(hankaku&&count){
				$("p.caution",$("#fPostalCode2").parent("td")).remove();
				$("#fPostalCode2").parent("td").removeClass("caution");
			}
		}		
		
		//都道府県
		if(!$("#fRegion").val()){
			$("#fRegion").parent("td").addClass("caution");
			$("#fRegion").parent("td").append('<p class="caution">※ 必須項目です。プルダウンメニューより選択して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fRegion").parent("td")).remove();
			$("#fRegion").parent("td").removeClass("caution");
		}
		
		//都道府県以下の住所
		if(!$("#fLocality").val()){
			$("#fLocality").parent("td").addClass("caution");
			$("#fLocality").parent("td").append('<p class="caution">※ 必須項目です。入力して下さい。</p>');
			flag = false;
		}else if(!zenkaku_chk($("#fLocality").val())){
			$("#fLocality").parent("td").addClass("caution");
			$("#fLocality").parent("td").append('<p class="caution">※ 全角で入力して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fLocality").parent("td")).remove();
			$("#fLocality").parent("td").removeClass("caution");
		}
		
		//電話番号
		if(!$("#fTel1").val()&&!$("#fTel2").val()&&!$("#fTel3").val()&&!$("#fMobileTel1").val()&&!$("#fMobileTel2").val()&&!$("#fMobileTel3").val()){
			$("#fTel1").parent().parent("td").addClass("caution");
			$("#fTel1").parent().parent("td").append('<p class="caution">※ 必須項目です。携帯電話番号か電話番号のどちらか一方は必ず入力して下さい。</p>');
			flag = false;
		}else{
			
			var tel_flag = true;
			
			//電話番号
			if(!$("#fTel1").val()&&!$("#fTel2").val()&&!$("#fTel3").val()){
				
			}else if(!$("#fTel1").val()||!$("#fTel2").val()||!$("#fTel3").val()){
				$("#fTel1").parent().parent("td").addClass("caution");
				$("#fTel1").parent("div").append('<p class="caution">※ 市外局番から全て入力して下さい。</p>');
				flag = false;
				tel_flag = false;
			}else{
				var hankaku = true;
				var count = true;
				
				if(!hannum_chk($("#fTel1").val())){
					flag = false;
					tel_flag = false;
					hankaku = false;
				}
				if(num_count($("#fTel1").val(),1)){
					flag = false;
					tel_flag = false;
					count = false;
				}
				
				if(!hannum_chk($("#fTel2").val())){
					flag = false;
					tel_flag = false;
					hankaku = false;
				}
				if(num_count($("#fTel2").val(),1)){
					flag = false;
					tel_flag = false;
					count = false;
				}
	
				if(!hannum_chk($("#fTel3").val())){
					flag = false;
					tel_flag = false;
					hankaku = false;
				}
				if(!num_count($("#fTel3").val(),4)){
					flag = false;
					tel_flag = false;
					count = false;
				}
	
				
				if(!hankaku){
					$("#fTel1").parent().parent("td").addClass("caution");
					$("#fTel1").parent("div").append('<p class="caution">※ 半角数字で入力して下さい。</p>');
				}
				
				if(!count){
					$("#fTel1").parent().parent("td").addClass("caution");
					$("#fTel1").parent("div").append('<p class="caution">※ 桁数をご確認下さい。</p>');
				}
				
				if(hankaku&&count){
					$("p.caution",$("#fTel1").parent("div")).remove();
				}
			}
			
			//携帯電話番号
			if(!$("#fMobileTel1").val()&&!$("#fMobileTel2").val()&&!$("#fMobileTel3").val()){
				
			}else if(!$("#fMobileTel1").val()||!$("#fMobileTel2").val()||!$("#fMobileTel3").val()){
				$("#fMobileTel1").parent().parent("td").addClass("caution");
				$("#fMobileTel1").parent("div").append('<p class="caution">※ 市外局番から全て入力して下さい。</p>');
				flag = false;
				tel_flag = false;
			}else{
				
				var m_hankaku = true;
				var m_count = true;
				
				if(!hannum_chk($("#fMobileTel1").val())){
					flag = false;
					tel_flag = false;
					m_hankaku = false;
				}
				if(num_count($("#fMobileTel1").val(),1)){
					flag = false;
					tel_flag = false;
					m_count = false;
				}
				
				if(!hannum_chk($("#fMobileTel2").val())){
					flag = false;
					tel_flag = false;
					m_hankaku = false;
				}
				if(num_count($("#fMobileTel2").val(),1)){
					flag = false;
					tel_flag = false;
					m_count = false;
				}
	
				if(!hannum_chk($("#fMobileTel3").val())){
					flag = false;
					tel_flag = false;
					m_hankaku = false;
				}
				if(!num_count($("#fMobileTel3").val(),4)){
					flag = false;
					tel_flag = false;
					m_count = false;
				}
	
				
				if(!m_hankaku){
					$("#fMobileTel1").parent().parent("td").addClass("caution");
					$("#fMobileTel1").parent("div").append('<p class="caution">※ 半角数字で入力して下さい。</p>');
				}
				
				if(!m_count){
					$("#fMobileTel1").parent().parent("td").addClass("caution");
					$("#fMobileTel1").parent("div").append('<p class="caution">※ 桁数をご確認下さい。</p>');
				}
				
				if(m_hankaku&&m_count){
					$("p.caution",$("#fMobileTel1").parent("div")).remove();
				}
			}
		
			if(tel_flag){
				$("#fMobileTel1").parent().parent("td").removeClass("caution");
			}
			
		}
		
		//希望連絡時間
		if(!$("#fContactTime").val()){
			$("#fContactTime").parent("td").addClass("caution");
			$("#fContactTime").parent("td").append('<p class="caution">※ 必須項目です。入力して下さい。</p>');
			flag = false;
		//}else if(!hantime_chk($("#fContactTime").val())){
		//	$("#fContactTime").parent("td").addClass("caution");
		//	$("#fContactTime").parent("td").append('<p class="caution">※ 半角で入力して下さい。</p>');
		//	flag = false;
		}else{
			$("p.caution",$("#fContactTime").parent("td")).remove();
			$("#fContactTime").parent("td").removeClass("caution");
		}
		
		//PCメールアドレス
		if(!$("#fEmailPC").val()){
			$("#fEmailPC").parent("td").addClass("caution");
			$("#fEmailPC").parent("td").append('<p class="caution">※ 必須項目です。入力して下さい。</p>');
			flag = false;
		}else if(!mail_chk($("#fEmailPC").val())){
			$("#fEmailPC").parent("td").addClass("caution");
			$("#fEmailPC").parent("td").append('<p class="caution">※ メールアドレスの内容をご確認下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fEmailPC").parent("td")).remove();
			$("#fEmailPC").parent("td").removeClass("caution");
		}

		//履歴書
		if(!$("#fRejume").val()){
			$("#fRejume").parent("td").addClass("caution");
			$("#fRejume").parent("td").append('<p class="caution">※ 必須項目です。選択して下さい。</p>');
			flag = false;
		}else if(!file_chk($("#fRejume").val())){
			$("#fRejume").parent("td").addClass("caution");
			$("#fRejume").parent("td").append('<p class="caution">※ xls/doc/pdfのみ添付できます。</p>');
		}else{
			$("p.caution",$("#fRejume").parent("td")).remove();
			$("#fRejume").parent("td").removeClass("caution");
		}
		
		//備考欄
		$("p.zen",$("#fRemarks").parent("td")).remove();
		if($("#fRemarks").parent("td").parent("tr").find("span.with-star").html()!=null){
			if(!$("#fRemarks").val()){
				$("#fRemarks").parent("td").addClass("caution");
				$("#fRemarks").parent("td").append('<p class="caution">※ 必須項目です。全角150文字以内で入力して下さい。</p>');
				flag = false;
			}
		}
		
		if($("#fRemarks").val()){
			if(count_byte($("#fRemarks").val())>300){
				$("#fRemarks").parent("td").append('<p class="caution zen">※ 全角150文字以内で入力して下さい。</p>');
				$("#fRemarks").parent("td").addClass("caution");
				flag = false;
			}else{
				$("#fRemarks").parent("td").append('<p class="note zen">※ 全角150文字以内で入力して下さい。</p>');
				$("#fRemarks").parent("td").removeClass("caution");
			}
		}else{
				$("#fRemarks").parent("td").append('<p class="note zen">※ 全角150文字以内で入力して下さい。</p>');
		}

		//判定
		if(flag){
			return true;
		}else{
			alert("************ご入力内容についての注意************\n\nご入力いただいた内容に関して注意事項があります。\n各項目内の赤字の注意文に従って再度入力して下さい。");
			window.location.href="#sec1";
			return false;
		}
	}
}

//
//	お問い合わせフォーム　入力内容チェック
//	引数：操作対象とするフォーム
//
function inquiry_chk(f){
	
	if(f){
		
		var flag = true;
		var agreement = true;
		
		
		//アラート要素初期化
		$("td.caution").removeClass("caution");
		$("p.caution").remove();
		
		//氏名
		if(!$("#fName").val()){
			$("#fName").parent("td").addClass("caution");
			$("#fName").parent("td").append('<p class="caution">※ 必須項目です。入力して下さい。</p>');
			flag = false;
		}else{
			if(!zenkaku_chk($("#fName").val())){
				$("#fName").parent("td").addClass("caution");
				$("#fName").parent("td").append('<p class="caution">※ 全角で入力して下さい。</p>');
				flag = false;
			}else{
				$("p.caution",$("#fName").parent("td")).remove();
				$("#fName").parent("td").removeClass("caution");
			}
		}
		
		//フリガナ
		if($("#fHurigana").val()){
			if(!zenkana_chk($("#fHurigana").val())){
				$("#fHurigana").parent("td").addClass("caution");
				$("#fHurigana").parent("td").append('<p class="caution">※ 全角カタカナで入力して下さい。</p>');
				flag = false;
			}else{
				$("p.caution",$("#fHurigana").parent("td")).remove();
				$("#fHurigana").parent("td").removeClass("caution");
			}
		}
		
		
		//メールアドレス
		if(!$("#fEmail").val()){
			$("#fEmail").parent("td").addClass("caution");
			$("#fEmail").parent("td").append('<p class="caution">※ 必須項目です。入力して下さい。</p>');
			flag = false;
		}else if(!mail_chk($("#fEmail").val())){
			$("#fEmail").parent("td").addClass("caution");
			$("#fEmail").parent("td").append('<p class="caution">※ メールアドレスの内容をご確認下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fEmail").parent("td")).remove();
			$("#fEmail").parent("td").removeClass("caution");
		}
		
		
		//電話番号
		if($("#fTel").val()){
			if(!tel_chk($("#fTel").val())){
				$("#fTel").parent("td").addClass("caution");
				$("#fTel").parent("td").append('<p class="caution">※ 半角数字で入力して下さい。</p>');
			}else{
				$("p.caution",$("#fTel").parent("td")).remove();
				$("#fTel").parent("td").removeClass("caution");
			}
		}
		
		//送信区分
		if(!$("#fSection").val()){
			$("#fSection").parent("td").addClass("caution");
			$("#fSection").parent("td").append('<p class="caution">※ 必須項目です。入力して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fSection").parent("td")).remove();
			$("#fSection").parent("td").removeClass("caution");
		}
		
		//お問い合わせ内容
		if(!$("#fBody").val()){
			$("#fBody").parent("td").addClass("caution");
			$("#fBody").parent("td").append('<p class="caution">※ 必須項目です。入力して下さい。</p>');
			flag = false;
		}else{
			$("p.caution",$("#fBody").parent("td")).remove();
			$("#fBody").parent("td").removeClass("caution");
		}
		
		//同意チェック
		if($("#agreement input:checked").val()=="1"){
			agreement = true;
		}else{
			agreement = false;
		}
		
		if(!agreement){
			alert("************個人情報の取り扱いについてのご注意************\n\nお問い合わせいただくには、個人情報の取り扱いについて同意いただき、\n『同意します』をチェックしていただく必要があります。");
			window.location.href="#inquiryForm";
			return false;
		}
		
		//判定
		
		if(flag){
			return true;
		}else{
			alert("************ご入力内容についての注意************\n\nご入力いただいた内容に関して注意事項があります。\n各項目内の赤字の注意文に従って再度入力して下さい。");
			window.location.href="#inquiryForm";
			return false;
		}
		
	}
}


//全角チェック
function zenkaku_chk(s){
	
	//UTF8の場合
	if ( s.match(/[\x20-\xFF]/)) {
		return false;
	} else {
		return true;
	}
	
}

//全角カナチェック
function zenkana_chk(s){
	
	if(s.match(/^[ァ-ン－　]+$/)){
		return true;
	}else{
		return false;
	}
	
}

//半角時刻チェック
function hantime_chk(s){
	
	if(s.match(/^[a-zA-Z0-9\:\-\s]+$/)){
		return true;
	}else{
		return false;
	}
	
}

//半角数字チェック
function hannum_chk(s){
	
	if(s.match(/^[0-9]+$/)){
		return true;
	}else{
		return false;
	}
	
}

//電話番号チェック
function tel_chk(s){
	
	if(s.match(/^[0-9\-]+$/)){
		return true;
	}else{
		return false;
	}
	
}

//文字数チェック
function num_count(s,count){

	if(s.length == count){
		return true;
	}else{
		return false;
	}
	
}

//文字数チェック（以下）
function num_lt(s,count){

	if(s.length <= count){
		return true;
	}else{
		return false;
	}
	
}

//添付ファイルチェック
function file_chk(s){
	if(s.match(/\.(doc|docx|xls|xlsx|pdf)$/)){
		return true;
	}else{
		return false;
	}
	
}


//メールアドレスチェック
//@前「英数字_-.」、@後ひとつ以上の「.」、「.」で終わっていないか
function mail_chk(s){
	///^([a-zA-Z0-9_¥.¥-])+¥@(([a-zA-Z0-9¥-])+¥.)+([a-zA-Z0-9]{2,4})+$/
	if(s.match(/^\S+@\S+\.\S+$/)){
		return true;
	}else{
		return false;
	}
	
}


//文字列のバイト数取得
function count_byte(s) {
     var r = 0;
     for (var i = 0; i < s.length; i++) {
         var c = s.charCodeAt(i);
         // Shift_JIS: 0x0 〜 0x80, 0xa0 , 0xa1 〜 0xdf , 0xfd 〜 0xff
         // Unicode : 0x0 〜 0x80, 0xf8f0, 0xff61 〜 0xff9f, 0xf8f1 〜 0xf8f3
         if ( (c >= 0x0 && c < 0x81) || (c == 0xf8f0) || (c >= 0xff61 && c < 0xffa0) || (c >= 0xf8f1 && c < 0xf8f4)) {
            r += 1;
         } else {
             r += 2;
         }
     }
    return r;
}



//DOMツリー構築後処理
$(function(){

	//=======================================================
	//	キャリアエントリーフォーム
	//=======================================================
	var fh1 = new formHandling("#fCareerEntry");
	
	if(fh1.form_obj){
		//input type="text"、textareaのエフェクト
		fh1.boxEffect(".fTxt");
		
		//[確認]ボタンクリック時
		$(".btn-confirm",fh1.form_obj).click(function(){
			fh1.check(career_chk(fh1.form_obj));
//fh1.submit();
			return false;
		});
			
		//[送信]ボタンクリック時
		$(".btn-submit",fh1.form_obj).click(function(){
			fh1.submit();
			return false;
		});
			
		//[戻る]ボタンクリック時
		$(".btn-back",fh1.form_obj).click(function(){
			fh1.back();
			return false;
		});
	}
	
	//=======================================================
	//	クイックエントリーフォーム
	//=======================================================
	var fh2 = new formHandling("#fQuickEntry");
	
	if(fh2.form_obj){
		//class="fNokeydown"のキー操作を無効
		//この動作を解除したい場合は以下の一文をコメントアウトすること
		fh2.noKeydown(".fNokeydown");
		
		//input type="text"、textareaのエフェクト
		fh2.boxEffect(".fTxt");	
		
		//[確認]ボタンクリック時
		$(".btn-confirm",fh2.form_obj).click(function(){
			fh2.check(quick_chk(fh2.form_obj));
//fh2.submit();
			return false;
		});
			
		//[送信]ボタンクリック時
		$(".btn-submit",fh2.form_obj).click(function(){
			fh2.submit();
			return false;
		});
			
		//[戻る]ボタンクリック時
		$(".btn-back",fh2.form_obj).click(function(){
			fh2.back();
			return false;
		});
	}

	//=======================================================
	//	求人検索フォーム
	//=======================================================
	var fh3 = new formHandling("#easySearchForm");
	if(fh3.form_obj){
		fh3.boxEffect(".fTxt");
	}

	
	//=======================================================
	//	お問い合わせフォーム
	//=======================================================
	var fh4 = new formHandling("#inquiryForm");
	
	if(fh4.form_obj){
		
		//input type="text"、textareaのエフェクト
		fh4.boxEffect(".fTxt");	
		
		//[確認]ボタンクリック時
		$(".btn-confirm",fh4.form_obj).click(function(){
			fh4.check(inquiry_chk(fh4.form_obj));
			return false;
		});
			
		//[送信]ボタンクリック時
		$(".btn-submit",fh4.form_obj).click(function(){
			fh4.submit();
			return false;
		});
			
		//[修正]ボタンクリック時
		$(".btn-edit",fh4.form_obj).click(function(){
			fh4.back();
			return false;
		});
	}

	
	//=======================================================
	//	検索結果　ロゴ天地センター合わせ
	//=======================================================
	$("body#search div.article-header div.bg1").each(function(){
		
		/*
		$("p.logo",$(this)).css({"text-indent":"-10000px"});
		var wrap_div = $(this).wrap("<div class=\"bg-logo\"></div>");
		$(this).parent("div.bg-logo").css({"background":" transparent url("+$("p.logo img",$(this)).attr("src")+") no-repeat scroll 2% 65%"});
		*/
		$("p.logo",$(this)).css({"height":$(this).parent("div.article-header div.bg1").height()-16+"px",
								  "text-indent":"-10000px",
								  "background":" transparent url("+$("p.logo img",$(this)).attr("src")+") no-repeat scroll 50% 51%"});
		
	});
	
	
	
});
function submitLinkid(id,linkid,mode){
	var fh = new formHandling(id);
	if (linkid) { $("#link_id").val(linkid); }
	if (mode) { $("#mode").val(mode); }
	fh.submit();
}
function submitForm(p,c){
	var fh = new formHandling("#easySearchForm");
	if (p) { $("#showPage").val(p); }
	if (c) { $("#showCnt").val(c); }
	fh.submit();
}
