
<!--
/**************************************************
*  半角数字のチェック（負はOK、少数はエラー）
*  パラメータ	str:チェック対象の文字列
*  戻り値		半角数字ならばtrue、それ以外ならfalse
***************************************************
*/
	function isDigit(str) {
// CHG Start 2006/07/13 M.Yamamoto チェック方法を修正
//		if (str.match(/-?[0-9]+/g) == str) {
//			return true;
//		}
//		return false;
		if (!str.match(/^-?[0-9]+$/)) {
			return false;
		}
		return true;
// CHG End 2006/07/13 M.Yamamoto チェック方法を修正
	}

/**************************************************
*  郵便番号のチェック（999-9999）
*  パラメータ	str:チェック対象の文字列
*  戻り値		999-9999形式ならばtrue、それ以外ならfalse
***************************************************
*/
	function isPostNo(str) {

		if(!str.match(/^[0-9]{3}-[0-9]{4}$/)) {
			return false;
		}
		return true;

	}

/**************************************************
*  電話・ＦＡＸ・携帯番号のチェック（半角ハイフンはＯＫ）
*  パラメータ	str:チェック対象の文字列
*  戻り値		9999-9999-9999形式ならばtrue、それ以外ならfalse
* 							（9999は1～4桁可）
***************************************************
*/
	function isPhone(str) {

		if(!str.match(/^[0-9]{1,4}-[0-9]{1,4}-[0-9]{1,4}$/g)) {
			return false;
		}
		return true;

	}

/**************************************************
*  全角文字のチェック
*  パラメータ	str:チェック対象の文字列
*  戻り値		全角文字ならばtrue、それ以外ならfalse
***************************************************
*/
	function isZenkaku(str) {

//2004/03/26 Y.TAKASAWA DEL 使用しない。
////バイト長取得用
//var bsHlfChr="!\"#$%&\''()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~｡｢｣､･ｦｧｨｩｪｫｬｭｮｯｰｱｲｳｴｵｶｷｸｹｺｻｼｽｾｿﾀﾁﾂﾃﾄﾅﾆﾇﾈﾉﾊﾋﾌﾍﾎﾏﾐﾑﾒﾓﾔﾕﾖﾗﾘﾙﾚﾛﾜﾝﾞﾟ\r\n ";
//		var i, j;
//		for(var i=0;i<str.length;i++){
//			for(var j=0;j<bsHlfChr.length;j++){
//				if (str.charAt(i)==bsHlfChr.charAt(j)){
//					return false;
//				}
//			}
//		}

		return true;
	}

/**************************************************
*  英数字のチェック
*  パラメータ	str:チェック対象の文字列
*  戻り値		英数字ならばtrue、それ以外ならfalse
*				true 対象文字(0～9,a～z,A～Z)
***************************************************
*/
	function isAlphameric(str) {
		
		if (str.match(/[^0-9A-Za-z]/g)) {
			return false;
		}
		return true;

	}

/**************************************************
*  半角カタカナ文字のチェック
*  パラメータ	str:チェック対象の文字列
*  戻り値		半角カタカナならばtrue、それ以外ならfalse
*				true 対象文字(ｱ～ﾝ,ｧ～ｫ,ヵ,ヶ,ｯ,ｬ,ｭ,ｮ,ヮ,
*							  ｶﾞ～ﾄﾞ,ﾊﾞ～ﾎﾞ,ﾊﾟ～ﾎﾟ,ｳﾞ)
***************************************************
*/
	function isHankakuKana(str) {

		for (var i = 0; i < str.length; i++) {
			if (str.charAt(i) >= "｡" && str.charAt(i) <= "ﾟ") {
				return true;
			}
		}
		return false;
	}
	
	
