
	//***********************************
	// フォームチェック
	//***********************************
	function formcheck(){

		if( document.frm.nickname.value == "" ){ alert("ニックネームが入力されていません"); document.frm.nickname.focus(); return; }
		if( gf_GetLength(document.frm.nickname.value) > 40 ){ alert("ニックネームは全角２０文字以内で入力ください"); document.frm.nickname.focus(); return; }
		if(!(document.frm.sex[0].checked || document.frm.sex[1].checked)){ alert("性別が選択されていません"); document.frm.sex[0].focus(); return; }
		if(!(document.frm.blood_type[0].checked || document.frm.blood_type[1].checked || document.frm.blood_type[2].checked || document.frm.blood_type[3].checked )){ alert("血液型が選択されていません"); document.frm.blood_type[0].focus(); return; }

		birthday = document.frm.birthday_y.value +"/"+ document.frm.birthday_m.value +"/"+ document.frm.birthday_d.value;
		if(!(jf_ChkDate( birthday ))){ alert("誕生日の選択に誤りがあります"); document.frm.birthday_d.focus(); return; }

		if(!(document.frm.marriage[0].checked || document.frm.marriage[1].checked)){ alert("結婚はされていますか？"); document.frm.marriage[0].focus(); return; }

		for( i=1; i<=4; i++ ){
			obj = eval("document.frm.q"+i);
			if(!(obj[0].checked || obj[1].checked || obj[2].checked )){ alert("答えが選択されていない質問があります"); obj[0].focus(); return; }
		}

		if( document.frm.q11.value == "" ){ alert("好きな食べ物が入力されていません"); document.frm.q11.focus(); return; }
		if( gf_GetLength(document.frm.q11.value) > 24 ){ alert("好きな食べ物は全角１２文字以内で入力ください"); document.frm.q11.focus(); return; }
		if( document.frm.q11.value.match(/[\!\"\#\$\%\&\'\(\)\=\~\|\[\]\{\}\`\@\*\+\;\:\/\\\_\<\>①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ㍉㌔㌢㍍㌘㌧㌃㌶㍑㍗㌍㌦㌣㌫㍊㌻㎜㎝㎞㎎㎏㏄㎡㍻〝〟№㏍℡㊤㊥㊦㊧㊨㈱㈲㈹㍾㍽㍼≒≡∫∮∑√⊥∠∟⊿∵∩∪纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹ￢￤＇＂、。，．・：；？！゛゜´｀¨＾￣＿ヽヾゝゞ〃仝々〆〇―‐／＼～∥｜…‥‘’“”（）〔〕［］｛｝〈〉《》「」『』【】＋－±×÷＝≠＜＞≦≧∞∴♂♀°′″℃￥＄￠￡％＃＆＊＠§☆★○●◎◇◆□■△▲▽▼※〒→←↑↓〓∈∋⊆⊇⊂⊃∪∩∧∨￢⇒⇔∀∃∠⊥⌒∂∇≡≒≪≫√∽∝∵∫∬Å‰♯♭♪†‡¶◯ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩαβγδεζηθικλμνξοπρστυφχψωАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдеёжзийклмнопрстуфхцчшщъыьэюя─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂]/) ){ alert("「好きな食べ物」に使用できない文字が含まれています。\n全角ひらがな・カタカナ・漢字にてご入力ください。"); document.frm.q11.focus(); return; }
		if( document.frm.q11.value.match(/[ 　]/) ){ alert("全角スペース、半角スペースは使用できません"); document.frm.q11.focus(); return; }

		document.frm.exec_flg.value = "insert";
		document.frm.action = "index.php";
		document.frm.submit();

	}


	//********************************
	//   バイト数チェック
	//********************************
	function gf_GetLength(value){
		var i,nCnt=0;
		for(i=0; i<value.length; i++){
			if(escape(value.charAt(i)).length >= 4 ) nCnt+=2;
			else nCnt++;
		}
		return nCnt;
	}

	//********************************
	//   友達に知らせる
	//********************************
	function jf_Sendmail(){

		if(document.frm.mail.value==""){ alert("ご友人様のメールアドレスが入力されていません"); document.frm.mail.focus(); return; }
		if( !document.frm.mail.value.match(/^[0-9a-zA-Z\-\_\.]+@[0-9a-zA-Z\-\_\.]+$/) ){ alert("\""+document.frm.mail.value+"\"は適切なメールアドレスではありません"); document.frm.mail.focus(); return; }
		if(!confirm("【 "+document.frm.mail.value+" 】へメールをお送りします。\n\nよろしいですか？")) return;
		document.frm.submit();

	}

	//********************************
	//   日本語ドメインについて
	//********************************
	function jf_OpenWindow(){
		jf_OpenNewWindow("domain_info.php","SUB","width=580:height=500");
	}

	//**************************************************************************************
	////////////////////   指定サイズでウィンドウを開き、センターに表示   //////////////////
	//--------------------------------------------------------------------------------------
	//	    gf_OpenNewWindow(URL,NAME,SIZE)
	//		SIZEは、"width=800:height=600"のように入力してください
	//**************************************************************************************
	function jf_OpenNewWindow(pURL,pName,pSize){

		var wWidth,wHeight;
		var wSize,wFeatures;
		var wLeft,wTop,PositionX,PositionY;

		wWidth = window.screen.availWidth/2;
		wHeight = window.screen.availHeight/2;
		wSize = pSize.split(":");
		wLeft = wSize[0].split("=");
		wTop = wSize[1].split("=");
		PositionX = wWidth-wLeft[1]/2;
		PositionY = wHeight-wTop[1]/2;
		
		wFeatures = wSize+",left="+PositionX+",top="+PositionY;
		wWindow = window.open(pURL,pName,wFeatures+",scrollbars=yes,status=yes,resizable=yes");

	}


	//********************************
	//   日付の妥当性チェック
	//********************************
	function jf_ChkDate(datestr) { 

		// 正規表現による書式チェック 
		if(!datestr.match(/^\d{4}\/\d{2}\/\d{2}$/)){ 
			return false; 
		} 

		var vYear = datestr.substr(0, 4) - 0; 
		var vMonth = datestr.substr(5, 2) - 1; // Javascriptは、0-11で表現 
		var vDay = datestr.substr(8, 2) - 0; 

		// 月,日の妥当性チェック 
		if(vMonth >= 0 && vMonth <= 11 && vDay >= 1 && vDay <= 31){ 
			var vDt = new Date(vYear, vMonth, vDay); 
			if(isNaN(vDt)){ 
				return false; 
			}else if(vDt.getFullYear() == vYear && vDt.getMonth() == vMonth && vDt.getDate() == vDay){ 
				return true; 
			}else{ 
				return false; 
			}
		}else{ 
			return false; 
		}

	}
