//		このモジュールは、公開時に使われる、ファイル保存を含む“動作”に必要な関数群である。
//		編集時のみに必要な関数群は HomeWXY.js と DraDro.js に書かれている。

//		編集モード：アクセスすると先ず下２行が実行され、 HTML 読み込み後 DraDro.js の OnLoad 関数が実行される。
//		閲覧モード：DraDro.js が呼ばれないので、下２行と .onload の実行後は関数群が定義されるのみで何も実行されない。

if (!EG){var EG = parseInt(0);};	//	if(){} はクロスブラウザー対応。縁取りの幅	編集モードでは OnLoad 関数により１０に再セットされる。
var maxZ = parseInt(1);					//	最大Ｚレイヤー値

//-----------------  オンロード関数。本来に DraDro.js 置くべきであるがテキストエリアの読み込みの都合で此処に置く  --------------------------
window.onload = function(){

	var divs = document.getElementsByTagName("div");	// 先ずは Div Tag の処理
	for (var i = 0; i < divs.length;i++){					//	divs[i].style.zIndex = 1;

		if (-1 < divs[i].id.indexOf("Canvas")){	//	alert(maxZ + " ::: " + divs[i].style.zIndex);
			//	潰してあった "dblClk は此処" 枠を表示する。テキストエリアの読み込みの都合
			if ( -1 < divs[i].id.indexOf("TXbox")){
				divs[i].style.height = "12px";
				divs[i].style.display = "block";
			};
		};
		if (-1 < divs[i].id.indexOf("FLOATER")){			//	alert(maxZ + " ::: " + divs[i].style.zIndex);
			//	FROATER 枠を伸長する。
			if (maxZ < parseInt(divs[i].style.zIndex)){
				maxZ = parseInt(divs[i].style.zIndex);		//	◆◆◆◆◆◆◆◆◆◆◆
			};
		};
	};

	divs = document.getElementsByTagName("center");		//	Center Tag の処理
	for (var i = 0; i < divs.length;i++){
		//	if (maxZ < parseInt(divs[i].style.zIndex)){maxZ = parseInt(divs[i].style.zIndex)};
		if (-1 < divs[i].id.indexOf("FLOATER")){			//	alert("center taged FLOATER : " + divs[i].id);

			if (maxZ < parseInt(divs[i].style.zIndex)){
				maxZ = parseInt(divs[i].style.zIndex);		//	同じ機能が eKIHARA.js の ExpdShrk() に記載されている。
			};
		};
	};

	OnLoadFunction();	//	本来 DraDro.js に置くべき onload イベント関数。イベント検出の対象になるプロパティーは、ここで初期設定する。

};	//	OnLoad Function 終了
//------------------------------------------------------------------------------------------------------------
//	******************************	FLOATER 枠の BORDER はファイル保存時に０にされている。************************************
//	*********************	なお 既存の FLOATER 枠は DraDro.js によってジオメトリーを回復補正する		************************
//	****************************************************************************************************************************