/**************************************************
*  全角ひらがな文字のチェック
*  パラメータ	str:チェック対象の文字列
*  戻り値		全角ひらがなならばtrue、それ以外ならfalse
*				true 対象文字(ぁ．．．んー全角数字)
***************************************************
*/
	function isHirakana(str) {

//2004/03/26 Y.TAKASAWA MOD 半角カタカナ、全角カタカナ、漢字以外をOKにする。
//		var bsHlfChr = "ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん?゛゜ゝゞー－・１２３４５６７８９０";
		var bsHlfChr = "ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん";
		bsHlfChr += "!\"#$%&\''()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ ";
		bsHlfChr += "１２３４５６７８９０ＡＢＣＤＥＦＧＨＩＪＫＬＭＮＯＰＱＲＳＴＵＶＷＸＹＺａｂｃｄｅｆｇｈｉｊｋｌｍｎｏｐｑｒｓｔｕｖｗｘｙｚ";
		bsHlfChr += "！”“゛″＃♯＄％＆’゜‘´′（〔『〈《【［「」］】》〉』〕）＊＋、，－ー。．／・：；＜≪＝≫＞？＠￥＾＿｛｜｝￣～ゝゞ　"

		for (var i = 0; i < str.length; i++) {
			if (bsHlfChr.indexOf(str.charAt(i)) == -1) {
				return false;
			}
		}
		return true;
	}

/**************************************************
*  日付のチェック 年、月、日は個々に指定
*  パラメータ	p_year, p_month, p_day :チェック対象の文字列
*  戻り値		日付ならばtrue、それ以外ならfalse
***************************************************
*/
	function isDate(p_year, p_month, p_day) {
		// 長さチェック
		if (p_year.length != 4
			|| (p_month.length < 1 || p_month.length > 2)
			|| (p_day.length < 1 || p_day.length > 2) ) {
			return false;
		}

//2004/03/24 Y.TAKASAWA DEL 生年月日で明治1年(1868)～明治32年(1900)が選択可能のため、条件を削除
//		if((p_year < 1900) || (p_year > 2200) ){
//			return false;
//		}

		if((p_month < 1) || (p_month > 12)){
			return false;
		}
		var end_date = new Array();
		end_date["01"] = 31;
		end_date["02"] = 28;
		end_date["03"] = 31;
		end_date["04"] = 30;
		end_date["05"] = 31;
		end_date["06"] = 30;
		end_date["07"] = 31;
		end_date["08"] = 31;
		end_date["09"] = 30;
		end_date["10"] = 31;
		end_date["11"] = 30;
		end_date["12"] = 31;
		// 閏年チェック
		if( p_year%4 == 0 && p_year%100 != 0 || p_year%400 == 0 ){
			end_date["02"] = 29;
		}
		if (p_month.length < 2) {
			p_month = "0" + p_month;
		}
		if((p_day < 1) || (p_day > end_date[p_month])){
			return false;
		}
		return true;

	}

/**************************************************
*  文字列の長さを取得
*  パラメータ	str：文字列
*  戻り値		文字列の長さ
***************************************************
*/
	function getLength(str) { 

//バイト長取得用
var bsHlfChr="!\"#$%&\''()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~｡｢｣､･ｦｧｨｩｪｫｬｭｮｯｰｱｲｳｴｵｶｷｸｹｺｻｼｽｾｿﾀﾁﾂﾃﾄﾅﾆﾇﾈﾉﾊﾋﾌﾍﾎﾏﾐﾑﾒﾓﾔﾕﾖﾗﾘﾙﾚﾛﾜﾝﾞﾟ\r\n ";

		var i,cnt = 0; 
		for(i=0; i<str.length; i++)
			if (escape(str.charAt(i)).length >= 4 
				&& bsHlfChr.indexOf(str.charAt(i)) == -1) {
				cnt+=3;
			}
			//この8文字を1バイトと判定するので追加
			else if (str.charAt(i) == "±" 
					|| str.charAt(i) == "×" 
					|| str.charAt(i) == "÷" 
					|| str.charAt(i) == "°" 
					|| str.charAt(i) == "´" 
					|| str.charAt(i) == "¨" 
					|| str.charAt(i) == "§" 
					|| str.charAt(i) == "¶") {
				cnt+=3;
			}
			else {
				cnt++;
			}
		return cnt; 
	}

/**************************************************
*  checkbox か radio　がチェックされているかどうかのチェック
*  パラメータ	p_name：チェック対象のオブジェクト
*  戻り値		１つでもチェックがついていればtrue
*               １つもチェックがついてなければfalse
***************************************************
*/
	function isChecked(p_name){
		var i;
		if (p_name.length==null) {
			if (!p_name.checked) {
				return false;
			}
			return true;
		}

		for (i=0; i < p_name.length; i++) {
			if (p_name[i].checked) {
				return true;
			}
		}
		return false;
	}

