
// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
// 内　容：半角数字かどうかのチェック
// 引　数：_num → チェックする対象文字
// 戻り値：true → 半角数字である ｜ false → 半角数字でない
// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
function ChkNumber( _str ) {
	if ( _str == "" ) { return true; }
	if ( isNaN( _str ) == true ) { return false; }
	else { return true; }
}


// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
// 内　容：半角文字かどうかのチェック
// 引　数：_str → チェックする対象文字
// 戻り値：true → 半角文字である ｜ false → 半角文字でない
// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
function checkRoman( _str ){
    var str2;
    //許容範囲
    var checkStr = new String ("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789");
    //スペースを取り除く
    str2 = _str.replace(/ /g,"");
    if( str2.length == 0 ) { return false; }
    for( var i = 0; i < str2.length; i++ ) {
        if( checkStr.indexOf(str2.charAt(i), 0 ) == -1 ){ return false; }
    }
    return true;
}



// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
// 内　容：文字桁数チェック
// 引　数：_num → チェックする対象文字 ｜ _chkkt → チェック時の文字数
// 戻り値：true → 桁数が正 ｜ false → 桁数が誤
// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
function ChkStrLen( _str, _chkkt ){
	if ( _str.length != _chkkt ) {return false;}
	else { return true; }
}

// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
// 内　容：文字桁数チェック（文字数以内か）
// 引　数：_num → チェックする対象文字 ｜ _chkkt → チェック時の文字数
// 戻り値：true → 以内 ｜ false → より上
// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
function ChkStrLenLess( _str, _chkkt ){
	if ( _str.length <= _chkkt ) {return true;}
	else { return false; }
}

// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
// 内　容：日付フォーマットチェック（YYYY/MM/DD）
// 引　数：_value → チェックする対象文字 (年月日)
// 戻り値：true → 正 ｜ false → 誤
// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
function ChkDayFormat( _value ){
	
	var isplit;
	var year;
	var month;
	var day;
	var s;
	
	// NULL は真とする
	if( _value.length == 0 ){ return true; }
	if( _value.length == " " ){ return true; }
	// '/' がないか、あっても先頭か末尾ならばエラー
	isplit = _value.indexOf('/');
	if( isplit < 1 || isplit == _value.length-1 ){ return false; }
	// year を得る
	year = _value.substr( 0, isplit );
	s = _value.substr( isplit + 1 );
	// （s）'/' がないか、あっても先頭か末尾ならばエラー
	isplit = s.indexOf('/');
	if( isplit < 1 || isplit == s.length-1 ){ return false; }
	// month と day を得る
	month = s.substr( 0, isplit );
	day = s.substr( isplit + 1 );
	// 半角数字のみでない場合はエラー
	if( year.search("[^0-9]") != -1 ){ return false; }
	if( month.search("[^0-9]") != -1 ){ return false; }
	if( day.search("[^0-9]") != -1 ){ return false; }
	// 年が1900〜9999の範囲でなければエラー
	if( year < 1900 || year > 9999 ){ return false; }
	// 月が１〜12の範囲でなければエラー
	if( month < 1 || month > 12 ){ return false; }
	// 日付が正しいかチェック
	return ChkDay( year, month, day );
	// OK
	return true;
}

// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
// 内　容：日付チェック
// 引　数：_value → チェックする対象文字 (日付)
// 戻り値：true → 正 ｜ false → 誤
// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

function ChkDay(_year, _month, _day){
	
	var maxday = new Number();	// その月の最大日数
	
	// maxday を設定
	maxday = 31;
	if( _month == 4 || _month == 6 || _month == 9 || _month == 11 ) { maxday = 30; }
	// ２月の場合
	if( _month == 2 ){
		// 年の指定がない場合
		if( _year == 0 ){ maxday = 29; }
		// 年の指定がある場合
		else {
			if( _year % 4 != 0 ){ maxday = 28; }
			else {
				if( _year % 100 == 0 && _year % 400 != 0 ){ maxday = 28; }
				else { maxday = 29; }
			}
		}
	}
	// 日が１〜maxday の範囲でなければエラー
	if( _day < 1 || _day > maxday ){ return false; }
	// OK
	return true;
}

// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
// 内　容：文字列の置換
// 引　数：_mStr → 置換する対象文字列 ｜ _inStr → 置換前文字 ｜ _reStr → 置換後文字
// 戻り値：置換後の文字列
// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
function RepalceString( _mStr, _inStr, _reStr ) {
	
	var hitCnt = 0;
	
	for (i = 0; i < _mStr.length; i++ ) { if ( _mStr.charAt(i) == _inStr ) { hitCnt++; } }
	for (i = 0; i < hitCnt; i++ ) { _mStr = _mStr.replace( _inStr, _reStr ); }
	return _mStr;
}

// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
// 内　容：文字列の削除
// 引　数：_mStr → 削除する対象文字列 ｜ _inStr → 削除のポイントとなる文字 ｜ _n → 何個目
// 例　　：CutString("http://www.xxx.com/aaa/bbb/ccc.html","/",2) → "http://www.xxx.com/aaa"
// 戻り値：削除後の文字列
// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
function CutString( _mStr, _inStr, _n ) {
	
	var hitCnt = 0;
	var setCnt = 0;
	var cutCnt = 0;
	
	for (i = 0; i < _mStr.length; i++ ) { if ( _mStr.charAt(i) == _inStr ) { hitCnt++; } }
	for (i = 0; i < _mStr.length; i++ ) {
		if ( _mStr.charAt(i) == _inStr ) {
			setCnt++;
			if ( setCnt == hitCnt - _n ) { cutCnt = i; break; }
		}
	}
	return _mStr.substr(0,cutCnt);
}