function newposR(FltBtnId){					//		拡縮ボタンの右マージン固定(Floating Button Id)。スクロール量０で保存しなければ動作しない
	document.getElementById(FltBtnId).style.top = parseInt(document.getElementById(FltBtnId).parentNode.scrollTop) + "px";
	document.getElementById(FltBtnId).style.right =  - parseInt(document.getElementById(FltBtnId).parentNode.scrollLeft) + "px";
};
//---------------------------------------------------------------------------------------------------------------------------------
function newposL(FltBtnId){					//		拡縮ボタンの左マージン固定(Floating Button Id)。スクロール量０で保存しなければ動作しない
	document.getElementById(FltBtnId).style.top = parseInt(document.getElementById(FltBtnId).parentNode.scrollTop) + "px";
	document.getElementById(FltBtnId).style.left = parseInt(document.getElementById(FltBtnId).parentNode.scrollLeft) + "px";
};
//---------------------------------------------------------------------------------------------------------------------------------
function newSize(FltBtnId){					//		
	document.getElementById(FltBtnId).style.width = parseInt(parseInt(document.getElementById(FltBtnId).parentNode.parentNode.style.width) - 17) + "px";
	document.getElementById(FltBtnId).style.height = parseInt(parseInt(document.getElementById(FltBtnId).parentNode.parentNode.style.height) -17) + "px";
};
//----------------------------------------------------------------------------------------------------------------------------------
function newposi(canvas, kdbutton){//		alert(parseInt(document.getElementById("Canvas8").scrollTop) + "px");
	alert("SCROLL");
//	if (! document.all) {return;}				//	FireFox ならこの様な処理なしで動作する

	//document.getElementById(kdbutton).style.top = parseInt(document.getElementById(canvas).scrollTop) + "px";
	//document.getElementById(kdbutton).style.left = parseInt(document.getElementById(canvas).scrollLeft) + "px";
}
//----------------------------------------------------------------------------------------------------------------------------------
function S_crojjer(){																		//	表のスクロール
	if (this.id.substring(0, 9) == 'ShitaMigi'){
	//	alert(document.getElementById('UeMigi' + this.id.substring(9)).scrollLeft);
	//	document.getElementById('UeMigi' + this.id.substring(9)).scrollLeft = this.scrollLeft;
	//	idTNE.firstChild.scrollLeft = this.scrollLeft;
	//	idTNE.childNodes[0].scrollLeft = this.scrollLeft;
		document.getElementById('UeMigi' + this.id.substring(9)).style.left = - this.scrollLeft;

	//	alert('ShitaHidari' + this.id.substring(9) + "：" + this.id);
		document.getElementById('ShitaHidari' + this.id.substring(9)).scrollTop = this.scrollTop;
	};
};
//**********************************************************************************************************************************
function Insatsu(OjId){	//	Web 頁印刷用の Window を作る

	alert("RimCnt = " + OjId.id );

	WIN = window.open('','','toolbar=no, menubar=yes, location=no, status=no, titlebar=no, width=650, height=900, scrollbars=yes');

	WIN.document.write("<html>");
	WIN.document.write("<table border='0' width='600' cellspacing='0' cellpadding='0'>");
	WIN.document.write("<tr>");
	WIN.document.write("<td colspan='3'><IMG src='./image1.gif' width='600' height='48' border='0'></td><!-- 上枠画 -->");
	WIN.document.write("</tr>");

	WIN.document.write("<tr>");
	WIN.document.write("<td width='22' background='./image3.gif'><br></td><!-- 左縦枠画 -->");
	WIN.document.write("<td width='556' bgcolor='#FFFFFF'>");

	WIN.document.write("<div id = 'print' style = 'font-size:14px; line-height:150%; letter-soacing:0.05em;'>");
	WIN.document.write("<!------------------ここ(div a)に文字を入れて下さい。----------->");
	WIN.document.write("</div>");

	WIN.document.write("</td>");
	WIN.document.write("<td width='22' background='./image4.gif'><br></td><!-- 右縦枠画 -->");
	WIN.document.write("</tr>");

	WIN.document.write("<tr>");
	WIN.document.write("<td colspan='3'><IMG src='./image2.gif' width='600' height='48' border='0'></td><!-- 下枠画 -->");
	WIN.document.write("</tr>");
	WIN.document.write("</table></html>");
};
//************************************************************************************************************
function Zoom(OJcdid, OJid){	//	隠蔽/発現ボタン関連：パッチ開のズーム機能 Zoom(対象パッチ, 操作ボタン) : Zoom 機能補助仲介関数

	var TP = parseInt(document.getElementById(OJcdid).style.top, 10);			//	到達目標ジオメトリーを写し取る
	var LT = parseInt(document.getElementById(OJcdid).style.left, 10);
	var WT = parseInt(document.getElementById(OJcdid).style.width, 10);
	var HT = parseInt(document.getElementById(OJcdid).style.height, 10);

	document.getElementById(OJcdid).style.top = document.getElementById(OJid).style.top;		//	出発ジオメトリーをセット
	document.getElementById(OJcdid).style.left = document.getElementById(OJid).style.left;
	document.getElementById(OJcdid).style.width = document.getElementById(OJid).style.width;
	document.getElementById(OJcdid).style.height = document.getElementById(OJid).style.height;

//	alert(OJid + " : " + OJcdid + " : " + TP + " : " + LT + " : " + WT + " : " + HT);
	Zoom0(1, OJcdid, TP, LT, WT, HT);
};
//------------------------------------------------------------------------------------------------------------
function Mooz(OJcdid, OJid){	//パッチ閉のズーム機能	 Mooz(対象パッチ, 操作ボタン)Zoom 機能補助仲介関数

	var TP = parseInt(document.getElementById(OJid).style.top, 10);			//	到達目標ジオメトリーを写し取る
	var LT = parseInt(document.getElementById(OJid).style.left, 10);
	var WT = parseInt(document.getElementById(OJid).style.width, 10);
	var HT = parseInt(document.getElementById(OJid).style.height, 10);

	var TPo = document.getElementById(OJcdid).style.top;
	var LTo = document.getElementById(OJcdid).style.left;
	var WTo = document.getElementById(OJcdid).style.width;
	var HTo = document.getElementById(OJcdid).style.height;

	Zoom0(1, OJcdid, TP, LT, WT, HT, TPo, LTo, WTo, HTo);	//	この関数は再帰呼び出しを含むので、完了を待たずに先へ進む。
};
//------------------------------------------------------------------------------------------------------------
function Zoom0(n, OJcdid, TP, LT, WT, HT, TPo, LTo, WTo, HTo){//alert(OJcdid + " : " + TP + " : " + LT + " : " + WT + " : " + HT);	//	行き先ジオメトリー：TP, LT, WT, HT
	var m = parseInt(15);																											//	ズーム行程の刻み数
	if (n == 1){document.getElementById(OJcdid).style.display = "block";};		//	対象パッチを表示

	if (parseInt(m) == parseInt(n)){																								//	終端過程

		ScrlTopACORD(OJcdid); //	手風琴パッチの時は ScrollTop 調整

		if (TPo == "undefined" || WTo == "undefined" || HTo == "undefined" || LTo == "undefined"){			//	隠蔽処理
			//	alert("非隠蔽処理");
		}else{																												
			//	alert("隠蔽処理");
			document.getElementById(OJcdid).style.top = TPo;
			document.getElementById(OJcdid).style.width = WTo;
			document.getElementById(OJcdid).style.height = HTo;
			document.getElementById(OJcdid).style.left = LTo;
			document.getElementById(OJcdid).style.display = "none";
		};

		//	alert("縮小ボタンを持たないパッチの拡大/縮小、発現/隠蔽処理は此処で放棄される。");

		if (document.getElementById(OJcdid.replace('FLOATER', 'Canvas') + 'ExpSrkR').style.display == "block"){
			//	alert("変形するパッチの縮小ボタンが表示されていた。");
			if (!document.getElementById(OJcdid.replace("FLOATER", "Canvas") + 'iFRM')){//alert("4");
				document.getElementById(OJcdid.replace("FLOATER", "Canvas")).style.overflow = "auto";
				if (document.getElementById(OJcdid.replace("FLOATER", "Canvas")).getElementsByTagName("textarea")[0]){
					//	日記欄拡縮対応
					document.getElementById(OJcdid.replace("FLOATER", "Canvas")).getElementsByTagName("textarea")[0].style.overflow = "auto";;
					//	alert(document.getElementById(OJcdid.replace("FLOATER", "Canvas")).getElementsByTagName("textarea")[0].innerHTML);
				};
			};
			return;
		};

		if (document.getElementById(OJcdid.replace('FLOATER', 'Canvas') + 'ExpSrkR').style.display == "none"){
			//	alert("変形するパッチの縮小ボタンが表示されていなかった。" + document.getElementById(OJcdid).style.zIndex + "：" + maxZ);
			document.getElementById(OJcdid).style.zIndex= parseInt(document.getElementById(OJcdid).style.zIndex, 10) - parseInt(maxZ, 10);
		};

	}else{	//	拡大・縮小、発現・隠蔽途中過程

		if (TP != ""){document.getElementById(OJcdid).style.top = (parseInt(document.getElementById(OJcdid).style.top, 10) * (m - n - 1) + parseInt(TP, 10))/(m - n) + "px";};
		if (WT != ""){document.getElementById(OJcdid).style.width = (parseInt(document.getElementById(OJcdid).style.width, 10)*(m - n - 1) + parseInt(WT, 10))/(m - n) + "px";};
		if (HT != ""){document.getElementById(OJcdid).style.height = (parseInt(document.getElementById(OJcdid).style.height, 10) * (m - n - 1) + parseInt(HT, 10))/(m - n) + "px";};
		if (LT != ""){
		//	if (document.getElementById(OJcdid).tagName != "CENTER"){										//	非センタリング“ぱっち"対応
			document.getElementById(OJcdid).style.left = (parseInt(document.getElementById(OJcdid).style.left, 10)*(m - n - 1) + parseInt(LT, 10))/(m - n) + "px";
		//	};
		};

		ojCVid = OJcdid.replace("FLOATER", "Canvas");
		ojGLid = OJcdid.replace("FLOATER", "Glass");

		document.getElementById(ojCVid).style.width = parseInt(document.getElementById(OJcdid).style.width, 10) - 2 * EG + "px";
		document.getElementById(ojCVid).style.height = parseInt(document.getElementById(OJcdid).style.height, 10) - 3 * EG + "px";
		document.getElementById(ojGLid).style.height = parseInt(document.getElementById(OJcdid).style.height, 10) - 3 * EG + "px";
		n++;
		setTimeout("Zoom0('" + n + "','" + OJcdid + "','" + TP + "','" + LT + "','" + WT + "','" + HT + "','" + TPo + "','" + LTo + "','" + WTo + "','" + HTo + "')", 8);
	};
};
//	-----------------------------------　手風琴パッチの ScrollTop 調整　-------------------------------------------------------
function ScrlTopACORD(OJcdid){		//	リモコンパッチによって拡大されたパッチの位置を、外枠内の先頭に位置づける。Zoom0 から呼ばれる。

	//	alert("ExpdShrk : " + OJcdid);		//	行き先ジオメトリー：TP, LT, WT, HT

	if (document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "RmCt")){
		//	コンテンツパッチ名からリモコンパッチ名を導出する

//		if (document.getElementById(OJcdid.replace("FLOATER", "Canvas")).style.overflow == "hidden"){
		if (document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "RmCtExp_Srk").style.backgroundColor != "yellow"){
			//	コンテンツパッチ名からリモコンパッチ中押しボタン名を導出し、背景色を調べる。

			document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "RmCtExp_Srk").style.backgroundColor = "yellow";

			ScrlTop_ACORD(OJcdid)

		}else{	//	alert("白へ");

			document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "RmCtExp_Srk").style.backgroundColor = "";
			//	document.getElementById(OJcdid.replace("FLOATER", "Canvas")).style.overflow = "hidden";

		};
	};
};
//	--------------------------------------------　手風琴パッチの ScrollTop 調整　------------------------------------------------
function ScrlTop_ACORD(OJcdid){																	//	ScrlTopACORD() から呼ばれる。

	//	alert("ExpdShrk : " + OJcdid);		//	行き先ジオメトリー：TP, LT, WT, HT

	//	document.getElementById(OJcdid.replace("FLOATER", "Canvas")).style.overflow = "auto";

	document.getElementById(OJcdid).parentNode.scrollTop = 0;

	if (document.getElementById(OJcdid).parentNode.childNodes[0].id){				//	最初のパッチにidあり
		var XXX = document.getElementById(OJcdid).parentNode.childNodes[0].id;
	}else{																							//	最初のパッチにid無し
		var XXX = "q";																				//	alert(XXX);
	};
	var i = 0; var PNST = document.getElementById(OJcdid).parentNode.scrollTop;

	while (XXX != document.getElementById(OJcdid).id){												//	true の間、繰り返す。 false になったら外へ出る。
		if (document.getElementById(OJcdid).parentNode.childNodes[i].id){						//	不一致かつid存在
			if (document.getElementById(OJcdid).parentNode.childNodes[i].style.height){	//	高さあり

				//	alert("Height：" + document.getElementById(OJcdid).parentNode.childNodes[i].style.height);
				//	alert("TopNow：" + document.getElementById(OJcdid).parentNode.scrollTop);
				//	alert("TopNow：" + PNST);

				PNST += parseInt(document.getElementById(OJcdid).parentNode.childNodes[i].style.height, 10) + 10 - 3*EG;

				//	alert("NewTop：" + document.getElementById(OJcdid).parentNode.scrollTop);
				//	alert("NewTop：" + PNST);
			};
		};

		i = i + 1;
		if (document.getElementById(OJcdid).parentNode.childNodes[i].id){						//	次のパッチにidあり
			XXX =  document.getElementById(OJcdid).parentNode.childNodes[i].id;
		}else{																									//	次のパッチにid無し
			XXX = "q"; //	alert(XXX);
		};
	};
	//	alert(PNST);
	document.getElementById(OJcdid).parentNode.scrollTop = PNST;
	//	alert(document.getElementById(OJcdid).parentNode.scrollTop);
};
//**************************************************************************************************************
function InitMaxZ(){	//	alert("eKIHARA EG＝" + EG + " maxZ＝" + maxZ);	//	１回だけ実行される。

	if (EG < 1 && maxZ == 1){	//	OnLoad 函数 (DraDro) が呼ばれない、閲覧モード時への対処。
		//	maxZ(zIndex の最大値)等を調べる：

	//	var divs = document.body.getElementsByTagName("div");
		var divs = document.getElementsByTagName("div");
		for (var i = 0; i < divs.length; i++){							//	alert(divs[i].id);
			if (-1 < divs[i].id.indexOf("FLOATER")){					//	alert(maxZ + " ::: " + divs[i].style.zIndex);
				if (maxZ < divs[i].style.zIndex){
					maxZ = divs[i].style.zIndex;//	◆◆◆◆◆◆◆◆◆◆◆
				};
			};
		};

	//	var divs = document.body.getElementsByTagName("center");
		var divs = document.getElementsByTagName("center");
		for (var i = 0; i < divs.length; i++){							//	alert(divs[i].id);
			if (-1 < divs[i].id.indexOf("FLOATER")){					//	alert("center taged FLOATER : " + divs[i].id);
				if (maxZ < divs[i].style.zIndex){
					maxZ = divs[i].style.zIndex;//	◆◆◆◆◆◆◆◆◆◆◆
				};
			};
		};																		//ｚMax を調べた。
	//	if (parseInt(maxZ,10) < parseInt(2)){maxZ = parseInt(2);};
	};
};
//************************************　ぱっちを拡大・縮小する（発現・隠蔽ではない）　**********************************************
function ExpdShrk(OJcdid){	//	alert("ExpdShrk : " + OJcdid);		//	行き先ジオメトリー：TP, LT, WT, HT

	//	alert(document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.height);
	//	alert(document.getElementById(OJcdid.replace("Canvas", "FLOATER").replace("Geo", "").style.top));
	//	alert(document.getElementById(OJcdid).style.zIndex + " ::: " + maxZ);
																						//	拡縮動作時のｚIndex 処理（※と呼応）

	//	ここから編集モード時、補正済み閲覧モード時共通
	//	拡大時到達目標ジオメトリーの計算　　■☆■☆■☆■☆■Geo と本体と拡縮の都度値を入れ替える
	//	縮小時復帰目標ジオメトリーの保存

	var HTo = document.getElementById(OJcdid).style.height;
	if (EG < 1){
		HTo = parseInt(HTo, 10) + 30 + "px";	//	alert("HTo：" + HTo);
	};
	var WTo = document.getElementById(OJcdid).style.width;
	if (EG < 1){
		WTo = parseInt(WTo, 10) + 20 + "px";	//	alert("WTo：" + WTo);
	};
	var TPo = document.getElementById(OJcdid).style.top;
	if (EG < 1){
		if(document.getElementById(OJcdid).tagName == "CENTER"){
			TPo = parseInt(TPo, 10) + 10 + "px";	//	alert("TPo：" + TPo);
		}else{
			TPo = parseInt(TPo, 10) - 10 + "px";	//	alert("TPo：" + TPo);
		};
	};
	var LTo = document.getElementById(OJcdid).style.left;
	if (EG < 1){
		LTo = parseInt(LTo, 10) - 10 + "px";	//	alert("LTo：" + LTo);
	};

	//	閲覧モードの時(HTML をファイルから読み込んだ場合)は、到達目標ジオメトリーに於ける、FLOATER と Canvas の関係を補正する必要がある。
	var HT = "";
	if (document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.height){	//	Geo と .height が有ったら読み取る
		var HT = document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.height;	//	alert(HT);
		if (EG < 1){
			HT = parseInt(HT) - 30 + "px";	//	alert("HT：" + HT);
		};
	};
	var WT = "";
	if (document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.width){	//	Geo と .width が有ったら読み取る
		var WT = document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.width;	//	alert(WT);
		if (EG < 1){
			WT = parseInt(WT) - 20 + "px";	//	alert("WT：" + WT);
		};
	};
	var TP = "";
	if (document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.top){	//	Geo と .top が有ったら読み取る
		var TP = document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.top;	//	alert(TP);
		if (EG < 1){
			if(document.getElementById(OJcdid).tagName == "CENTER"){
				TP = parseInt(TP) - 10 + "px";	//	alert("TP：" + TP);
			}else{
				TP = parseInt(TP) + 10 + "px";	//	alert("TP：" + TP);
			};
		};
	};
	var LT = "";																										//	中揃“ぱっち"対応
	if (document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.left){		//	非中揃“ぱっち"対応
		LT = document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.left;	//	Geo と .left が有ったら読み取る
		if (EG < 1){
			LT = parseInt(LT) + 10 +"px";	//	alert("LT：" + LT);
		};
	};

	if (document.getElementById(OJcdid.replace('FLOATER', 'Canvas') + 'ExpSrk')){	//	alert("2");			// ブログ枠テキストエリア
		//	テキストエリアのスクロールバー																								
		if (document.getElementById(OJcdid.replace("FLOATER", "Canvas")).getElementsByTagName("textarea")[0]){
			//	alert("ブログ枠テキストエリア");	//	拡大時は Scroll Bar を出し、縮小時は Scroll Bar を隠す
			if (document.getElementById(OJcdid.replace("FLOATER", "Canvas")).getElementsByTagName("textarea")[0].style.overflow == "hidden"){
				document.getElementById(OJcdid.replace("FLOATER", "Canvas")).getElementsByTagName("textarea")[0].style.overflow = "auto";
			}else{
				document.getElementById(OJcdid.replace("FLOATER", "Canvas")).getElementsByTagName("textarea")[0].style.overflow = "hidden";
			};
		};

	}else{	//	alert("3");		// 非ブログ枠

		InitMaxZ();

	//	var TP = document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.top;					//	到達目標ジオメトリーを写し取る
	//	var WT = document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.width;				//alert(WT);

		if (document.getElementById(OJcdid.replace('FLOATER', 'Canvas') + 'ExpSrkG').style.display == "block"){//		alert("拡大しよう");	// GO
			//	alert("拡大しよう" + document.getElementById(OJcdid.replace('FLOATER', 'Canvas') + 'ExpSrkG').innerHTML);
			//	クリック区画の発現隠蔽
			document.getElementById(OJcdid.replace('FLOATER', 'Canvas') + 'ExpSrkG').style.display = "none";
			document.getElementById(OJcdid.replace('FLOATER', 'Canvas') + 'ExpSrkR').style.display = "block";

			if (!document.getElementById(OJcdid).style.zIndex){
				document.getElementById(OJcdid).style.zIndex = parseInt(maxZ,10) + parseInt(10);
			};
			if (document.getElementById(OJcdid).style.zIndex == ""){
				document.getElementById(OJcdid).style.zIndex = parseInt(maxZ,10) + parseInt(10);
			};
			if (document.getElementById(OJcdid).style.zIndex < 10){
				document.getElementById(OJcdid).style.zIndex = parseInt(maxZ,10) + parseInt(10);
			};
			if (document.getElementById(OJcdid).style.zIndex != parseInt(maxZ,10) + parseInt(10)){
				document.getElementById(OJcdid).style.zIndex = parseInt(document.getElementById(OJcdid).style.zIndex, 10) + parseInt(maxZ, 10);
			};
			//	alert(document.getElementById(OJcdid).style.zIndex);
		}else{//			alert("縮めよう");
			if (document.getElementById(OJcdid.replace('FLOATER', 'Canvas') + 'ExpSrkR').style.display == "block"){	// Return
				//	alert("縮めよう" + document.getElementById(OJcdid.replace('FLOATER', 'Canvas') + 'ExpSrkR').innerHTML);
				//	クリック区画の発現隠蔽
				document.getElementById(OJcdid.replace('FLOATER', 'Canvas') + 'ExpSrkR').style.display = "none";
				document.getElementById(OJcdid.replace('FLOATER', 'Canvas') + 'ExpSrkG').style.display = "block";
				document.getElementById(OJcdid.replace("FLOATER", "Canvas")).style.overflow = "hidden";
				
				// seleKted == 17	伸縮テキストエリアぱっち(≠ブログ枠テキストエリア)
				if (document.getElementById(OJcdid.replace("FLOATER", "Canvas")).getElementsByTagName("textarea")[0]){
					var ii = parseInt(document.getElementById(OJcdid).getElementsByTagName("textarea")[0].name.replace('Canvas', ''));
					var jj = OJcdid.replace('FLOATER', '');
					if (ii == jj){
						document.getElementById(OJcdid.replace("FLOATER", "Canvas")).getElementsByTagName("textarea")[0].style.overflow = "hidden";
						//alert(document.getElementById(OJcdid.replace("FLOATER", "Canvas")).getElementsByTagName("textarea")[0].innerHTML);
					};
				};
			};
		};
	};

	//	alert("ExpdShrk : " + OJcdid + " : " + TP + " : " + LT + " : " + WT + " : " + HT + " : " + document.getElementById(OJcdid.replace("FLOATER", "Canvas")).style.overflow + " : " + document.getElementById(OJcdid).style.zIndex);		//	行き先ジオメトリー：TP, LT, WT, HT
	//	alert("ExpdShrk : " + OJcdid + " : " + TP + " : " + LT + " : " + WT + " : " + HT);		//	行き先ジオメトリー：TP, LT, WT, HT

	Zoom0(1, OJcdid, TP, LT, WT, HT);

	//	Geometry の復旧　　■☆■☆■☆■☆■
	document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.height = HTo;
	//	alert("HTo：" + document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.height);
	document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.top = TPo;		
	//	alert("TPo：" + document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.top);
	document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.left = LTo;
	//	alert("LTo：" + document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.left);
	document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.width = WTo;
	//	alert("WTo：" + document.getElementById(OJcdid.replace("FLOATER", "Canvas") + "Geo").style.width);
};
//************************************************************************************************************
//**************************************　パッチを隠蔽/発現させる（拡大・縮小ではない）　*******************************************
//************************************************************************************************************
function Clr_Dsp(OJcdid, OJid){	//	alert(OJcdid + " ::: " + OJid);
	//	ClearDisplay：
	//						OJcdid：隠蔽/発現させられるパッチの FLOATER
	//						OJid  ：操作ボタンの FLOATER
	//	alert(document.getElementById(OJcdid).id + " is Toggled by " + OJid + " On " + document.getElementById(OJcdid).parentNode.id);

	if(document.getElementById(OJcdid).style.display == "block"){		//	操作対象パッチが発現させられているなら隠蔽する
		Mooz(OJcdid, OJid);		//	Zoom(開閉対象パッチ.id, 制御ボタン.id)：なめらかズーム	//	この関数は再帰呼び出しを含むので、完了を待たずに先へ進む。
		document.getElementById(OJid.replace(/FLOATER/i, "Canvas")).style.backgroundColor = "";		//	隠蔽させた操作ボタンを脱色
		return;
	};

	//	alert("兄弟パッチ隠蔽処理");
	for (var i = 0; i < document.getElementById(OJcdid).parentNode.childNodes.length; i++) {	//	alert(i);
		if(document.getElementById(OJcdid).parentNode.childNodes[i].id){
			if(document.getElementById(OJcdid).parentNode.childNodes[i].id.toUpperCase().indexOf("FLOATER", 0) > -1 && document.getElementById(OJcdid).parentNode.childNodes[i].id.indexOf("B", 0) < 0){
				//	開閉ボタンパッチ“達”に記載されている「隠蔽/発現させられるパッチ名」“達”を得る。
				//	alert(document.getElementById(OJcdid).parentNode.childNodes[i].innerHTML);
				//	alert(document.getElementById(OJcdid).parentNode.childNodes[i].id);
				//	alert(document.getElementById(OJcdid).parentNode.childNodes[i].id.indexOf("B", 0));
				var inner_HTML = document.getElementById(OJcdid).parentNode.childNodes[i].innerHTML.replace(/&quot;/g,"\"");
				var j = inner_HTML.indexOf("ClrDsp(", 0) + 7;
				var k = inner_HTML.toUpperCase().indexOf("FLOATER", j+2)-inner_HTML.toUpperCase().indexOf("FLOATER", j) - 3;	//	alert("k = " + k);
				
				j = document.getElementById(OJcdid).parentNode.childNodes[i].innerHTML.indexOf("ClrDsp(", 0) + 7;
				j = document.getElementById(OJcdid).parentNode.childNodes[i].innerHTML.toUpperCase().indexOf("FLOATER", j) - 1;
				k = j + k + 2;	//	alert("j=" + j + "  k=" + k + "：" + document.getElementById(OJcdid).parentNode.childNodes[i].innerHTML.substring(j + 1, k - 1));

				if(document.getElementById(document.getElementById(OJcdid).parentNode.childNodes[i].innerHTML.substring(j + 1, k - 1))){
					//	alert("発現しているかも知れないぱっちを隠す：" + i + "：" + document.getElementById(OJcdid).parentNode.childNodes[i].innerHTML.substring(j + 1, k - 1));
					document.getElementById(document.getElementById(OJcdid).parentNode.childNodes[i].innerHTML.substring(j + 1, k - 1)).style.display = "none";
				};
				if (document.getElementById(document.getElementById(OJcdid).parentNode.childNodes[i].id.replace(/FLOATER/i, "Canvas") + "ExpSrkG")){
					//alert("兄弟を Off 状態にすべき前：" + i);
					document.getElementById(document.getElementById(OJcdid).parentNode.childNodes[i].id.replace(/FLOATER/i, "Canvas") + "ExpSrkG").style.display = "block";
				};
				if (document.getElementById(document.getElementById(OJcdid).parentNode.childNodes[i].id.replace(/FLOATER/i, "Canvas") + "ExpSrkR")){
					//alert("兄弟を Off 状態にすべき後ろ：" + i);
					document.getElementById(document.getElementById(OJcdid).parentNode.childNodes[i].id.replace(/FLOATER/i, "Canvas") + "ExpSrkR").style.display = "none";
				};
				//	alert("兄弟を 脱色：" + i);
				document.getElementById(document.getElementById(OJcdid).parentNode.childNodes[i].id.replace(/FLOATER/i, "Canvas")).style.backgroundColor = "";
			};
		};
	};

	//	対象の操作ボタンを On 状態にすべき	//	発現させたボタンに着色
	document.getElementById(OJid.replace(/FLOATER/i, "Canvas")).style.backgroundColor = document.getElementById(OJcdid.replace(/FLOATER/i, "Canvas")).style.backgroundColor;
   //	alert("パッチ発現処理");
	Zoom(OJcdid, OJid);			//	Zoom(開閉対象パッチ.id, 制御ボタン.id)：なめらかズーム
};
//**************************************　パッチを隠蔽/発現させる（拡大・縮小ではない）　*******************************************
function ClrDsp(OJcdid, OJid){	//	ClearDisplay：：OJcdid：隠蔽/発現させられるパッチの FLOATER、OJid：操作ボタンの FLOATER

	//	alert(document.getElementById(OJcdid).id + " is Toggled by " + OJid + " On " + document.getElementById(OJcdid).parentNode.id);
	//	alert(document.getElementById(OJcdid).style.display);
	//	ExpSrkRb、ExpSrkGb は拡縮ボタンが GIF である時の対応

	if(document.getElementById(OJcdid).style.display == "block"){		//	操作対象パッチが発現させられているなら隠蔽する
		Mooz(OJcdid, OJid);		//	Zoom(開閉対象パッチ.id, 制御ボタン.id)：なめらかズーム（未完成）	//	この関数は再帰呼び出しを含むので、完了を待たずに先へ進む。

		//	alert("パッチ隠蔽処理");	//	document.getElementById(OJcdid).style.display = "none";												//	対象ぱっちを隠蔽
		document.getElementById(OJid.replace(/FLOATER/i, "Canvas")).style.backgroundColor = "";		//	隠蔽操作後ボタン周りを脱色
		if (document.getElementById(OJid.replace(/FLOATER/i, 'Canvas') + 'ExpSrkRb')){	//
			//alert("有った３");
			document.getElementById(OJid.replace(/FLOATER/i, "Canvas")+ 'ExpSrkRb').style.display = "none";	//	
		};
		if (document.getElementById(OJid.replace(/FLOATER/i, 'Canvas') + 'ExpSrkGb')){	//
			//alert("有った４");
			document.getElementById(OJid.replace(/FLOATER/i, "Canvas")+ 'ExpSrkGb').style.display = "block";	//
		};
		return;
	};

	//	alert("兄弟パッチ隠蔽処理");
	for (var i = 0; i < document.getElementById(OJcdid).parentNode.childNodes.length; i++) {	//	alert(i);
		if(document.getElementById(OJcdid).parentNode.childNodes[i].id){
			if(document.getElementById(OJcdid).parentNode.childNodes[i].id.toUpperCase().indexOf("FLOATER", 0) > -1 && document.getElementById(OJcdid).parentNode.childNodes[i].id.indexOf("B", 0) > -1){
				//	開閉ボタンパッチ“達”に記載されている「隠蔽/発現させられるパッチ名」“達”を得る。
				//	alert(document.getElementById(OJcdid).parentNode.childNodes[i].innerHTML);
				var inner_HTML = document.getElementById(OJcdid).parentNode.childNodes[i].innerHTML.replace(/&quot;/g,"\"");
				var j = inner_HTML.indexOf("ClrDsp(", 0) + 7;
				var k = inner_HTML.toUpperCase().indexOf("FLOATER", j + 2)-inner_HTML.toUpperCase().indexOf("FLOATER", j) - 3;	//	alert("k = " + k);
				
				j = document.getElementById(OJcdid).parentNode.childNodes[i].innerHTML.indexOf("ClrDsp(", 0) + 7;
				j = document.getElementById(OJcdid).parentNode.childNodes[i].innerHTML.toUpperCase().indexOf("FLOATER", j) - 1;
				k = j + k + 2;	//	alert("j=" + j + "  k=" + k + "：" + document.getElementById(OJcdid).parentNode.childNodes[i].innerHTML.substring(j + 1, k - 1));

				if(document.getElementById(document.getElementById(OJcdid).parentNode.childNodes[i].innerHTML.substring(j + 1, k - 1))){
					//alert("発現しているかも知れないぱっちを隠す：" + i + "：" + document.getElementById(OJcdid).parentNode.childNodes[i].innerHTML.substring(j + 1, k - 1));
					document.getElementById(document.getElementById(OJcdid).parentNode.childNodes[i].innerHTML.substring(j + 1, k - 1)).style.display = "none";
				};
				if (document.getElementById(document.getElementById(OJcdid).parentNode.childNodes[i].id.replace(/FLOATER/i, "Canvas") + "ExpSrkGb")){
					//alert("兄弟を Off 状態にすべき前：" + i);
					document.getElementById(document.getElementById(OJcdid).parentNode.childNodes[i].id.replace(/FLOATER/i, "Canvas") + "ExpSrkGb").style.display = "block";
				};
				if (document.getElementById(document.getElementById(OJcdid).parentNode.childNodes[i].id.replace(/FLOATER/i, "Canvas") + "ExpSrkRb")){
					//alert("兄弟を Off 状態にすべき後ろ：" + i);
					document.getElementById(document.getElementById(OJcdid).parentNode.childNodes[i].id.replace(/FLOATER/i, "Canvas") + "ExpSrkRb").style.display = "none";
				};
				//alert("兄弟を 脱色：" + i);
				document.getElementById(document.getElementById(OJcdid).parentNode.childNodes[i].id.replace(/FLOATER/i, "Canvas")).style.backgroundColor = "";
			};
		};
	};

	//	対象の操作ボタンを On 状態にすべき
	if (document.getElementById(OJid.replace(/FLOATER/i, 'Canvas') + 'ExpSrkRb')){	//
		//alert("有った５");
		document.getElementById(OJid.replace(/FLOATER/i, "Canvas")+ 'ExpSrkRb').style.display = "block";	//	
	};
	if (document.getElementById(OJid.replace(/FLOATER/i, 'Canvas') + 'ExpSrkGb')){	//
		//alert("有った６");
		document.getElementById(OJid.replace(/FLOATER/i, "Canvas")+ 'ExpSrkGb').style.display = "none";	//
	};
	//	対象パッチを表示	//	document.getElementById(OJcdid).style.display = "block";
	//	発現させたボタンに着色
	document.getElementById(OJid.replace(/FLOATER/i, "Canvas")).style.backgroundColor = document.getElementById(OJcdid.replace(/FLOATER/i, "Canvas")).style.backgroundColor;
  	//alert("パッチ発現処理");
	Zoom(OJcdid, OJid);			//	Zoom(開閉対象パッチ.id, 制御ボタン.id)：なめらかズーム
};
//************************************************************************************************************
//************************************************************************************************************
//************************************************************************************************************
function ClrDspI(OJcdid){	//alert(OJcdid);	//	ClearDisplayImmediatly　＝　クリックイベントプロシージャ
	//	呼び出し元：注釈パッチを開く A tag 、注釈パッチ自身の閉じボタン、リモコン付き手風琴パッチ収容枠の現消。
	//	OJcdid：パッチの FLOATER

	if (document.getElementById(OJcdid).style.display == "block"){	//	パッチを非表示にする
		document.getElementById(OJcdid).style.display = "none";
	}else{
		document.getElementById(OJcdid).style.display = "block";		//	パッチを表示する
	};
};
//*********************************************************************************************************************
//************************************************************************************************************
function ClrDspI(OJcdid){	//alert(OJcdid);	//	ClearDisplayImmediatly　＝　クリックイベントプロシージャ
	//	呼び出し元：注釈パッチを開く A tag 、注釈パッチ自身の閉じボタン、リモコン付き手風琴パッチ収容枠の現消。
	//	OJcdid：パッチの FLOATER

	if (document.getElementById(OJcdid).style.display == "block"){	//	パッチを非表示にする
		document.getElementById(OJcdid).style.display = "none";
	}else{
		document.getElementById(OJcdid).style.display = "block";		//	パッチを表示する
	};
};
//*********************************************************************************************************************
function ClrDspJ(OJcdid){	//	alert("ClrDspJ：" + OJcdid);	//	ClearDisplayImmediatly　＝　クリックイベントプロシージャ

	//	呼び出し元：リモコン付き手風琴パッチのリモコンパッチ。OJcdid：パッチの FLOATER

	if (document.getElementById(OJcdid).style.display == "block"){
	}else{
		document.getElementById(OJcdid).style.display = "block";		//	パッチを表示する
	};
};
//****************************************************************************************************************************************************
//****************************************************************************************************************************************************
//************************************　ココまで、パッチの変形等の動作　******************************************************************************
//****************************************************************************************************************************************************
//****************************************************************************************************************************************************
function CallBackTwSr(oj, through){	//	alert("from CallBackTwSr");
	//	ツイーツファイル保存先サイトで働く。文字 \" → " の処理を行う。
	//	篩われたツイート表示用のパッチにある httpRequest から Callback される。

	//var decdata = decodeURI(oj.responseText);
	var decdata = oj.responseText;			//	サーバーから受信したデータをデコード
	//-----------------------------------------------------------------------------------------------------------------------------
	if(through.id){	//	alert("through.id = " + through.id);		//	スルーパス変数がオブジェクトだった時
		if(decdata != ""){};
	//-----------------------------------------------------------------------------------------------------------------------------
	}else{				//	alert("through = " + through);				//	スルーパス変数が文字列だった時
	
		if(decdata != ""){
			var throughT = through + "Twitter";
			decdata = decdata.replace(/\\'/g, "'");
			decdata = decdata.replace(/\\"/g, "'");
			decdata = decdata.replace(/","/g, "<br>");
			decdata=decdata.substring(23, decdata.length - 4);
			//decdata = decdata.replace(/CallBackEX({\"word0\" :[\"/, "");
			document.getElementById(throughT).innerHTML='<Ul>' + decdata + '</Ul>';
		};
	}
};
//****************************************************************************************************************************************************
//****************************************************************************************************************************************************
function Add_Jyusho(oj, seleKted){//	alert("");//	日記欄(中揃え)を 増設して表示(閲覧モードと編集モードの両者から来る)

	DT = new Date(); //	alert(DT.getTime());				//	File 名生成
	var TimeStamp = DT.getTime();

	//	------------------------------------------センター揃えぱっちの生成(前段のみ)-------------------------------------------------------------
	//	if (document.all) {											
			var RIM = document.createElement('CENTER');		//	msIE
	//	}else{
	//		var RIM = document.createElement('DIV');			//	FireFox他
	//	};

	//	----------------------------------　ぱっちのベース生成-----------------------------------------------------------

	RIM.setAttribute('id','F_LOATER' + TimeStamp);
	RIM.style.position = "relative";
	RIM.style.width = parseInt(oj.style.width, 10) * 0.94 + "px";
	RIM.style.height = "25px";
	RIM.style.top = "10px";
	RIM.style.marginTop = "3px";
	RIM.style.marginRight = "auto";
	RIM.style.marginLeft = "auto";
	RIM.style.backgroundImage = "url('./space.gif')";	//	★☆★☆★☆★☆★ 10/Sep/2010 ★☆★☆★☆★☆★

	RIM.style.display = "block";
//	RIM.style.zIndex = parseInt(oj.style.zIndex, 10) + 5.0;	//	alert(RIM.style.zIndex);
	RIM.style.border = "green 0px dotted";
	RIM.style.backgroundColor = '';

	oj.insertBefore(RIM, oj.firstChild.nextSibling.nextSibling.nextSibling.nextSibling);	//	外枠の作成

	var Cnv = document.createElement('DIV');

	Cnv.setAttribute('id','C_anvas' + TimeStamp);
	Cnv.style.width = RIM.style.width;			//	alert(Cnv.style.width);//		RIM.style.width -2 * EG
	Cnv.style.height = RIM.style.height;			//		RIM.style.height - 3 * EG

	Cnv.style.marginTop = "0px";
	Cnv.style.marginLeft = "0px";
	Cnv.style.marginRight = "0px";
	Cnv.style.left = "0px";
	Cnv.style.top = "0px";

	Cnv.style.position = "absolute";
	Cnv.style.overflow = "hidden";
//	Cnv.style.zIndex = parseInt(oj.style.zIndex, 10) + 6.0;
	Cnv.style.backgroundColor = '';
	Cnv.style.border = "gray 0px solid";

	RIM.appendChild(Cnv);
	
	//--------------------------  -------------------------------

	if (seleKted == 20){	//	住所録	 size="10"  size="16"  size="12"  size="10"  size="40"

		Cnv.innerHTML = "" +
		"<form id = '" + Cnv.id + "Form' onscroll = \"newpos(" + Cnv.id + "," +  Cnv.id + "Form)\">" +
		"	<input name='titiNT' style = 'cursor:pointer; height:20px;font-size:13px;' value='' size='14' type='text'> " +
		"	<input name='kaishaT2' style = 'cursor:pointer; height:20px;font-size:13px;' value='' size='16' type='text'> " +
		"	<input name='kaishaT2' style = 'cursor:pointer; height:20px;font-size:13px;' value='' size='20' type='text'> " +
		"	<input name='kaishaT2' style = 'cursor:pointer; height:20px;font-size:13px;' value='' size='10' type='text'> " +
		"	<input name='kaishaT2' style = 'cursor:pointer; height:20px;font-size:13px;' value='' size='40' type='text'> " +
		"	<select name='AA20' size='1'> " +
		"		<option value='危' selected='selected'>危</option> " +
		"		<option value='葬'>葬</option> " +
		"		<option value='死'>死</option> " +
		"	</select> " +
		"	<input type='button' id = " + Cnv.id + "Contner " +
		"		style = 'cursor:pointer; height:15px;font-size:10px;right:0px;' " +
		"		onClick = \"RmvTxArea(" + RIM.id + ")\" value = '削除'> " +
		"</form>" +
		"<!-- コンテンツはここから -->" +
		"<div style = ''>" +
		"	<br />" +
		"</div><!-- コンテンツはここ迄 -->";
	};

	if (seleKted == 21){	//	現金・預貯金
		Cnv.innerHTML = "" +
		"<form id = '" + Cnv.id + "Form' onscroll = \"newpos(" + Cnv.id + "," +  Cnv.id + "Form)\">" +
		"	<input name='kaishaT2' style = 'cursor:pointer; height:20px;font-size:13px;' value='' size='14' type='text'> " +
		"	<input name='kaishaT2' style = 'cursor:pointer; height:20px;font-size:13px;' value='' size='12' type='text'> " +
		"	<input name='kaishaT2' style = 'cursor:pointer; height:20px;font-size:13px;' value='' size='25' type='text'> " +
		"	<input name='kaishaT2' style = 'cursor:pointer; height:20px;font-size:13px;' value='' size='12' type='text'> " +
		"	<input type='button' id = " + Cnv.id + "Contner " +
		"		style = 'cursor:pointer; height:15px;font-size:10px;right:0px;' " +
		"		onClick = \"RmvTxArea(" + RIM.id + ")\" value = '削除'> " +
		"</form>" +
		"<!-- コンテンツはここから -->" +
		"<div style = ''>" +
		"	<br />" +
		"</div><!-- コンテンツはここ迄 -->";
	};

	if (seleKted == 22){	//	土地・建物
		Cnv.innerHTML = "" +
		"<form id = '" + Cnv.id + "Form' onscroll = \"newpos(" + Cnv.id + "," +  Cnv.id + "Form)\">" +
		"	<input name='kaishaT2' style = 'cursor:pointer; height:20px;font-size:13px;' value='' size='12' type='text'> " +
		"	<input name='kaishaT2' style = 'cursor:pointer; height:20px;font-size:13px;' value='' size='25' type='text'> " +
		"	<input name='kaishaT2' style = 'cursor:pointer; height:20px;font-size:13px;' value='' size='12' type='text'> " +
		"	<input type='button' id = " + Cnv.id + "Contner " +
		"		style = 'cursor:pointer; height:15px;font-size:10px;right:0px;' " +
		"		onClick = \"RmvTxArea(" + RIM.id + ")\" value = '削除'> " +
		"</form>" +
		"<!-- コンテンツはここから -->" +
		"<div style = ''>" +
		"	<br />" +
		"</div><!-- コンテンツはここ迄 -->";
	};

	//	alert(document.getElementById(Cnv.id).innerHTML);
	//		"	氏&nbsp;&nbsp;名 関&nbsp;&nbsp;係 郵便番号 住　所 電話番号 訃報通知 <br>" +
};
//************************************************************************************************************
function AddTxArea(oj, seleKted){//	欄(中揃え)を 増設して表示(閲覧モードと編集モードの両者から来る)
	if (! oj){return;};
	if (seleKted == 18){Add_TxArea(oj)};
	if (seleKted == 20 || seleKted == 21 || seleKted == 22){Add_Jyusho(oj, seleKted)};
};
//************************************************************************************************************
function Add_TxArea(oj){//	alert("");//	日記欄(中揃え)を 増設して表示(閲覧モードと編集モードの両者から来る)

	DT = new Date();								 //	alert(DT.getTime());				//	File 名生成
	var TimeStamp = DT.getTime() + "ES";
//	TimeStamp += "ES";							//		作成するのが拡縮“ぱっち”である事を印する(FLOATER〜Glass)

	//	------------------------------------------センター揃えぱっちの生成(前段のみ)-------------------------------------------------------------
	//	if (document.all) {											
			var RIM = document.createElement('CENTER');		//	msIE
	//	}else{
	//		var RIM = document.createElement('DIV');			//	FireFox他
	//	};

	//		----------------------------------　ぱっちのベース生成-----------------------------------------------------------

	RIM.setAttribute('id','FLOATER' + TimeStamp);
	RIM.style.width = parseInt(oj.style.width, 10) * 0.94 + "px";
	RIM.style.height = "257px";
	RIM.style.top = "20px";				//	編集時開始位置
	RIM.style.marginTop = "-20px";	//	編集時ピッチ？
	RIM.style.backgroundImage = "url('./space.gif')";	//	★☆★☆★☆★☆★ 10/Sep/2010 ★☆★☆★☆★☆★

	RIM.style.position = "relative";
	RIM.style.display = "block";
	RIM.style.zIndex = parseInt(oj.style.zIndex, 10) + 5.0;	//	alert(RIM.style.zIndex);
	RIM.style.border = "green 1px dotted";
	RIM.style.backgroundColor = '';
	RIM.style.marginRight = "auto";
	RIM.style.marginLeft = "auto";

	oj.insertBefore(RIM, oj.firstChild.nextSibling.nextSibling.nextSibling.nextSibling);	//	外枠の作成

	var Cnv = document.createElement('DIV');

	Cnv.setAttribute('id','Canvas' + TimeStamp);
	Cnv.setAttribute('align','left');
	Cnv.style.width = parseInt(RIM.style.width, 10) - 2 * EG + "px";			//	alert(Cnv.style.width);//		RIM.style.width -2 * EG
	Cnv.style.height = "227px";			//		RIM.style.height - 3 * EG

	Cnv.style.marginTop = "10px";			//		EG	
	Cnv.style.marginLeft = "10px";		//		EG
	Cnv.style.marginRight = "10px";		//		EG
	Cnv.style.left = "0px";
	Cnv.style.top = "0px";

	Cnv.style.position = "absolute";
	Cnv.style.overflow = "hidden";
	Cnv.style.zIndex = parseInt(oj.style.zIndex, 10) + 6.0;
	Cnv.style.backgroundColor = '#ffffff';
	Cnv.style.border = "gray 1px solid";

	RIM.appendChild(Cnv);					//	Canvas の作成。此処で画面に表示される。

	var Gls = document.createElement('DIV');
	Gls.setAttribute('id','Glass' + TimeStamp);
	Gls.setAttribute('align','left');
	Gls.style.position = "absolute";
	Gls.style.marginTop = "10px";		//		EG
	Gls.style.top = "0px";
	Gls.style.left = "10px";
	Gls.style.width = "0px";
	Gls.style.height = "227px";
	Gls.style.border = "red 0px dotted";
	Gls.style.zIndex = parseInt(oj.style.zIndex, 10) + 8.0;
	Gls.style.backgroundImage = "url('./space.gif')";

	RIM.appendChild(Gls);										//	カバーガラスの作成
	
	//-------------------------- パッチ生成に続き、コンテンツテンプレートを流し込む -------------------------------

	//	alert("top:" + RIM.style.top + "　left:" + RIM.style.left +	"　width:" + parseInt(oj.style.width)*0.94 + "　height:" + RIM.style.height );

	var CnvStyleWidth;

	if (EG != 0){																	//	編集モード時テキストエリア追加

		CnvStyleWidth = RIM.style.width;

	}else{																			//	閲覧モード時テキストエリア追加

		InitMaxZ();
		if (parseInt(maxZ) > parseInt(1)){									//	ＯＫ（補正手続き前）
			CnvStyleWidth = parseInt(RIM.style.width, 10) - 20 + "px";
		};

		RIM.style.top = "10px";				//★☆★☆★////		省けないよ！
		RIM.style.marginTop = "10px";		//★☆★☆★//

		RIM.style.width = parseInt(oj.style.width, 10) * 0.94 - 20 + "px";
		RIM.style.height = "227px";
		RIM.style.border = "green 0px dotted";

		Cnv.style.marginTop = "0px";
		Cnv.style.marginLeft = "0px";
		Cnv.style.marginRight = "0px";
		Cnv.style.width = RIM.style.width;

		Gls.style.marginLeft = "10px";
		Gls.style.marginTop = "0px";
		Gls.style.left = "0px";					//		省けないよ！
	};

	Cnv.innerHTML = "" +
	"<span id = '" + Cnv.id + "Geo' style = 'display:none; margin-top: 10px; " +
	"	left:" + RIM.style.left + ";" +
	"	width:" + CnvStyleWidth + ";" +
	"	height: 90px;'>" +
	"</span>" +
	"<form id = '" + Cnv.id + "Form' onscroll = \"newpos(" + Cnv.id + "," +  Cnv.id + "Form)\">" +
	"	<input type='button' id = " + Cnv.id + "Contner " +
	"		style = 'position:absolute; cursor:pointer; height:15px;font-size:10px;right:110px;z-index:9;' " +
	"		onClick = \"RmvTxArea(" + RIM.id + ")\" value = '削除'> " +
	"	<input type='button' id = " + Cnv.id + "Contner " +
	"		style = 'position:absolute; cursor:pointer; height:15px;font-size:10px;right:67px;z-index:9;' " +
	"		onClick = \"Insatsu(" + Cnv.id + ")\" value = '印刷'> " +
	"<!--  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -" +
		"		document.getElementsByName('" + Cnv.id + "TxA')[0].style.height = parseInt(document.getElementById('" + Cnv.id + "Geo').style.height) - 60 + 'px';" +
		"		document.getElementsByName('" + Cnv.id + "TxA')[0].style.height = parseInt(document.getElementById('" + Cnv.id + "Geo').style.height) - 60 + 'px';" +
		"		ExpdShrk('" + RIM.id + "'); " +
		"		ExpdShrk('" + RIM.id + "');" +
	" -->" +
	"	<input type='button' id = " + Cnv.id + "ExpSrk style = 'margin-top:-0px; cursor:pointer; height:15px;position:absolute; right:0px; z-index:9;font-size:10px;' " +
		"	onClick = \"" +
		"		document.getElementsByName('" + Cnv.id + "TxA')[0].style.height = parseInt(document.getElementById('" + Cnv.id + "Geo').style.height) - 60 + 'px';;" +
		"		ExpdShrk('" + RIM.id + "'); " +
	"  \" value = '拡大/縮小'>" +
		"	<SPAN>" +
		"		<SPAN>" +
		"			<INPUT type='button' style='MARGIN-TOP: -17px; WIDTH: 30px; HEIGHT: 7px' title='クリック＞パスワード入力＞再クリックで確定'  onclick=\"if(document.getElementById('" + Cnv.id + "pwBox').style.display == 'block'){requestFile(CallBackTxAr," + Cnv.id + ", './pwTxAr/" + Cnv.id + ".textPassword=' + document.getElementById('" + Cnv.id + "pwBox').value + 'Start=' + document.getElementsByName('" + Cnv.id + "TxA')[0].value, 'POST', './pwTxAr.cgi', true); document.getElementById('" + Cnv.id + "pwBox').style.display = 'none'}else{document.getElementById('" + Cnv.id + "pwBox').style.display = 'block'};\">" +
		"			<INPUT style='POSITION: absolute; MARGIN-TOP: 1px; DISPLAY: none; MARGIN-LEFT: 100px' id=" + Cnv.id + "pwBox size=30>" +
		"		</SPAN>" +
		"		<div id = '" + Cnv.id + "TXbox' onresize = \" requestFile(CallBackTxAr,'" + Cnv.id + "', './pwTxAr/" + Cnv.id + ".textPassword=Start=' + document.getElementsByName('" + Cnv.id + "TxA')[0].value, 'POST', './pwTxAr.cgi', true); document.getElementsByName('" + Cnv.id + "TxA')[0].style.height = parseInt(document.getElementById('" + Cnv.id + "').style.height) - 30 + 'px';if(EG < 10){document.getElementById('" + Cnv.id + "TXbox').style.display='none'; };\" style = 'position:absolute;cursor:pointer; margin-top:0px; width:90px; height:0px; font-size:10px;border:1px gray dotted;'>" +
		"			DblClk はkoko " +
		"		</div>" +
		"	</SPAN>" +
		"	<CENTER style='MARGIN-TOP: -10px'>おしらせ</CENTER>" +
		"	<textarea name = '" + Cnv.id + "TxA' wrap = 'virtual' style = 'width:100%; height:100%; line-height:130%;letter-spacing: 0.01em; border:solid 0px;padding:10px; left:0px; margin-top:-0px; position:absolute;' >" +
		"	</textarea>" +
	"</form>" +
	"<!-- コンテンツはここから -->" +
	"<div style = ''>" +
	"	<br />" +
	"</div><!-- コンテンツはここ迄 -->";

	//	alert(document.getElementById(Cnv.id).innerHTML);
	//	"	<textarea name = '" + Cnv.id + "TxA' wrap = 'virtual' " +
	//	"		style = 'border: 0px; overflow:hidden; width:100%; height:100%; font-size:13px; line-height:130%; letter-spacing:0.01em; padding:5px; left:0px; top:-0px; position:absolute;' >" +
	//	"	</textarea>" +
};
//************************************************************************************************************
function RmvTxArea(ojId){	//	alert(ojId.id);

	//	呼び出し元では id を指定しているのに object が渡されて来る(閲覧モードと編集モードの両者から来る)

	if (! confirm("削除します！ 宜しいですか？")){return;};
	if (ojId.id == ""){alert("削除できません !"); return;};

	document.getElementById(ojId.id).parentNode.removeChild(document.getElementById(ojId.id));
};
//*****************************************************************************************************************************
function CallBackTxAr(oj, through){	//	alert("from CallBackTxAr");//	テキストエリアの更新

	var decdata = decodeURI(oj.responseText);								//	サーバーから受信したデータをデコード
	//	alert("decodeURI(oj.responseText) = " + decdata);
	//-----------------------------------------------------------------------------------------------------------------------------
	if(through.id){	//	alert("through.id = " + through.id);		//	スルーパス変数がオブジェクトだった時

		if(decdata != ""){
			document.getElementById(through.id + "TxA").value = decdata;
		};
		document.getElementById(through.id + "pwBox").value = "";
		//	alert("document.getElementById(through.id + 'TxA').value = " + document.getElementById(through.id + 'TxA').value);
	//-----------------------------------------------------------------------------------------------------------------------------
	}else{	//	alert("through = " + through);							//	スルーパス変数が文字列だった時
	
		if(decdata != ""){
			document.getElementById(through + "TxA").value = decdata;
		};
		document.getElementById(through + "pwBox").value = "";
		//	alert("document.getElementById(through + 'TxA').value = " + document.getElementById(through + 'TxA').value);
	}
	//-----------------------------------------------------------------------------------------------------------------------------
};
//*****************************************************************************************************************************
//*****************************************************************************************************************************
//*****************************************************************************************************************************

//*****************************************************************************************************************************
//*****************************************************************************************************************************
//*****************************************************************************************************************************
function oMochikaely(){	//	alert("お持ち帰り");	//	お持ち帰り機能（oj は使用しない。）alert("");

//----------------------------：お持ち帰りについて(画面遷移しないのが味噌)：--------------------------------
//		
//			ポップアップメニューの当該表要素はフォームタグ 'fupform1' になっていて、このタグで直ぐに submit すれば
//			次行の HTML によって、このタグの◆◆CGI(pwDownLoader.cgi)◆◆にダウンロードダイヤログを生成させる。
//			"<form name='fupform1' action = './pwDownLoader.php' enctype = 'multipart/form-data' method = 'POST'>" +
//
//			しかし 'fupform1' 中にはサブミット機能(onClick = submit････････)を置いていない。
//	
//			故に、'fupform1' 内の onClick イベントが呼ぶ oMochikaely() は、持ち帰るべき HTML 文を生成し
//			続いて Ajax（= HTTPRequest	）が、それを◆◆CGI(pwUpLoad.php)◆◆に送信して頁（サーバーファイル）の
//			生成・保存するに留まる。ファイル名は Ajax の送信データと ThroughPass 変数に入れてある。
//
//			　その後、上の Ajax の CallBack 関数(CallBackE) が 'fupform1' をサブミッして（document.fupform1.submit();）、
//			◆◆CGI(DownLoader.cgi)◆◆を起動してサーバーに生成された頁（ファイル）のダウンロードダイヤログの生成を促す。
//			　ファイル名は CallBack 関数を経由する ThroughPass 変数から得る。
//
//			◆◆CGI(DownLoader.cgi)◆◆にサブミットする時、書き出すべきファイル名を Post する為に 'fupform1' 中の
//			インプットタグの	name 属性(参照キーが 'filename' にされている)に、ファイル名をセットする。
//		
//---------------------------------------------------------------------------------------------
//	
//			PatchWorker の実行順序は、
//			１．先に、同じフォームタグ内の onClick イベントが呼ぶ oMochikaely() が持ち帰るべき HTML File を生成する。
//			２．続いて HTTPRequest が HTML File を◆◆ CGI(pwUpLoad.php) ◆◆に送信し、ファイルが保存される。
//			３．最後に上行の HTTPRequest の CallBack 函数が５行上の Submit を実行してダウンロードダイヤログが作られる。
//
//---------------------------------------------------------------------------------------------
	var oj4 = document.createElement('html');							//	新 object 変数の allocation
	oj4.appendChild(document.body.parentNode.cloneNode(true));	// body 全体を oj4 の子にする。
	//	alert(EG);

	if (EG != 0){//	−−−−−−−	編集モード時の、保存処理。−−−−−−−−−−−−−
		//	alert("1");

		//	−−−−	全ぱっちについて、はみ出している掴み枠（FLOATER）を縮めて、Canvas とピッタリ重ねる。−−−−−−−−−−−−−

		var divs = oj4.getElementsByTagName("div");
		for (i = 0; i < divs.length;i++){	//	alert(divs[i].id);
			if (-1 < divs[i].id.indexOf("FLOATER")){				//	FLOATER div-tag
				divs[i].style.left = parseInt(divs[i].style.left, 10) + parseInt(EG, 10) + "px";
				divs[i].style.top = parseInt(divs[i].style.top, 10) + parseInt(EG, 10) + "px";
				divs[i].style.width = parseInt(parseInt(divs[i].style.width, 10) - parseInt(2 * EG,10),10) + "px";
				divs[i].style.height = parseInt(parseInt(divs[i].style.height, 10) - parseInt(3 * EG,10),10) + "px";
				divs[i].style.border = "green 0px dotted";	
			};

			if (-1 < divs[i].id.indexOf("Canvas")){					//	Canvas div-tag		dblClick はココ box も処理する
				if (-1 < divs[i].id.indexOf("Tbox") || -1 < divs[i].id.indexOf("iFRM") || -1 < divs[i].id.indexOf("ocTbxO") || -1 < divs[i].id.indexOf("TXbox")){
					divs[i].style.display = "none";
					divs[i].style.border = "green 0px dotted";	
				}else{	
					if (divs[i].style.width != "100%" &&  divs[i].id.indexOf("ExpSrk") < 0 && divs[i].id.indexOf("Twitter") < 0 && divs[i].id.indexOf("i") < 0 ){
					divs[i].style.marginLeft = "0px";
					divs[i].style.marginTop = "0px";};
				};
			};

			if (-1 < divs[i].id.indexOf("Glas")){						//	Glass div-tag
				divs[i].style.marginLeft = "0px";
				divs[i].style.marginTop = "0px";	
			};
		};
		divs = oj4.getElementsByTagName("span");
		for (i = 0; i < divs.length;i++){	//	alert(divs[i].id);

			if (-1 < divs[i].id.indexOf("Canvas")){					//	Canvas div-tag		dblClick はココ box も処理する
				if (-1 < divs[i].id.indexOf("Tbox") || -1 < divs[i].id.indexOf("iFRM") || -1 < divs[i].id.indexOf("ocTbxO") || -1 < divs[i].id.indexOf("TXbox")){
					divs[i].style.display = "none";
					divs[i].style.border = "green 0px dotted";	
				}else{	
					if (divs[i].style.width != "100%" &&  divs[i].id.indexOf("ExpSrk") < 0 && divs[i].id.indexOf("Twitter") < 0 && divs[i].id.indexOf("i") < 0 ){
					divs[i].style.marginLeft = "0px";
					divs[i].style.marginTop = "0px";};
				};
			};
		};

		divs = oj4.getElementsByTagName("center");													//	センター揃えぱっちはココで扱う
		for (i = 0; i < divs.length; i++){	//	alert(divs[i].id);								
			if (-1 < divs[i].id.indexOf("FLOATER")){													//	FLOATER center-tag

				if (-1 < divs[i].id.indexOf("ES")){	//	alert("拡縮・センターTAG");//	FLOATER center
					//	日記事の掴み枠を消す：position relative なので別処理する。

					divs[i].style.top = "10px";																			//★☆★☆★
					divs[i].style.marginTop = "10px";		//	ＯＫ	編集時作成記事の表示位置ピッチ		//★☆★☆★

				}else{	//	中揃（非拡縮）
					divs[i].style.top = parseInt(divs[i].style.top, 10) + parseInt(EG, 10) + "px";
				};
				divs[i].style.width = parseInt(divs[i].style.width, 10) - parseInt(2 * EG, 10) + "px";
				divs[i].style.height = parseInt(divs[i].style.height, 10) - parseInt(3 * EG, 10) + "px";
				divs[i].style.border = "green 0px dotted";	
			};
		};		//	編集時：保存：日記事追加：終了

	}else{	//	閲覧モード時：保存：日記事追加	

	};
//	*************************	全てを HTML 化して oj40 に書き込む。	********************
	//	oj40 = document.getElementsByTagName('html')[0].innerHTML;
	// oj40 = document.documentElement.innerHTML ;	//	alert(oj40);
	var oj40 = oj4.innerHTML;

//	-------------------		お持ち帰りファイルから pMenu 部(ぱっちワーカー・メニュー)のソースを除去する	--------------

//		pMenu の前 直近の“<”を探査して i にセットすべき
//		本来、i0 は pMenu の閉じタグ位置でなければならない

	var i = oj40.indexOf(">", oj40.indexOf("pMenu", 0));		//	ポップアップメニュー文の先頭を探す。
	var i0 = i;	//	“<div id=pMenu”の後 直近の“>”の位置

	var j; var jj; var k; var kk; var x = 1;

	while (0 < i && x != 0){							//	alert(i0 + " : " + i + " : " + x);
		j = oj40.indexOf("<div", i);					//	pMenu の中、入れ子になっている DIV を探す。(正しいpMenuの閉じタグを得るため)
		jj= oj40.indexOf("<DIV", i);
		if(j < jj){j = jj};		
		k = oj40.indexOf("</div>", i);	
		kk= oj40.indexOf("</DIV>", i);	
		if(k < kk){k = kk};								//	alert(i + "：" + j + "：" + k);
		if (j < 0 ){										//	pMenu の中に DIV ブロックは、もう無い。
			i = k;
			x = 0;
		}else{												//	pMenu の中の、次の DIV ブロックを探す。
			if(j < k){
				i = j;
				x = x + 1;
			}else{
				i = k;
				x = x - 1;
			};
		};
	};	//	alert(i0 + "：" + i);

	oj40 = oj40.substring(0, i0 + 1) + oj40.substring(i);　//	alert(oj40);　//	pMenu 部を取り除いた

//	今作った oj40 を構文解析して、フォームタグの Value を書き込む。
//	-------------------------------------	Form Value、selected、checked 更新	-------------------------------------
//	alert(document.forms[0].elements[0].value);//	PopUpMenu のファイル名が入っている。

//						DOCUMENT.FORMS ツリーを始めから舐めて HTML(oj40) の該当する部分を探し、更新して行く。 

	var s0typ = {"strt": 0, "typ": 0};
	SearchDoreka(oj40, 0, oj40.length, s0typ, "<body", "<BODY");
	var nL = s0typ["strt"];	//		<body・・・ の位置をセット

//	alert(oj40 + ":::" + nL + ":::" + oj40.length);
//	HTML テキスト oj40 中 nL 文字目から oj40length 文字目までの部分の Form の値を document.forms を参照して更新する。
//	*********************************************************************************************************************
	var oj50 = "<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.0 Transitional//EN' 'http://www.w3.org/TR/REC-html40/loose.dtd'>";
	oj50 = oj50 + "<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.0//EN' 'http://www.w3.org/TR/REC-html40/strict.dtd'>";
	oj50 = oj50 + UpdateFrmVal(oj40, nL, oj40.length);
	//	alert(oj50);
//	var oj50 = UpdateFrmVal(oj40, nL, oj40.length);	//	alert(oj50);//保存のため、html テキスト収集
//	*********************************************************************************************************************

//	-------------------------------	無料試供品は次の３行で終了		----------------------------------

			//	alert("表示 → ソース → ファイル → 名前を付けて保存 → 全てのファイル");
			//	window.document.write(document.documentElement.innerHTML);//	この行は使わないこと。
			//	window.document.write(oj50);
			//	return;

//	----------------	HTML ファイル保存手順始：ファイル名が KIHARA.shtml の時に限り、上書き保存する。------------------

//	alert("編集しているファイルの出身(サーバー上の作業)ディレクトリー＝" + window.location.pathname.substring(1, window.location.pathname.lastIndexOf("/")) + " : 編集しているファイル名＝" + window.location.pathname.substring(window.location.pathname.lastIndexOf("/") + 1));
	var Dot="";
	for (i = 0; i < window.location.pathname.length + 1; i++) {
   	 if(window.location.pathname.substring(i,i + 1) == "/"){Dot = Dot + "."};
	};	 //alert(Dot);

	if (window.location.pathname.indexOf("KIHARA", 0) < 0){	//	名前が KIHARA ではないファイルが編集された場合は別名保存。

		//		☆☆☆☆☆☆☆☆☆☆☆☆☆☆　消えた include 文の回復　☆☆☆☆☆☆☆☆☆☆☆☆☆☆
		//					document object を生成すると下の３行が落ちるので、手当てする
		//						<!--#if expr=\"$menu_flag = '1'\" -->
		//						<!--#include file=\"Connection.shtml\" -->
		//						<!--#endif -->

		i = oj50.indexOf("<!-- 公開時は以下の３行を削除する。 -->", 0);
		j = oj50.indexOf("<!-- 公開時は上の３行を削除する。 -->", 0);

		oj50 = oj50.substring(0, i) +
		"	<!-- 公開時は以下の３行を削除する。 -->" +
		"	<!--#if expr=\"$menu_flag = '1'\" -->" +
		"		<!--#include file=\"Connection.shtml\" -->" +
		"	<!--#endif -->" +
		"	<!-- 公開時は上の３行を削除する。 -->" + oj50.substring(j + 23);	//	alert(oj50);
		//		☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆

		//	File 名生成
		DT = new Date(); 																							//	alert(DT.getTime());
		var dire = window.location.pathname.substring(1, window.location.pathname.lastIndexOf("/"));
		var TimeStamp = dire.replace(/\//g,'_') + DT.getTime();										//	alert(dire + ":::" + DT.getTime());
		var ThroughPass = Dot + "/" + dire + "/" + TimeStamp + ".shtml";							//	相対パスでもＯＫ

		//	■◇■◇■◇■◇■◇■◇■◇■◇■◇■　サーバーにパス名を渡す　■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇
		//		HTML File のパス（其処に是を作って作ってくれ）は CGI(pwUpLoad.php) から見た相対パスでも URL でもＯＫ
		//		サイト内へ(追加)保存する HTML ファイルの“サーバディレクトリー名＋ファイル名”を今、決定
		ThroughPass = ThroughPass.replace("w.shtml", ".shtml");
//		alert("ThroughPass = " + ThroughPass + "：編集したファイルが、サーバーに別名保存されます。");	//	サイト内へ(追加)保存する時の“サーバディレクトリー名＋ファイル名”
		//	■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇

	}else{

		//	■◇■◇■◇■◇■◇■◇■◇■◇■◇■　サーバーにパス名を渡す　■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇
		var ThroughPass =  Dot +  window.location.pathname;
//		alert("ThroughPass = " + ThroughPass) + "：KIHARA.shtml（既存サーバーファイル）が編集されたので、上書き保存されます。";							// ThroughPass は Call Back 関数に Through Pass するパラメーター
		//	■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇
	};

//	変数 filename にはクライアントから送られたファイルの更新名(TimeStamp)、または新規としての名前“KIHARA.shtml”が入っている。
//	データとしてサーバーレスポンス関数へ送られるので、此処では相対パスで書いても絶対パスで書いてもよい。
	var MD5 = "MD5";	//	alert(filename);//	サイト内保存用ファイル名

	var dataX = ThroughPass + ',' + 'MD5=' + MD5 + 'start=,' + oj50;

//	dataX = dataX.replace(/\&/g, "＆");		//	dataX.replace("&&"→"＆＆")	php だと文字化けする（pwUpLoad.php と対）。
//	dataX = dataX.replace(/\+/g, "＋");		//	dataX.replace("+"→"＋")		php だと文字化けする（pwUpLoad.php と対）。

//	alert("これから Ajax 送信する保存 HTML：" + dataX);

//	■◇■◇■◇■◇■◇■◇■◇■◇■◇■　サーバーにパス名を渡す　■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇

//**********************************************************************************************************************************************
//	requestFile(CallBackE, ThroughPass, encodeURIComponent(dataX), "POST", "./pwUpLoad.php", false);	//	要プログレスバー
	requestFile(CallBackE, ThroughPass, encodeURIComponent(dataX), "POST", "./pwUpLoad.cgi", false);	//	送信関数（キモ）：jslb_ajax02.js に記載
//	requestFile(CallBackE, ThroughPass, encodeURIComponent(dataX), "POST", "pwUpLoad.cgi", false);	//	送信関数（キモ）：jslb_ajax02.js に記載
//**********************************************************************************************************************************************

	//		使用する CGI レスポンス関数のパス（保管場所＝実行場所）を URL で与えると動作しない。
	//		×	requestFile(CallBackE, ThroughPass, encodeURI(dataX), "POST", "./pwUpLoad.***", false);
	//		requestFile(CallBackE, ThroughPass, encodeURI(dataX), "POST", "./pwCGIs/pwUpLoad.***", false);	//	要プログレスバー
	//		dataX の中には保存に使う“サーバディレクトリー名＋ファイル名”が含ませてある。
	//		ThroughPass(= filename) はレスポンス関数 "./pwCGIs/pwUpLoad.***" 経由で下記関数 "CallBackE()" へ返される。
	//		レスポンス関数はサーバー中に名称 filename でファイルを作り、同じ名前が CallBackE() に渡る。

//	■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇
};
//	----------------------------------------------------------------------------------------------------------------------------------
	function CallBackE(oj, ThroughPass){	//	上行の CallBack 関数：ダウンロードダイアログ作成を要請する
	
	//	var decdata = decodeURI(oj.responseText);	//		サーバーから受信した UTF-8 データをデコード。
																//		送られてきたデータが UTF-8 でない時はエラーになる？？
	//	alert("oj.responseText = " + oj.responseText + "[reported by CallBackE]");
		if(oj.responseText == ""){
		//	alert("レスポンス関数からデータが送られてきませんでした[pwUpLoad.cgi]。レスポンス関数の場所、名称、パーミッションはＯＫですか？[reported by CallBackE]");
		};

		//-----------------------------------------------------------------------------------------------------------------------------
		if(ThroughPass.id){	//	alert("スルーパス変数はオブジェクト＝" + ThroughPass.id);
			if (oj.responseText.indexOf("!!", 0) > -1){alert("CallBackE()はサーバー保存に失敗：" + ThroughPass.id + " : " + oj.responseText);};

			//	<form name='fupform1' action = './pwDownLoader.php' enctype = 'multipart/form-data' method = 'POST'>" +
			//	ThroughPass に書かれたファイル名を fupform1 フォームの name 属性(参照キー ＝'filename')にセットする。

			if (EG == 0){	//	実行モード時に document.fupform2.submit() がある場合
			//	alert("エンディングノート専用：document.fupform2.filename.value = " + document.fupform2.filename.value);	//	fupform2 を持つパッチが作られている
				document.fupform2.filename.value = ThroughPass.id;
				document.fupform2.submit();
			}else{
			//	alert("通常編集モード時用:This is CallBackE");
				document.fupform1.filename.value = ThroughPass.id;		//	alert("CallBackE：" + document.fupform1.filename.value);
				document.fupform1.submit();
				//	fupform1 は HomeWXY のポップアップメニュー中に在る
				//	<form name='fupform1' action = './pwDownLoader.cgi' enctype = 'multipart/form-data' method = 'POST'>
			};
			//-----------------------------------------------------------------------------------------------------------------------------
		}else{	//	alert("スルーパス変数は文字列＝" + ThroughPass);
			if (oj.responseText.indexOf("!!", 0) > -1){alert("CallBackE()はサーバー保存に失敗：" + ThroughPass + " : " + oj.responseText);};

			//	<form name='fupform1' action = './pwDownLoader.php' enctype = 'multipart/form-data' method = 'POST'>" +
			//	ThroughPass に書かれたファイル名を fupform1 フォームの name 属性(参照キー ＝'filename')にセットする。

			if (EG == 0){	//	実行モードに document.fupform2.submit() がある場合
			//	alert("エンディングノート専用：document.fupform2.filename.value = " + document.fupform2.filename.value);	//	fupform2 を持つパッチが作られている
				document.fupform2.filename.value = ThroughPass;			
				document.fupform2.submit();
			}else{
			//	alert("通常編集モード時用:This is CallBackE")
				//	fupform1 は HomeWXY のポップアップメニュー中に在る
				//	<form name='fupform1' action = './pwDownLoader.cgi' enctype = 'multipart/form-data' method = 'POST'>
				document.fupform1.filename.value = ThroughPass;		//	alert("CallBackE：" + document.fupform1.filename.value);
				document.fupform1.submit();
			};
		};
		//-----------------------------------------------------------------------------------------------------------------------------
		document.getElementById('pMenu').style.visibility = 'hidden';
	};
//	*********************************************************************************************************************
//	頁保存に先立って document.forms を参照し、現在の Form 値が HTML に反映させる様に書き直す。
//	*********************************************************************************************************************
function UpdateFrmVal(oj40, nL, oj40length){	//	alert(nL + ":::" + oj40length + ":::" + oj40)

//	Form が入れ子になっていると正しく動作しない。

//	oj40(HTML) 中 nL 文字目から oj40length 文字目までの部分の Form 値を document.forms を参照して書き直す。
//	oj40 は BODY 全体の HTML テキストでなければならない。この関数は nL と oj40length を変えながら動作する。

//	alert(oj40);
//	Javascript、css については落とされる筈

//	デバッグプリント用プログラム
//	for (i = 0; i < document.forms.length; i++){
//		if (document.forms[i].name == 'fupform1'){i = i + 1};
//		if (document.forms[i].length > 0){
//			for (j = 0; j < document.forms[i].length; j++){
//				if (document.forms[i].elements[j].length > 0){
//					for (var k = 0; k < document.forms[i].elements[j].length; k++){
//						alert(i + " : " + j + " : " + k + " : " + document.forms[i][j].options[k].selected);
//					};
//				}else{
//					alert(i + " : " + j + " : " + document.forms[i].elements[j].value);
//				};
//			};
//		}else{;
//			alert(i + " : " + document.forms[i].value);
//		};
//	};
//	alert("Form elements 探査終了");

	var bgnS; var finS; var bgnA; var finA; var bgnI; var finI; var bgnO; var finO; var mN; var mL; var BTS ; var i ;
	var s0typ = {"strt": 0, "typ": 0};

	SearchDoreka(oj40, 0, oj40.length, s0typ, "<body", "<BODY");
//	oj40 中 0 → oj40.length の間に "<body"、"<BODY" の何れかがどの位置にあったか、s0typ を更新して返せ。
	BTS = s0typ["strt"];	//	"<body" の見付かった位置。

//		document 中の Form element を浚う
	for (i = 0; i < document.forms.length; i++){	//	これから form エレメントの個数分だけ、掃引・処理する
//	alert("");	//	成り立たなくなっている(09/04/14) ⇒ ０を跳ばさないと popUpMenu が取り込まれてしまう
		if (document.forms[i].name == 'fupform1'){i = i + 1};	//	"fupform" は跳ばす。
		if (document.forms.length == i){		//		alert("終点。");
			return oj40;
		};	
		SearchDoreka(oj40, BTS, oj40.length, s0typ, "<form", "<input");			//	i 番目の“<form”の位置を探す
		//alert("s0typ[\"strt\"] ::: " + s0typ["strt"] + "\ns0typ[\"typ\"] ::: " + s0typ["typ"]);
		BTS = s0typ["strt"] + BTS + 1;												//	次の探査開始位置を決めておく
		if (BTS < oj40length && s0typ["typ"] == 0){													//	この "<form" は対象領域終了点より前にある
			var BTS0 = BTS;															//	５行下の alert の為に仮保管
			SearchDoreka(oj40, BTS, oj40.length, s0typ, "/form>");		//	i 番目の“</form>”の位置を探す
			//alert("s0typ[\"strt\"] ::: " + s0typ["strt"] + "\ns0typ[\"typ\"] ::: " + s0typ["typ"]);
			BTS = s0typ["strt"] + 5 + BTS;										//	次の探査開始位置を決めておく
			if (nL < BTS){	//	alert("i ::: " + i);							//	探査を指示された始点より後ろになければならない。
//				● i 番目の <form 〜 </form>	の位置が分かった。			
//	alert("<form> 〜 </form> : " + oj40.substring(BTS0, BTS));	//		"/form>" は対象領域開始点より後ろに有る
//	alert(document.forms[i].length);			//	document の頭から順に Form element を走査
				for (j = 0; j < document.forms[i].length; j++){	//	alert("i ::: " + i + "\nj ::: " + j);
					// これから i 番目の form エレメント中の子エレメントの個数分だけ、次々に処理する。
					//	(Select、TextArea、InputText、InputRadio、InputCheck、InputButton、InputHidden、InputSubmit、InputReset)

					if (document.forms[i].elements[j].length > 0){	//	alert("●select tag");
						//	alert("●select tag\n" + i + " ::: " + j + " ::: " + document.forms[i].elements[j].value);
						// i 番目の form エレメント中の j 番目の子エレメント中に孫エレメント(= select element)が有るならば <Select>〜</select> を切り出す
//						●select tag
						SearchDoreka(oj40, nL, oj40length, s0typ, "<select"); bgnS = s0typ["strt"] + nL;				//	*** "<SELECT" の開始位置 ***
						SearchDoreka(oj40, bgnS, oj40length, s0typ, "/select>"); finS = s0typ["strt"] + 8 + bgnS;	//	*** 現時点での "/SELECT>" の終了位置 ***
//	alert("<SELECT>：" + oj40.substring(bgnS, finS));

						finO = bgnS;	//	finOPTION = bgnSELECT  finO は次項の開始点と位置づけられる
						for (var k = 0; k < document.forms[i].elements[j].length; k++){		//	*** document 中で select element を浚う ***

							SearchDoreka(oj40, finO, finS, s0typ, "<option");
							if (-1 < s0typ["strt"]){														//	*** HTML 中に "<option" を探す ***

								bgnO = finO + s0typ["strt"];
								SearchDoreka(oj40, bgnO, finS, s0typ, ">");
								//		<option 〜 /option> ＝ bgnO 〜 bgnO + s0typ["strt"]
								finO = bgnO + s0typ["strt"];

								//		此処から option の書き直し
								if (document.forms[i][j].options[k].selected == true){ 		//	alert("selected !!");	//*** select element の走査 ***	“selected="selected"”が有るのなら素通りしてＯＫ
									SearchDoreka(oj40, bgnO, finO, s0typ, "selected=\"\""); 	//	alert(s0typ["strt"])

									if (-1 < s0typ["strt"]){	//	HTML 中に“selected=""”が有る
										var sslctd = bgnO + s0typ["strt"]
										oj40 = oj40.substring(0, sslctd) + " selected=\"selected\" " + oj40.substring(sslctd);	//	"selected" の書き込み
									};
									SearchDoreka(oj40, bgnO, finO, s0typ, "selected=");
									if (s0typ["strt"] < 0){		//	HTML 中に“selected=”が無い
										oj40 = oj40.substring(0, finO) + " selected=\"selected\" " + oj40.substring(finO);			//	"selected" の書き込み
									};
							
								}else{	//	読み込み時は "selected" であったがユーザーが解消した。
									SearchDoreka(oj40, bgnO, finO, s0typ, "selected=\"selected\""); //	alert(s0typ["strt"])
									if (-1 < s0typ["strt"]){
										oj40 = oj40.substring(0, bgnO + s0typ["strt"]) + oj40.substring(bgnO + s0typ["strt"] + 19);	//	"selected" の削除
									};
								};

								SearchDoreka(oj40, bgnO, oj40length, s0typ, "/OPTION>"); finO = bgnO + s0typ["strt"] + 8;;//	次の検索開始位置セット
							};
//	alert("<SELECT>＝" + oj40.substring(bgnS, finO));
						};
						SearchDoreka(oj40, bgnS, oj40length, s0typ, "/SELECT>"); nL = bgnS + s0typ["strt"] + 8;//	次の検索開始位置＝終端子位置(nL)の補正セット

					}else{	//	document.forms 中に第３層が無いならば select element ではなく、Input、Textarea である
							//	document.forms 中に入れ子になった form element が有ることが想定されていない。
							//	alert("●input or textarea tag\n" + i + " ::: " + j + " ::: " + document.forms[i].elements[j].value);


//						●textarea と input(textbox、radiobutton、checkbox・・・・・・) tag
						SearchDoreka(oj40, nL, oj40length, s0typ, "<INPUT", "<TEXTAREA"); 
						if (0 < s0typ["typ"]){	//	alert("0 < s0typ[typ]");						// *** TextArea Tag の処理 ***						
//							●textarea tag
							//	alert("●textarea tag\n" + i + " ::: " + j + " ::: " + document.forms[i].elements[j].value);

							bgnA = nL + s0typ["strt"];
							//	此処で >〜< の書き直し	＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝					
							SearchDoreka(oj40, bgnA, oj40length, s0typ, ">");
							bgnA = bgnA + s0typ["strt"] + 1;
//	alert(oj40.substring(bgnA, oj40length));
							SearchDoreka(oj40, bgnA, oj40length, s0typ, "<");





							//	alert(i + " ::: " + j + " ::: " + document.forms[i].elements[j].value);

							



							oj40 = oj40.substring(0, bgnA) + document.forms[i].elements[0].value + oj40.substring(bgnA + s0typ["strt"]);	//	書き込み
//	alert("<TEXTAREA>の新値 ＝ " + oj40.substring(bgnA + s0typ["strt"]));	//	書き込み
							SearchDoreka(oj40, bgnA, oj40length, s0typ, "/TEXTAREA>");
							finA = bgnA + s0typ["strt"] + 10;							//	次の語の起点
//	alert("<TEXTAREA>の新値 ＝ " + oj40.substring(bgnA, finA));
							nL = finA;							//	終端子位置(nL)のセット

						}else{	// *** Input Tag の処理（TextBox, RadioButton, CheckBox) ***
							//	alert("●input tag\n" + i + " ::: " + j + " ::: " + document.forms[i].elements[j].value);
//							●input(textbox と radiobutton と checkbox・・・・・・) tag

							bgnI = nL + s0typ["strt"];
//	alert(bgnI  + " : " + nL + " : " + s0typ["strt"]);
							SearchDoreka(oj40, bgnI, oj40length, s0typ, ">"); finI = bgnI + s0typ["strt"] + 1;
							SearchDoreka(oj40, bgnI, finI, s0typ, "type=\"text", "type=text", "type=\"radio", "type=radio", "type=\"checkbox", "type=checkbox", "type=\"submit", "type=submit", "type=\"reset", "type=reset", "type=\"button", "type=button", "type=\"hidden", "type=hidden");
							var FF=0;
							if (s0typ["typ"] == 0 || s0typ["typ"] == 2 || s0typ["typ"] == 4 || s0typ["typ"] == 6 || s0typ["typ"] == 8 || s0typ["typ"] == 10 || s0typ["typ"] == 12){FF = 1;};

//	alert("見つかった <Input(textbox、radiobutton、checkbox・・・・・・) > ＝ " + oj40.substring(bgnI, finI));
							if (1 < s0typ["typ"]){//	TextBox ではない
//								●input(radiobutton か checkbox か submit か reset か button か hidden) tag である

								if (s0typ["typ"] == 2 || s0typ["typ"] == 3 || s0typ["typ"] == 4 || s0typ["typ"] == 5){;	
//									●input(radiobutton、checkbox) tag：ラジオボタン or チェックボックス での Checked == true/false の書き直し ***
//	alert("見つかった <Radio、Check> ＝ " + oj40.substring(bgnI, finI));
									SearchDoreka(oj40, bgnI, finI, s0typ, "checked=\"checked\"", "CHECKED");
									//	HTML に checked と書かれているか否か調べた。

									if (document.forms[i].elements[j].checked == true){				// DocumentObject では check されている場合。
										if (s0typ["strt"] < 0){													// HTML には“checked="checked"”が無いので加筆
//	alert("<Radio、Check> ＝ " + oj40.substring(bgnI, finI));
											SearchDoreka(oj40, bgnI, finI, s0typ, ">");

											if (FF == 1){	//	FireFox
												oj40 = oj40.substring(0, bgnI + s0typ["strt"]) + " checked=\"checked\" " + oj40.substring(bgnI + s0typ["strt"]);	//	書き込み
												finI = bgnI + s0typ["strt"] + 20 + 1;																									//	次の語の起点の補正
											}else{						//IE
												oj40 = oj40.substring(0, bgnI + s0typ["strt"]) + " CHECKED " + oj40.substring(bgnI + s0typ["strt"]);					//	書き込み
												finI = bgnI + s0typ["strt"] + 8 + 1;																									//	次の語の起点の補正
											};

										}else{;	//	alert("CHECKED !!");									// HTML には“checked="checked"”があるのでＯＫ
//	alert("<Radio、Check1> ＝ " + oj40.substring(bgnI, finI));
											SearchDoreka(oj40, bgnI, finI, s0typ, ">"); finI = bgnI + s0typ["strt"] + 2;													//	次の語の起点
										};							
									}else{;																			// DocumentObject では check されていない場合。
										if (-1 < s0typ["strt"]){												// HTML に“checked="checked"”が有るので削除
//	alert("<Radio、Check> ＝ " + oj40.substring(bgnI, finI));
											if (s0typ["typ"] == 0){	//	FF
												oj40 = oj40.substring(0, bgnI + s0typ["strt"] - 1) + oj40.substring(bgnI + s0typ["strt"] + 17);							//	書き込み(削除)
												finI = finI - 18;																															//	次の語の起点の補正
											}else{						//	IE
												oj40 = oj40.substring(0, bgnI + s0typ["strt"] - 1) + oj40.substring(bgnI + s0typ["strt"] + 7);							//	書き込み(削除)
												finI = finI - 8;																															//	次の語の起点の補正
											};
										}else{;	//	alert("NO-CHECKED !!");							// HTML に“checked="checked"”が無いのでＯＫ
//	alert("<Radio、Check2> ＝ " + oj40.substring(bgnI, finI));
											SearchDoreka(oj40, bgnI, finI, s0typ, ">"); finI = bgnI + s0typ["strt"] + 2;													//	次の語の起点の補正
										};
									};
								}else{;	//	TextBox ではない	radiobutton、checkbox でもない＝submit, reset, button, hidden タグの処理
//									● ブラウザーに表示される値を持たない input tag 
									SearchDoreka(oj40, bgnI, finI, s0typ, ">"); finI = bgnI + s0typ["strt"] + 1;															//	次の語の起点の補正
//	alert("・・・・・＝ " + oj40.substring(bgnI, finI));
								};

							}else{;	// Input TextBox の Value の書き直し ***
								//	type は radio、checkbox、submit、reset、button、hidden ではない

//								●textbox(input)tag (IE は “type= ”の表示を省いているので -1 になるが、ここに来る)

								var iTag = oj40.substring(bgnI, finI);				//	ブラウザーに出させた HTML から切り出した input tag 文
								if (iTag.indexOf("value=\"", 0) != -1){				//	非 IE (Value が " で囲われている)
									mN = iTag.indexOf("value=", 0) + 7;
									mL = iTag.indexOf("\"", mN) + 1;
//	alert("<text box1> の旧値 ＝ " + iTag.substring(mN - 7, mL));			//	置き換えるべき範囲
									var varyu = iTag.substring(mN, mL - 1);			//	此処を document.forms[i].elements[j].value で置き換える	
									oj40 = oj40.substring(0, bgnI + mN) + document.forms[i].elements[j].value + oj40.substring(bgnI + mL - 1);							//	書き込み
									finI = bgnI + mL - 1;																																	//	次の語の起点の補正
//	alert("<text box1> の新値 ＝ " + oj40.substring(bgnI, finI));
								}else{;
									if (iTag.indexOf("value=", 0) != -1){				//	IE (Value が " で囲われていない)
										mN = iTag.indexOf("value=", 0) + 6;
										mL = iTag.indexOf(" ", mN + 1) + 1;
//	alert("<text box2> の旧値 ＝ " + iTag.substring(mN - 6, mL - 1));		//	置き換えるべき範囲
										oj40 = oj40.substring(0, bgnI + mN) + "\"" + document.forms[i].elements[j].value+ "\"" + oj40.substring(bgnI + mL - 1);		//	書き込み
										finI = bgnI + mL - 1;																																//	次の語の起点の補正
//	alert("<text box2> の新値 ＝ " + oj40.substring(bgnI, finI + 2));
									}else{;
										mN = 0;	//	TextBox ではない(語 value=、value=" が無い)。<div>、<span> 等
									};
//	alert("<div>、<span> 等を含む Form tag");								
								};
							};
							//	alert(oj40.substring(bgnI, finI));
							nL = finI;	//	終端子位置(nL)の補正
						};
					};
				};
			};
		};	//	DOM の側から現在の瞬間の Form Element を検索した。
//		alert(oj40);
	};
	FF = 0;
	return oj40;
}
//************************************************************************************************************
function SearchDoreka(Operand, RangeS, RangeE, styp, text0){//,text1, text2, text3,・・・・・・・・
//	Operand 中 RangeS → RangeE の間に text0, text1, text2, text3,・・・・・の何れかがどの位置にあったか、styp を更新して返せ。
//
	styp["strt"] = RangeE - RangeS;	
	//	styp は、呼び出し元 UpdateFrmVal() の冒頭で定義された“var s0typ = {"strt": 0, "typ": 0};”を参照している。
	//	styp は配列 {"strt": 0, "typ": 0} であるから値渡しでなくて、アドレス渡しになり、以下の更新を返す。
	//			styp["strt"] = r1;			//	何文字目にあった
	//			styp["typ"] = m - 4;		//	何番目の語があった

//	alert(arguments.length);
	var r1 = -1;
	var m;
	for (m = 4; m < arguments.length; m++){			//	alert(Operand.substring(RangeS, RangeE + 1).toLowerCase());
		r1 = Operand.substring(RangeS, RangeE + 1).toLowerCase().indexOf(arguments[m].toLowerCase(), 0);
	//	alert(r1 + " ::::: " + arguments[m].toLowerCase() + " ::::: " + Operand.substring(RangeS, RangeE + 1).toLowerCase());
		if (-1 < r1 && r1 < RangeE - RangeS + 1){	
			if (r1 < styp["strt"]){
				styp["strt"] = r1;			//	何文字目にあった
				styp["typ"] = m - 4;			//	何番目の語があった
			//	alert(" -----" + m + " -----");
			//	alert(arguments.length + "あ" + m + "：" + styp["strt"] + "：" + styp["typ"]);
			};
			//alert(arguments.length + "い" + m + "：" + styp["strt"] + "：" + styp["typ"]);
		}else{
		}	;;	
		//alert(arguments.length + "う" + m + "：" + styp["strt"] + "：" + styp["typ"]);
	};	
	if (styp["strt"] == RangeE - RangeS){
		styp["strt"] = - 1;
		styp["typ"] = - 1;
	};
};
//***********************************************************************************************************
//----------------------------------------------------------------------------------------------------------------------------------
function Zoom_0(n, OJcdid, TP, LT, WT, HT){//	alert(OJcdid + " : " + TP + " : " + LT + " : " + WT + " : " + HT);
	//	非ズーム拡縮
	//	行き先ジオメトリー：TP, LT, WT, HT
	alert("！！！！！！Zoom0 : " + OJcdid + " : " + TP + " : " + LT + " : " + WT + " : " + HT + " : " + document.getElementById(OJcdid.replace("FLOATER", "Canvas")).style.overflow + " : " + document.getElementById(OJcdid).style.zIndex);		//	行き先ジオメトリー：TP, LT, WT, HT
	//	alert(document.getElementById(OJcdid).tagName);

	document.getElementById(OJcdid).style.top = parseInt(TP, 10) + "px";
	if (document.getElementById(OJcdid).tagName != "CENTER"){					//	非センタリング“ぱっち"対応
		document.getElementById(OJcdid).style.left = parseInt(LT, 10) + "px";
	};
	document.getElementById(OJcdid).style.width =  parseInt(WT, 10) + "px";
	document.getElementById(OJcdid).style.height = parseInt(HT, 10) + "px";

	ojCVid = OJcdid.replace("FLOATER", "Canvas");
	ojGLid = OJcdid.replace("FLOATER", "Glass");

	document.getElementById(ojCVid).style.width = parseInt(document.getElementById(OJcdid).style.width, 10) - 2 * EG + "px";
	document.getElementById(ojCVid).style.height = parseInt(document.getElementById(OJcdid).style.height, 10) - 3 * EG + "px";
	document.getElementById(ojGLid).style.height = parseInt(document.getElementById(OJcdid).style.height, 10) - 3 * EG + "px";

	//	拡縮動作時のｚIndex 処理（※と呼応）
	if (document.getElementById(OJcdid.replace('FLOATER', 'Canvas') + 'ExpSrkR').style.display == "block"){	//	拡大エンド
		//	document.getElementById(OJcdid).style.zIndex = parseInt(document.getElementById(OJcdid).style.zIndex, 10) - parseInt(maxZ, 10);
		if (!document.getElementById(OJcdid.replace("FLOATER", "Canvas") + 'iFRM')){
			document.getElementById(OJcdid.replace("FLOATER", "Canvas")).style.overflow = "auto";
		};
		;return;
	};
	if (document.getElementById(OJcdid.replace('FLOATER', 'Canvas') + 'ExpSrkR').style.display == "none"){	//	縮小エンド
		return;
	};

	if(OJcdid.indexOf("ExpSrk", 0) < 0 ){return;};
	if (document.getElementById(OJcdid.replace("FLOATER", "Canvas")).style.overflow == "auto"){//縮小エンド
		document.getElementById(OJcdid.replace("FLOATER", "Canvas")).style.overflow = "hidden";
		document.getElementById(OJcdid).style.zIndex = parseInt(document.getElementById(OJcdid).style.zIndex, 10) - parseInt(maxZ, 10);
		//	alert("Zoom0 収縮エンド : " + OJcdid + " : " + TP + " : " + LT + " : " + WT + " : " + HT + " : " + document.getElementById(OJcdid.replace("FLOATER", "Canvas")).style.overflow + " : " + document.getElementById(OJcdid).style.zIndex);		//	行き先ジオメトリー：TP, LT, WT, HT
		return;
	};
	if (document.getElementById(OJcdid.replace("FLOATER", "Canvas")).style.overflow == "hidden"){//拡大エンド
		document.getElementById(OJcdid.replace("FLOATER", "Canvas")).style.overflow = "auto";
	//	document.getElementById(OJcdid).style.zIndex = parseInt(document.getElementById(OJcdid).style.zIndex, 10) + parseInt(maxZ, 10);
		//	alert("Zoom0 拡大エンド : " + OJcdid + " : " + TP + " : " + LT + " : " + WT + " : " + HT + " : " + document.getElementById(OJcdid.replace("FLOATER", "Canvas")).style.overflow + " : " + document.getElementById(OJcdid).style.zIndex);		//	行き先ジオメトリー：TP, LT, WT, HT
		return;
	};
};