/**************************************************
*  西暦から和暦に変換する
*  パラメータ	String p_year：西暦年
*  戻り値		String 和暦年－年号年（nyy形式）
***************************************************
*/
	function toWareki(p_year)
	{
		var intYear = parseInt(p_year);
		var retYear;
		
		if (intYear > 1988) {
			retYear = "H" + (intYear - 1988);	// 平成
		} else if (intYear > 1925) {
			retYear = "S" + (intYear - 1925);	// 昭和
		} else if (intYear > 1911) {
			retYear = "T" + (intYear - 1911);	// 大正
		} else if (intYear > 1867) {
			retYear = "M" + (intYear - 1867);	//明治
		} else {
			retYear = "";
		}
		return retYear;
	}

/**************************************************
*  和暦から西暦に変換する
*  パラメータ	string p_year：和暦年－年号年（nyy形式）
*  戻り値		string 西暦年（seiY）
*　　　　　　　　　　　  空白:エラー
***************************************************
*/
	function toSeireki(p_year)
	{
		var strNengo = p_year.charAt(0).toUpperCase();
		var intYear = eval(p_year.substring(1,p_year.length));
		var retYear;
		
		if ((strNengo == "H") 
				&& (intYear > 0) && (intYear < 50)) {
			retYear = "" + (1988 + intYear);			// 平成
		} else if ((strNengo == "S") 
				&& (intYear > 0) && (intYear < 65)) {
			retYear = "" + (1925 + intYear);			// 昭和
		} else if ((strNengo == "T") 
				&& (intYear > 0) && (intYear < 16)) {
			retYear = "" + (1911 + intYear);			// 大正
		} else if ((strNengo == "M") 
				&& (intYear > 0) && (intYear < 46)) {
			retYear = "" + (1867 + intYear);			// 明治
		} else {
			retYear = "";
		}
		return retYear;
	}

/**************************************************
*  日付の大小チェック（isDate後に行う）
*  パラメータ	p_year1, p_month1, p_day1：開始日
*               p_year2, p_month2, p_day2：終了日
*  戻り値		開始日 <= 終了日ならばtrue、
*                         それ以外ならfalse
***************************************************
*/
	function isCompareDate( p_year1, p_month1, p_day1,
							p_year2, p_month2, p_day2) {
	
		var oStart = new Date(p_year1, p_month1 - 1, p_day1, 0, 0, 0);
		var oEnd = new Date(p_year2, p_month2 - 1, p_day2, 0, 0, 0);

		// 開始日が終了日よりも後ならばエラー
		if(oStart > oEnd){
			return false;
		}
		return true;
	}

/**************************************************
*  日付の大小チェック（isDate後に行う）
*  パラメータ	p_year1, p_month1, p_day1：開始日
*               p_year2, p_month2, p_day2：終了日
*  戻り値		開始日 < 終了日ならばtrue、
*                        それ以外ならfalse
***************************************************
*/
	function isCompareDate2(p_year1, p_month1, p_day1,
							p_year2, p_month2, p_day2) {
	
		var oStart = new Date(p_year1, p_month1 - 1, p_day1, 0, 0, 0);
		var oEnd = new Date(p_year2, p_month2 - 1, p_day2, 0, 0, 0);

		// 開始日が終了日よりも後ならばエラー
		if(oStart >= oEnd){
			return false;
		}
		return true;
	}

/**************************************************
*  日時の大小チェック（isDate後に行う）
*  パラメータ	p_year1, p_month1, p_day1, p_hour1, p_minute1：開始日
*               p_year2, p_month2, p_day2, p_hour2, p_minute2：終了日
*  戻り値		開始日 < 終了日ならばtrue、
*                        それ以外ならfalse
***************************************************
*/
	function isCompareDateTime(p_year1, p_month1, p_day1, p_hour1, p_minute1,
							p_year2, p_month2, p_day2, p_hour2, p_minute2) {
	
		var oStart = new Date(p_year1, p_month1 - 1, p_day1,
							  p_hour1, p_minute1, 0);
		var oEnd = new Date(p_year2, p_month2 - 1, p_day2,
							p_hour2, p_minute2, 0);

		// 開始日が終了日よりも後ならばエラー
		if(oStart > oEnd){
			return false;
		}
		return true;
	}

