


	//-------------------------------------------------------------------------------------------------
	//
	// ファイル概要 : 共通仕様関数群
	//
	//
	//
	// @package   ants-biz
	// @license   http://www.ants-biz.jp/
	// @copyright copyright &copy; 2004, AntsBizShare, Inc.
	// @author    Ryosuke Tomita <tomita@ants-biz.jp>
	// @access    public
	// @charset   euc-jp
	// @modified  2004/10/22
	// @version   1.0
	// @remark
	//
	//-------------------------------------------------------------------------------------------------








	//-------------------------------------------------------------------------------------------------
	// 概要 : ブラウザ判別処理関数
	//
	// 解説 : アクセス時にOS・ブラウザを判定し、各指定のCSSファイルを書き出す。
	//
	// 対象 : すべて
	//
	// 外部関数 : [fncDivideCssModule] . スタイルシート振分処理モジュール
	//
	// @param  String  [g_strLocation] : ロケーション文字列定義
	// @param  Array   [g_aryCss]      : 環境別CSSオブジェクト定義用配列
	//-------------------------------------------------------------------------------------------------

	// CSSオブジェクト定義
	g_aryCss                 = new Array();
	g_aryCss['macie']        = '<link rel="stylesheet" type="text/css" media="screen,print" href="/css/import/' + g_strLocation + '/import_macie.css" />';
	g_aryCss['macieother']   = '<link rel="stylesheet" type="text/css" media="screen,print" href="/css/import/' + g_strLocation + '/import_macie.css" />';
	g_aryCss['macns2003']    = '<link rel="stylesheet" type="text/css" href="/css/import/' + g_strLocation + '/import.css" />';
	g_aryCss['macns2002']    = '<link rel="stylesheet" type="text/css" href="/css/import/' + g_strLocation + '/import.css" />';
	g_aryCss['macnsother']   = '<link rel="stylesheet" type="text/css" href="/css/import/' + g_strLocation + '/import.css" />';
	g_aryCss['macsafari85']  = '<link rel="stylesheet" type="text/css" href="/css/import/' + g_strLocation + '/import.css" />';
	g_aryCss['macsafari100'] = '<link rel="stylesheet" type="text/css" href="/css/import/' + g_strLocation + '/import.css" />';
	g_aryCss['macopera']     = '<link rel="stylesheet" type="text/css" href="/css/import/' + g_strLocation + '/import.css" />';
	g_aryCss['macother']     = '<link rel="stylesheet" type="text/css" href="/css/import/' + g_strLocation + '/import.css" />';

	g_aryCss['winie']        = '<link rel="stylesheet" type="text/css" href="/css/import/' + g_strLocation + '/import.css" />';
	g_aryCss['winieother']   = '<link rel="stylesheet" type="text/css" href="/css/import/' + g_strLocation + '/import.css" />';
	g_aryCss['winns2003']    = '<link rel="stylesheet" type="text/css" href="/css/import/' + g_strLocation + '/import.css" />';
	g_aryCss['winns2002']    = '<link rel="stylesheet" type="text/css" href="/css/import/' + g_strLocation + '/import.css" />';
	g_aryCss['winnsother']   = '<link rel="stylesheet" type="text/css" href="/css/import/' + g_strLocation + '/import.css" />';
	g_aryCss['winopera']     = '<link rel="stylesheet" type="text/css" href="/css/import/' + g_strLocation + '/import.css" />';
	g_aryCss['winother']     = '<link rel="stylesheet" type="text/css" href="/css/import/' + g_strLocation + '/import.css" />';

	g_aryCss['otheros']      = '<link rel="stylesheet" type="text/css" href="/css/import/' + g_strLocation + '/import.css" />';


	var g_strPlatfrom   = navigator.platform.toUpperCase();  // OSの取得
	var g_strUserAgent  = navigator.userAgent.toUpperCase(); // ユーザーエージェントの取得
	var g_strAppName    = navigator.appName.toUpperCase();   // ブラウザ名の取得

	// デバッグ
	//alert( g_strUserAgent );



	// Mac
	if ( g_strPlatfrom.indexOf( 'MAC' ) > -1 )
	{
		// Opera
		if( g_strUserAgent.indexOf( 'OPERA' ) > -1 )
		{
			fncDivideCssModule( 'macopera' );
		}

		// InternetExplorer
		else if( g_strAppName.indexOf( 'MICROSOFT' ) > -1 )
		{
			var strVersionBuffer = g_strUserAgent.indexOf( 'MSIE ' , 0 ) + 5;
			var strVersionEval   = g_strUserAgent.indexOf( ';' , strVersionBuffer );
			var strVersion       = g_strUserAgent.substring( strVersionBuffer , strVersionEval );
			var lngVersion       = Number( strVersion );

			// デバッグ
			//alert( lngVersion );

			if( lngVersion >= 5 )
			{
				fncDivideCssModule( 'macie' );
			}
			else
			{
				fncDivideCssModule( 'macieother' );
			}
		}

		// Safari
		else if( g_strUserAgent.indexOf( 'SAFARI' ) > -1 )
		{
			var strVersionBuffer = g_strUserAgent.split( '/' )[3];
			var strVersion       = strVersionBuffer.split( '.' )[0];
			var lngVersion       = Number( strVersion );

			// デバッグ
			//alert( lngVersion );

			if( lngVersion >= 100 )
			{
				fncDivideCssModule( 'macsafari100' );
			}
			else if( lngVersion < 100 )
			{
				fncDivideCssModule( 'macsafari85' );
			}
		}

		// Netscape or Mozilla
		else if( g_strAppName.indexOf( 'NETSCAPE' ) > -1 )
		{
			var strVersionBuffer1 = g_strUserAgent.indexOf( 'GECKO/' , 0 ) + 6;
			var strVersionBuffer2 = g_strUserAgent.indexOf( 'GECKO/' , 0 ) + 10;
			var strVersionBuffer3 = g_strUserAgent.indexOf( 'GECKO/' , 0 ) + 14;

			var strVersion1       = g_strUserAgent.substring( strVersionBuffer1 , strVersionBuffer2 );
			var strVersion2       = g_strUserAgent.substring( strVersionBuffer1 , strVersionBuffer3 );

			var lngVersion1       = Number( strVersion1 );
			var lngVersion2       = Number( strVersion2 );

			// デバッグ
			//alert( lngVersion2 );

			if( lngVersion1 >= 2003 )
			{
				fncDivideCssModule( 'macns2003' );
			}
			else if( lngVersion2 <= 20010131 )
			{
				fncDivideCssModule( 'macnsother' );
			}
			else if( lngVersion1 < 2003 )
			{
				fncDivideCssModule( 'macns2002' );
			}
		}

		// Other
		else
		{
			fncDivideCssModule( 'macother' );
		}
	}



	// Windows
	else if( g_strPlatfrom.indexOf( 'WIN32' ) > -1 )
	{
		// Opera
		if( g_strUserAgent.indexOf( 'OPERA' ) > -1 )
		{
			fncDivideCssModule( 'winopera' );
		}

		// InternetExplorer
		else if( g_strAppName.indexOf( 'MICROSOFT' ) > -1 )
		{
			var strVersionBuffer = g_strUserAgent.indexOf( 'MSIE ' , 0 ) + 5;
			var strVersionEval   = g_strUserAgent.indexOf( ';' , strVersionBuffer );
			var strVersion       = g_strUserAgent.substring( strVersionBuffer , strVersionEval );
			var lngVersion       = Number( strVersion );

			// デバッグ
			//alert( lngVersion );

			if( lngVersion == 5.5 )
			{
				fncDivideCssModule( 'winie' );
			}
			else if( lngVersion >= 6 )
			{
				fncDivideCssModule( 'winie' );
			}
			else
			{
				fncDivideCssModule( 'winieother' );
			}
		}

		// Netscape or Mozilla
		else if( g_strAppName.indexOf( 'NETSCAPE' ) > -1 )
		{
			var strVersionBuffer1 = g_strUserAgent.indexOf( 'GECKO/' , 0 ) + 6;
			var strVersionBuffer2 = g_strUserAgent.indexOf( 'GECKO/' , 0 ) + 10;
			var strVersionBuffer3 = g_strUserAgent.indexOf( 'GECKO/' , 0 ) + 14;

			var strVersion1       = g_strUserAgent.substring( strVersionBuffer1 , strVersionBuffer2 );
			var strVersion2       = g_strUserAgent.substring( strVersionBuffer1 , strVersionBuffer3 );

			var lngVersion1       = Number( strVersion1 );
			var lngVersion2       = Number( strVersion2 );

			// デバッグ
			//alert( lngVersion1 );

			if( lngVersion1 >= 2003 )
			{
				fncDivideCssModule( 'winns2003' );
			}
			else if( lngVersion2 <= 20010131 )
			{
				fncDivideCssModule( 'winnsother' );
			}
			else if( lngVersion1 < 2003 )
			{
				fncDivideCssModule( 'winns2002' );
			}
		}

		// Other
		else
		{
			fncDivideCssModule( 'winother' );
		}
	}



	// Other OS
	else
	{
		fncDivideCssModule( 'otheros' );
	}





	//-------------------------------------------------------------------------------------------------
	// 概要 : スタイルシート振分処理モジュール
	//
	// 対象 : すべて
	//
	// @param  String  [strMode] : 動作振分処理文字列
	//-------------------------------------------------------------------------------------------------
	function fncDivideCssModule( strMode )
	{
		var strMacAlert = '';
		strMacAlert    += '本サイトは InternetExplorer 5以上、又は Netscape 6.1以上で最適化されています。\n';
		strMacAlert    += 'ご使用の環境ではページレイアウトが崩れる場合がございますので、ご注意ください。';

		var strWinAlert = '';
		strWinAlert    += '本サイトは InternetExplorer 5.5以上、又は Netscape 6.1以上で最適化されています。\n';
		strWinAlert    += 'ご使用の環境ではページレイアウトが崩れる場合がございますので、ご注意ください。';

		var strOSAlert  = '';
		strOSAlert     += '本サイトは Windows 又は MacOS で最適化されています。\n';
		strOSAlert     += 'ご使用の環境ではページレイアウトが崩れる場合がございますので、ご注意ください。';



		switch( strMode )
		{
			// Mac
			case 'macie':
				document.write( g_aryCss[strMode] );
				break;

			case 'macieother':
				document.write( g_aryCss[strMode] );
				alert( strMacAlert );
				break;

			case 'macsafari100':
				document.write( g_aryCss[strMode] );
				break;

			case 'macsafari85':
				document.write( g_aryCss[strMode] );
				break;

			case 'macns2003':
				document.write( g_aryCss[strMode] );
				break;

			case 'macns2002':
				document.write( g_aryCss[strMode] );
				break;

			case 'macnsother':
				alert( strMacAlert );
				break;

			case 'macopera':
				document.write( g_aryCss[strMode] );
				break;

			case 'macother':
				document.write( g_aryCss[strMode] );
				alert( strMacAlert );
				break;



			// Windows
			case 'winie':
				document.write( g_aryCss[strMode] );
				break;

			case 'winieother':
				document.write( g_aryCss[strMode] );
				alert( strWinAlert );
				break;

			case 'winns2003':
				document.write( g_aryCss[strMode] );
				break;

			case 'winns2002':
				document.write( g_aryCss[strMode] );
				break;

			case 'winnsother':
				document.write( g_aryCss[strMode] );
				alert( strWinAlert );
				break;

			case 'winopera':
				document.write( g_aryCss[strMode] );
				break;

			case 'winother':
				document.write( g_aryCss[strMode] );
				alert( strWinAlert );
				break;



			// Other OS
			case 'otheros':
				document.write( g_aryCss[strMode] );
				alert( strOSAlert );
				break;



			default:
				break;
		}
		return false;
	}





	//-------------------------------------------------------------------------------------------------
	// 概要 : 西暦表示関数
	//
	// 解説 : サーバサイド(PHP)より取得した西暦を、対象オブジェクトに代入し表示させる。
	//
	// 対象 : すべて
	//
	// @param  String  [strNum] : 西暦取得用オブジェクト
	// @param  Object  [objId]  : 表示対象オブジェクト
	//
	// @event [onload] : body
	//-------------------------------------------------------------------------------------------------
	function fncCommonGetYear( strNum, objId )
	{
		var strY = document.getElementById( strNum ).value;
		document.getElementById( objId ).innerHTML = strY
	}



	//-------------------------------------------------------------------------------------------------
	// 概要 : ナビゲーション縦幅変更関数
	//
	// 解説 : ページ毎に一意の数値をナビゲーション縦幅に適用する。
	//
	// 対象 : すべて
	//
	// @param  Object  [objId]  : 変更対象オブジェクト
	// @param  Number  [lngNum] : 変更数値
	//
	// @event [onload] : body
	//-------------------------------------------------------------------------------------------------
	function fncCommonSetHeight( objId, lngNum )
	{
		var lngHeight = String( lngNum ) + 'px';
		document.getElementById( objId ).style.height = lngHeight;
	}



	//-------------------------------------------------------------------------------------------------
	// 概要 : フォーム必須項目チェック処理関数
	//
	// 対象 : フォームオブジェクト
	//
	// 外部関数 [fncEmailCheckModule] : Email型チェックモジュール
	//          [fncQueryModule]      : クエリー処理モジュール
	//
	// @param  Object  [objFrm]   : フォームオブジェクトName
	// @param  Object  [objEmail] : Email入力欄オブジェクトID
	// @param  Array   [aryObj]   : 必須項目オブジェクトID
	//
	// @event [onclick] : 対象オブジェクト
	//-------------------------------------------------------------------------------------------------
	function fncCommonCheckFormElements( objFrm , objEmail , aryObj )
	{
		for( i in aryObj )
		{
			if( document.getElementById( aryObj[i] ).value == '' )
			{
				fncCommonQueryModule( 'Error' );
				return false;
			}
		}

		fncCommonEmailCheckModule( objFrm , objEmail );

		return false;
	}



	//-------------------------------------------------------------------------------------------------
	// 概要 : Email型チェックモジュール
	//
	// 外部関数 : [fncCommonQueryModule] クエリーモジュール
	//
	// @param  Object  [objFrm]   : フォームオブジェクトName
	// @param  Object  [objEmail] : Email入力欄オブジェクトID
	//
	// @event [onclick] : 対象オブジェクト
	//-------------------------------------------------------------------------------------------------
	function fncCommonEmailCheckModule( objFrm , objEmail )
	{
		var strEmailAddr; // Email文字列取得用変数

		strEmailAddr = document.getElementById( objEmail ).value;


		// EmailAddressの形式が正しい場合
		if( strEmailAddr.match(/.*@.*\..*/i) )
		{
			fncCommonQueryModule( 'Submit' , objFrm );
		}
		// EmailAddressの形式が不正な場合
		else
		{
			fncCommonQueryModule( 'EmailError' , objFrm );
		}

		return false;
	}



	//-------------------------------------------------------------------------------------------------
	// 概要 : クエリー処理モジュール
	//
	// 外部関数 [fncCommonCheckFormElements] : フォーム必須項目チェック処理関数
	//
	// @param  Object  [strMode] : 処理モード文字列
	// @param  Object  [objFrm]  : フォームオブジェクトName
	//-------------------------------------------------------------------------------------------------
	function fncCommonQueryModule( strMode , objFrm )
	{
		switch( strMode )
		{
			case 'Submit':
				if( g_strUserAgent.indexOf( 'FIREFOX' ) > -1 )
				{
					document.getElementById( "hiddenSubmitBtn" ).click();
				}
				else
				{
					objFrm.submit();
				}
				break;

			case 'Reset':
				objFrm.reset();
				break;

			case 'EmailError':
				alert( 'メールアドレスの形式が不正です。正しく入力してください。' );
				break;

			case 'Error':
				alert( '必須項目を入力してください。' );
				break;

			default:
				break;
		}

		return false;
	}



	//-------------------------------------------------------------------------------------------------
	// 概要 : ウィンドウオープン関数
	//
	// 対象 : 対象オブジェクト
	//
	// 外部関数 : [fncCommonPopupWindowModule] . ウィンドウオープンモジュール
	//
	// @param  String  [strURL]     : URL文字列
	// @param  String  [strWidth]   : Width値文字列
	// @param  String  [strHeight]  : Height値文字列
	// @param  String  [strXpos]    : X座標値文字列
	// @param  String  [strYpos]    : Y座標値文字列
	// @param  String  [strWinName] : ウィンドウ名文字列
	// @param  String  [strScroll]  : スクロールバー可否文字列
	//
	// @event [onclick] : 対象オブジェクト
	//-------------------------------------------------------------------------------------------------
	function fncCommonPopupWindow( strURL, strWidth, strHeight, strXpos, strYpos, strWinName, strScroll )
	{
		// Safariの場合
		if( navigator.userAgent.indexOf( 'Safari' ) > -1 )
		{
			// 文字列を数値に変換
			var lngWidth  = Number( strWidth )  + 2;
			var lngHeight = Number( strHeight ) + 2;

			// 数値を文字列に変換
			strNewWidth  = String( lngWidth );
			strNewHeight = String( lngHeight );

			fncCommonPopupWindowModule( strURL, strNewWidth, strNewHeight, strXpos, strYpos, strWinName, strScroll );
		}
		else
		{
			fncCommonPopupWindowModule( strURL, strWidth, strHeight, strXpos, strYpos, strWinName, strScroll );
		}

		return false;
	}
	//-------------------------------------------------------------------------------------------------
	// 概要 : ウィンドウオープンモジュール
	//
	// 外部関数 : [fncCommonPopupWindow] . ウィンドウオープン関数
	//
	// @param  String  [strURL]         : URL文字列
	// @param  String  [strWidth]       : Width値文字列
	// @param  String  [strHeight]      : Height値文字列
	// @param  String  [strXpos]        : X座標値文字列
	// @param  String  [strYpos]        : Y座標値文字列
	// @param  String  [strWinName]     : ウィンドウ名文字列
	// @param  String  [strScroll]      : スクロールバー可否文字列
	// @param  Object  [strWindowStyle] : ウィンドウスタイル定義用変数
	//-------------------------------------------------------------------------------------------------
	function fncCommonPopupWindowModule( strURL, strWidth, strHeight, strXpos, strYpos, strWinName, strScroll )
	{
		var strWindowStyle = '';

		strWindowStyle += 'top=' + strXpos + ' , ';
		strWindowStyle += 'left=' + strYpos + ' , ';
		strWindowStyle += 'width='  + strWidth + ' , ';
		strWindowStyle += 'height=' + strHeight + ' , ';
		strWindowStyle += 'scrollbars=' + strScroll;

		// デバッグ
		//alert( strWindowStyle );

		newW = window.open( strURL , strWinName , strWindowStyle );

		return false;
	}
	//-------------------------------------------------------------------------------------------------
	// 概要 : 印刷処理関数
	//-------------------------------------------------------------------------------------------------
	function fncCommonWindowPrint()
	{
		var strMessage = 'お客様のブラウザでプリントアウトされる場合は、ファイルメニューの「印刷」オプションを使って出力するか、次のショートカットキーで印刷できます。Windows：「Ctrlキーを押しながらP」　Mac：「Commandキーを押しながらP」';

		// [print()]関数が有効な場合
		if( window.print )
		{
			window.print();
		}
		// [print()]関数が有効でない場合
		else
		{
			alert( strMessage );
		}

		return false;
	}



	//-------------------------------------------------------------------------------------------------
	// 概要 : ツリーメニュー表示・非表示処理関数
	//
	// @param  String  [objId] : ツリーメニューオブジェクト
	//-------------------------------------------------------------------------------------------------
	function fncCommonShowHideTreeMenu( objId )
	{
		var objMenu = document.getElementById( objId );

		if( objMenu.style.display == "none" )
		{
			objMenu.style.display = "block";
		}
		else
		{
			objMenu.style.display = "none";
		}
	}



	//-------------------------------------------------------------------------------------------------
	// 概要 : メインイメージ表示処理関数
	//
	// @param  String  [objId] : メインイメージオブジェクト
	//-------------------------------------------------------------------------------------------------
	function fncSetRandomImg( objId )
	{
		var num     = 0;
		var aryCode = new Array();

		aryCode[0] = '<a href="http://www.restolz.net/" target="_blank"><img src="/img/top/restolz.jpg" width="500" height="205" border="0" alt="ReSTOLZ - 厳選したインターネットサービスの提供、セキュリティ／システム運用管理サービス。私たちはお客様の会社のシステム部門パートナーになる。その立場からセレクトしたサービスを紹介します。" /></a>';
		aryCode[1] = '<a href="http://www.msp-sp.net/" target="_blank"><img src="/img/top/msp.jpg" width="500" height="205" border="0" alt="MSPとは？ - ２４時間３６５日システムの安定稼動。システムの監視・運用のMSP（マネージメント・サービス・プロバイダー）サービスの情報サイト" /></a>';
		aryCode[2] = '<a href="http://www.mobomoga.info/" target="_blank"><img src="/img/top/mobomoga.jpg" width="500" height="205" border="0" alt="「仕事を遊び、趣味を遊び、酒を遊び、人生を遊ぼう。」−MOBOMOGA−" /></a>'
		aryCode[3] = '<a href="http://www.barong.jp/" target="_blank"><img src="/img/top/barong_main.jpg" width="500" height="205" border="0" alt="バリ島のマッサージ屋さん「バロン」恵比寿南店−足圧マッサージ、クリームバス、アロマボディマッサージ、フェイシャル、シンクロセラピー−" /></a>'
		aryCode[4] = '<a href="http://www.shun-seika.jp/" target="_blank"><img src="/img/top/shun.jpg" width="500" height="205" border="0" alt="山形・庄内の味をみなさまの食卓へ。山形・庄内 e-seika 旬Shop" /></a>'
		aryCode[5] = '<a href="http://tachikichi-shop.net/" target="_blank"><img src="/img/top/tachi.jpg" width="500" height="205" border="0" alt="渋谷餃子で有名な「餃子焼専門店　立吉　渋谷本店」" /></a>'
		aryCode[6] = '<a href="http://triathlonclub.e-monoatta.com/" target="_blank"><img src="/img/top/traishlonclub.jpg" width="500" height="205" border="0" alt="地球を楽しもう！東京都港区・青山トライアスロン倶楽部" /></a>'
		//aryCode[2] = '<img src="/img/top/main_img.jpg" width="500" height="205" border="0" alt="シェアするからビジネスが膨らむ" />';


		num = Math.floor( Math.random() * aryCode.length );


		document.getElementById( objId ).innerHTML = aryCode[num];

		delete aryCode;
	}

