domain = "ochatu.jp" ;


FNM = new Array("N_NAME","N_POST1","N_POST2","N_KEN","N_SITYOSON","N_TATEMONO","N_TEL1","N_TEL2","N_TEL3","N_EMAIL") ;

function jsf_start() {
	i = jsf_GetCookie("N_NAME") ;
	if (i == "")
		return ;
	for (i = 0 ; i < 10 ; i++) {
		f = FNM[i] ;
		v = jsf_GetCookie(f) ;
		if (f == "N_KEN") {
			if (isNaN(v) == false)
				document.main[f].selectedIndex = v ;
		} else
			document.main[f].value = v ;
	}
}

function jsf_setinfo() {
	ph = "/" ;

	for (i = 0 ; i < 10 ; i++) {
		jsf_ClearCookie(FNM[i]);
	}
	for (i = 0 ; i < 10 ; i++) {
		f = FNM[i] ;
		if (f == "N_KEN")
			v = document.main[f].selectedIndex ;
		else
			v = document.main[f].value ;
		jsf_PutCookie(f,v) ;
	}
}


/*============================================================================*/
/* 関数:                                                                    */
/* 関数名: jsf_StrGetBackward()                                               */
/* 引　数: arg_buf --> 対象となる文字列                                       */
/*       : arg_n   --> 取得文字数                                             */
/* 戻り値: 取得文字列                                                         */
/* 説　明: 後方から文字列を任意の文字数だけを取得する                         */
/*       : ・取得文字数が対象文字列より多い場合は全文字列を返す。             */
/*       : ・取得文字数がゼロ以下の場合はNULLを返す。                         */
/*       : ・取得文字数がNULLの場合はNULLを返す。                             */
/*       : Netscape2.x,3.xで2バイト文字が混在している場合は動作不具合あり     */
/* 記述例: buf=jsf_StrGetBackward("abcあ",2) buf="cあ"                        */
/* 作成日: 2000/09/13 j.sugimura                                              */
/* 更新日:                                                                    */
/*============================================================================*/
function jsf_StrGetBackward(arg_buf, arg_n){

	var buf1 = "";
	var buf2 = "";
	var i;

	funcNo = 0;

	if(arg_buf.length == 0 || arg_n < 1){
		return buf2;
	}else if(arg_buf.length <= arg_n){
		return arg_buf;
	}else{
		for(i = arg_buf.length - 1; i >= 0; i--){
			buf1 = buf1.concat(arg_buf.substring(i, i + 1));
		}
		for(i = arg_n - 1; i >= 0; i--){
			buf2 = buf2.concat(buf1.substring(i, i + 1))
		}
		return buf2;
	}
}
/*============================================================================*/
/* 関数:                                                                    */
/* 関数名: jsf_GetCookie()                                                    */
/* 引　数: arg_key --> キー名                                                 */
/* 戻り値: Cookie値                                                           */
/* 説　明: 引数で指定されたCookieを取得する                                   */
/*       :   ※該当データが存在しない時は、NULLを返す                         */
/* 記述例: buf = jsf_GetCookie("password")                                    */
/* 作成日: 2000/11/09 j.sugimura                                              */
/* 更新日:                                                                    */
/*============================================================================*/
function jsf_GetCookie(arg_key){

	var cookie_tmp;
	var cookie_len;
	var pos1, pos2, pos3;
	var buf;

	//;key1_name=data1_abcdef;key2=data2;key3=data3
	// |        |            |
	// |<------- buf ------->|
	// |        |            |
	// pos1     pos3         pos2

	pos1 = pos2 = 0;

	//Cookieファイルの確認
	cookie_tmp = " " + document.cookie + ";";
	len = cookie_tmp.length;
	while(pos1 < len){
		pos2 = cookie_tmp.indexOf(";", pos1);

        buf = cookie_tmp.substring(pos1 + 1, pos2);
        pos3 = buf.indexOf("=");

        if (buf.substring(0, pos3) == arg_key) {
			cdt = buf.substring(pos3 + 1, pos2 - pos1 - 1) ;
			if (cdt != "dummy_data")
            return(unescape(cdt));
        }
        pos1 = pos2 + 1;
	}
	return "";
}
/*============================================================================*/
/* 関数:                                                                    */
/* 関数名: jsf_PutCookie()                                                    */
/* 引　数: arg_key     --> キー名                                             */
/*       : arg_data    --> 保存するCookie値                                   */
/* 戻り値: None                                                               */
/* 説　明: Cookie値を保管する　※Cookie辞書は使用できない                     */
/* 記述例: void = jsf_PutCookie("password","abc","")                          */
/* 作成日: 2000/11/09 j.sugimura                                              */
/* 更新日:                                                                    */
/*============================================================================*/
function jsf_PutCookie(arg_key, arg_data){

	var buf;
	var nowdate = new Date();
	var year = nowdate.getFullYear(); // 年 
	var month_buf = jsf_StrGetBackward("00" + eval(nowdate.getMonth() + 1), 2);
	var day_buf = jsf_StrGetBackward("00" + nowdate.getDate(), 2);
	var CKKigen ;

	year += 2 ;	//２年先を期限に設定
	CKKigen = year + "/" + month_buf + "/" + day_buf ;

	buf = arg_key + "=" + escape(arg_data) + "; ";
	buf = buf + "expires=" + jsf_DateGMT(CKKigen,"") + "; ";
	buf = buf + "domain=" + domain + ";";
	buf = buf + "path=/; ";

	document.cookie = buf;

	buf = arg_key + "=" + escape(arg_data) + "; ";
	buf = buf + "expires=" + jsf_DateGMT(CKKigen,"") + "; ";
	buf = buf + "domain=www." + domain + ";";
	buf = buf + "path=/; ";

	document.cookie = buf;
	return buf;
}
/*============================================================================*/
/* 関数:                                                                    */
/* 関数名: jsf_ClearCookie()                                                  */
/* 引　数: arg_key     --> キー名                                             */
/* 戻り値: キー名=値 ※削除するキーが存在しない時は"ERROR"を返す              */
/* 説　明: Cookieに保存された目的のキーと値を削除する                         */
/* 記述例: buf = jsf_ClearCookie("key1")                                      */
/* 作成日: 2000/11/09 j.sugimura                                              */
/* 更新日:                                                                    */
/*============================================================================*/
function jsf_ClearCookie(arg_key){

	var buf;

	buf = jsf_GetCookie(arg_key);
	if(buf != ""){
		document.cookie = arg_key + "=dummy_data; expires=1-Jan-1900 00:00:00; ";
		return arg_key + "=" + buf;
	}
	else{
		return "ERROR";
	}
}
/*============================================================================*/
/* 関数:                                                                    */
/* 関数名: jsf_DateGMT()                                                      */
/* 引　数: arg_date --> 日付文字列(yyyy/mm/dd形式)                            */
/*       : arg_time --> 時間文字列(hh:mm:ss形式)                              */
/* 戻り値: グリニッジ標準時文字列                                             */
/* 説　明: グリニッジ標準時文字列への変換                                     */
/*       : ※存在しない日を指定するとNULLを返す                               */
/* 記述例: buf = jsf_DateGMT("2000/01/01","12:00:00")                         */
/* 作成日: 2000/11/09 j.sugimura                                              */
/* 更新日:                                                                    */
/*============================================================================*/
function jsf_DateGMT(arg_date, arg_time){

	var mydate;

	funcNo = 0;

	if(jsf_IsDate(arg_date) != true){
		return "";
	}
	if(arg_time.length > 0){
		mydate = new Date(arg_date + " " + arg_time);
	}
	else{
		mydate = new Date(arg_date);
	}
	return mydate.toGMTString();
}
/*============================================================================*/
/* 関数:                                                                    */
/* 関数名: jsf_IsDate()                                                       */
/* 引　数: arg_buf --> 対象となる文字列(yyyy/mm/dd or yyyy-mm-dd)             */
/* 戻り値: true=有効, false=無効                                              */
/* 説　明: 対象となる文字列が正しい日付か判定する                             */
/*       : ・閏年に対応するが、年は１６００年から現在＋１００年を範囲とする   */
/*       : ・IE, NNに対応するが、一部のバージョンでは動作が不安定             */
/* 記述例: sts = jsf_IsDate(buf)                                              */
/* 作成日: 2000/11/09 j.sugimura                                              */
/* 更新日:                                                                    */
/*============================================================================*/
function jsf_IsDate(arg_buf){

	var mydate = new Date();
	var myyear;
	var year_buf;
	var month_buf;
	var day_buf;

	funcNo = 0;

	if(arg_buf.length != 10){
		return false;
	}

	if(arg_buf.match(/\d\d\d\d\/\d\d\/\d\d/) == null && 
				arg_buf.match(/\d\d\d\d-\d\d-\d\d/) == null ){
		return false;
	}

	year_buf = arg_buf.substring(0, 4);
	month_buf = arg_buf.substring(5, 7);
	day_buf = arg_buf.substring(8, 10);

	myyear = "" + mydate.getYear();
	if(myyear.length == 2){
		myyear = "19" + myyear;
	}
	else{
		if(myyear.length != 4){
			myyear = 1900 + eval(myyear);
		}
	}

	if(year_buf < "1600" || year_buf > 100 + eval(myyear)){
		return false;
	}

	if(month_buf < "01" || month_buf > "12"){
		return false;
	}

	if(month_buf == "01" || month_buf == "03" || month_buf == "05" || 
		month_buf == "07" || month_buf == "08" || month_buf == "10" || month_buf == "12"){
		if(day_buf < "01" || day_buf > "31"){
			return false;
		}
	}
	if(month_buf == "04" || month_buf == "06" || month_buf == "06" || 
		month_buf == "09" || month_buf == "11"){
		if(day_buf < "01" || day_buf > "30"){
			return false;
		}
	}
	if(month_buf == "02"){
		if	((year_buf % 400 == 0) || ((year_buf % 4 == 0) && (year_buf % 100 != 0))){
			if(day_buf < "01" || day_buf > "29"){
				return false;
			}
		}
		else{
			if(day_buf < "01" || day_buf > "28"){
				return false;
			}
		}
	}
	return true;
}