/**************************************************
*  日時の大小チェック（isDate後に行う）
*  パラメータ	p_year1, p_month1, p_day1, p_hour1, p_minute1：開始日
*               p_year2, p_month2, p_day2, p_hour2, p_minute2：終了日
*  戻り値		開始日 <= 終了日ならばtrue、
*                        それ以外ならfalse
***************************************************
*/
	function isCompareDateTime2(p_year1, p_month1, p_day1, p_hour1, p_minute1,
							p_year2, p_month2, p_day2, p_hour2, p_minute2) {
	
		var oStart = new Date(p_year1, p_month1 - 1, p_day1,
							  p_hour1, p_minute1, 0);
		var oEnd = new Date(p_year2, p_month2 - 1, p_day2,
							p_hour2, p_minute2, 0);

		// 開始日が終了日よりも後ならばエラー
		if(oStart >= oEnd){
			return false;
		}
		return true;
	}

/**************************************************
*  過去日チェック（isDate後に行う）
*  パラメータ	p_year, p_month, p_day：対象日
*  戻り値		過去ならばtrue、それ以外ならfalse
***************************************************
*/
	function isPastday(p_year, p_month, p_day) {
	
		var oDate = new Date(p_year, p_month - 1, p_day, 0, 0, 0);

		var dd = new Date();
		var yy = dd.getYear();
		var mm = dd.getMonth() + 1;
		var dd = dd.getDate();
		if (yy < 2000) {
			yy += 1900;
		}
		if (mm < 10) {
			mm = "0" + mm;
		}
		if (dd < 10) {
			dd = "0" + dd; 
		}
		var nowDate = new Date(yy, mm - 1, dd, 0, 0, 0);
		
		// 対象日が過去ならばtrue
		if(nowDate > oDate){
			return true;
		}
		return false;
	}
/**************************************************
*  エラーメッセージの表示
*  パラメータ	errCode, errMsg
***************************************************
*/
function body_onload(errCode, errMsg) {
	if (errCode != "") {
		alert(errCode + errMsg);
	}
}

/**************************************************
*  日付用<html:select>オブジェクトの操作
* 年や月などが指定されたら、日に表示される値を変更します。
* パラメータ
* 		yearObj	年の<html:select>オブジェクト
				Ex.document.fm.select名
* 		monObj	月の<html:select>オブジェクト
* 		dayObj	日の<html:select>オブジェクト
***************************************************/
function setSelectedDays(yearObj, monObj, dayObj) {
	var year = yearObj.value;

	var strM = "";	
	if(monObj.value.length == 0){
		//空白の場合は１月と同様にする	
		strM = "01";
	} else if(monObj.value.length == 1){
		strM = "0" + monObj.value;
	} else{
		strM =  monObj.value;
	}
	
	var end_date = new Array();
	end_date["01"] = 31;
	end_date["02"] = 28;
	end_date["03"] = 31;
	end_date["04"] = 30;
	end_date["05"] = 31;
	end_date["06"] = 30;
	end_date["07"] = 31;
	end_date["08"] = 31;
	end_date["09"] = 30;
	end_date["10"] = 31;
	end_date["11"] = 30;
	end_date["12"] = 31;
	// 閏年チェック
	if( year%4==0 && year%100!=0 || year%400==0 ){
		end_date["02"] = 29;
	}
	// Max日を取得
	eDay = end_date[strM];

	// 選択した日を保管
	beforDay = dayObj.selectedIndex;

	dayObj.length=0;
	//先頭の空白
	dayObj.options[0] = new Option("", "");
	//数値部分(1～31)
	for (i=1; i <= eDay; i++) {
		dayObj.options[i] = new Option(i, i);
	}

	// 保管した日を選択
	dayObj.selectedIndex = beforDay;
}