//画像変更等々
function 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 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=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 FindObj(n, d) { //v4.0
  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=FindObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function SwapImage() { //v3.0
  var i,j=0,x,a=SwapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=FindObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

//画像変更
function ChageImage( _obj, _img ) { document.images[_obj].src = _img; }

//別ウィンドウOPEN
function OpenWindow( _oUrl ) { 
	nWindow = window.open( _oUrl,"","resizable=yes,menubar=no,directories=no,status=no,location=no,width=300,height=320" );
	nWindow.focus();
}

//別ウィンドウOPEN
function OpenWindow2( _oUrl ) { 
	nWindow = window.open( _oUrl,"","resizable=yes,menubar=no,directories=no,status=no,location=no,width=520,height=620" );
	nWindow.focus();
}

function showLAYER(idName){ 
  if(document.getElementById) //NN6,Mozilla,IE5用
    document.getElementById(idName).style.visibility = 'visible' 
  else if(document.all)       //IE4用
    document.all(idName).style.visibility = 'visible' 
  else if(document.layers)    //NN4用
    document.layers[idName].visibility = 'show' 
}

function hideLAYER(idName){ 
  if(document.getElementById) //NN6,Mozilla,IE5用
    document.getElementById(idName).style.visibility = 'hidden' 
  else if(document.all)       //IE4用
    document.all(idName).style.visibility = 'hidden'
  else if(document.layers)    //NN4用
    document.layers[idName].visibility = 'hide'
}


function overLayer(n) {
	var layNm = "";
	switch(n){
	case 1: layNm = "lay01"; break;
	case 2: layNm = "lay02"; break;
	case 3: layNm = "lay03"; break;
	case 4: layNm = "lay04"; break;
	case 5: layNm = "lay05"; break;
	case 6: layNm = "lay06"; break;
	case 7: layNm = "lay07"; break;
	case 8: layNm = "lay08"; break;
	case 9: layNm = "lay09"; break;
	}
	showLAYER(layNm);
}
function outLayer(n) {
	var layNm = "";
	switch(n){
	case 1: layNm = "lay01"; break;
	case 2: layNm = "lay02"; break;
	case 3: layNm = "lay03"; break;
	case 4: layNm = "lay04"; break;
	case 5: layNm = "lay05"; break;
	case 6: layNm = "lay06"; break;
	case 7: layNm = "lay07"; break;
	case 8: layNm = "lay08"; break;
	case 9: layNm = "lay09"; break;
	}
	hideLAYER(layNm);

}

function overLocalLayer(n) {
	var layNm = "";
	switch(n){
	case 1:
		layNm = "laytokyo";
		hideLAYER("laykanagawa");
		hideLAYER("layshizuoka");
		hideLAYER("layoosaka");
		hideLAYER("layniigata");
		hideLAYER("layyamanashi");
		hideLAYER("layhokkaido");
		hideLAYER("layaomori");
		hideLAYER("layiwate");
		hideLAYER("laymiyagi");
		hideLAYER("layhukushima");
		hideLAYER("layaichi");
		hideLAYER("layishikawa");
		hideLAYER("laytoyama");
		break;
	case 2:
		layNm = "laykanagawa";
		hideLAYER("laytokyo");
		hideLAYER("layshizuoka");
		hideLAYER("layoosaka");
		hideLAYER("layniigata");
		hideLAYER("layyamanashi");
		hideLAYER("layhokkaido");
		hideLAYER("layaomori");
		hideLAYER("layiwate");
		hideLAYER("laymiyagi");
		hideLAYER("layhukushima");
		hideLAYER("layaichi");
		hideLAYER("layishikawa");
		hideLAYER("laytoyama");
		break;
	case 3:
		layNm = "layshizuoka";
		hideLAYER("laytokyo");
		hideLAYER("laykanagawa");
		hideLAYER("layoosaka");
		hideLAYER("layniigata");
		hideLAYER("layyamanashi");
		hideLAYER("layhokkaido");
		hideLAYER("layaomori");
		hideLAYER("layiwate");
		hideLAYER("laymiyagi");
		hideLAYER("layhukushima");
		hideLAYER("layaichi");
		hideLAYER("layishikawa");
		hideLAYER("laytoyama");
		break;
	case 4:
		layNm = "layoosaka";
		hideLAYER("laytokyo");
		hideLAYER("laykanagawa");
		hideLAYER("layshizuoka");
		hideLAYER("layniigata");
		hideLAYER("layyamanashi");
		hideLAYER("layhokkaido");
		hideLAYER("layaomori");
		hideLAYER("layiwate");
		hideLAYER("laymiyagi");
		hideLAYER("layhukushima");
		hideLAYER("layaichi");
		hideLAYER("layishikawa");
		hideLAYER("laytoyama");
		break;
	case 5:
		layNm = "layniigata";
		hideLAYER("laytokyo");
		hideLAYER("laykanagawa");
		hideLAYER("layshizuoka");
		hideLAYER("layoosaka");
		hideLAYER("layyamanashi");
		hideLAYER("layhokkaido");
		hideLAYER("layaomori");
		hideLAYER("layiwate");
		hideLAYER("laymiyagi");
		hideLAYER("layhukushima");
		hideLAYER("layaichi");
		hideLAYER("layishikawa");
		hideLAYER("laytoyama");
		break;
	case 6:
		layNm = "layyamanashi";
		hideLAYER("laytokyo");
		hideLAYER("laykanagawa");
		hideLAYER("layshizuoka");
		hideLAYER("layoosaka");
		hideLAYER("layniigata");
		hideLAYER("layhokkaido");
		hideLAYER("layaomori");
		hideLAYER("layiwate");
		hideLAYER("laymiyagi");
		hideLAYER("layhukushima");
		hideLAYER("layaichi");
		hideLAYER("layishikawa");
		hideLAYER("laytoyama");
		break;
	case 7:
		layNm = "layhokkaido";
		hideLAYER("laytokyo");
		hideLAYER("laykanagawa");
		hideLAYER("layshizuoka");
		hideLAYER("layoosaka");
		hideLAYER("layniigata");
		hideLAYER("layyamanashi");
		hideLAYER("layaomori");
		hideLAYER("layiwate");
		hideLAYER("laymiyagi");
		hideLAYER("layhukushima");
		hideLAYER("layaichi");
		hideLAYER("layishikawa");
		hideLAYER("laytoyama");
		break;
	case 8:
		layNm = "layaomori";
		hideLAYER("laytokyo");
		hideLAYER("laykanagawa");
		hideLAYER("layshizuoka");
		hideLAYER("layoosaka");
		hideLAYER("layniigata");
		hideLAYER("layyamanashi");
		hideLAYER("layhokkaido");
		hideLAYER("layiwate");
		hideLAYER("laymiyagi");
		hideLAYER("layhukushima");
		hideLAYER("layaichi");
		hideLAYER("layishikawa");
		hideLAYER("laytoyama");
		break;
	case 9:
		layNm = "layiwate";
		hideLAYER("laytokyo");
		hideLAYER("laykanagawa");
		hideLAYER("layshizuoka");
		hideLAYER("layoosaka");
		hideLAYER("layniigata");
		hideLAYER("layyamanashi");
		hideLAYER("layhokkaido");
		hideLAYER("layaomori");
		hideLAYER("laymiyagi");
		hideLAYER("layhukushima");
		hideLAYER("layaichi");
		hideLAYER("layishikawa");
		hideLAYER("laytoyama");
		break;
	case 10:
		layNm = "laymiyagi";
		hideLAYER("laytokyo");
		hideLAYER("laykanagawa");
		hideLAYER("layshizuoka");
		hideLAYER("layoosaka");
		hideLAYER("layniigata");
		hideLAYER("layyamanashi");
		hideLAYER("layhokkaido");
		hideLAYER("layaomori");
		hideLAYER("layiwate");
		hideLAYER("layhukushima");
		hideLAYER("layaichi");
		hideLAYER("layishikawa");
		hideLAYER("laytoyama");
		break;
	case 11:
		layNm = "layhukushima";
		hideLAYER("laytokyo");
		hideLAYER("laykanagawa");
		hideLAYER("layshizuoka");
		hideLAYER("layoosaka");
		hideLAYER("layniigata");
		hideLAYER("layyamanashi");
		hideLAYER("layhokkaido");
		hideLAYER("layaomori");
		hideLAYER("layiwate");
		hideLAYER("laymiyagi");
		hideLAYER("layaichi");
		hideLAYER("layishikawa");
		hideLAYER("laytoyama");
		break;
	case 12:
		layNm = "layaichi";
		hideLAYER("laytokyo");
		hideLAYER("laykanagawa");
		hideLAYER("layshizuoka");
		hideLAYER("layoosaka");
		hideLAYER("layniigata");
		hideLAYER("layyamanashi");
		hideLAYER("layhokkaido");
		hideLAYER("layaomori");
		hideLAYER("layiwate");
		hideLAYER("laymiyagi");
		hideLAYER("layishikawa");
		hideLAYER("laytoyama");
		break;
	case 13:
		layNm = "layishikawa";
		hideLAYER("laytokyo");
		hideLAYER("laykanagawa");
		hideLAYER("layshizuoka");
		hideLAYER("layoosaka");
		hideLAYER("layniigata");
		hideLAYER("layyamanashi");
		hideLAYER("layhokkaido");
		hideLAYER("layaomori");
		hideLAYER("layiwate");
		hideLAYER("laymiyagi");
		hideLAYER("layaichi");
		hideLAYER("laytoyama");
		break;
	case 14:
		layNm = "laytoyama";
		hideLAYER("laytokyo");
		hideLAYER("laykanagawa");
		hideLAYER("layshizuoka");
		hideLAYER("layoosaka");
		hideLAYER("layniigata");
		hideLAYER("layyamanashi");
		hideLAYER("layhokkaido");
		hideLAYER("layaomori");
		hideLAYER("layiwate");
		hideLAYER("laymiyagi");
		hideLAYER("layaichi");
		hideLAYER("layishikawa");
		break;
	}
	showLAYER(layNm);
}