function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function Chksubmit(){
	v = document.main.N_NAME.value ;
	if (v == ""){
		alert("お名前を入力してください") ;
		document.main.N_NAME.focus() ;
		return 1;
	}

	v = document.main.N_NAME.value ;
	if (v == ""){
		alert("会社名を入力してください") ;
		document.main.N_NAME.focus() ;
		return 1;
	}

	for (i=1 ; i<=2 ; i++) {
		v = document.main["N_POST"+i].value ;
		if (v == ""){
			alert("郵便番号を入力してください") ;
			document.main["N_POST"+i].focus() ;
			return 1;
		} else if( isDigit( v ) == false ) {
		//数字チェック
		//入力文字が数字かどうかチェック
	        alert("郵便番号は数字（半角）を入力してください");
			document.main["N_POST"+i].focus() ;
			return 1;
	    } else if (v.length != 3 && i==1) {
			alert("郵便番号１は３桁で入力してください") ;
			document.main["N_POST"+i].focus() ;
			return 1;
		} else if (v.length != 4 && i==2) {
			alert("郵便番号２は４桁で入力してください") ;
			document.main["N_POST"+i].focus() ;
			return 1;
		}
	}
	v = document.main.N_SITYOSON.value ;
	if (v == ""){
		alert("郡市町村を入力してください") ;
		document.main.N_SITYOSON.focus() ;
		return 1;
	}

	for (i=1 ; i<=3 ; i++) {
		v = document.main["N_TEL"+i].value ;
		if (v == ""){
			alert("電話番号を入力してください") ;
			document.main["N_TEL"+i].focus() ;
			return 1;
		} else if( isDigit( v ) == false ) {
		//数字チェック
		//入力文字が数字かどうかチェック
	        alert( "電話番号は数字（半角）を入力してください");
			document.main["N_TEL"+i].focus() ;
			return 1;
	    }
	}
	v = document.main.N_EMAIL.value ;
	if (v == ""){
		alert("E-mailを入力してください") ;
		document.main.N_EMAIL.focus() ;
		return 1;
	} else if(v.length < 6) { //６文字以下
		alert("E-mailが不正です") ;
		document.main.N_EMAIL.focus() ;
		return 1;
	} else if(v.split('@').length - 1 == 0) { //＠が存在しない
		alert("E-mailが不正です") ;
		document.main.N_EMAIL.focus() ;
		return 1;
	} else if(v.split('@').length - 1 >= 2 ) { //＠が複数ある
		alert("E-mailが不正です") ;
		document.main.N_EMAIL.focus() ;
		return 1;
	} else if(v.indexOf("@", 0) == 0) { //先頭に＠がある
		alert("E-mailが不正です") ;
		document.main.N_EMAIL.focus() ;
		return 1;
	} else if(v.indexOf("@", 0) == v.length - 1) { //最後に＠がある
		alert("E-mailが不正です") ;
		document.main.N_EMAIL.focus() ;
		return 1;
	}
	
	//＠より右側が４文字以上であるか
	a=v.indexOf("@",1) + 1 ;
	if (v.length - a < 4) {
		alert("E-mailが不正です") ;
		document.main.N_EMAIL.focus() ;
		return 1;
	}
	//＠より右側に . がひとつ以上あるか
	if (v.indexOf("." , a) == -1) { //ひとつもない
		alert("E-mailが不正です") ;
		document.main.N_EMAIL.focus() ;
		return 1;
	} else if (v.indexOf("@" , 0) + 1 == v.indexOf("." , 0)) { //先頭にある
		alert("E-mailが不正です") ;
		document.main.N_EMAIL.focus() ;
		return 1;
	} else if (v.indexOf(".", 0) == v.length - 1) { //最後尾にある
		alert("E-mailが不正です") ;
		document.main.N_EMAIL.focus() ;
		return 1;
	}
	
	return 2;
}

//入力文字が数字かどうかチェックする関数	整数用
	function isDigit( str ){
		for( j = 0 ; j < str.length ; j ++ ){
		    var c = str.charAt( j );
		    if( ("0" <= c && c <= "9" || c == "-") ){
		    //    return true;
		    }else{
		        return false;
		    }
		}
		return true;
	}