/**************************************************
*  日付用<html:select>オブジェクトの操作
* 年が指定されたら、月に表示される値を変更します。
* （予約可能期間で制限する）
* パラメータ
* 		yearObj	 年の<html:select>オブジェクト
*				 Ex.document.fm.select名
* 		monObj	 月の<html:select>オブジェクト
*		p_sYear  予約可能期間（過去）・年
*		p_sMonth 予約可能期間（過去）・月
*		p_eYear  予約可能期間（未来）・年
*		p_eMonth 予約可能期間（未来）・月
***************************************************/
function setSelectedMonthLimit(yearObj, monObj,
								p_sYear, p_sMonth,
								p_eYear, p_eMonth) {
	var year = yearObj.value;

	// Min月を取得
	var minMonth = 1;
	if (p_sYear == year) {
		minMonth = parseInt(p_sMonth, 10);
	} 
	
	// Max月を取得
	var maxMonth = 12;
	if (p_eYear == year) {
		maxMonth = parseInt(p_eMonth, 10);
	}
	
	// 選択した月を保管
	beforMonth = monObj.value;

	monObj.length=0;
	//先頭の空白
	monObj.options[0] = new Option("", "");
	//数値部分(minMonth～maxMonth)
	index = 1;
	for (i=minMonth; i <= maxMonth; i++) {
		monObj.options[index] = new Option(i, i);
		index++;
	}

	// 保管した月を選択
	// （日を絞り込んでいるためにインデックス指定はしない）
	len = monObj.length;
	monObj.options[0].selected = true;
	for (j = 0; j < len; j++) {
		if (monObj.options[j].text == beforMonth) {
			monObj.options[j].selected = true;
			return;
		}
	}
}

/**************************************************
*  日付用<html:select>オブジェクトの操作
* 年や月などが指定されたら、日に表示される値を変更します。
* （予約可能期間で制限）
* パラメータ
* 		yearObj	 年の<html:select>オブジェクト
*				 Ex.document.fm.select名
* 		monObj	 月の<html:select>オブジェクト
* 		dayObj	 日の<html:select>オブジェクト
*		p_sYear  予約可能期間（過去）・年
*		p_sMonth 予約可能期間（過去）・月
*		p_sDay   予約可能期間（過去）・日
*		p_eYear  予約可能期間（未来）・年
*		p_eMonth 予約可能期間（未来）・月
*		p_eDay   予約可能期間（未来）・日		
***************************************************/
function setSelectedDaysLimit(yearObj, monObj, dayObj,
							   p_sYear, p_sMonth, p_sDay,
							   p_eYear, p_eMonth, p_eDay) {
	var year = yearObj.value;

	var str_M = "";	
	if(monObj.value.length == 1){
		str_M = "0" + monObj.value;
	} else {
		str_M =  monObj.value;
	}
	
	var str_sM = "";
	if (p_sMonth.length == 1) {
		str_sM = "0" + p_sMonth;
	} else {
		str_sM = p_sMonth + "";
	}
	
	var str_eM = "";
	if (p_eMonth.length == 1) {
		str_eM = "0" + p_eMonth;
	} else {
		str_eM = p_eMonth + "";
	}
	
	var end_date = new Array();
	end_date["01"] = 31;
	end_date["02"] = 28;
	end_date["03"] = 31;
	end_date["04"] = 30;
	end_date["05"] = 31;
	end_date["06"] = 30;
	end_date["07"] = 31;
	end_date["08"] = 31;
	end_date["09"] = 30;
	end_date["10"] = 31;
	end_date["11"] = 30;
	end_date["12"] = 31;
	// 閏年チェック
	if( year%4==0 && year%100!=0 || year%400==0 ){
		end_date["02"] = 29;
	}
	
	// min日を取得
	var minDay = 1;
	if (p_sYear == year && str_sM == str_M) {
		minDay = parseInt(p_sDay, 10);
	} 
	
	// Max日を取得
	var maxDay = 31;
	if (p_eYear == year && str_eM == str_M) {
		maxDay = parseInt(p_eDay, 10);
	} else if (str_M != "") {
		maxDay = end_date[str_M];
	}

	// 選択した日を保管
	beforDay = dayObj.value;

	dayObj.length=0;
	//先頭の空白
	dayObj.options[0] = new Option("", "");
	//数値部分(minDay～maxDay)
	index = 1;
	for (i=minDay; i <= maxDay; i++) {
		dayObj.options[index] = new Option(i, i);
		index++;
	}

	// 保管した日を選択
	// （日を絞り込んでいるためにインデックス指定はしない）
	len = dayObj.length;
	dayObj.options[0].selected = true;
	for (j = 0; j < len; j++) {
		if (dayObj.options[j].text == beforDay) {
			dayObj.options[j].selected = true;
			return;
		}
	}
}

/**************************************************
*  E-Mailアドレスのチェック
*  パラメータ	str:チェック対象の文字列
*  戻り値		下記以外のアドレスならばtrue、下記の場合はfalse
*    1. @がない場合 
*    2. .で始まるユーザ名・ドメイン名 
*    3. .で終わるユーザ名・ドメイン名 
*    4. ドメインに.が無い場合 
*    削除 5. ユーザ名の文字数が3文字未満の場合 
*    削除 6. ユーザ名に.が2文字以上含まれている場合 
*    削除 7. .を含んだドメイン名の文字数が4文字未満の場合 
*    8. ユーザ名に含まれる文字に . _ - 以外の記号が入っている場合 
*    9. ドメイン名に含まれる文字に . - 以外の記号が入っている場合 
***************************************************
*/
	function isEMail(str) {

		var emailPat   = /^(.+)@(.+)$/;
		var userPat    = /^[a-zA-Z0-9\._-]+$/;
		var domainPat  = /^[a-zA-Z0-9\.-]+$/;
		var invalid0   = /^(.+)\.(.+)\.(.+)$/;
		var invalid1   = /^\.(.*)/;
		var invalid2   = /(.*)\.$/;
		var invalid3   = /\.\./;
		var eMailArray = str.match(emailPat);

		if (eMailArray == null) {
			return false;
		}

		var user      = eMailArray[1];
		var dom       = eMailArray[2];

//		if (user.match(userPat) == null || user.match(invalid0) != null
//		     || user.length < 3         || user.match(invalid1) != null
//		                                || user.match(invalid2) != null
//		                                || user.match(invalid3) != null) {
		if (user.match(userPat) == null || user.match(invalid1) != null
		                                || user.match(invalid2) != null
		                                || user.match(invalid3) != null) {
			return false;
		}

//		if (dom.match(domainPat) == null || dom.indexOf('.') == -1
//		     || dom.length < 4           || dom.match(invalid1) != null
//		                                 || dom.match(invalid2) != null
//		                                 || dom.match(invalid3) != null) {
		if (dom.match(domainPat) == null || dom.indexOf('.') == -1
		                                 || dom.match(invalid1) != null
		                                 || dom.match(invalid2) != null
		                                 || dom.match(invalid3) != null) {
			return false;
		}

		return true;
	}

	/**************************************************
	*  小数(整数部３桁、小数部２桁)のチェック
	*  パラメータ	str:チェック対象の文字列
	*  戻り値		小数(整数部３桁、小数部２桁)ならばtrue、
	*  				小数(整数部３桁、小数部２桁)でなければfalse
	***************************************************
	*/
	function isRate(str) {
		var keisu1 = /^[0-9]{1,3}\.[0-9]{1,2}$/;
		var keisu2 = /^[0-9]{1,3}$/;
		
		if (getLength(str) > 6) {
			return false;
		}
		if (str.match(keisu2) != null) {
			return true;
		}
		if (str.match(keisu1) == null) {
			return false;
		}
		return true;
	}

/**********************************************************
*  URLの形式チェック
*  パラメータ	str:チェック対象の文字列
*  戻り値		形式が正しい場合true、間違っている場合false
***********************************************************
*/
	function isUrl(str) {

		// add 2004/03/11 M.Tanabe
		// "<"または">"が含まれている場合は、エラーとする
		if (str.indexOf("<") != -1 || str.indexOf(">") != -1) {
			return false;
		}

		if (str.indexOf("http://") == 0) {
			return true;
		} else if (str.indexOf("https://") == 0) {
			return true;
		}

		return false;
	}

/**************************************************
*  使ってはいけない文字のチェック
*  パラメータ	str:チェック対象の文字列
*  戻り値		使用していなければtrue、使用していればfalse
***************************************************
*/
	function isUseMoji(str) {
		//使ってはいけない文字の一覧
		var kanjiIchiran = "①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㍉㌔㌢㍍㌘㌧㌃㌶㍑㍗㌍㌦㌣㌫㍊㌻㎜㎝㎞㎎㎏㏄㎡㍻〝〟㏍㊤㊥㊦㊧㊨㈱㈲㈹㍾㍽㍼∮∑∟⊿￤纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹ＇＂ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ㈱№℡￢";

		for (i = 0; i < str.length; i++) {
			c = str.charAt(i);
			if (kanjiIchiran.indexOf(c) != -1) {
				return false;
				break;
			}
		}
		
		return true;
	}

/**********************************************************
*  Form内の入力項目を読み取り専用または非活性に設定
*  （変更画面で参照権限しかない場合に使用）
*  パラメータ	documentForm:対象Form
*  戻り値		なし
***********************************************************
*/
	function setReadOnly(documentForm) {
		var len = documentForm.length;
		for(var i = 0; i < len; i++){
			var e = documentForm.elements[i];
			var elementType = e.type;

			// テキスト、テキストエリアは
			// 読み取り専用＆背景色をテーブルを同色に設定
			if (elementType == "text" || elementType == "textarea") {
				e.readOnly = true;
				e.style.backgroundColor = "#fafcaf";

			// ボタン、隠し項目は何もしない
			} else if (elementType == "button" || elementType == "hidden") {

			// その他項目は、非活性
			// （ラジオ、チェック、リストなど）
			} else {
				e.disabled = true;
			}
		}

	}

/**********************************************************
*  Form内の入力項目を権限によって読み取り専用または非活性に設定
*  （変更画面で参照権限しかない場合に使用）
*  パラメータ	documentForm:対象Form
*  パラメータ	upd:権限（true:あり/false：なし）
*  戻り値		なし
***********************************************************
*/
	function setDispUpd(documentForm, upd) {
		// 権限が無い場合は、読取専用に設定
		if (upd == false) {
			setReadOnly(documentForm);
		}
		// 権限ありの場合は、何もしない
	}

/**********************************************************
*  Form内の共通チェック
*  パラメータ	documentForm:対象Form
*  戻り値		true:正常な場合/false:使用禁止文字を使用している場合
*  								エラーメッセージ表示
*								＆エラー項目にセットフォーカス
***********************************************************
*/
	function isCommonChk(documentForm) {

		var len = documentForm.length;
		for(var i = 0; i < len; i++){
			var e = documentForm.elements[i];
			var elementType = e.type;

			// テキスト、テキストエリア内の文字チェック
			if (elementType == "text" || elementType == "textarea") {
				// 半角カナを使用していた場合
				if (isHankakuKana(e.value)) {
					alert(MSG_MA008);
					e.focus();
					return false;
				// 使用禁止文字を使用していた場合
				} else if (!isUseMoji(e.value)) {
					alert(MSG_MA009);
					e.focus();
					return false;
				}
			}
		}
		return true;
	}

/**********************************************************
*  必須チェック		
*  パラメータ	str:チェック対象の文字列	
*  戻り値		入力されている場合true、入力されていない場合false
***********************************************************
*/
	function isNecessar(str) {	

		strstart = 0;
		for (i = 0; i < str.length; i++) {
			if (str.substring(i, i+1) == ' ' || str.substring(i, i+1)=='　') {
				strstart++;
			} else {
				break;
			}
		}
		
		if (strstart == str.length) {
			return false;
		}
		return true;
	}

/**********************************************************
*  二重起動防止チェック		
*  パラメータ	fm:チェック対象のフォーム	
*  戻り値		なし
***********************************************************
*/
	var g_DoubleFlag = false;

	function checkDoubleStarting(fm) {
	
		if (g_DoubleFlag) {
			return false;
		} else {
			g_DoubleFlag = true;
			fm.submit();
			return true;
		}
	}
	
/**********************************************************
*  全角スペースを半角スペースに変換
*  パラメータ	str:変換対象のオブジェクト	
*  戻り値		なし
***********************************************************
*/
	function changeSpaceFullToHalf(oj) {
		var ojvalue = oj.value ;
		oj.value	= ojvalue.split('　').join(' ');
	}

//-->
