/*
----------------------------------------------------------------
	cd_utilities
	Part of CreativeDevice JavaScript Liabrary
----------------------------------------------------------------
	version			1.00
	last update		2011/01/28
	author			Yoshihisa Kato/YAH!-cyberstudio
----------------------------------------------------------------
	This script is prohibited to use outside mu-MU WEB SITE
	http://www.mu-mu.info/
--------------------------------------------------------------------------
*/

var CD_extendDiv={

/*=====SETTING_SECTION=====*/
/*
[Apply]で
拡張するDIVタグに設定するclassと拡張形式設定を連携させます。
拡張形式設定は[Setting]で行います。

[Apply]でclassName:'Default'とすると、30行目から始まる内容が適用されます。

独自の設定をする場合はCD_setting.js内で　変数=new CD_extendDiv.Setting();
と宣言した後に各値を代入してください。
その上で[Apply]内にclassName:'変数名'と記述してください。
*/
	Apply:{
		//className:setting object var
		Sgs:'scrollOnly',
		Ugs:'Default',
		editorPalette:'editorPalette'
	},

	Setting:function(){

		/* controler setting */
		this.topControlSize=15;
		this.controlWidth=15;
		this.controlHeight=15;

		/*image setting*/
		this.arrowUp="../include/image/arrow_up.gif";
		this.arrowDw="../include/image/arrow_dw.gif";
		this.arrowLeft="../include/image/arrow_left.gif";
		this.arrowRight="../include/image/arrow_right.gif";
		this.verticalScrollBar="../include/image/scrollbar_v.gif";
		this.verticalScrollButton="../include/image/dragbutton_v.gif";
		this.horizontalScrollBar="../include/image/scrollbar_h.gif";
		this.horizontalScrollButton="../include/image/dragbutton_h.gif";
		this.resizeButton="../include/image/resizebutton.gif";
		this.dragBar="../include/image/palette_01.gif"
		this.closeButton="../include/image/palette_close.gif";
		this.stackButton="../include/image/minimize.gif";

		//style setting
		this.titleFont="extendDivTitleFont";


		/* scroll speed setting */
		this.arrowScrollDPF=5;	//Distance Per Frame
		this.arrowScrollFPS=30;	//Frame Per Second

		/* select using function */
		this.enableDrag=true;
		this.dragOptions='';
		this.dragOption=CD_extendDiv.parseSettingOption(this.dragOptions);

		this.enableClose=true;
		this.closeOptions='';
		this.closeOption=CD_extendDiv.parseSettingOption(this.closeOptions);

		this.enableStack=false;

		this.enableScroll=true;

		/*
			スクロールバーのオプション設定
			disableVertical		: 縦方向のスクロールバーを利用しない
			disableHorizontal	: 横方向のスクロールバーを使用しない
			disableDrag			: ドラッグボタンを使用しない 
			disableArrow		: 矢印ボタンを使用しない
			disableAuto			: スクロールバーを常時表示する
		*/
		this.scrollOptions="";
		this.scrollOption=CD_extendDiv.parseSettingOption(this.scrollOptions);

		this.enableResize=true;

		/* resize limit */
		this.resizeMinWidth=100;
		this.resizeMinHeight=100;
		this.resizeMaxWidth=800;
		this.resizeMaxHeight=800;


		/*object type setting*/
		this.objectType='';
		this.iframeTimer='';
		this.iframeWidth='';
		this.iframeHeight='';
	},

/*=====SCRIPTS=====*/
	Obj:new String(),

	parseSettingOption:function(Vals){
		setting=new Array();
		if(Vals){		
			opt=Vals.split(",");
			for(i=0;i<opt.length;i++){
				setting[opt[i]]=1;
			}
		}
		return setting;
	},

	Load:function(){
		//div object
		var extendObj=document.getElementsByTagName("div");
		var setting='';
		for(var i=0;i<extendObj.length;i++){
			var classVal=extendObj[i].className;
			if(classVal && this.Apply[classVal] && CD_core.getAttribute(extendObj[i],'id')){
				setting=(this.Apply[classVal]!='Default')?window[this.Apply[classVal]]:'';
				this.Set(CD_core.getAttribute(extendObj[i],'id'),setting);
			}
		}
		//iframe object
		var extendIfm=document.getElementsByTagName("iframe");
		for(var i=0;i<extendIfm.length;i++){
			var classVal=extendIfm[i].className;
			if(classVal && this.Apply[classVal] && CD_core.getAttribute(extendIfm[i],'id')){
				setting=(this.Apply[classVal]!='Default')?window[this.Apply[classVal]]:'';
				this.Set(CD_core.getAttribute(extendIfm[i],'id'),setting);
			}
		}
	},


	//Set Global object every given DIV ELEMENT

	//extended DIV ELEMENT Array value=given ID
	extendedIndex:new Number(0),
	extended:new Array(),

	//closed extended DIV ELEMENT Array value=given ID
	closed:new Array(),

	//stacked extended DIV ELEMENT Array value=given ID
	stacked:new Array(),

	//screen control actFlag
	screenControlOvr:new Array(),
	screenControlOut:new Array(),

	//title Array of extended DIV ELEMENT value=given value at function set
	title:new Array(),
	icons:new Array(),

	//configuration setting. set by this.Setting
	Config:new Array(),

	//given element initial positions
	boxElement:new Array(),

	//created box element positions
	givenElement:new Array(),

	tControl:new Array(),		// top controll
	titleBar:new Array(),		// object Screen
	boxScreen:new Array(),		// object Screen
	boxViewArea:new Array(),	// view area
	boxContent:new Array(),		// include base content
	vControl:new Array(),		// vertical controll
	hControl:new Array(),		// horizontal controll
	scrollVerArea:new Array(),		// dragable scroll vertical Area
	scrollVerDrag:new Array(),		// drag scroll vertical button
	scrollHorArea:new Array(),		// dragable scroll horizontal Area
	scrollHorDrag:new Array(),		// drag scroll horizontal button
	resizeBar:new Array(),		// resize area

	//values for Scroll
	arrowScrollTimer:new Object(),	//Timer ID for arrow button click scroll

	scrollStartX:new Array(),	// drag scroll start x position
	scrollStartY:new Array(),	// drag scroll start y position
	scrollAreaWidth:new Array(),	// include base content scroll limit x position
	scrollAreaHeight:new Array(),	// include base content scroll limit y position

	//vaues for Resize
	resizeStartX:new Array(),
	resizeStartY:new Array(),
	resizeDragPerVer:new Array(),
	resizeDragPerHor:new Array(),

	//values for Drag
	dragStartX:new Array(),
	dragStartY:new Array(),

/*==================================================================*/
	initObj:function(obj){
		if(obj){
			this.Obj='';

			this.boxScreen[obj]='';
			this.boxViewArea[obj]='';
			this.boxContent[obj]='';
			this.scrollAreaWidth[obj]='';
			this.scrollAreaHeight[obj]='';

			/*title bar objects*/
			this.tControl[obj]='';
			this.titleBar[obj]='';

			/*scroll bar objects*/
			this.vControl[obj]='';
			this.scrollVerArea[obj]='';
			this.scrollVerDrag[obj]='';

			this.hControl[obj]='';
			this.scrollHorArea[obj]='';
			this.scrollHorDrag[obj]='';

			/*resize dragger objects*/
			this.resizeBar[obj]='';
		}
	},

	getObj:function(obj){
		if(obj){
			this.Obj=obj;

			CD_core.swapDepths(obj,"nextHighestDepth");		

			if($(obj).style.position=="static" || !$(obj).style.position){
				$(obj).style.position="relative";
			}

			this.givenElement[obj]=new CD_core.getPosition($(obj),0,0,0,0,0);

			this.boxScreen[obj]=new CD_core.getPosition($('extendDiv-screen'+obj),0,0,0,0,0);
			this.boxViewArea[obj]=new CD_core.getPosition($('extendDiv-mask'+obj),0,0,0,0,0);
			this.boxContent[obj]=new CD_core.getPosition($('extendDiv-content'+obj),0,0,0,0,0);

			/*title bar objects*/
			if(this.Config[obj].enableDrag || this.Config[obj].enableClose || this.Config[obj].enableStack){
				this.tControl[obj]=new CD_core.getPosition($('extendDiv-tControl'+obj),0,0,0,0,0);
				this.titleBar[obj]=new CD_core.getPosition($('extendDiv-titlebar'+obj),0,0,0,0,0);
			}

			/*scroll bar objects*/
			if(this.Config[obj].enableScroll){
				this.scrollAreaWidth[obj]=this.boxViewArea[obj]._width-($(this.boxContent[obj]._name).clientWidth || $(this.boxContent[obj]._name).offsetWidth);
				this.scrollAreaHeight[obj]=this.boxViewArea[obj]._height-($(this.boxContent[obj]._name).clientHeight || $(this.boxContent[obj]._name).offsetHeight);

				if(this.Config[obj].scrollOption["disableVertical"]!=1){
					this.vControl[obj]=new CD_core.getPosition($('extendDiv-vControl'+obj),0,0,0,0,0);
					this.scrollVerArea[obj]=new CD_core.getPosition($('extendDiv-scrollAreaV'+obj),0,0,0,0,0);
					if(this.Config[obj].scrollOption["disableDrag"]!=1){
						this.scrollVerDrag[obj]=new CD_core.getPosition($('extendDiv-vDragButton'+obj),0,0,0,0,0);
					}
				}

				if(this.Config[obj].scrollOption["disableHorizontal"]!=1){
					this.hControl[obj]=new CD_core.getPosition($('extendDiv-hControl'+obj),0,0,0,0,0);
					this.scrollHorArea[obj]=new CD_core.getPosition($('extendDiv-scrollAreaH'+obj),0,0,0,0,0);
					if(this.Config[obj].scrollOption["disableDrag"]!=1){
						this.scrollHorDrag[obj]=new CD_core.getPosition($('extendDiv-hDragButton'+obj),0,0,0,0,0);
					}
				}
			}

			/*resize dragger objects*/
			if(this.Config[obj].enableResize){
				this.resizeBar[obj]=new CD_core.getPosition($('extendDiv-resizebar'+obj),0,0,0,0,0);
			}
		}
	},

	getBox:function(obj){

		baseStyle=new CD_core.getPosition($(obj),0,0,0,0,0);

		this._name=baseStyle._name;
		this._x=baseStyle._x;
		this._y=baseStyle._y;
		this._width=baseStyle._width;
		this._height=baseStyle._height;

		this._bdT=CD_core.getStyle($(obj),'BorderTopWidth','border-top-width','borderTopWidth');
		this._bdB=CD_core.getStyle($(obj),'BorderBottomWidth','border-bottom-width','borderBottomWidth');
		this._bdL=CD_core.getStyle($(obj),'BorderLeftWidth','border-left-width','borderLeftWidth');
		this._bdR=CD_core.getStyle($(obj),'BorderRightWidth','border-right-width','borderRightWidth');
		this._pdT=CD_core.getStyle($(obj),'PaddingTop','padding-top','paddingTop');
		this._pdB=CD_core.getStyle($(obj),'PaddingBottom','padding-bottom','paddingBottom');
		this._pdL=CD_core.getStyle($(obj),'PaddingLeft','padding-left','paddingLeft');
		this._pdR=CD_core.getStyle($(obj),'PaddingRight','padding-right','paddingRight');

		this._bdT=(this._bdT != undefined)?parseInt(this._bdT):0;
		this._bdB=(this._bdB != undefined)?parseInt(this._bdB):0;
		this._bdL=(this._bdL != undefined)?parseInt(this._bdL):0;
		this._bdR=(this._bdR != undefined)?parseInt(this._bdR):0;
		this._pdT=(this._pdT != undefined)?parseInt(this._pdT):0;
		this._pdB=(this._pdB != undefined)?parseInt(this._pdB):0;
		this._pdL=(this._pdL != undefined)?parseInt(this._pdL):0;
		this._pdR=(this._pdR != undefined)?parseInt(this._pdR):0;

		$(obj).style.paddingTop="0px";
		$(obj).style.paddingBottom="0px";
		$(obj).style.paddingLeft="0px";
		$(obj).style.paddingRight="0px";

		this._width+=(this._pdL+this._pdR);
		this._height+=(this._pdT+this._pdB);

/*
		if(CD_extendDiv.Config[obj].enableDrag || CD_extendDiv.Config[obj].enableClose || CD_extendDiv.Config[obj].enableStack){
			this._height+=CD_extendDiv.Config[obj].topControlSize;
		}
*/
		CD_core.setPosition($(obj),"width",this._width);
		CD_core.setPosition($(obj),"height",this._height);
	},

	Set:function(obj,setting){

		/* load object setting */
		if(!setting){
			this.Config[obj]=new this.Setting();
		}else{
			this.Config[obj]=setting;
			if(this.Config[obj].scrollOptions){
				this.Config[obj].scrollOption=this.parseSettingOption(this.Config[obj].scrollOptions);
			}
			if(this.Config[obj].dragOptions){
				this.Config[obj].dragOption=this.parseSettingOption(this.Config[obj].dragOptions);
			}
		}

		/* base position setting from stylesheets */
		this.boxElement[obj]=new this.getBox(obj);

		/*extendDiv-mask*/
		var viewAreaWidth=this.boxElement[obj]._width

		if(CD.UA.asn=="ie" && CD.UA.appVer==6){
			viewAreaWidth-=this.boxElement[obj]._pdL;
		}else{
			viewAreaWidth-=(this.boxElement[obj]._pdL+this.boxElement[obj]._pdR);
		}

		if((this.Config[obj].enableScroll && this.Config[obj].scrollOption["disableVertical"]!=1) || this.Config[obj].enableResize){
			viewAreaWidth-=this.Config[obj].controlWidth;
		}

		var viewAreaHeight=this.boxElement[obj]._height-(this.boxElement[obj]._pdT+this.boxElement[obj]._pdB);

		if(this.Config[obj].enableDrag || this.Config[obj].enableClose || this.Config[obj].enableStack){
			viewAreaHeight-=this.Config[obj].topControlSize;	// - top control
		}
		if((this.Config[obj].enableScroll && this.Config[obj].scrollOption["disableHorizontal"]!=1) || this.Config[obj].enableResize){
			viewAreaHeight-=this.Config[obj].controlHeight;	// - horizontal control
		}

		/*extendDiv-topControl*/
		var tControlSize=this.boxElement[obj]._width;
		if(this.Config[obj].enableClose){
			tControlSize-=this.Config[obj].controlWidth;
		}
		if(this.Config[obj].enableStack){
			tControlSize-=this.Config[obj].controlWidth;
		}

		/*extendDiv-vControl*/
		var vControlSize=this.boxElement[obj]._height;
		if(this.Config[obj].enableDrag || this.Config[obj].enableClose || this.Config[obj].enableStack){
			vControlSize-=this.Config[obj].topControlSize;	//- top control
		}
		if((this.Config[obj].enableScroll && this.Config[obj].scrollOption["disableHorizontal"]!=1) || this.Config[obj].enableResize){
			vControlSize-=this.Config[obj].controlHeight;	//- horizontal control
		}

		var vScrollArea=vControlSize;
		if(this.Config[obj].enableScroll && this.Config[obj].scrollOption["disableArrow"]!=1){
			vScrollArea-=(this.Config[obj].controlHeight*2);//- vertical arrow
		}

		/*extendDiv-hControl*/
		var hControlSize=this.boxElement[obj]._width;
		if(this.Config[obj].enableResize){
			hControlSize-=this.Config[obj].controlWidth;
		}
		var hScrollArea=hControlSize;
		if(this.Config[obj].enableScroll && this.Config[obj].scrollOption["disableArrow"]!=1){
			hScrollArea-=(this.Config[obj].controlWidth*2);	//- horizontal arrow
		}

		this.Config[obj].resizeMinWidth+=(this.boxElement[obj]._pdL+this.boxElement[obj]._pdR);
		this.Config[obj].resizeMinHeight+=(this.boxElement[obj]._pdT+this.boxElement[obj]._pdB);

		this.Config[obj].arrowScrollFPS=Math.floor(1/(this.Config[obj].arrowScrollFPS)*1000,0);


		var extendMeta=new Array();
		var titleVal=CD_core.getAttribute($(obj),"title");

		if(titleVal){
			if(titleVal.indexOf(":")!=-1){
				extendMeta=titleVal.split(":");
				this.title[obj]=extendMeta[0];
				this.icons[obj]=extendMeta[1];
				CD_core.setAttribute($(obj),"title",extendMeta[0]);
			}else{
				this.title[obj]=titleVal;
			}
		}else{
			this.title[obj]="";
			this.icons[obj]='';
		}
		

		/*getting base HTML sourse*/
		var baseCode='';
		if($(obj).tagName=="DIV"){
			baseCode=$(obj).innerHTML;
			this.Config[obj].objectType="D";
		}
		if($(obj).tagName=="IFRAME"){
			baseCode=CD_core.getAttribute($(obj),"src");
			this.Config[obj].objectType="I";
		}

		/*parse setting*/
		var boxCode='';

		var elemWidth=this.boxElement[obj]._width;

		/*setting style*/
		var nullTagStyle="font-size:1px;line-height:1px;margin:0px;padding:0px;border:none;";
		var unSelectStyle='-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;user-select:none;';

		var boxViewAreaStyle='overflow:hidden;position:relative;float:left;width:'+viewAreaWidth+'px;height:';

		if(CD.UA.asn=="nn"){
			boxViewAreaStyle+=viewAreaHeight+'px;';
		}else{
			boxViewAreaStyle+=(viewAreaHeight-this.boxElement[obj]._pdB)+'px;';
		}

		boxViewAreaStyle+='padding-top:'+this.boxElement[obj]._pdT+'px;padding-bottom:'+this.boxElement[obj]._pdB+'px;padding-left:'+this.boxElement[obj]._pdL+'px;';

		if(CD.UA.asn!="ie"){
			boxViewAreaStyle+='padding-right:'+this.boxElement[obj]._pdR+'px;';
		}

		if(CD.UA.asn!="nn"){
			boxViewAreaStyle+='margin-bottom:'+this.boxElement[obj]._pdB+'px;';
		}

		var boxContentStyle=(CD.UA.asn!="nn")?'position:absolute;':'position:static;';
			if(this.boxElement[obj]._pdT){boxContentStyle+='top:'+this.boxElement[obj]._pdT+'px;'}
			if(this.boxElement[obj]._pdL){boxContentStyle+='left:'+this.boxElement[obj]._pdL+'px;'}

		if((!this.Config[obj].enableScroll || (this.Config[obj].enableScroll && this.Config[obj].scrollOption['disableVertical']!=1)) && !this.Config[obj].enableResize && CD.UA.asn!="ie"){
			boxContentStyle+='padding-right:'+this.boxElement[obj]._pdR+'px;'
		}


		if(this.Config[obj].objectType=="I"){
			boxContentStyle+="width:"+viewAreaWidth+'px;';
			boxContentStyle+="height:"+viewAreaHeight+'px;';
		}

		if(this.Config[obj].enableScroll){
			if(this.Config[obj].scrollOption['disableVertical']!=1){
				var vControlStyle='width:'+this.Config[obj].controlWidth+'px;height:'+vControlSize+'px;float:right;display:inline;';
				vControlStyle+='background-image:url('+this.Config[obj].verticalScrollBar+');background-repeat:repeat-y;'+nullTagStyle+unSelectStyle;

				var scrollAreaVStyle='width:'+this.Config[obj].controlWidth+'px;height:'+vScrollArea+'px;'+unSelectStyle+nullTagStyle;

				if(this.Config[obj].scrollOption['disableArrow']!=1){
					var scrollArrowUStyle='width:'+this.Config[obj].controlWidth+'px;height:'+this.Config[obj].controlHeight+'px;cursor:pointer;'+unSelectStyle;
					scrollArrowUStyle+='background-image:url('+this.Config[obj].arrowUp+');background-position:bottom;background-repeat:no-repeat;'+nullTagStyle;

					var scrollArrowBStyle='width:'+this.Config[obj].controlWidth+'px;height:'+this.Config[obj].controlHeight+'px;cursor:pointer;'+unSelectStyle;
					scrollArrowBStyle+='background-image:url('+this.Config[obj].arrowDw+');background-position:bottom;background-repeat:no-repeat;margin:0px;padding:0px;border:none;'+nullTagStyle;
				}

				if(this.Config[obj].scrollOption['disableDrag']!=1){
					var scrollVerButtonStyle='width:'+this.Config[obj].controlWidth+'px;height:'+this.Config[obj].controlHeight+'px;';
					scrollVerButtonStyle+='background-image:url('+this.Config[obj].verticalScrollButton+');background-position:bottom;background-repeat:no-repeat;cursor:pointer;position:relative;'+nullTagStyle;
				}
			}

			if(this.Config[obj].scrollOption['disableHorizontal']!=1){

				var hControlStyle='width:'+hControlSize+'px;height:15px;float:left;display:inline;';
				hControlStyle+='background-image:url('+this.Config[obj].horizontalScrollBar+');background-repeat:repeat-x;'+nullTagStyle;

				var scrollAreaHStyle='width:'+hScrollArea+'px;height:15px;float:left;'+unSelectStyle+nullTagStyle;

				if(this.Config[obj].scrollOption['disableArrow']!=1){
					var scrollArrowLStyle='width:'+this.Config[obj].controlWidth+'px;height:'+this.Config[obj].controlHeight+'px;cursor:pointer;';
					scrollArrowLStyle+='background-image:url('+this.Config[obj].arrowLeft+');background-position:bottom;background-repeat:no-repeat;'+nullTagStyle;

					var scrollArrowRStyle='width:'+this.Config[obj].controlWidth+'px;height:'+this.Config[obj].controlHeight+'px;cursor:pointer;';
					scrollArrowRStyle+='background-image:url('+this.Config[obj].arrowRight+');background-position:bottom;background-repeat:no-repeat;margin:0px;padding:0px;border:none;'+nullTagStyle;
				}

				if(this.Config[obj].scrollOption['disableDrag']!=1){
					var scrollHorButtonStyle='width:'+this.Config[obj].controlWidth+'px;height:'+this.Config[obj].controlHeight+'px;';
					scrollHorButtonStyle+='background-image:url('+this.Config[obj].horizontalScrollButton+');background-position:right;background-repeat:no-repeat;cursor:pointer;position:relative;'+nullTagStyle;
				}

			}
		}

		if(this.Config[obj].enableResize){
			var resizebarStyle='width:'+this.Config[obj].controlWidth+'px;height:'+this.Config[obj].controlHeight+'px;float:right;';
			resizebarStyle+='background-image:url('+this.Config[obj].resizeButton+');background-position:bottom right;background-repeat:no-repeat;cursor:se-resize;'+nullTagStyle;
		}


		/*create code*/
		//screen
		boxCode+='<div id="extendDiv-screen'+obj+'" style="position:absolute;display:none;'+nullTagStyle+unSelectStyle+';z-index:10;text-align:center;" unselectable="on" onSelectStart="return false;"><br></div>';
		/*
		this.screenControlOvr[obj]=true;
		this.screenControlOut[obj]=false;
		var sControlFlag=' onmouseover="CD_extendDiv.screenControlOut[\''+obj+'\']=false;" onmouseout="CD_extendDiv.screenControlOut[\''+obj+'\']=true;"';
		boxCode+='<div id="extendDiv-sControl'+obj+'" class="extendDivScreenControl" style="position:absolute;display:none;z-index:20;background-color:#fff;text-align:center;width:80%;margin:20px auto;"'+sControlFlag+'><ul style="display:inline;list-style-tyoe:none;margin:0px;padding:0px;">';
		boxCode+='<li style="display:inline;list-style-tyoe:none;"><a href="JavaScript:void(0);return false;" onclick="CD_extendDiv.closeElement(\''+obj+'\')"><img src="image/closebutton2.gif" border="0"'+sControlFlag+'></a></li>';
		boxCode+='<li style="display:inline;list-style-tyoe:none;"><a href="JavaScript:void(0);return false;" onclick="CD_extendDiv.stackElement(\''+obj+'\')"><img src="image/stackbutton.gif" border="0"'+sControlFlag+'></a></li>';
		boxCode+='</ul></div>';
		*/

		//topcontroll	
		if(this.Config[obj].enableDrag || this.Config[obj].enableClose || this.Config[obj].enableStack){
			boxCode+='<div id="extendDiv-tControl'+obj+'" class="clearfix" style="width:'+elemWidth+'px;height:'+this.Config[obj].topControlSize+'px;margin:0px;padding:0px;border:none;line-height:0;';
			boxCode+='background-image:url('+this.Config[obj].dragBar+');">';
			boxCode+='<div id="extendDiv-titlebar'+obj+'" style="width:'+tControlSize+'px;height:'+this.Config[obj].topControlSize+'px;float:left;margin:0px;padding:0px;border:none;line-height:0;';
			if(this.Config[obj].enableDrag)boxCode+='cursor:move;" onmousedown="CD_extendDiv.startDrag(\''+obj+'\')" onmouseup="CD_extendDiv.stopDrag(\''+obj+'\');';
			boxCode+='">';
			boxCode+='<div style="width:100%;height:'+this.Config[obj].topControlSize+'px;float:left;overflow:hidden;'+unSelectStyle+'"';
			boxCode+='class="'+this.Config[obj].titleFont+'" unselectable="on" onSelectStart="return false;">'+this.title[obj]+'</div></div>';

			if(this.Config[obj].enableStack){
				boxCode+='<div id="extendDiv-task'+obj+'" style="width:'+this.Config[obj].controlWidth+'px;height:'+this.Config[obj].topControlSize+'px;float:left;display:inline;'+nullTagStyle;
				boxCode+='background-image:url('+this.Config[obj].stackButton+');background-repeat:no-repeat;cursor:pointer;" onmousedown="CD_extendDiv.stackElement(\''+obj+'\')"><br></div>';
			}

			if(this.Config[obj].enableClose){
				boxCode+='<div id="extendDiv-close'+obj+'" style="width:'+this.Config[obj].controlWidth+'px;height:'+this.Config[obj].topControlSize+'px;float:left;display:inline;'+nullTagStyle;
				boxCode+='background-image:url('+this.Config[obj].closeButton+');background-repeat:no-repeat;cursor:pointer;" onmouseup="CD_extendDiv.closeElementAlert(\''+obj+'\',\'';
				if(this.Config[obj].closeOption['remove']){
					boxCode+='remove';
				}else if(this.Config[obj].closeOption['display']){
					boxCode+='display';
				}else{
					boxCode+='default';
				}
				boxCode+='\')"></div>';
			}
			boxCode+='</div>';
			//boxCode+='<div class="CDclear"></div>';
		}

		//content
		boxCode+='<div id="extendDiv-mask'+obj+'" style="'+boxViewAreaStyle+'">';

		if(this.Config[obj].objectType=="D"){
			boxCode+='<div id="extendDiv-content'+obj+'" style="'+boxContentStyle+'">'+baseCode+'</div></div>';
		}else{
			boxCode+='<iframe id="extendDiv-content'+obj+'" name="extendDiv-content'+obj+'" style="'+boxContentStyle+'" src="'+baseCode+'" scrolling="no" frameborder="0"';
			//boxCode+=' onload="CD_extendDiv.getIframeSize('+obj+')"';
			boxCode+='></iframe>';
			boxCode+='</div>';
		}

		//vertical scroll bar
		if(this.Config[obj].enableScroll && this.Config[obj].scrollOption['disableVertical']!=1){
			boxCode+='<div id="extendDiv-vControl'+obj+'" style="'+vControlStyle+'">';
			if(this.Config[obj].scrollOption['disableArrow']!=1){
				boxCode+='<div id="extendDiv-scrollArrowU'+obj+'" style="'+scrollArrowUStyle+'"><img src="'+this.Config[obj].arrowUp+'" onmousedown="CD_extendDiv.startArrowScroll(\''+obj+'\',\'up\')" onmouseup="CD_extendDiv.stopArrowScroll(\''+obj+'\')" style="'+unSelectStyle+'"></div>';
			}
			boxCode+='<div id="extendDiv-scrollAreaV'+obj+'" style="'+scrollAreaVStyle+'" unselectable="on" onSelectStart="return false;">';
			if(this.Config[obj].scrollOption['disableDrag']!=1){
				boxCode+='<div id="extendDiv-vDragButton'+obj+'" style="'+scrollVerButtonStyle+'" onmousedown="CD_extendDiv.startDragScroll(\''+obj+'\',\'vertical\')" onmouseup="CD_extendDiv.stopDragScroll(\''+obj+'\')"><br></div>';
			}
			boxCode+='</div>';
			if(this.Config[obj].scrollOption['disableArrow']!=1){
				boxCode+='<div id="extendDiv-scrollArrowB'+obj+'" style="'+scrollArrowBStyle+'"><img src="'+this.Config[obj].arrowDw+'" onmousedown="CD_extendDiv.startArrowScroll(\''+obj+'\',\'dw\')" onmouseup="CD_extendDiv.stopArrowScroll(\''+obj+'\')" style="'+unSelectStyle+'"></div>';
			}
			boxCode+='</div>';
		}

		//horizontal scroll bar
		if(this.Config[obj].enableScroll && this.Config[obj].scrollOption['disableHorizontal']!=1){
			boxCode+='<div id="extendDiv-hControl'+obj+'" style="'+hControlStyle+'">';
			if(this.Config[obj].scrollOption['disableArrow']!=1){
				boxCode+='<div id="extendDiv-scrollArrowL'+obj+'" style="'+scrollArrowLStyle+'float:left;" onmousedown="CD_extendDiv.startArrowScroll(\''+obj+'\',\'left\')" onmouseup="CD_extendDiv.stopArrowScroll(\''+obj+'\')"><br></div>';
			}
			boxCode+='<div id="extendDiv-scrollAreaH'+obj+'" style="'+scrollAreaHStyle+';" unselectable="on" onSelectStart="return false;">';
			if(this.Config[obj].scrollOption['disableDrag']!=1){
				boxCode+='<div id="extendDiv-hDragButton'+obj+'" style="'+scrollHorButtonStyle+'" onmousedown="CD_extendDiv.startDragScroll(\''+obj+'\',\'horizontal\')" onmouseup="CD_extendDiv.stopDragScroll(\''+obj+'\')"><br></div>';
			}
			boxCode+='</div>';
			if(this.Config[obj].scrollOption['disableArrow']!=1){
				boxCode+='<div id="extendDiv-scrollArrowR'+obj+'" style="'+scrollArrowRStyle+'float:left;" onmousedown="CD_extendDiv.startArrowScroll(\''+obj+'\',\'right\')" onmouseup="CD_extendDiv.stopArrowScroll(\''+obj+'\')"><br></div>';
			}
			boxCode+='</div>';
		}

		//resize bar
		if(this.Config[obj].enableResize){
			boxCode+='<div id="extendDiv-resizebar'+obj+'" style="'+resizebarStyle+'float:right;" onmousedown="CD_extendDiv.startResize(\''+obj+'\')" onmouseup="CD_extendDiv.stopResize(\''+obj+'\')">';
			boxCode+='<span style="width:15px;height:15px;'+nullTagStyle+unSelectStyle+'" unselectable="on" onSelectStart="return false;"><br></span></div>';
		}

		boxCode+='<div class="CDclear"></div>';

		boxCode=CD_core.chomp(boxCode);

		if(this.Config[obj].objectType=="D"){
			$(obj).innerHTML=boxCode;
		}else{
			var newElem=document.createElement("div");
			var objClass=$(obj).className;
			var objStyle=CD_core.getAttribute($(obj),'style');
			$(obj).parentNode.insertBefore(newElem,$(obj));
			$(obj).parentNode.removeChild($(obj));
			CD_core.setAttribute(newElem,"id",obj);
			$(obj).className=objClass;
			CD_core.setAttribute($(obj),'style','width:'+this.boxElement[obj]._width+'px;height:'+this.boxElement[obj]._height+';'+objStyle);
			this.boxElement[obj]=new this.getBox(obj);
			$(obj).innerHTML=boxCode;
/*
			this.Config[obj].iframeTimer=setTimeout("CD_extendDiv.getIframeSize('"+obj+"')",0);
			CD_core.addEvent($("extendDiv-content"+obj),"load",function(){
				CD_extendDiv.getIframeSize(CD_core.getAttribute(this.parentNode.parentNode,'id'));
			});
*/
		}

		if(this.Config[obj].objectType=="D"){
			if(this.Config[obj].enableScroll && this.Config[obj].scrollOption['disableAuto']!=1){
				if(viewAreaHeight-($("extendDiv-content"+obj).clientHeight || $("extendDiv-content"+obj).offsetHeight)>=0 && $("extendDiv-vControl"+obj)){
					//$("extendDiv-vControl"+obj).style.display="none";
					$("extendDiv-vControl"+obj).style.visibility="hidden";
				}
				if(viewAreaWidth+this.boxElement[obj]._pdR-($("extendDiv-content"+obj).clientWidth || $("extendDiv-content"+obj).offsetWidth)>=0 && $("extendDiv-hControl"+obj)){
					$("extendDiv-hControl"+obj).style.display="none";
				}
			}
		}

		//add extended object array
		this.extended[this.extendedIndex]=obj;
		this.extendedIndex++;

		if(this.Config[obj].enableDrag || this.Config[obj].enableResize || this.Config[obj].enableStack){
			CD_core.addEvent($(obj),'mousedown',function nextHighestDepth(){
				CD_core.swapDepths(obj,'nextHighestDepth');
				if(CD_extendDiv.Config[obj].objectType==i){
					$('extendDiv-content'+obj).contentWindow.location.reload();
				}
			});

			if(this.Config[obj].dragOption['enableBoxDrag']){
				CD_core.addEvent($("extendDiv-content"+obj),'mouseover',function viewDragCursor(){
					$(obj).style.cursor="move";
				});
				CD_core.addEvent($("extendDiv-content"+obj),'mousedown',function startBoxDrag(){
					CD_extendDiv.startDrag(obj);
				});
				CD_core.addEvent($("extendDiv-screen"+obj),'mouseup',function stopBoxDrag(){
					CD_extendDiv.stopDrag(obj);
				});
			}

			/*
			CD_core.addEvent($("extendDiv-content"+obj),'mouseover',function showScreenControll(){
				if(CD_extendDiv.screenControlOvr[obj]){
					$("extendDiv-screen"+obj).style.display="block";
					CD_core.setPosition($("extendDiv-screen"+obj),"width",parseInt($(obj).style.width)-CD_extendDiv.Config[obj].controlWidth-30);
					CD_core.setPosition($("extendDiv-screen"+obj),"height",parseInt($(obj).style.height)-CD_extendDiv.Config[obj].controlHeight-CD_extendDiv.Config[obj].topControlSize-30);
					$("extendDiv-screen"+obj).style.marginTop=(CD_extendDiv.Config[obj].topControlSize+15)+"px";
					$("extendDiv-screen"+obj).style.marginLeft="15px";

					$("extendDiv-sControl"+obj).style.display="block";
					CD_core.setPosition($("extendDiv-sControl"+obj),"width",120);
					CD_core.setPosition($("extendDiv-sControl"+obj),"height",60);
				}
			});

			CD_core.addEvent($("extendDiv-screen"+obj),'mouseover',function showScreenControll(){
				if(CD_extendDiv.screenControlOvr[obj]){
					CD_extendDiv.screenControlOvr[obj]=false;
					CD_extendDiv.screenControlOut[obj]=true;
				}
			});

			CD_core.addEvent($("extendDiv-mask"+obj),'mouseout',function hideScreenControll(){
				if(CD_extendDiv.screenControlOut[obj]){
					$("extendDiv-sControl"+obj).style.display="none";
					CD_extendDiv.screenControlOvr[obj]=true;
					CD_extendDiv.screenControlOut[obj]=false;

					$("extendDiv-screen"+obj).style.display="none";
					$("extendDiv-screen"+obj).style.marginTop="0px";
					$("extendDiv-screen"+obj).style.marginLeft="0px";
					CD_extendDiv.screenControlOvr[obj]=true;
					CD_extendDiv.screenControlOut[obj]=false;
				}
			});
			*/
		}
	},

	getIframeSize:function(obj){
		if(typeof(obj)!="string")obj=CD_core.getAttribute(obj,"id");
		var ifm=$('extendDiv-content'+obj);
		if(ifm && ifm.contentWindow.document.documentElement){
			this.Config[obj].iframeWidth=ifm.contentWindow.document.documentElement.scrollWidth;
			this.Config[obj].iframeHeight=ifm.contentWindow.document.documentElement.scrollHeight;
			if(this.Config[obj].iframeWidth>ifm.clientWidth && this.Config[obj].iframeHeight>ifm.clientHeight){
				ifm.style.width=this.Config[obj].iframeWidth+"px";
				ifm.style.height=this.Config[obj].iframeHeight+"px";
				clearTimeout(this.Config[obj].iframeTimer);
				CD_core.addEvent(ifm,"load",function(){
					this.style.width="0px";
					this.style.height="0px";
					CD_extendDiv.getIframeSize(this.parentNode.parentNode.id);
				});
			}else{
				this.Config[obj].iframeTimer=setTimeout("CD_extendDiv.getIframeSize('"+obj+"')",0);
			}
		 }else{
    		this.Config[obj].iframeTimer=setTimeout("CD_extendDiv.getIframeSize('"+obj+"')",0);
 		}
	},


/*-----------------------------------------------------------------
	scroll Method
-----------------------------------------------------------------*/
/*_____Drag scroll_____*/
	startDragScroll:function(obj,vect){
		this.getObj(obj);

		/*for nn*/
		if(obj && CD.UA.asn=="nn"){
			$(this.boxContent[obj]._name).style.position="absolute";
			/*
				$(this.boxContent[obj]._name).style.top=this.boxElement[obj]._pdT+"px";
				$(this.boxContent[obj]._name).style.left=this.boxElement[obj]._pdL+"px";
			*/
		}

		this.scrollStartX[obj]=CD._mouseX;
		this.scrollStartY[obj]=CD._mouseY;

		scrollStartDrag=function(){
			CD_extendDiv.dragScroll(CD_extendDiv.Obj,vect);
			if(!CD_extendDiv.Obj){
				CD_core.delEvent(document,"mousemove",scrollStartDrag);
			}
		}

 		scrollStopDrag=function(){
			CD_extendDiv.stopDragScroll(CD_extendDiv.Obj);
			if(!CD_extendDiv.Obj){
				CD_core.delEvent(document,"mouseup",scrollStopDrag);
			}
		}

		CD_core.addEvent(document,"mousemove",scrollStartDrag);
		CD_core.addEvent(document,"mouseup",scrollStopDrag);
	},

	stopDragScroll:function(obj){
		CD_core.delEvent(document,"mousemove",CD_extendDiv.startDragScroll.scrollStartDrag);
		CD_core.delEvent(document,"mousemove",CD_extendDiv.startDragScroll.scrollStopDrag);
		this.initObj(obj);
	},

	dragScroll:function(obj,vect){
		if(obj && this.scrollAreaHeight[obj]<0){
			if(vect=="vertical"){
				var moveY=this.scrollVerDrag[obj]._y+CD._mouseY-this.scrollStartY[obj];
				if(moveY>=0 && moveY<=this.scrollVerArea[obj]._height-this.scrollVerDrag[obj]._height){
					CD_core.setPosition($(this.scrollVerDrag[obj]._name),"y",moveY);
					CD_core.setPosition($(this.boxContent[obj]._name),"y",Math.floor(moveY/(this.scrollVerArea[obj]._height-this.scrollVerDrag[obj]._height)*this.scrollAreaHeight[obj])+this.boxElement[obj]._pdT);
				}else{
					if(moveY<0){
						CD_core.setPosition($(this.scrollVerDrag[obj]._name),"y",0);
						CD_core.setPosition($(this.boxContent[obj]._name),"y",this.boxElement[obj]._pdT);
					}
					if(moveY>this.scrollVerArea[obj]._height-this.scrollVerDrag[obj]._height){
						CD_core.setPosition($(this.scrollVerDrag[obj]._name),"y",this.scrollVerArea[obj]._height-this.scrollVerDrag[obj]._height);
						CD_core.setPosition($(this.boxContent[obj]._name),"y",this.scrollAreaHeight[obj]+this.boxElement[obj]._pdT);
					}
				}
			}
		}
		if(obj && this.scrollAreaWidth[obj]<0){
			if(vect=="horizontal"){
				var moveX=this.scrollHorDrag[obj]._x+CD._mouseX-this.scrollStartX[obj];
				if(moveX>=0 && moveX<=this.scrollHorArea[obj]._width-this.scrollHorDrag[obj]._width){
					CD_core.setPosition($(this.scrollHorDrag[obj]._name),"x",moveX);
					CD_core.setPosition($(this.boxContent[obj]._name),"x",Math.floor(moveX/(this.scrollHorArea[obj]._width-this.scrollHorDrag[obj]._width)*this.scrollAreaWidth[obj])+this.boxElement[obj]._pdL);
				}else{
					if(moveX<0){
						CD_core.setPosition($(this.scrollHorDrag[obj]._name),"x",0);
						CD_core.setPosition($(this.boxContent[obj]._name),"x",this.boxElement[obj]._pdL);
					}
					if(moveX>this.scrollHorArea[obj]._width-this.scrollHorDrag[obj]._width){
						CD_core.setPosition($(this.scrollHorDrag[obj]._name),"x",this.scrollHorArea[obj]._width-this.scrollHorDrag[obj]._width);
						CD_core.setPosition($(this.boxContent[obj]._name),"x",this.scrollAreaWidth[obj]+this.boxElement[obj]._pdL);
					}
				}
			}
		}
	},

/*_____Arrow scroll_____*/
	startArrowScroll:function(obj,vect){
		this.getObj(obj);

		/*for nn*/
		if(obj && CD.UA.asn=="nn"){
			$(this.boxContent[obj]._name).style.position="absolute";
			/*
				$(this.boxContent[obj]._name).style.top=this.boxElement[obj]._pdT+"px";
				$(this.boxContent[obj]._name).style.left=this.boxElement[obj]._pdL+"px";
			*/
		}

		startScroll=function(obj,vect){
			CD_extendDiv.arrowScroll(obj,vect);
		}

		scrollArrow=function(){
			CD_extendDiv.stopArrowScroll(CD_extendDiv.Obj);
			if(!CD_extendDiv.Obj){
				CD_core.delEvent(document,"mouseup",scrollArrow);
			}
		}

		this.arrowScrollTimer=setInterval("startScroll('"+obj+"','"+vect+"')",this.Config[obj].arrowScrollFPS);
		CD_core.addEvent(document,"mouseup",scrollArrow);
	},

	stopArrowScroll:function(obj){
		if(obj){
			CD_core.delEvent(document,"mouseup",CD_extendDiv.startArrowScroll.scrollArrow);
			clearInterval(this.arrowScrollTimer);
			this.initObj(obj);
		}
	},

	arrowScroll:function(obj,vect){
		//vertical scroll
		if(obj && this.scrollAreaHeight[obj]<0){
			var scrollY=parseInt($(this.boxContent[obj]._name).style.top.replace(/px/,''));
			scrollY=(!scrollY)?0:scrollY;
			if(vect=="dw"){
				scrollY-=this.Config[obj].arrowScrollDPF;
				if(scrollY<this.scrollAreaHeight[obj]+this.boxElement[obj]._pdT && scrollY<this.boxElement[obj]._pdB){
					CD_core.setPosition($(this.boxContent[obj]._name),"y",this.scrollAreaHeight[obj]+this.boxElement[obj]._pdT);
					this.vDragButton(obj)
					this.stopArrowScroll(obj);
				}else{
					CD_core.setPosition($(this.boxContent[obj]._name),"y",scrollY);
					this.vDragButton(obj);
				}
			}else if(vect=="up"){
				scrollY+=this.Config[obj].arrowScrollDPF;
				if(scrollY>this.boxElement[obj]._pdT){
					CD_core.setPosition($(this.boxContent[obj]._name),"y",this.boxElement[obj]._pdT);
					this.vDragButton(obj);
					this.stopArrowScroll(obj);
				}else{
					CD_core.setPosition($(this.boxContent[obj]._name),"y",scrollY);
					this.vDragButton(obj);
				}
			}
		}
		//horizontal scroll
		if(obj && this.scrollAreaWidth[obj]<0){
			var scrollX=parseInt($(this.boxContent[obj]._name).style.left.replace(/px/,''));
			scrollX=(!scrollX)?0:scrollX;
			if(vect=="right"){
				scrollX-=this.Config[obj].arrowScrollDPF;
				if(scrollX<this.scrollAreaWidth[obj]+this.boxElement[obj]._pdL && scrollX<this.boxElement[obj]._pdR){
					CD_core.setPosition($(this.boxContent[obj]._name),"x",this.scrollAreaWidth[obj]+this.boxElement[obj]._pdL);
					this.hDragButton(obj)
					this.stopArrowScroll(obj);
				}else{
					CD_core.setPosition($(this.boxContent[obj]._name),"x",scrollX);
					this.hDragButton(obj);
				}
			}else if(vect=="left"){
				scrollX+=this.Config[obj].arrowScrollDPF;
				if(scrollX>this.boxElement[obj]._pdL){
					CD_core.setPosition($(this.boxContent[obj]._name),"x",this.boxElement[obj]._pdL);
					this.hDragButton(obj);
					this.stopArrowScroll(obj);
				}else{
					CD_core.setPosition($(this.boxContent[obj]._name),"x",scrollX);
					this.hDragButton(obj);
				}
			}
		}
	},

	vDragButton:function(obj){
		if(this.Config[obj].scrollOption["disableDrag"]!=1){
			var objPosPer=Math.floor((parseInt($(this.boxContent[obj]._name).style.top.replace(/px/,""))-this.boxElement[obj]._pdT)/(this.scrollAreaHeight[obj])*100);
			objPosPer=objPosPer/100;
			CD_core.setPosition($(this.scrollVerDrag[obj]._name),"y",Math.floor((this.scrollVerArea[obj]._height-this.scrollVerDrag[obj]._height)*objPosPer));
		}
	},

	hDragButton:function(obj){
		if(this.Config[obj].scrollOption["disableDrag"]!=1){
			var objPosPer=Math.floor((parseInt($(this.boxContent[obj]._name).style.left.replace(/px/,""))-this.boxElement[obj]._pdL)/(this.scrollAreaWidth[obj])*100);
			objPosPer=objPosPer/100;
			CD_core.setPosition($(this.scrollHorDrag[obj]._name),"x",Math.floor((this.scrollHorArea[obj]._width-this.scrollHorDrag[obj]._width)*objPosPer));
		}
	},

/*-----------------------------------------------------------------
	resize Method
-----------------------------------------------------------------*/

	parentDiv:new Object(),
	extendedStartOffsetX:new Array(),
	extendedStartOffsetY:new Array(),
	parentHighLight:new Array(),

	startResize:function(obj){
		this.getObj(obj);
		//this.setOffsetParent(obj);
		//CD_core.setAlpha(obj,80);

		this.resizeStartX[obj]=CD._mouseX;
		this.resizeStartY[obj]=CD._mouseY;

		/*screen_set*/
		$(this.boxScreen[obj]._name).style.display="block";
		CD_core.setPosition($(this.boxScreen[obj]._name),"width",this.givenElement[obj]._width-this.Config[obj].controlWidth);
		CD_core.setPosition($(this.boxScreen[obj]._name),"height",this.givenElement[obj]._height-this.Config[obj].controlHeight);

		for(i=0;i<this.extended.length;i++){
			if($(this.extended[i]).parentNode==$(obj).parentNode){
				if($(this.extended[i]).style.position=="static" || !$(this.extended[i]).style.position || CD.UA.asn=="nn"){
					$(this.extended[i]).style.position="relative";
				}
				if(CD_core.getStyle($(this.extended[i]),"Left","left","left")=="undefined" || CD_core.getStyle($(this.extended[i]),"Left","left","left")==''){
					CD_core.setPosition($(this.extended[i]),"x",0);
				}
				if(CD_core.getStyle($(this.extended[i]),"Top","top","top")=="undefined" || CD_core.getStyle($(this.extended[i]),"Top","top","top")==''){
					CD_core.setPosition($(this.extended[i]),"y",0);
				}

				/*screen_set*/
				$("extendDiv-screen"+this.extended[i]).style.display="block";
				CD_core.setPosition($("extendDiv-screen"+this.extended[i]),"width",parseInt(CD_core.getStyle($(this.extended[i]),"Width","width","width"))-this.Config[obj].controlWidth);
				CD_core.setPosition($("extendDiv-screen"+this.extended[i]),"height",parseInt(CD_core.getStyle($(this.extended[i]),"Height","height","height"))-this.Config[obj].controlHeight);
				CD_core.setAlpha("extendDiv-screen"+this.extended[i],0);

				/*drag select cancel*/
				$('extendDiv-content'+this.extended[i]).onselectstart="return false";
				$('extendDiv-content'+this.extended[i]).style.mozUserSelect="none";
				$('extendDiv-content'+this.extended[i]).style.webkitUserSelect="none";
				$('extendDiv-content'+this.extended[i]).style.userSelect="none";

				this.extendedStartOffsetX[this.extended[i]]=$(this.extended[i]).offsetLeft;
				this.extendedStartOffsetY[this.extended[i]]=$(this.extended[i]).offsetTop;
			}
		}

		if(this.Config[obj].enableScroll && this.Config[obj].scrollOption['disableDrag']!=1){
			this.resizeDragPerVer[obj]=this.scrollVerDrag[obj]._y/this.scrollVerArea[obj]._height;
			this.resizeDragPerHor[obj]=this.scrollHorDrag[obj]._x/this.scrollHorArea[obj]._width;
		}

		startResizeDrag=function(e){
			CD_extendDiv.dragResize(CD_extendDiv.Obj);

			if(e.preventDefault){
				//e.preventDefault();
				e.stopPropagation();
			}else{
				//e.returnValue = false;
				e.cancelBubble = true;
			}

			if(!CD_extendDiv.Obj){
				CD_core.delEvent(document,"mousemove",startResizeDrag);
			}
		}

		stopResizeDrag=function(){
			CD_extendDiv.stopResize(CD_extendDiv.Obj);
			if(!CD_extendDiv.Obj){
				CD_core.delEvent(document,"mouseup",stopResizeDrag);
			}
		}

		CD_core.addEvent(document,"mousemove",startResizeDrag);
		CD_core.addEvent(document,"mouseup",stopResizeDrag);
	},

	stopResize:function(obj){
		if(obj){
			//this.resetOffsetParent(obj);
			//CD_core.setAlpha(obj,100);
			this.unlockExtended(obj)
			CD_core.delEvent(document,"mousemove",CD_extendDiv.startResize.startResizeDrag);
			CD_core.delEvent(document,"mouseup",CD_extendDiv.startResize.stopResizeDrag);
			this.initObj(obj);
		}
	},

	dragResize:function(obj){
		if(obj){

			var moveX=CD._mouseX-this.resizeStartX[obj];
			var moveY=CD._mouseY-this.resizeStartY[obj];
			var targetWidth=this.givenElement[obj]._width+moveX;
			var targetHeight=this.givenElement[obj]._height+moveY;

			if(targetWidth>this.Config[obj].resizeMinWidth  && targetWidth<this.Config[obj].resizeMaxWidth){
				CD_core.setPosition($(obj),"width",targetWidth);
				CD_core.setPosition($(this.boxViewArea[obj]._name),"width",(this.boxViewArea[obj]._width+moveX));
				CD_core.setPosition($(this.boxScreen[obj]._name),"width",(this.givenElement[obj]._width+moveX-this.Config[obj].controlWidth));

				if(this.Config[obj].enableDrag || this.Config[obj].enableClose || this.Config[obj].enableStack){
					CD_core.setPosition($(this.tControl[obj]._name),"width",(this.tControl[obj]._width+moveX));
					CD_core.setPosition($(this.titleBar[obj]._name),"width",(this.titleBar[obj]._width+moveX));
				}

				//CD_core.setPosition($(this.boxContent[obj]._name),"width",(this.boxContent[obj]._width+moveX));
			
				if(this.Config[obj].enableScroll && this.Config[obj].scrollOption['disableHorizontal']!=1){
					CD_core.setPosition($(this.hControl[obj]._name),"width",(this.hControl[obj]._width+moveX));
					CD_core.setPosition($(this.scrollHorArea[obj]._name),"width",(this.scrollHorArea[obj]._width+moveX));
					if(this.Config[obj].scrollOption['disableDrag']!=1){
						var areaScrollX=parseInt($(this.scrollHorArea[obj]._name).style.width.replace(/px/,''));
						var dragScrollX=Math.floor((this.resizeDragPerHor[obj]*areaScrollX),0);

						if(dragScrollX<0){
							CD_core.setPosition($(this.scrollHorDrag[obj]._name),"x",0);
						}else if(dragScrollX>areaScrollX){
							CD_core.setPosition($(this.scrollHorDrag[obj]._name),"x",areaScrollX);
						}else{
							CD_core.setPosition($(this.scrollHorDrag[obj]._name),"x",dragScrollX);
						}
					}
				}

			}

			if(targetHeight>this.Config[obj].resizeMinHeight && targetHeight<this.Config[obj].resizeMaxHeight){
				CD_core.setPosition($(obj),"height",targetHeight);
				CD_core.setPosition($(this.boxViewArea[obj]._name),"height",(this.boxViewArea[obj]._height+moveY));
				CD_core.setPosition($(this.boxScreen[obj]._name),"height",(this.givenElement[obj]._height+moveY-this.Config[obj].controlHeight));
				//CD_core.setPosition($(this.boxContent[obj]._name),"height",(this.boxContent[obj]._height+moveY));

				if(this.Config[obj].enableScroll && this.Config[obj].scrollOption['disableVertical']!=1){
					CD_core.setPosition($(this.vControl[obj]._name),"height",(this.vControl[obj]._height+moveY));
					CD_core.setPosition($(this.scrollVerArea[obj]._name),"height",(this.scrollVerArea[obj]._height+moveY));

					if(this.Config[obj].scrollOption['disableDrag']!=1){
						var areaScrollY=parseInt($(this.scrollVerArea[obj]._name).style.height.replace(/px/,''));
						var dragScrollY=Math.floor((this.resizeDragPerVer[obj]*areaScrollY),0);

						if(dragScrollY<0){
							CD_core.setPosition($(this.scrollVerDrag[obj]._name),"y",0);
						}else if(dragScrollY>areaScrollY){
							CD_core.setPosition($(this.scrollVerDrag[obj]._name),"y",areaScrollY);
						}else{
							CD_core.setPosition($(this.scrollVerDrag[obj]._name),"y",dragScrollY);
						}
					}
				}
			}

			if(this.Config[obj].enableScroll){
				if(this.Config[obj].scrollOption['disableVertical']!=1){
					if((parseInt($(this.boxViewArea[obj]._name).style.height.replace(/px/,''))-($(this.boxContent[obj]._name).clientHeight||$(this.boxContent[obj]._name).offsetHeight))<0){
						//if($(this.vControl[obj]._name).style.display=="none")$(this.vControl[obj]._name).style.display="inline";
						if($(this.vControl[obj]._name).style.visibility=="hidden")$(this.vControl[obj]._name).style.visibility="visible";
					}else{
						CD_core.setPosition($(this.boxContent[obj]._name),"y",this.boxElement[obj]._pdT);
						//$(this.vControl[obj]._name).style.display="none";
						$(this.vControl[obj]._name).style.visibility="hidden";
					}
				}
				if(this.Config[obj].scrollOption['disableHorizontal']!=1){
					if((parseInt($(this.boxViewArea[obj]._name).style.width.replace(/px/,''))+this.boxElement[obj]._pdR-($(this.boxContent[obj]._name).clientWidth||$(this.boxContent[obj]._name).offsetWidth))<0){
						if($(this.hControl[obj]._name).style.display=="none"){
							$(this.hControl[obj]._name).style.display="inline";
						}
					}else{
						CD_core.setPosition($(this.boxContent[obj]._name),"x",this.boxElement[obj]._pdL);
						$(this.hControl[obj]._name).style.display="none";
					}
				}
			}

			this.lockExtended(obj);
			/*
			CD_core.setPosition($(obj).parentNode,"width",this.parentDiv._width);
			CD_core.setPosition($(obj).parentNode,"height",this.parentDiv._height);
			*/
		}
	},


	lockExtended:function(obj){
		var divs=new Array();
		var offsetMoveX=0;
		var offsetMoveY=0;
		for(i=0;i<this.extended.length;i++){		
			if($(this.extended[i]).parentNode==$(obj).parentNode){

				divs[this.extended[i]]=new CD_core.getPosition($(this.extended[i]),0,0,0,0,0);
				offsetMoveX=this.extendedStartOffsetX[this.extended[i]]-$(this.extended[i]).offsetLeft;
				offsetMoveY=this.extendedStartOffsetY[this.extended[i]]-$(this.extended[i]).offsetTop;

				CD_core.setPosition($(this.extended[i]),"x",(divs[this.extended[i]]._x+offsetMoveX));
				CD_core.setPosition($(this.extended[i]),"y",(divs[this.extended[i]]._y+offsetMoveY));
			}
		}
	},

	unlockExtended:function(obj){
		for(i=0;i<this.extended.length;i++){		
			if($(this.extended[i]).parentNode==$(obj).parentNode){
				/*screen set*/
				$("extendDiv-screen"+this.extended[i]).style.display="none";

				/*drag select enable*/
				$('extendDiv-content'+this.extended[i]).onselectstart="return true";
				$('extendDiv-content'+this.extended[i]).style.mozUserSelect="all";
				$('extendDiv-content'+this.extended[i]).style.webkitUserSelect="auto";
				$('extendDiv-content'+this.extended[i]).style.userSelect="auto";
			}
		}
	},

/*-----------------------------------------------------------------
	dragMove Method
-----------------------------------------------------------------*/

	startDrag:function(obj){
		var posCheck=(!$(obj).style.position || $(obj).style.position=="static")?0:1;

		//this.setOffsetParent(obj);
		//CD_core.setAlpha(obj,80);

		this.getObj(obj);
		if(!posCheck){
			this.givenElement[obj]._x=0;
			this.givenElement[obj]._y=0;
		}

		/*screen_set*/
		$(this.boxScreen[obj]._name).style.display="block";
		CD_core.setPosition($(this.boxScreen[obj]._name),"width",this.givenElement[obj]._width-this.Config[obj].controlWidth);
		CD_core.setPosition($(this.boxScreen[obj]._name),"height",this.givenElement[obj]._height-this.Config[obj].controlHeight);

		this.dragStartX[obj]=CD._mouseX;
		this.dragStartY[obj]=CD._mouseY;

		startMoveDrag=function(){
			CD_extendDiv.dragElement(CD_extendDiv.Obj);
			if(!CD_extendDiv.Obj){
				CD_core.delEvent(document,"mousemove",startMoveDrag);
			}
		}

		stopMoveDrag=function(){
			CD_extendDiv.stopDrag(CD_extendDiv.Obj);
			if(!CD_extendDiv.Obj){
				CD_core.delEvent(document,"mouseup",stopMoveDrag);
			}
		}

		CD_core.addEvent(document,"mousemove",startMoveDrag);
		CD_core.addEvent(document,"mouseup",stopMoveDrag);
	},

	stopDrag:function(obj){
		if(obj){
			//this.resetOffsetParent(obj);
			//CD_core.setAlpha(obj,100);
			//$(this.boxScreen[obj]._name).style.display="none";
			$("extendDiv-screen"+obj).style.display="none";
			CD_core.delEvent(document,"mousemove",CD_extendDiv.startDrag.startMoveDrag);
			CD_core.delEvent(document,"mouseup",CD_extendDiv.startDrag.stopMoveDrag);
			this.initObj(obj);
		}
	},

	dragElement:function(obj){
		if(obj){
			var moveX=CD._mouseX-this.dragStartX[obj];
			var moveY=CD._mouseY-this.dragStartY[obj];
			CD_core.setPosition($(this.givenElement[obj]._name),"x",(this.givenElement[obj]._x+moveX));
			CD_core.setPosition($(this.givenElement[obj]._name),"y",(this.givenElement[obj]._y+moveY));
		}
	},

/*----------------------------------*/
	setOffsetParent:function(obj){
		if($(obj).parentNode.nodeName != 'BODY'){
			if($(obj).parentNode.style.position=="static" || !$(obj).parentNode.style.position){
				$(obj).parentNode.style.position="relative";
			}
			//$(obj).parentNode.style.overflow="hidden";
		}

		var pBTop=CD_core.getStyle($(obj).parentNode,"BorderTopWidth","border-top-width","borderTopWidth");
		var pBRight=CD_core.getStyle($(obj).parentNode,"BorderRightWidth","border-right-width","borderRightWidth");
		var pBBottom=CD_core.getStyle($(obj).parentNode,"BorderBottomWidth","border-bottom-width","borderBottomWidth");
		var pBLeft=CD_core.getStyle($(obj).parentNode,"BorderLeftWidth","border-left-width","borderLeftWidth");

		var pPTop=CD_core.getStyle($(obj).parentNode,"PaddingTop","padding-top","paddingTop");
		var pPRight=CD_core.getStyle($(obj).parentNode,"PaddingRight","padding-right","paddingRight");
		var pPBottom=CD_core.getStyle($(obj).parentNode,"PaddingBottom","padding-bottom","paddingBottom");
		var pPLeft=CD_core.getStyle($(obj).parentNode,"PaddingLeft","padding-left","paddingLeft");

		if(pBTop=="undefined" || pBTop=="0px"){
			$(obj).parentNode.style.borderTop="dotted 1px #ccc";
			pBTop=this.parentHighLight[0]=1;
		}else{
			pBTop=0;
		}

		if(pBRight=="undefined" || pBRight=="0px"){
			$(obj).parentNode.style.borderRight="dotted 1px #ccc";
			pBRight=this.parentHighLight[1]=1;
		}else{
			pBRight=0;
		}

		if(pBBottom=="undefined" || pBBottom=="0px"){
			$(obj).parentNode.style.borderBottom="dotted 1px #ccc";
			pBBottom=this.parentHighLight[2]=1;
		}else{
			pBBottom=0;
		}

		if(pBLeft=="undefined" || pBLeft=="0px"){
			$(obj).parentNode.style.borderLeft="dotted 1px #ccc";
			pBLeft=this.parentHighLight[3]=1;
		}else{
			pBLeft=0;
		}

		pPTop=(pPTop!="undefined")?parseInt(pPTop):0;
		pPRight=(pPRight!="undefined")?parseInt(pPRight):0;
		pPBottom=(pPBottom!="undefined")?parseInt(pPBottom):0;
		pPLeft=(pPLeft!="undefined")?parseInt(pPLeft):0;

		this.parentDiv=new CD_core.getParentPos(obj,(pBLeft*-1),(pBTop*-1),((pBLeft+pBRight+pPLeft+pPRight)*-1),((pBTop+pBBottom+pPTop+pPBottom)*-1),0);	
	},

	resetOffsetParent:function(obj){
		if(this.parentHighLight[0]==1){
			$(obj).parentNode.style.borderTop="dotted 0px #ccc";
			this.parentHighLight[0]=0;
		}
		if(this.parentHighLight[1]==1){
			$(obj).parentNode.style.borderRight="dotted 0px #ccc";
			this.parentHighLight[1]=0;
		}
		if(this.parentHighLight[2]==1){
			$(obj).parentNode.style.borderBottom="dotted 0px #ccc";
			this.parentHighLight[2]=0;
		}
		if(this.parentHighLight[3]==1){
			$(obj).parentNode.style.borderLeft="dotted 0px #ccc";
			this.parentHighLight[3]=0;
		}
		this.parentDiv='';
	},

/*-----------------------------------------------------------------
	closeObject
-----------------------------------------------------------------*/

	closeElement:function(obj){
		if(obj.indexOf("CD_")==-1)this.closed.push(obj);
		CD_core.swapDepths(obj,0);
		$(obj).style.visibility="hidden";
		if(this.closed[0]){
			CD_core.addEvent(document,"dblclick",CD_extendDiv.showClosedPalette);
		}
		this.reviseClosedPalette();
	},

	closeElementAlert:function(obj,type){
		switch(type){
			case "display":
				$(obj).style.display="none";
			break;
			case "remove":
				$(obj).parentNode.removeChild($(obj));
			break;
			case "default":
				if(obj!="CD_closedPalette"){
					var alertSetting=new CD_alert.Setting();
					alertSetting.afterCancelMessage="以後、このメッセージを表示しない";
					alertSetting.dialogs="閉じたコンテンツは画面上をダブルクリックすることで表示される一覧から、再度開くことができます。::320::::1";
					alertSetting.defineFunc="CD_extendDiv.closeElement('"+obj+"')";
					CD_alert.Show("extendDiv-closeElementAlert",alertSetting);
				}else{
					this.closeElement(obj);
				}
			break;
		}
	},

	openElement:function(obj,listNum){
		if($(obj).style.visibility=="hidden"){
			this.closed.splice(listNum,1);
			$(obj).style.visibility="visible";
		}
		CD_core.swapDepths(obj,"nextHighestDepth");
		this.reviseClosedPalette();
	},

	showClosedPalette:function(){
		if(CD_extendDiv.closed[0]){
			CD_core.delEvent(document,"dblclick",CD_extendDiv.showClosedPalette);
			if(CD.UA.asn!="ie"){
				window.getSelection().removeAllRanges();
			}

			var nullTagStyle="font-size:1px;line-height:1px;margin:0px;padding:0px;border:none;";
			var unSelectStyle='-moz-user-select:none;-khtml-user-select:none;user-select:none;';

			var paletteCode='';
			paletteCode+='<ul>';

			for(i=0;i<CD_extendDiv.closed.length;i++){
				if(CD_extendDiv.closed[i]){
					paletteCode+='<li>';
					paletteCode+='<a href="JavaScript:void(0)" onclick="CD_extendDiv.openElement(\''+CD_extendDiv.closed[i]+'\','+i+')">'+CD_extendDiv.title[CD_extendDiv.closed[i]]+'</a>';
					paletteCode+='</li>';
				}
			}

			paletteCode+='</ul>';
			paletteCode=CD_core.chomp(paletteCode);

			if(!$('CD_closedPalette')){
				CD_core.createObject("div","CD_closedPalette",'extendDivClosePalette','');
				CD_core.setAttribute($("CD_closedPalette"),"title","Closed Contents");
				$("CD_closedPalette").innerHTML=paletteCode;
				closePaletteSet=new CD_extendDiv.Setting();
				closePaletteSet.enableStack=false;
				closePaletteSet.enableResize=false;
				closePaletteSet.scrollOptions="disableAuto,disableHorizontal,disableDrag";
			}else{
				$("extendDiv-contentCD_closedPalette").innerHTML=paletteCode;
			}

			$("CD_closedPalette").style.position="absolute";
			if($("CD_closedPalette").style.visibility=="" || $("CD_closedPalette").style.visibility=="hidden"){
				var palettX=CD._mouseX-parseInt(CD_core.getStyle($("CD_closedPalette"),"Width","width","width"))/2;
				var palettY=CD._mouseY-parseInt(CD_core.getStyle($("CD_closedPalette"),"Height","height","height"))/2;
				if(CD.UA.asn=="op")palettY+=CD_core._scrollY();
				CD_core.setFixedPosition("CD_closedPalette",palettX,palettY);
			}

			$("CD_closedPalette").style.visibility="visible";
			CD_core.swapDepths("CD_closedPalette","nextHighestDepth");

			if(!$("extendDiv-contentCD_closedPalette")){
				CD_extendDiv.Set("CD_closedPalette",closePaletteSet);
			}

			if(CD.UA.asn!="ie"){
				return false;
			}
		}else{
			CD_extendDiv.closeElement("CD_closedPalette");
		}
	},

	reviseClosedPalette:function(){
		if($("CD_closedPalette") && $("CD_closedPalette").style.visibility=="visible"){
			this.showClosedPalette();
		}
	},


/*-----------------------------------------------------------------
	stack to task bar
-----------------------------------------------------------------*/

	stackElement:function(obj){
		this.createTaskBar(obj,"bottom");
		this.stacked.push(obj);
		$(obj).style.visibility="hidden";
		this.addToTaskBar(obj);
	},

	taskBarOvrFlag:new Array(),
	taskBarOutFlag:new Array(),

	addToTaskBar:function(obj){
		for(i=0;i<$(obj).parentNode.childNodes.length;i++){
			if($(obj).parentNode.childNodes[i].id && $(obj).parentNode.childNodes[i].id.indexOf("extendDiv-taskbar")!=-1){
				taskBarID=$(obj).parentNode.childNodes[i].id;
			}
		}

		var actFlag=' onmouseover="CD_extendDiv.taskBarOutFlag[\''+taskBarID+'\']=false;" onmouseout="CD_extendDiv.taskBarOutFlag[\''+taskBarID+'\']=true;"';
		var icon='<li id="extendDiv-taskIcon'+obj+'" class="extendDivTaskBarIcon" style="float:left;">';
		icon+='<a href="JavaScript:void(0);return false;" onmousedown="CD_extendDiv.delFromTaskBar(\''+obj+'\')"'+actFlag+'>';
		if(this.icons[obj] && this.title[obj]){
			icon+='<img src="'+this.icons[obj]+'" title="'+this.title[obj]+'" alt="'+this.title[obj]+'" border="0"'+actFlag+'><br>'+this.title[obj];
		}else if(this.icons[obj]){
			icon+='<img src="'+this.icons[obj]+'" border="0"'+actFlag+'>';
		}else if(this.title[obj]){
			icon+=this.title[obj];
		}

		icon+='</a></li></ul>';
		$(taskBarID).innerHTML=$(taskBarID).innerHTML.replace(/<\/ul>/i,icon);
		$(taskBarID).innerHTML=CD_core.chomp($(taskBarID).innerHTML);

	},

	delFromTaskBar:function(obj){
		for(i=0;i<$(obj).parentNode.childNodes.length;i++){
			if($(obj).parentNode.childNodes[i].id && $(obj).parentNode.childNodes[i].id.indexOf("extendDiv-taskbar")!=-1){
				taskBarID=$(obj).parentNode.childNodes[i].id;
			}
		}

		var taskBar=$(taskBarID).childNodes[0].getElementsByTagName("li");
		for(i=0;i<taskBar.length;i++){
			cNids=CD_core.getAttribute(taskBar[i],"id");
			if(cNids==('extendDiv-taskIcon'+obj)){
				$(taskBarID).childNodes[0].removeChild($(taskBarID).childNodes[0].getElementsByTagName("li")[i]);
			}
		}
		
		$(obj).style.visibility="visible";
		CD_core.swapDepths(obj,"nextHighestDepth");
	},


	taskBarNumber:0,
	createTaskBar:function(obj,pos){
		taskBarID='';
		taskBarName="extendDiv-taskbar";
		taskBarExist=false;
		
		for(i=0;i<$(obj).parentNode.childNodes.length;i++){
			if($(obj).parentNode.childNodes[i].id && $(obj).parentNode.childNodes[i].id.indexOf(taskBarName)!=-1){
				taskBarExist=true;
			}
		}

		if(obj && !taskBarExist){
			taskBarID=taskBarName+this.taskBarNumber;

			//create task bar & set it
			CD_core.createObject("div",taskBarID,"extendDivTaskBar",$(obj).parentNode);
			$(taskBarID).innerHTML='<ul style="margin:0px;padding:0px;list-style-type:none;"></ul>';

			$(taskBarID).style.position="absolute";

			if(pos=="top" || pos=="left"){
				$(taskBarID).style.top="0px";
				$(taskBarID).style.left="0px";
			}

			if(pos=="bottom"){
				$(taskBarID).style.bottom="0px";
				$(taskBarID).style.left="0px";
			}

			if(pos=="right"){
				$(taskBarID).style.top="0px";
				$(taskBarID).style.right="0px";
			}

			$(taskBarID).style.cursor="pointer";
			CD_core.swapDepths(taskBarID,'nextHighestDepth');
			CD_core.setAlpha(taskBarID,50);

			var objPos=new CD_core.getPosition($(taskBarID),0,0,0,0,0);

			//set parent node style
			//if($(obj).parentNode!=document.body){
			if($(obj).parentNode.nodeName != 'BODY'){
				if($(obj).parentNode.style.position=="static" || !$(obj).parentNode.style.position){
					$(obj).parentNode.style.position="relative";
				}
				//$(obj).parentNode.style.overflow="hidden";
			}
			//add animation
			var taskBar=taskBarID;
			CD_core.addEvent($(taskBarID),'mouseover',function taskBarOver(e){
				CD_extendDiv.taskBarOver(taskBar,pos);
				CD_extendDiv.taskBarOvrFlag[taskBar]=false;
				CD_extendDiv.taskBarOutFlag[taskBar]=true;
			});

			CD_core.addEvent($(taskBarID),'mouseout',function taskBarOut(e){
				CD_extendDiv.taskBarOut(taskBar,pos);
				CD_extendDiv.taskBarOvrFlag[taskBar]=true;
				CD_extendDiv.taskBarOutFlag[taskBar]=false;
			});

			this.taskBarOutFlag[taskBarID]=true;

			this.taskBarNumber++;
		}
	},

	taskBarOver:function(taskBarID,pos){
		CD_core.endTween(taskBarID,pos);
		if(this.taskBarOvrFlag[taskBarID]){
			CD_core.swapDepths(taskBarID,'nextHighestDepth');
			if(pos=="left"){
				vectAttr="0:";
				offSet=$(taskBarID).offsetWidth;
			}else if(pos=="top"){
				vectAttr=":0";
				offSet=$(taskBarID).offsetHeight;
			}else if(pos=="bottom"){
				vectAttr=$(taskBarID).offsetHeight+":";
			}else if(pos=="right"){
				vectAttr=":"+$(taskBarID).offsetWidth;
			}

			if($(taskBarID).style[pos]!="0px"){
				CD_tween.Add(taskBarID,vectAttr,'',1,'null',20,'eq','');
			}
		}
	},

	taskBarOut:function(taskBarID,pos){
		CD_core.endTween(taskBarID,pos);
		if(this.taskBarOutFlag[taskBarID]){
			if(pos=="left"){
				offSet=$(taskBarID).offsetWidth;
				vectAttr=((offSet-10)*-1)+":";
			}else if(pos=="top"){
				offSet=$(taskBarID).offsetHeight;
				vectAttr=":"+((offSet-10)*-1);
			}else if(pos=="bottom"){
				offSet=$(taskBarID).offsetHeight;
				vectAttr=((offSet-10)*-1)+":";
			}else if(pos=="right"){
				offSet=$(taskBarID).offsetWidth;
				vectAttr=((offSet-10)*-1)+":";
			}

			if($(taskBarID).style[pos]!=((offSet-10)*-1)+"px"){
				CD_tween.Add(taskBarID,vectAttr,'',1,'null',20,'eq','');
			}
		}
	}
}


/*
----------------------------------------------------------------
	CreativeDevece JavaScript Library
	Part of CreativeDevice JavaScript Liabrary
	Extend List Tag for create menu style
----------------------------------------------------------------
	version			0.90
	last update		2010/02/10
	author			Yoshihisa Kato/YAH!-cyberstudio
----------------------------------------------------------------
*/

var CD_Tree={
/*
	FUNCTION Tree
	make Tree Style Menu

	[TAG STYLE]
		<ul class="TOP_DIRECTORY_CLASS">
			<li><a class="TOP_DIRECTORT_ITEM_CLASS">textNode</a>
				<ul class="2ND_DIRECTORY_CLASS">
					<li><a class="2ND_DIRECTORY_ITEM_CLASS">textNode</a>
				</ul><!--//2ND_LIST_END-->
			</li>
		</ul><!--//TOP_LIST_END-->

	NEED CLASS for Use

	LIST CLASS:(apply to ul)
	ITEM CLASS at show child menu (apply to a)
	ITEM CLASS at hide child menu (apply to a)

*/

	Setting:function(){
		this.initialView=true;	//true:open menus , false:hide menus at first view
		this.enableLinkagePath=true;
		this.enableSynchronize=true;
		//menu class : 0:previous anchor class at show menu , 1:previous anchor class at hide menu
		this.applyClass={
			'topMenu':["showDir","hideDir"],
			'sndMenu':["showDir","hideDir"],
			'thdMenu':["showDir","hideDir"]
		};
		this.enableAnimation=false;
		this.animationTime=3;
	},

	Config:new Array(),

	Load:function(){
		var lists=document.getElementsByTagName('ul');
		var ulClass='';
		var props=new Array();
		var propPair=new Array();
		var prop=new Array();
		var menuID='';
		var anchors='';
		var anchorClas='';
		var applys='';
		var childMenu='';
		var dirLevel='';
		
		for(var i=0;i<lists.length;i++){
			var treeProp=CD_core.getAttribute(lists[i],'title');
			if(treeProp && treeProp.indexOf('CD_menu.Tree')!=-1){
				//get function propaties
				menuID=CD_core.getAttribute(lists[i],'id');
				treeProp=treeProp.replace(/^CD_menu.Tree:/g,'');
				if(treeProp){
					props=treeProp.split(',');
					for(var p=0;p<props.length;p++){
						propPair=props[p].split('=');
						prop[propPair[0]]=propPair[1];
					}
				}
				this.Config[menuID]=(prop['setting'])?window[prop['setting']]:new this.Setting();
				if(prop['title']){
					CD_core.setAttribute(lists[i],'title',prop['title']);
				}else{
					CD_core.setAttribute(lists[i],'title','');
				}
		
				//attach function
				anchors=$(menuID).getElementsByTagName('a');
				for(var a=0;a<anchors.length;a++){
					childMenu=CD_core.findNextSibling(anchors[a],1,'UL');
					if(childMenu){
						anchorClass=childMenu.className;
						applys=this.Config[menuID].applyClass[anchorClass];

						ulClass=childMenu.className;
						dirLevel=CD_core.getHashIndexNumber(this.Config[menuID].applyClass,this.Config[menuID].applyClass[ulClass]);//get Directry level		

							childDisplay=CD_core.getStyle(childMenu,"Display","display","display");
							if(this.Config[menuID].enableLinkagePath==false){
								if((childDisplay=="block" || childDisplay==undefined) && anchorClass==applys[1]){
									childMenu.style.display="none";
								}
							}else{
								var pathCheck=0;
								for(var ac=0;ac<childMenu.childNodes.length;ac++){
									var subs=childMenu.childNodes[ac].firstChild;
									if(subs==location.href){
										pathCheck=1;break;
									}
								}
								if(pathCheck==1){
									anchors[a].className=applys[0];
									childMenu.style.display="block";
									if(dirLevel>0){
										var parentTree=anchors[a].parentNode.parentNode;
										for(var t=dirLevel;t>0;t--){
											var parentClass=CD_core.getHashFromIndexNum(this.Config[menuID].applyClass[anchorClass],t);
											parentTree.style.display="block";
											parentTree.previousSibling.className=parentClass[0];
											parentTree=parentTree.previousSibling.parentNode.parentNode;
										}
									}
								}else{
									anchors[a].className=applys[1];
									childMenu.style.display="none";
								}
							}

						CD_core.setAttribute(childMenu,'id','CD_'+menuID+'_Tree'+a);
						anchors[a].setting=this.Config[menuID];
/*
						CD_core.addEvent(anchors[a],'click',function(){
							return false;
							var obj=(CD.UA.asn=="ie")?event.srcElement:this;
							return CD_Tree.Exec(obj);
						});
*/
						anchors[a].onclick=function(){
							return CD_Tree.Exec(this);
						}
					}
				}		
			}
		}
	},

	Exec:function(obj){
		var childMenu=CD_core.findNextSibling(obj,1,'UL');
		var applyClass=new Array();
		if(childMenu){
			var defView=CD_core.getStyle(childMenu,"Display","display","display");
			applyClass=obj.setting.applyClass[obj.parentNode.parentNode.className];
			if(defView=="none"){
				if(obj.setting.enableSynchronize==true){
					var siblingMenu=obj.parentNode.parentNode.childNodes;
					for(var i=0;i<siblingMenu.length;i++){
						if(siblingMenu[i].firstChild.className==applyClass[0]){
							this.Hide(siblingMenu[i].firstChild,siblingMenu[i].firstChild.nextSibling);
							siblingMenu[i].firstChild.className=applyClass[1];
						}
					}
				}
				this.Show(obj,childMenu);
				obj.className=applyClass[0];
			}else{
				this.Hide(obj,childMenu);
				obj.className=applyClass[1];
			}
			return false;
		}else{
			return false;
		}
	},

	Show:function(obj,childMenu){
		childMenu.style.display="block";
		if(!childMenu.maxH)childMenu.maxH=childMenu.offsetHeight;
		if(obj.setting.enableAnimation==true){
			childMenu.complete=function(e){
				CD_core.removeStyleProp(this,'H');
			};
			childMenu.style.overflow="hidden";
			childMenu.style.height=0;
			CD_tween.Add(childMenu.id,'null',':'+childMenu.maxH+':1:','null','null',obj.setting.animationTime,'eq',"complete:$(\""+childMenu.id+"\").complete();");
		}
	},

	Hide:function(obj,childMenu){
		if(obj.setting.enableAnimation==true){
			childMenu.complete=function(e){
				childMenu.style.display="none";
				CD_core.removeStyleProp(this,'H');
			};
			childMenu.style.overflow="hidden";
			CD_tween.Add(childMenu.id,'null',':0:1:','null','null',obj.setting.animationTime,'eq',"complete:$(\""+childMenu.id+"\").complete();");
		}else{
			childMenu.style.display="none";
		}
	}
}

var CD_Drop={
/*DropDown*/
/*
	FUNCTION Show & Hide
	make drop down Menu

	[TAG STYLE]
		<ul class="TOP_DIRECTORY_CLASS" id="LIST_UNIQUE_ID">
			<li><a class="TOP_DIRECTORT_ITEM_CLASS">textNode</a>
				<ul class="2ND_DIRECTORY_CLASS" id="LIST_UNIQUE_ID">
					<li><a class="2ND_DIRECTORY_ITEM_CLASS">textNode</a>
				</ul><!--//2ND_LIST_END-->
			</li>
		</ul><!--//TOP_LIST_END-->

	NEED CLASS for Use

	LIST CLASS:(apply to ul)
	ITEM CLASS at show child menu (apply to a)
	ITEM CLASS at hide child menu (apply to a)

	drop down UL NEED ID for Use

	setting at function SettingTree
*/
	Setting:function(){
		this.showClass='showMenu';
		this.hideClass='enableLink';
		this.dropArrow='../../../image/drop_arrow.gif';
		//menu class : 0:previous anchor class at show menu , 1:previous anchor class at hide menu
		this.applyClass={
			0:'tblEFstMenu',
			1:'tblESndMenu',
			2:'tblEThdMenu'
		};
		//this.enableAnimation=true;
		//this.animationTime=10;
	},

	Config:new Array(),
	dropTimer:new Array(),
	dropDelay:25,

	Load:function(){
		var lists=document.getElementsByTagName('ul');
		var drops='';
		var props=new Array();
		var propPair=new Array();
		var prop=new Array();
		var menuID='';

		for(var i=0;i<lists.length;i++){
			var dropProp=CD_core.getAttribute(lists[i],'title');
			if(dropProp && dropProp.indexOf('CD_menu.Drop')!=-1){
				//get function propaties
				menuID=CD_core.getAttribute(lists[i],'id');
				dropProp=dropProp.replace(/^CD_menu.Drop:/g,'');
				if(dropProp){
					props=dropProp.split(',');
					for(var p=0;p<props.length;p++){
						propPair=props[p].split('=');
						prop[propPair[0]]=propPair[1];
					}
				}
				this.Config[menuID]=(prop['setting'])?window[prop['setting']]:new this.Setting();
				if(prop['title']){
					CD_core.setAttribute(lists[i],'title',prop['title']);
				}else{
					CD_core.setAttribute(lists[i],'title','');
				}

				//unique child menu
				drops=$(menuID).getElementsByTagName('ul');
				for(var d=0;d<drops.length;d++){
					CD_core.setAttribute(drops[d],'id','CD_'+menuID+'_Drop'+d);
				}

				//attach function
				this.Set(menuID,prop['setting']);
			}
		}
	},

	Set:function(menuID,Setting){
		var anchors='';
		var anchorClas='';
		var applys='';
		var childMenu='';
		var dirLevel='';
		var objlist=new Array();
		if(!this.Config[menuID])this.Config[menuID]=(Setting)?window[Setting]:new this.Setting();
		anchors=$(menuID).getElementsByTagName('a');
		for(var a=0;a<anchors.length;a++){
			objlist=[]//init
			parentUL=anchors[a].parentNode.parentNode;
			if(parentUL != $(menuID)){
				objlist.push(parentUL);
				dirLevel=CD_core.getHashIndexNumber(this.Config[menuID].applyClass,parentUL.className);//get Directry level
				for(var t=dirLevel-1;t>0;t--){
					parentUL=CD_core.findParentElement(CD_core.findPrevSibling(parentUL,1,'A').parentNode,1,'UL');
					if(parentUL.className==this.Config[menuID].applyClass[t])objlist.push(parentUL);
				}
			}else{
				//objlist.push(parentUL);
			}

			childMenu=CD_core.findNextSibling(anchors[a],1,'UL');
			if(childMenu){
				objlist.push(childMenu);
				//CD_core.setAttribute(anchors[a],'style','background-image:url('+this.Config[menuID].dropArrow+');background-repeat:no-repeat;background-position:right');
				CD_core.setAttribute(anchors[a],'href','JavaScript:void(0);');
			}

			anchors[a].setting=this.Config[menuID];
			anchors[a].objlist=objlist;
			anchors[a].baseClass=anchors[a].className;
			CD_core.addEvent(anchors[a],'mouseover',function(){
				var obj=(CD.UA.asn=="ie")?event.srcElement:this;
				CD_Drop.Show(obj);
			});
			CD_core.addEvent(anchors[a],'mouseout',function(){
				var obj=(CD.UA.asn=="ie")?event.srcElement:this;
				CD_Drop.Hide(obj);
			});
			CD_core.addEvent(anchors[a],'click',function(){
				var obj=(CD.UA.asn=="ie")?event.srcElement:this;
				return CD_Drop.Hide(obj);
			});
		}
	},

	Show:function(obj){
		var defView='';
		var timerID='';
		var dropToggle='';
		var drops=obj.objlist;
		if(drops){
			for(var i=0;i<drops.length;i++){
				timerID=CD_core.getAttribute(drops[i],'id');
				clearTimeout(this.dropTimer[timerID]);
				dropToggle=drops[i].previousSibling;
				if(dropToggle)dropToggle.className=obj.setting.showClass;
				defView=CD_core.getStyle(drops[i],"Display","display","display");
				if(defView=="none" || !defView){
					drops[i].style.display="block";
/*
					var x=CD._mouseX+CD_core._scrollX()+5;
					trace((x+drops[i].offsetWidth)+":"+CD_core._windowWidth());
					if(x+dropToggle.offsetWidth+drops[i].offsetWidth > CD_core._windowWidth()){
						drops[i].style.left = (drops[i].style.left.replace(/px/gi,'')*-1)+"px";
						trace(drops[i].style.left);
					}
*/
				}
			}
			obj.className=obj.setting.showClass;
		}
	},

	Hide:function(obj){
		var defView='';
		var timerID='';
		var dropToggle='';
		var drops=obj.objlist;
		if(drops){
			for(var i=0;i<drops.length;i++){
				timerID=CD_core.getAttribute(drops[i],'id');
				dropToggle=drops[i].previousSibling;
				if(dropToggle)dropToggle.className=dropToggle.baseClass;
				defView=CD_core.getStyle(drops[i],"Display","display","display");
				if(defView=="block" || !defView)this.dropTimer[timerID]=setTimeout("CD_Drop.None('"+timerID+"')",this.dropDelay);
			}
			obj.className=obj.baseClass;
		}
	},

	None:function(objID){
		$(objID).style.display="none";
	}
}

var CD_Tabs={
/*=====*/
	Setting:function(){
		this.menu=new Array();
		this.type='internal';
		this.defaultClass="";
		this.hoverClass="Hover";
		this.selectClass="Select";

		/*
			internal:internal page link
			external:external page link
			ajaxlink:ajax link
			popuplink:popup link
		*/
	},

	Config:new Array(),
	Select:new Array(),

	Load:function(){
		var lists=document.getElementsByTagName('ul');
		var tabs='';
		var props=new Array();
		var propPair=new Array();
		var prop=new Array();
		var menuID='';
		var anchors='';
		var anchorClas='';
		var applys='';
		var childMenu='';
		var dirLevel='';
		var objlist=new Array();

		for(var i=0;i<lists.length;i++){
			var tabsProp=CD_core.getAttribute(lists[i],'title');
			if(tabsProp && tabsProp.indexOf('CD_menu.Tabs')!=-1){
				//get function propaties
				menuID=CD_core.getAttribute(lists[i],'id');
				tabsProp=tabsProp.replace(/^CD_menu.Tabs:/g,'');
				if(tabsProp){
					props=tabsProp.split(',');
					for(var p=0;p<props.length;p++){
						propPair=props[p].split('=');
						prop[propPair[0]]=propPair[1];
					}
				}
				this.Config[menuID]=(prop['setting'])?window[prop['setting']]:new this.Setting();
				this.Config[menuID].id=menuID;
				if(prop['type'])this.Config[menuID].type=prop['type'];

				//setting for type external,ajax,popup
/*
				if(prop['target'])this.Config[menuID].target=prop['target'];
				if(prop['width'])this.Config[menuID].width=prop['width'];
				if(prop['height'])this.Config[menuID].height=prop['height'];
				if(prop['option'])this.Config[menuID].option=prop['option'];
*/
				if(prop['title']){
					CD_core.setAttribute(lists[i],'title',prop['title']);
				}else{
					CD_core.setAttribute(lists[i],'title','');
				}

				//create menu link array
				anchors=$(menuID).getElementsByTagName('a');
				for(var a=0;a<anchors.length;a++){
					this.Config[menuID].menu.push(CD_core.getAttribute(anchors[a],"href"));
				}

				for(var a=0;a<anchors.length;a++){
					anchors[a].menuID=menuID;
					anchors[a].setting=this.Config[menuID];
					anchors[a].onclick=function(){
						return CD_Tabs.Exec(this);
					};
					anchors[a].onmouseover=function(){
						this.parentNode.className=this.setting.hoverClass;
					};
					anchors[a].onmouseout=function(){
						if(CD_Tabs.Select[this.menuID]==this){
							this.parentNode.className=this.setting.selectClass;
						}else{
							this.parentNode.className=this.setting.defaultClass;
						}
					};

					if(this.Config[menuID].type=="internal"){
						this.Select[menuID]=anchors[0];
					}
				}
				//init first view , type internal
				if(this.Config[menuID].type=="internal"){
					this.Init(menuID);
					this.Select[menuID].parentNode.className=this.Config[menuID].selectClass;
					$(this.Config[menuID].menu[0]).style.display="block";
				}
			}
		}
	},

	Exec:function(obj){
		var menuList=obj.setting.menu;
		this.Init(obj.setting.id);
		var target='';
		switch(obj.setting.type){
			case "internal":
				target=CD_core.getAttribute(obj,'href').replace(/^#/g,'');
				//hold selected layer & change tabView
				if(this.Select[obj.menuID])this.Select[obj.menuID].parentNode.className=obj.setting.defaultClass;
				this.Select[obj.menuID]=obj;
				obj.parentNode.className=obj.setting.selectClass;
				//display
				$(target).style.display="block";
				return false;
			break;
		}
	},

	Init:function(ID){
		var menus=this.Config[ID].menu;
		for(var i=0;i<menus.length;i++){
			menus[i]=menus[i].replace(/^#/g,'');http://iwaki-alios.jp/image/common/arrow_p.gif
			if($(menus[i]))$(menus[i]).style.display="none";
		}
	}

}


var CD_BreadCrumb={
	Setting:function(){
		this.minLength=2;
		this.enableAnimation=true;
		this.animationTime=1;
	},

	Obj:'',
	Config:new Array(),

	Load:function(){
		var lists=document.getElementsByTagName("ul");
		for(var u=0;u<lists.length;u++){
			var listProp=CD_core.getAttribute(lists[u],'title');
			if(listProp && listProp.indexOf("CD_menu.BreadClumb")!=-1){
				CD_core.setAttribute(lists[u],'title','');
				var menuID=CD_core.getAttribute(lists[u],'id');
				var listProps=listProp.replace(/^CD_menu.BreadClumb:/g,'');
				if(listProps){
					var props=listProps.split(',');
					var prop=new Array();
					for(var p=0;p<props.length;p++){
						propPair=props[p].split('=');
						prop[propPair[0]]=propPair[1];
					}
				}
				this.Config[menuID]=(prop['setting'])?window[prop['setting']]:new this.Setting();
				this.Config[menuID].id=menuID;
				
				var menus=$(menuID).getElementsByTagName("a");
				for(var m=0;m<menus.length;m++){
					menus[m].setting=this.Config[menuID];
					menus[m].baseText=menus[m].firstChild.nodeValue;
					if(!CD_core.getAttribute(menus[m],'id'))CD_core.setAttribute(menus[m],'id','CD_bc'+menuID+'_'+m);
					if(menus[m].baseText.length>this.Config[menuID].minLength)menus[m].firstChild.nodeValue=menus[m].baseText.substring(0,this.Config[menuID].minLength-1)+"...";

					CD_core.addEvent(menus[m],'mouseover',function(){
						var obj=(CD.UA.asn=="ie")?CD_core.getAnchorObject(event.srcElement):this;
						CD_BreadCrumb.Obj=obj;
						CD_BreadCrumb.Show(obj);
					});
					CD_core.addEvent(menus[m],'mouseout',function(){
						var obj=(CD.UA.asn=="ie")?CD_core.getAnchorObject(event.srcElement):this;
						CD_BreadCrumb.Obj=obj;
						CD_BreadCrumb.Hide(obj);
					});
				}

			}
		}
	},

	Show:function(obj){
		if(obj.setting.enableAnimation){
			if(obj.baseText.length>obj.setting.minLength){
				CD_tween.strAdd(CD_core.getAttribute(obj,'id'),obj.baseText,0,obj.baseText.length,'','p',obj.setting.animationTime,'');
			}
		}else{
			obj.firstChild.nodeValue=obj.baseText;
		}
	},

	Hide:function(obj){
		if(obj.setting.enableAnimation){
			if(obj.baseText.length>obj.setting.minLength){
				CD_tween.strAdd(CD_core.getAttribute(obj,'id'),obj.baseText,0,obj.setting.minLength-1,'','m',obj.setting.animationTime,'complete:CD_BreadCrumb.addContinue("'+CD_core.getAttribute(obj,"id")+'")');
			}
		}else{
			if(obj.baseText.length>obj.setting.minLength)obj.firstChild.nodeValue=obj.baseText.substring(0,obj.setting.minLength-1)+"...";
		}
	},

	addContinue:function(objID){
		if($(objID).baseText.length>$(objID).setting.minLength){
			$(objID).firstChild.nodeValue=$(objID).firstChild.nodeValue+"...";
		}
	}

}


var CD_LabelTag={

	Setting:function(){
		this.labelClass="CD_alertDialog";
		this.labelStyle="width:320px:height:320px;";
		this.labelBarClass="labelTagTop";
		this.labelBarStyle="";
		this.closeButton='../include/image/cd_layerclose.gif';
		this.closeButtonLabel='Close';
		this.closeButtonClass="";
		this.closeButtonStyle='width:11px;height:11px;border:none;padding:0px;margin:2px 3px 1px 0px;';
	},

	Config:new Array(),

	Show:function(trigger,objID,labelText,labelClass,labelStyle,hideType,setting){

		if(!setting){
			this.Config[objID]=new this.Setting();
		}else{
			this.Config[objID]=setting;
		}
/*
		if(labelStyle)this.Config[objID].labelStyle=labelStyle;
		if(labelClass)this.Config[objID].labelClass=labelClass;
*/

		var labelTag=($(objID))?$(objID):CD_core.createObject('div',objID,this.Config[objID].labelClass,'',0);

		if(!$(objID+'_labelTagTop')){
			var labelMenu=CD_core.createObject('div',objID+'_labelTagTop',this.Config[objID].labelBarClass,'',1);
			if(this.Config[objID].labelBarStyle)CD_core.setAttribute(labelMenu,"style",this.Config[objID].labelBarStyle);
			var closeBtn=CD_core.createButtonField('button',this.Config[objID].closeButton,objID+'_closeBtn',this.Config[objID].closeButtonClass,this.Config[objID].closeButtonStyle);
			CD_core.setAttribute(closeBtn,'title',this.Config[objID].closeButtonLabel);
			CD_core.setAttribute(closeBtn,'border','none');
			closeBtn.hideType=hideType;
			closeBtn.labelTag=objID;
			closeBtn.onclick=function(){
				CD_LabelTag.Hide(this.labelTag,this.hideType);
				return false;
			}
			labelMenu.appendChild(closeBtn);

			if(labelTag.firstChild){
				labelTag.insertBefore(labelMenu,labelTag.firstChild);
			}else{
				labelTag.appendChild(labelMenu);
			}
			labelMenu.style.cursor="move";
			labelMenu.objID=objID;
			CD_core.addEvent($(objID+'_labelTagTop'),'mousedown',function(){
				CD_LabelTag.Drag(this.objID);
			});
		}

		if(this.Config[objID].labelStyle)CD_core.setAttribute(labelTag,'style',this.Config[objID].labelStyle);

		var x=CD._mouseX;
		var y=CD._mouseY;

		if(x+labelTag.offsetWidth>CD_core._windowWidth()) x=CD_core._windowWidth()-labelTag.offsetWidth-20;
		if(y-CD_core._scrollY()+labelTag.offsetHeight>CD_core._windowHeight()) y=CD_core._windowHeight()-labelTag.offsetHeight-5;
		labelTag.style.left=x+"px";
		labelTag.style.top=y+"px";

		labelTag.style.display="block";
		labelTag.style.position="absolute";
	},

	Hide:function(objID,hideType){
		switch(hideType){
			case "display":
				$(objID).style.display="none";
			break;
			case "remove":
				$(objID).parentNode.removeChild($(objID));
			break;
		}
	},

	Drag:function(objID){
		obj=$(objID);
		obj._startX=CD._mouseX;
		obj._startY=CD._mouseY;
		obj._posX=parseInt(obj.style.left.replace(/px/,''));
		obj._posY=parseInt(obj.style.top.replace(/px/,''));

		//create shade
		var shade=CD_core.createObject("div","CD_dragShade",'','',0);
		CD_core.setAttribute(shade,'style','position:absolute;top:0px;left:0px;margin:0px;padding:0px;')
		CD_core.setPosition(shade,"width",CD_core._documentWidth());
		CD_core.setPosition(shade,"height",CD_core._documentHeight());
		CD_core.swapDepths(shade,"nextHighestDepth");
		CD_core.setAlpha(shade,0);
		if(CD.UA.asn=="ie"){
			for(i=0;i<document.getElementsByTagName("select").length;i++){
				document.getElementsByTagName("select")[i].style.visibility=prop;
			}
		}
		CD_core.swapDepths(obj,"nextHighestDepth");

		dragMove=function(){
			obj._moveX=CD._mouseX-obj._startX;
			obj._moveY=CD._mouseY-obj._startY;
			obj.style.left=obj._posX+obj._moveX+"px";
			obj.style.top=obj._posY+obj._moveY+"px";
		}

		dragStop=function(){
			$("CD_dragShade").parentNode.removeChild($("CD_dragShade"));
			CD_LabelTag.Stop();
			CD_core.delEvent(document,"mousemove",dragMove);
			CD_core.delEvent(document,"mouseup",dragStop);
		}

		CD_core.addEvent(document,"mousemove",dragMove);
		CD_core.addEvent(document,"mouseup",dragStop);
	},

	Stop:function(){
		CD_core.delEvent(document,"mousemove",CD_LabelTag.Drag.dragMove);
		CD_core.delEvent(document,"mouseup",CD_LabelTag.Drag.dragStop);
	}

}


/*
----------------------------------------------------------------
	CreativeDevece JavaScript Library
	Embed Plugin Object
		Flash	(over version 7)
		QuickTime	(over version 7)
		WindowsMedia	(over version 6)
		FlashVideo use with swfFile named "vplayer.swf"	(over version 9)
----------------------------------------------------------------
	version			1.01
	last update		2010/05/03
	author			Yoshihisa Kato/YAH!-cyberstudio
----------------------------------------------------------------
*/

var CD_embed={

	Setting:function(){
		this.falseMessage='コンテンツをご覧になるには以下のソフトウェアが必要です。<br>';
		this.falseMessage+='[PLUGIN_NAME]（バージョン[VERSION]以降）<br>';
		this.falseMessage+='以下のバナーをクリックの上、表示されるページにて該当ソフトをダウンロード、インストールしてください<br>';
		this.falseMessage+='<a href="[PLUGIN_DWURL]" target="_blank">[PLUGIN_BANNER]</a><br>';
		this.falseMessage+='<a href="[PLUGIN_URL]" target="_blank">ソフトウェアの詳細を表示</a>';
	},

	Load:function(){
		var embeds=document.getElementsByTagName("object");
		if(embeds.length<=0)embeds=document.getElementsByTagName("embed");

		if(embeds.length>0){
			var func;
			var attr;
			var prop=new Array();
			for(var i=0;i<embeds.length;i++){
				func=CD_core.getAttribute(embeds[i],'title');
				if(func && func.indexOf("CD_embed")!=-1){
					func.replace(/CD_embed;/,'');
					attr=func.split(";");
					for(var n=0;n<attr.length;n++){
						prop[attr[n].split(":")[0]]=attr[n].split(":")[1];
					}
					CD_embed.Set(CD_core.getAttribute(embeds[i],'id'),prop['app'],prop['ver'],prop['src'],prop['width'],prop['height'],prop['opt']);
				}
			}
		}
	},

	/*============================================================================*/
	Config:new Array(),//hold plugin object setting
	Plugin:new Array(),//hold target plugin propaties
	isPlug:new Array(),//hold is exist target plugin

	definePlugin:function(){
		this.Plugin=new Array();

		this.Plugin["Flash"]={
			progID:["ShockwaveFlash.ShockwaveFlash"],
			pluginsName:"Shockwave Flash",
			classID:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",
			codeBase:"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=[VERSION],0,0,0",
			paramFile:"movie",
			wmode:'opaque',
			pluginsPage:"http://www.adobe.com/go/getflashplayer_jp",
			mimeType:"application/x-shockwave-flash",
			aboutPage:"http://www.adobe.com/jp/products/flashplayer/",
			pluginsBanner:'<img src="image/flash_player.gif" border="0">'
		};

		this.FlashVersions=new Array();
		this.FlashVersions[9]="9,0,16,0";
		this.FlashVersions[8]="8,0,24,0";
		this.FlashVersions[7]="7,0,63,0";

		this.Plugin["FlashVideo"]={
			progID:["ShockwaveFlash.ShockwaveFlash"],
			pluginsName:"Shockwave Flash",
			classID:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",
			codeBase:"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=[VERSION],0,0,0",
			paramFile:"movie",
			wmode:'opaque',
			pluginsPage:"http://www.adobe.com/go/getflashplayer_jp",
			mimeType:"application/x-shockwave-flash",
			aboutPage:"http://www.adobe.com/jp/products/flashplayer/",
			pluginsBanner:'<img src="/image/flash_player.gif" border="0">'
		};

		this.Plugin["MP3Sound"]={
			progID:["ShockwaveFlash.ShockwaveFlash"],
			pluginsName:"Shockwave Flash",
			classID:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",
			codeBase:"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=[VERSION],0,0,0",
			paramFile:"movie",
			wmode:'opaque',
			pluginsPage:"http://www.adobe.com/go/getflashplayer_jp",
			mimeType:"application/x-shockwave-flash",
			aboutPage:"http://www.adobe.com/jp/products/flashplayer/",
			pluginsBanner:'<img src="/image/flash_player.gif" border="0">'
		};

		this.Plugin["QuickTime"]={
			progID:["QuickTimeCheckObject.QuickTimeCheck.1"],
			pluginsName:"QuickTime Plug-in",
			classID:"clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B",
			codeBase:"http://www.apple.com/qtactivex/qtplugin.cab",
			paramFile:"SRC",
			wmode:'transparent',
			pluginsPage:"http://www.apple.com/jp/quicktime/download/",
			mimeType:"video/quicktime",
			aboutPage:"http://www.apple.com/jp/quicktime/",
			pluginsBanner:'<img src="/image/quicktime.gif" border="0">'
		};

		this.Plugin["WindowsMedia"]={
			progID:["WMPlayer.OCX"],
			pluginsName:"Windows Media Player",
			classID:"CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95",
			codeBase:"http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715",
			paramFile:"FileName",
			wmode:'transparent',
			pluginsPage:"http://www.microsoft.com/Windows/MediaPlayer/",
			mimeType:"application/x-mplayer2",
			aboutPage:"http://www.microsoft.com/japan/windows/windowsmedia/player/11/default.aspx",
			pluginsBanner:'<img src="/image/mediaplayer.gif" border="0">'
		};

		this.Plugin["Flip4Mac"]={
			progID:["WMPlayer.OCX"],
			pluginsName:"Flip4Mac",
			classID:"CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95",
			codeBase:"http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715",
			paramFile:"FileName",
			wmode:'transparent',
			pluginsPage:"http://www.microsoft.com/Windows/MediaPlayer/",
			mimeType:"application/x-mplayer2",
			aboutPage:"http://www.microsoft.com/japan/windows/windowsmedia/player/wmcomponents.mspx",
			pluginsBanner:'<img src="/image/flip4mac.gif" border="0">'
		};
	},

	Set:function(objID,useApp,useVer,Src,Width,Height,options){
		this.Config[objID]=new CD_embed.Setting();
		if($(objID)){
			var givenAttrs=$(objID).attributes;
			if(CD.UA.asn == "ie")var styleAttr=$(objID).style.cssText;
			if(CD_core.getAttribute($(objID),'title'))$(objID).removeAttribute('title');

			//conver object to div
			if($(objID).tagName != "DIV"){
				var div=document.createElement("div");
				$(objID).parentNode.insertBefore(div,$(objID));
				$(objID).parentNode.removeChild($(objID));
				CD_core.setAttribute(div,"id",objID);
			}

			//adjust Height attribute
			Height=this.adjustHeight(useApp,options,Height);

			//attach attribute to converted div
			//if(givenAttrs){
			for(var a=0;a<givenAttrs.length;a++){
				var attr=givenAttrs[a].name.toLowerCase()
				if(attr != "classid" && attr != "title"){
					switch(attr){
						case "class":
							$(objID).className=givenAttrs[a].value;
						break;
						case "height":
							CD_core.setAttribute($(objID),'height',Height);
						break;
						case "style":
							if(CD.UA.asn != "ie"){
								var styleAttr=givenAttrs[a].value;
								if(styleAttr.indexOf("height")!=-1){
									styleAttr=styleAttr.replace(/height: *\d+px/gi,"height:"+Height+"px");
								}
								CD_core.setAttribute($(objID),attr,styleAttr);
							}else{
								if(styleAttr.toLowerCase().indexOf("height")!=-1){
									styleAttr=styleAttr.replace(/height: *\d+px/gi,"height:"+Height+"px");
								}
								$(objID).style.cssText=styleAttr;
							}
						break;
						default:
							if(givenAttrs[a].value)CD_core.setAttribute($(objID),attr,givenAttrs[a].value);
					}
				}
			}
			//}

			//trans plugin at using WindowsMedia on Mac
			if(useApp=="WindowsMedia" && CD.UA.os=="Mac"){
				useApp="Flip4Mac";
				useVer=0;
			}

			//check plugin installed && plugin version
			var definePlug=new this.definePlugin();
			this.Plugin=definePlug.Plugin;	/* insert array */
			this.isPlug[objID]=this.isInstall(useApp,useVer);

			if(this.isPlug[objID]){
				var objs=this.Create(objID,useApp,useVer,Src,Width,Height,options,0);
				if(CD.UA.asn=="ie"){	// for ie to write in HTML Code to $(objID)
					$(objID).innerHTML=objs;
				}else{	//DOM controll
					$(objID).appendChild(objs);
				}
			}else{
				// not plugin message
				var falseMsg=this.Config[objID].falseMessage;
				falseMsg=falseMsg.replace(/\[PLUGIN_NAME\]/g,this.Plugin[useApp].pluginsName);
				falseMsg=falseMsg.replace(/\[VERSION\]/g,useVer);
				falseMsg=falseMsg.replace(/\[PLUGIN_DWURL\]/g,this.Plugin[useApp].pluginsPage);
				falseMsg=falseMsg.replace(/\[PLUGIN_BANNER\]/g,this.Plugin[useApp].pluginsBanner);
				falseMsg=falseMsg.replace(/\[PLUGIN_URL\]/g,this.Plugin[useApp].aboutPage);
				$(objID).innerHTML=falseMsg;
			}
		}
	},

	Create:function(objID,useApp,useVer,Src,Width,Height,options,domOnly){
		//translate src value at using Flash Video or MP3
		if(useApp=="FlashVideo")Src="../asp/vplay.swf?targetMovie="+Src+"&tgW="+Width+"&tgH="+Height;
		if(useApp=="MP3Sound")Src="../asp/mplay.swf?targetMovie="+Src+"&tgW="+Width+"&tgH="+Height;

		//translate version string on codebase attribute
		this.Plugin[useApp].codeBase=this.Plugin[useApp].codeBase.replace(/\[VERSION\]/,useVer);

		//start create
		var objectTagID=objID+"Object";
		var objs;
		if(CD.UA.asn=="ie" && !domOnly){	// for ie to write in HTML Code to $(objID)
			var params='';
			var embeds='';
			var optionParam=options.split(",");
			var params=new Array();
			for(var i=0;i<optionParam.length;i++){
				var paramPair=optionParam[i].split("=");
				//trans bool param
//				if(paramPair[1]=="true" || paramPair[1]==1)paramPair[1]=1;
//				if(paramPair[1]=="false" || paramPair[1]==0)paramPair[1]=0;
					params+='<param name="'+paramPair[0]+'" value="'+paramPair[1]+'">';
					embeds+=' '+paramPair[0].toLowerCase()+'="'+paramPair[1]+'"';
			}
	
			objs='';
			objs+='<object id="'+objectTagID+'"';
			objs+=' classid="'+this.Plugin[useApp].classID+'"';
			objs+=' codebase="'+this.Plugin[useApp].codeBase+'"';
			objs+=' width="'+Width+'"';
			objs+=' height="'+Height+'"';
			if(useApp=="WindowsMedia"){
				objs+=' type="application/x-oleobject"';
				objs+=' standby="Loading MicrosoftR WindowsR Media Player components..."';
			}
			objs+='>';
			objs+='<param name="'+this.Plugin[useApp].paramFile+'" value="'+Src+'">';
			objs+='<param name="wmode" value="'+this.Plugin[useApp].wmode+'">';
			objs+=params;
			objs+='<embed';
			objs+=' name="'+objectTagID+'"';
			objs+=' pluginspage="'+this.Plugin[useApp].pluginsPage+'"';
			objs+=' type="'+this.Plugin[useApp].mimeType+'"';
			objs+=' width="'+Width+'"';
			objs+=' height="'+Height+'"';
			objs+=' src="'+Src+'"';
			objs+=' wmode="'+this.Plugin[useApp].wmode+'"';
			objs+=embeds;
			objs+='>';
			objs+='</embed>';
			objs+='</object>';
		}else{	//DOM controll
			objs=CD_core.createObject("object",objectTagID,'',$(objID),0);
			CD_core.setAttribute(objs,'classid',this.Plugin[useApp].classID);
			CD_core.setAttribute(objs,'codebase',this.Plugin[useApp].codeBase);
			CD_core.setAttribute(objs,'width',Width);
			CD_core.setAttribute(objs,'height',Height);
			if(useApp=="WindowsMedia"){
				CD_core.setAttribute(objs,'type','application/x-oleobject');
				CD_core.setAttribute(objs,'standby','\'Loading MicrosoftR WindowsR Media Player components...\'');
			}
			if(useApp=="Flip4Mac"){
				CD_core.setAttribute(objs,'type',this.Plugin[useApp].mimeType);
				CD_core.setAttribute(objs,'standby','\'Loading MicrosoftR WindowsR Media Player components...\'');
			}
			//attach param
			var paramTag=document.createElement("param");
			CD_core.setAttribute(paramTag,"name",this.Plugin[useApp].paramFile);
			CD_core.setAttribute(paramTag,"value",Src);
			objs.appendChild(paramTag);
			//create <embed> Object
			if(CD.UA.asn!="ie"){
				var embs=document.createElement("embed");
				CD_core.setAttribute(embs,'pluginspage',this.Plugin[useApp].pluginsPage);
				CD_core.setAttribute(embs,'name',objectTagID);
				CD_core.setAttribute(embs,'type',this.Plugin[useApp].mimeType);
				CD_core.setAttribute(embs,'width',Width);
				CD_core.setAttribute(embs,'height',Height);
				CD_core.setAttribute(embs,'src',Src);
			}
			//attach option param
			if(options){
				var optionParam=options.split(",");
				var params=new Array();
				for(var i=0;i<optionParam.length;i++){
					var paramPair=optionParam[i].split("=");
					//trans bool param
					//if(paramPair[1]=="true" || paramPair[1]==1)paramPair[1]=1;
					//if(paramPair[1]=="false" || paramPair[1]==0)paramPair[1]=0;
					paramTag=document.createElement("param");
					CD_core.setAttribute(paramTag,"name",paramPair[0]);
					CD_core.setAttribute(paramTag,"value",paramPair[1]);
					objs.appendChild(paramTag);
					if(CD.UA.asn!="ie")CD_core.setAttribute(embs,paramPair[0],paramPair[1]);
				}
			}
			//append embed
			if(CD.UA.asn!="ie")objs.appendChild(embs);
			//remove initial
/*
			for(var i=0;i<$(objID).childNodes.length;i++){
				$(objID).removeChild($(objID).childNodes[i]);
			}
*/
		}
		return objs;
	},

	adjustHeight:function(useApp,options,Height){
		//adjust height at using WindowsMwdia
		if(useApp=="WindowsMedia" || useApp=="Flip4Mac"){
			if(CD.UA.os=="Mac"){
				Height=(parseInt(Height)+16);
			}else{
				if((CD.UA.osVer=="Seven" || CD.UA.osVer=="Vista") && CD.UA.asn != "ie"){
					//use with Windows media plugin for Firefox
					Height=(parseInt(Height)+65);
				}else{
					if(options.toLowerCase().indexOf("showcontrols=1")!=-1)Height=(parseInt(Height)+45);
					if(options.toLowerCase().indexOf("showstatusbar=1")!=-1)Height=(parseInt(Height)+24);
				}
			}
		}
		//adjust height at using QuickTime
		if(useApp=="QuickTime"){
			if(options.toLowerCase().indexOf("controller=0")==-1 && options.toLowerCase().indexOf("controller=false")==-1){
				Height=(parseInt(Height)+16);
			}
		}
		//adjust height at using Flash Video
		if(useApp=="FlashVideo")Height=(parseInt(Height)+20);

		//adjust height at using MP3
		if(useApp=="MP3Sound")Height=(parseInt(Height)+20);

		return Height;
	},

	isInstall:function(useApp,useVer){	
		var ver=undefined;
		var app='';
		var installed=false;

		if(CD.UA.asn=="ie"){
			try{
				app=new ActiveXObject(this.Plugin[useApp].progID);
				switch(useApp){
					case "Flash":
						ver=app.FlashVersion()/0x10000;
					break;
					case "FlashVideo":
						ver=app.FlashVersion()/0x10000;
					break;
					case "QuickTime":
						ver=app.QuickTimeVersion.toString(16)/1000000;
						ver=ver.substring(0,3);
					break;
					case "WindowsMedia":
						ver=app.versionInfo.split(".")[0];
					break;
				}
			}catch(e){};
		}else{
			for(var i=0;i<navigator.plugins.length;i++){
				var checkApp=navigator.plugins[i];
				if(checkApp.name.indexOf(this.Plugin[useApp].pluginsName)!=-1){
					app=checkApp;					
					break;
				}
			}
			if(app){
				switch(useApp){
					case "Flash":
						sp=app.description.indexOf("Flash");
						ep=app.description.lastIndexOf(" ");
						ver=parseFloat(app.description.substring(sp+6,ep));
					break;
					case "FlashVideo":
						sp=app.description.indexOf("Flash");
						ep=app.description.lastIndexOf(" ");
						ver=parseFloat(app.description.substring(sp+6,ep));
					break;
					case "MP3Sound":
						sp=app.description.indexOf("Flash");
						ep=app.description.lastIndexOf(" ");
						ver=parseFloat(app.description.substring(sp+6,ep));
					break;
					case "QuickTime":
						if(CD.UA.os!="iOS"){
							ver=app.name.split(" ")[2];
							ver=ver.substring(0,3);
						}else{
							ver=7;
						}
					break;
					case "WindowsMedia":
						ver=useVer;
					break;
					case "Flip4Mac":
						ver=app.name.split("Plugin ")[1].split(".")[0];
					break;
				}
			}
		}

		if(app && ver>=0 && ver>=parseInt(useVer)){
			installed=true;
		}

		return installed;
	}
}

/*==========================================================
functions for interchange lower version
==========================================================*/

function CD_embedSwf(ID,Src,Width,Height,L,Q,M,B,useVer,objID){
	if(!objID)CD_createEmbedDiv();	//create object
	L=(L==1 || L=='true')?true:false;	M=(M==1 || M=='true')?true:false;	//create options
	var options="loop="+L+",quality="+Q+",menu="+M+",bgcolor="+B;
	CD_embed.Set(objID,"Flash",useVer,Src,Width,Height,options)	//exec
}

function CD_embedWMV(ID,Src,Width,Height,mC,mA,mS,objID){
	if(!objID)CD_createEmbedDiv();	//create object
	var options="ShowControls="+mC+",AutoStart="+mA+",ShowStatusBar="+mS;	//create options
	CD_embed.Set(objID,"WindowsMedia",9,Src,Width,Height,options);	//exec
}

function CD_embedQTM(ID,Src,Width,Height,mC,mA,objID){
	if(!objID)CD_createEmbedDiv();	//create object
	var options="CONTROLLER="+mC+","+"AUTOPLAY="+mA;	//create options
	CD_embed.Set(objID,"QuickTime",7,Src,Width,Height,options);	//exec
}

function CD_embedMOV(movID,qtpass,wmpass,Width,Height,mControll,mAutoPlay,mStatus,DivObject){
	if(CD.UA.os=="Mac"){
		CD_embedQTM(DivObject,movID,qtpass,Width,Height,mControll,mAutoPlay);
	}else{
		CD_embedWMV(DivObject,movID,wmpass,Width,Height,mControll,mAutoPlay,mStatus);
	}
}

function CD_createEmbedDiv(){
	objID="CDembedBox";
	var obj='<span id="'+objID+'"></span>';
	document.write(obj);
}


/*
----------------------------------------------------------------
	cd_calendar
	Part of CreativeDevice JavaScript Liabrary
	create calnder
----------------------------------------------------------------
	version			0.80 (Beta)
	last update		2009/12/26
	author			Yoshihisa Kato/YAH!-cyberstudio
----------------------------------------------------------------
*/

var CD_calendar={

	Setting:function(){
		this.openTrigger="カレンダー";

		this.yearType=1;
		this.weekType="J";	// J,EO(小文字),E1（大文字）,E2（頭大文字）
		this.outdayValue="-";

		//
		this.calClass="CDCalTable";
		this.weekClass="CDCalDate";
		this.outdayClass="CDCalOut";
		this.weekdayClass="CDCalDay";
		this.saturdayClass="CDCalSat";
		this.sundayClass="CDCalSun";
		this.todayClass="CDCalTod";
		this.dateOverClass="CDCalOver";

		//
		this.navClass="CDNavTable";

		this.ymFormat="Y年M月";
		this.ymClass="CDCalYMFormat";
		
		this.naviPosition="right";	//left or right
		this.naviButtonClass="CDaddFormNavi";

		this.prevClass="CDCalPrev";
		this.prevValue="../include/image/arrow_l.gif";

		this.nextClass="CDCalNext";
		this.nextValue="../include/image/arrow_r.gif";

		this.closeClass="CDCalClose";
		this.closeValue="../include/image/arrow_close.gif";

		this.jumpClass="CDCalClose";

		this.jumpType="input";	//input	select	none

		this.jumpValue="GO";	//button value if(jumpType==input)
		this.inputClass="CDCaljumpInput";

		this.jumpSelectRange=12;
		this.jumpSelectType="as";	//as:ascend de:descend ub:upperbelow

		this.clickArgument={		//replace @args in script to use this.clickFunction
			"MESSAGE0":"こんにちは",
			"MESSAGE1":"いい天気"
		};

		this.clickFunction=function(){
			alert(this.args["MESSAGE0"]+":"+this.args["MESSAGE1"]);
		};

		this.opened=0;
		this.openedStyle="";
		this.closedStyle="background:none;padding:0px;border:none;";

		this.openedClass="";
		this.closedClass="";

		//this.enableMouseDate="3,5,6,7,8,11,16,18,19,21,22,24,26,27,30";
		this.enableMouseDate="";
	},

	//create caldenr configure setting object
	Config:new Array(),

	//viewed Calendar Year & Month
	CalY:new Array(),
	CalM:new Array(),

	//create calendar
	Create:function(obj,setting,setY,setM){
		//load calender setting
		if(!this.Config[obj]){
			if(!setting){
				this.Config[obj]=new this.Setting();
			}else{
				this.Config[obj]=setting;
			}
		}

		//enable mouse action judge
		var enableMouse=new Array();
		if(this.Config[obj].enableMouseDate){
			var enableMouseIndex=this.Config[obj].enableMouseDate.split(",");
			for(var i=0;i<enableMouseIndex.length;i++){
				enableMouse[enableMouseIndex[i]]=1;
			}
		}

		//get now date
		var D=new Date();
		var Tdy=D.getFullYear();
		var Tdm=D.getMonth()+1;
		var Tdd=D.getDate();
		var Tda=D.getDay();

		//setting viewing month
		var vy=0;
		var vm=0;
		switch(setM){
			case "up":
				this.CalM[obj]++;
				vy=(this.CalM[obj]>12)?this.CalY[obj]+1:this.CalY[obj];
				vm=(this.CalM[obj]>12)?1:this.CalM[obj];
			break;
			case "dw":
				this.CalM[obj]--;
				vy=(this.CalM[obj]<1)?this.CalY[obj]-1:this.CalY[obj];
				vm=(this.CalM[obj]<1)?12:this.CalM[obj];
			break;
			case "":
				vy=Tdy;
				vm=Tdm;
			break;
			case undefined:
				vy=Tdy;
				vm=Tdm;
			break;
			default:
				vy=parseInt(setY);
				vm=parseInt(setM);
		}
		this.CalY[obj]=vy;
		this.CalM[obj]=vm;

		//getting first & end day
		D.setFullYear(vy,vm-1,1);		//first day
		var startDay=D.getDay();
		var endofDate=CD_timeControl.getMonthLastDate(vy,vm);		//end day
		D.setDate(endofDate);
		var	endofDay=D.getDay();

		/*=====create calendar=====*/
		//setting Div
		if(!$(obj))CD_LabelTag.Show('',obj,'','','',"remove",'');

		var cal=$(obj);

		//initialize
		this.init(cal);

		// table row object
		var trs='';
		// table cell object
		var tds='';
		//	td value
		var vd='';
		// td class
		var tdClass='';

		//navigation part
		var nav=document.createElement("table");
		CD_core.setAttribute(nav,'class',this.Config[obj].navClass);
		var navBody=document.createElement("tbody");
		nav.appendChild(navBody);
		trs=document.createElement("tr");

		// year & month viewing
		var viewYM=document.createElement("td");
		CD_core.setAttribute(viewYM,'class',this.Config[obj].ymClass);

		switch(this.Config[obj].jumpType.toLowerCase()){
			case "input":
				var inputYview=(this.Config[obj].yearType)?CD_timeControl.changeEraToJ(vy):vy;
				var inputY=CD_core.createInputField("text",inputYview,'',obj+'inputY',this.Config[obj].inputClass,5);
				var inputM=CD_core.createInputField("text",vm,'',obj+'inputM',this.Config[obj].inputClass,3);
				var yPos=this.Config[obj].ymFormat.indexOf("Y");
				var mPos=this.Config[obj].ymFormat.indexOf("M");

				var format0='';	var format1='';	var format2='';
				if(yPos<mPos){
					format0=this.Config[obj].ymFormat.substr(0,yPos-1);
					format1=this.Config[obj].ymFormat.substr(yPos+1,mPos-1);
					format2=this.Config[obj].ymFormat.substr(mPos+1,this.Config[obj].ymFormat.length);
				}else{
					var format0=this.Config[obj].ymFormat.substr(0,mPos-1);
					var format1=this.Config[obj].ymFormat.substr(mPos+1,yPos-1);
					var format2=this.Config[obj].ymFormat.substr(yPos+1,this.Config[obj].ymFormat.length);
				}

				if(format0){
					format0=document.createTextNode(format0);
					viewYM.appendChild(format0);
				}
				if(yPos<mPos){
					viewYM.appendChild(inputY);
				}else{
					viewYM.appendChild(inputM);
				}
				if(format1){
					format1=document.createTextNode(format1);
					viewYM.appendChild(format1);
				}
				if(yPos<mPos){
					viewYM.appendChild(inputM);
				}else{
					viewYM.appendChild(inputY);
				}
				if(format2){
					format2=document.createTextNode(format2);
					viewYM.appendChild(format2);
				}
				//jump month navigation
				var jumpNav=CD_core.createButtonField("button",this.Config[obj].jumpValue,"","CDaddFormFunc","cursor:pointer;margin:0px 2px 0px;");
				jumpNav.onclick=function(){
					var jumpY=(CD_calendar.Config[cal.id].yearType)?CD_timeControl.changeEraToE($(cal.id+"inputY").value):$(cal.id+"inputY").value;
					var jumpM=$(cal.id+"inputM").value;
					if(jumpM>12){
						alert("存在しない月が指定されています。");
					}else{
						CD_calendar.Create(cal.id,'',jumpY,jumpM);
					}
				}
				viewYM.appendChild(jumpNav);
			break;
			case "select":
				var selection=document.createElement("select");
				CD_core.setAttribute(selection,"id",obj+"select");
				var yPos=this.Config[obj].ymFormat.indexOf("Y");
				var mPos=this.Config[obj].ymFormat.indexOf("M");
				var format0='';	var format1='';	var format2='';
				if(yPos<mPos){
					format0=this.Config[obj].ymFormat.substr(0,yPos-1);
					format1=this.Config[obj].ymFormat.substr(yPos+1,mPos-1);
					format2=this.Config[obj].ymFormat.substr(mPos+1,this.Config[obj].ymFormat.length);
				}else{
					format0=this.Config[obj].ymFormat.substr(0,mPos-1);
					format1=this.Config[obj].ymFormat.substr(mPos+1,yPos-1);
					format2=this.Config[obj].ymFormat.substr(yPos+1,this.Config[obj].ymFormat.length);
				}
				var	soY=0;	var	soM=0;
				switch(this.Config[obj].jumpSelectType){
					case "as":
						var jumpOpt=parseInt(vm)+this.Config[obj].jumpSelectRange;
						for(var i=vm;i<jumpOpt;i++){
							soY=(i>12)?parseInt((Math.ceil(i/12)-1))+parseInt(vy):vy;
							soM=(i>12)?parseInt(i)-parseInt((Math.ceil(i/12)-1)*12):i;
							var options=this.createJumpOption(obj,soY,soM,format0,format1,format2,yPos,mPos);
							selection.appendChild(options);
						}
					break;
					case "de":
						var jumpOpt=parseInt(vm)-this.Config[obj].jumpSelectRange;
						for(var i=vm;i>jumpOpt;i--){
							soY=(i<1)?parseInt(vy)+parseInt((Math.ceil(i/12)-1)):vy;
							soM=(i<1)?parseInt(i)-parseInt((Math.ceil(i/12)-1)*12):i;
							var options=this.createJumpOption(obj,soY,soM,format0,format1,format2,yPos,mPos);
							selection.appendChild(options);
						}
					break;
					case "ub":
						var jumpOpt=parseInt(vm)-this.Config[obj].jumpSelectRange;
						for(var i=vm;i>jumpOpt;i--){
							soY=(i<1)?parseInt(vy)+parseInt((Math.ceil(i/12)-1)):vy;
							soM=(i<1)?parseInt(i)-parseInt((Math.ceil(i/12)-1)*12):i;
							var options=this.createJumpOption(obj,soY,soM,format0,format1,format2,yPos,mPos);
							if(i==vm)CD_core.setAttribute(options,"selected",1);
							selection.appendChild(options);
						}
						var jumpOpt=parseInt(vm)+this.Config[obj].jumpSelectRange;
						for(var i=vm+1;i<jumpOpt;i++){
							soY=(i>12)?parseInt((Math.ceil(i/12)-1))+parseInt(vy):vy;
							soM=(i>12)?parseInt(i)-parseInt((Math.ceil(i/12)-1)*12):i;
							var options=this.createJumpOption(obj,soY,soM,format0,format1,format2,yPos,mPos);
							selection.insertBefore(options,selection.firstChild);
						}
					break;
					case "bu":
						var jumpOpt=parseInt(vm)+this.Config[obj].jumpSelectRange;
						for(var i=vm+1;i<jumpOpt;i++){
							soY=(i>12)?parseInt((Math.ceil(i/12)-1))+parseInt(vy):vy;
							soM=(i>12)?parseInt(i)-parseInt((Math.ceil(i/12)-1)*12):i;
							var options=this.createJumpOption(obj,soY,soM,format0,format1,format2,yPos,mPos);
							selection.appendChild(options);
						}
						var jumpOpt=parseInt(vm)-this.Config[obj].jumpSelectRange;
						for(var i=vm;i>jumpOpt;i--){
							soY=(i<1)?parseInt(vy)+parseInt((Math.ceil(i/12)-1)):vy;
							soM=(i<1)?parseInt(i)-parseInt((Math.ceil(i/12)-1)*12):i;
							var options=this.createJumpOption(obj,soY,soM,format0,format1,format2,yPos,mPos);
							if(i==vm)CD_core.setAttribute(options,"selected",1);
							selection.insertBefore(options,selection.firstChild);
						}
					break;
				}
				selection.onchange=function(){
					var jumpArg=$(cal.id+"select").options[$(cal.id+"select").options.selectedIndex].value.split(";");
					CD_calendar.Create(cal.id,'',jumpArg[0],jumpArg[1]);
				}
				viewYM.appendChild(selection);
			break;

			default:
				var viewY=(this.Config[obj].yearType)?CD_timeControl.changeEraToJ(vy):vy;
				viewYM.Txt=this.Config[obj].ymFormat.replace(/Y/,viewY).replace(/M/,vm);
				viewYM.Obj=document.createTextNode(viewYM.Txt);
				viewYM.appendChild(viewYM.Obj);
		}

		trs.appendChild(viewYM);

		//previous month navigation
		var prevNav=document.createElement("td");
		CD_core.setAttribute(prevNav,'class',this.Config[obj].prevClass);
		prevNav.anch=CD_core.createButtonField("button",this.Config[obj].prevValue,"",this.Config[obj].naviButtonClass,"cursor:pointer;");
		prevNav.anch.onclick=function(){
			CD_calendar.Create(cal.id,'','','dw');
		}
		prevNav.appendChild(prevNav.anch);
		if(this.Config[obj].naviPosition=="left"){
			trs.insertBefore(prevNav,viewYM);
		}else{
			insertAfter(prevNav,viewYM);
		}

		//next month navigation
		var nextNav=document.createElement("td");
		CD_core.setAttribute(nextNav,'class',this.Config[obj].nextClass);
		nextNav.anch=CD_core.createButtonField("button",this.Config[obj].nextValue,"",this.Config[obj].naviButtonClass,"cursor:pointer;");
		nextNav.anch.onclick=function(){
			CD_calendar.Create(cal.id,'','','up');
		}
		nextNav.appendChild(nextNav.anch);
		insertAfter(nextNav,prevNav);

		//close calendar navigation
/*
		var closeNav=document.createElement("td");
		CD_core.setAttribute(closeNav,'class',this.Config[obj].closeClass);
		closeNav.anch=CD_core.createButtonField("button",this.Config[obj].closeValue,"",this.Config[obj].naviButtonClass,"cursor:pointer;");
		closeNav.anch.onclick=function(){
			CD_calendar.Close(cal);
		}
		closeNav.appendChild(closeNav.anch);
		insertAfter(closeNav,trs.lastChild);
*/
		navBody.appendChild(trs);	
		cal.appendChild(nav);

		//calender
		var calendar=document.createElement("table");
		CD_core.setAttribute(calendar,'class',this.Config[obj].calClass);
		cal.appendChild(calendar);

		//week header
		var weekday=document.createElement("thead");
		trs=document.createElement("tr");
//		CD_core.setAttribute(trs,'class',this.Config[obj].weekClass);
		calendar.appendChild(weekday);
		weekday.appendChild(trs);

		for(var i=0;i<CD_timeControl.weekDays[this.Config[obj].weekType].length;i++){
			tds=document.createElement("th");
			CD_core.setAttribute(tds,"scope","col");
			tds.label=document.createTextNode(CD_timeControl.weekDays[this.Config[obj].weekType][i]);
			tds.appendChild(tds.label);
			CD_core.setAttribute(tds,'class',this.Config[obj].weekClass);
			trs.appendChild(tds);
		}

		//date
		var dateList=document.createElement("tbody");
		calendar.appendChild(dateList);

		//１週目
		trs=document.createElement("tr");
		dateList.appendChild(trs);

		for(i=0;i<7;i++){
			if(i<startDay){
				tdClass=this.Config[obj].outdayClass;
				vd=this.Config[obj].outdayValue;
				tds=document.createElement("td");
				tds.label=document.createTextNode(vd);
				tds.mainClass=tds.className=tdClass;
			}else{
				vd=i+1-startDay;
				if(vy==Tdy && vm==Tdm && vd==Tdd){
					tdClass=this.Config[obj].todayClass;
				}else if(i%7==0){
					tdClass=this.Config[obj].sundayClass;
				}else if(i%7==6){
					tdClass=this.Config[obj].saturdayClass;
				}else{
					tdClass=this.Config[obj].weekdayClass;
				}
				tds=document.createElement("td");
				tds.label=document.createTextNode(vd);
				tds.mainClass=tds.className=tdClass;
				tds.overClass=this.Config[obj].dateOverClass;
				if(!this.Config[obj].enableMouseDate || enableMouse[vd]==1){
					tds.args=this.Config[obj].clickArgument;
					tds.Y=vy;	tds.M=vm;	tds.D=vd;
					tds.onmouseover=function(){
						changeClass(this,this.overClass);
					}
					tds.onmouseout=function(){
						changeClass(this,this.mainClass);
					}
					tds.onclick=eval(this.Config[obj].clickFunction);
				}
			}
			tds.appendChild(tds.label);
			trs.appendChild(tds);
		}

		//2週目以降
		for(i=0;i<=endofDate;i++){
			if(vd<endofDate){
				vd++;
				if(vy==Tdy && vm==Tdm && vd==Tdd){
					tdClass=this.Config[obj].todayClass;
				}else if(i%7==0){
					tdClass=this.Config[obj].sundayClass;
				}else if(i%7==6){
					tdClass=this.Config[obj].saturdayClass;
				}else{
					tdClass=this.Config[obj].weekdayClass;
				}

				if(i%7==0){
					trs=document.createElement("tr");
					dateList.appendChild(trs);
				}
				tds=document.createElement("td");
				tds.label=document.createTextNode(vd);
				tds.mainClass=tds.className=tdClass;
				tds.overClass=this.Config[obj].dateOverClass;
				if(!this.Config[obj].enableMouseDate || enableMouse[vd]==1){
					tds.onmouseover=function(){
						changeClass(this,this.overClass);
					}
					tds.onmouseout=function(){
						changeClass(this,this.mainClass);
					}
					tds.args=this.Config[obj].clickArgument;
					tds.Y=vy;	tds.M=vm;	tds.D=vd;
					tds.onclick=eval(this.Config[obj].clickFunction);
				}
				tds.appendChild(tds.label);
				trs.appendChild(tds);
			}
		}

		//次月分の書き出し
		if(endofDay!=6){
			for(i=0;i<6-endofDay;i++){
				tds=document.createElement("td");
				tds.label=document.createTextNode(this.Config[obj].outdayValue);
				tds.className=this.Config[obj].outdayClass;
				tds.appendChild(tds.label);
				trs.appendChild(tds);
			}
		}
		if(this.Config[obj].openedStyle)CD_core.setAttribute(cal,"style",this.Config[obj].openedStyle);
		if(this.Config[obj].openedClass)cal.className=this.Config[obj].openedClass;
		this.Config[obj].opened=1;
	},

	createJumpOption:function(obj,soY,soM,format0,format1,format2,yPos,mPos){
		var options=document.createElement("option");
		CD_core.setAttribute(options,"value",soY+";"+soM);

		options.label='';
		if(this.Config[obj].yearType)soY=CD_timeControl.changeEraToJ(soY);

		if(format0)options.label+=format0;
		options.label+=(yPos<mPos)?soY:soM;
		if(format1)options.label+=format1;
		options.label+=(yPos<mPos)?soM:soY;
		if(format2)options.label+=format2;
		options.labelNode=document.createTextNode(options.label);

		options.appendChild(options.labelNode);

		return options;
	},

	Attach:function(obj,setting,setY,setM){
		if(typeof(obj)=="string" || !obj){
			if(!$(obj)){
				var dum=new Object();
				dum.id=obj;
				obj=dum;
			}else{
				obj=$(obj);
			}
		}
		//load calender setting
		if(!this.Config[obj.id]){
			if(!setting){
				this.Config[obj.id]=new this.Setting();
			}else{
				this.Config[obj.id]=setting;
			}
		}
		//get now date
		var D=new Date();
		var Tdy=D.getFullYear();
		var Tdm=D.getMonth()+1;

		if(!this.Config[obj.id]){
			if(!setY)setY=Tdy;
			if(!setM)setM=Tdm;
		}else{
			if(!setY)setY=this.CalY[obj.id];
			if(!setM)setM=this.CalM[obj.id];
		}
		if(!$(obj.id+"_Trigger")){
			var Trigger=CD_core.createButtonField("button",this.Config[obj.id].openTrigger,obj.id+"_Trigger",'CDaddFormFunc','cursor:pointer;')
			Trigger.obj=obj.id;
			obj.parentNode.insertBefore(Trigger,obj);
			obj.parentNode.removeChild(obj);
		}else{
			Trigger=$(obj.id+"_Trigger");
		}

		Trigger.onclick=function(){
			CD_calendar.Create(this.obj,setting,setY,setM);
		}
		this.Config[obj.id].opened=0;
	},

	init:function(obj){
		obj=(typeof(obj)=="string")?$(obj):obj;
		var childID='';
		var isLabelBar=0;
		if(obj){
			for(var i=0;i<obj.childNodes.length;i++){
				childID=CD_core.getAttribute(obj.childNodes[i],'id');
				if(!childID || childID.indexOf('_labelTagTop')==-1){
					obj.removeChild(obj.childNodes[i]);
					i--;
				}
			}
		}
	},

	Close:function(obj,setY,setM){
		obj=(typeof(obj)=="string")?$(obj):obj;
		//this.init(obj);
		if(!setY)setY=0;	if(!setM)setM=0;
		if(setY && setM){
			this.Attach(obj,'',parseInt(setY),parseInt(setM));
		}else{
			this.Attach(obj);
		}
		if(this.Config[obj.id].closedStyle)CD_core.setAttribute(obj,"style",this.Config[obj.id].closedStyle);
		if(this.Config[obj.id].closedClass)obj.className=this.Config[obj.id].closedClass;
		obj.parentNode.removeChild(obj);
	}
}


/*
----------------------------------------------------------------
	cd_cssSwitch
	Part of CreativeDevice JavaScript Liabrary
	change linking style Sheet file 
----------------------------------------------------------------
	version			1.00
	last update		2009/08/12
----------------------------------------------------------------
*/

var CD_cssSwitch={
	Setting:function(){
		this.selectClass="Selected";
		this.defaultCSS='FONTM';
		this.remindName='FS';
		this.complete='';
	},

	Config:new Array(),
	Groups:new Array(),

	Load:function(Ids,ClassVal,cssGroup,Setting){
		this.Config[cssGroup]=(Setting)?Setting:new this.Setting();
		var nowSelect=(CD_core.getCookie(this.Config[cssGroup].remindName)||this.Config[cssGroup].defaultCSS);

		var linkArray=document.getElementsByTagName('link');

		var attachLinkTag='<div id="'+Ids+'"';
		if(ClassVal)attachLinkTag+=' class="'+ClassVal+'"';
		attachLinkTag+='><ul>';
		for(var n=0;n<linkArray.length;n++){
			if(linkArray[n].className==cssGroup){
				var clickNode=(CD_core.getAttribute(linkArray[n],'title').indexOf(".gif"||".jpg"||".png")!=-1)?'<img src="'+CD_core.getAttribute(linkArray[n],'title')+'">':CD_core.getAttribute(linkArray[n],'title');
				var targetID=CD_core.getAttribute(linkArray[n],'id');
				attachLinkTag+='<li><a href="JavaScript:void(0)" ';
				attachLinkTag+=(targetID==nowSelect)?'class="'+this.Config[cssGroup].selectClass+'" ':' ';
				attachLinkTag+='onclick="CD_cssSwitch.Set(\''+cssGroup+'\',\''+Setting+'\',\''+targetID+'\',this)">';
				attachLinkTag+=clickNode+'</a></li>';
			}
		}
		attachLinkTag+='</ul></div>';
		document.write(attachLinkTag);

		if(!this.Groups[cssGroup])this.Groups[cssGroup]=$(Ids);
		this.Set(cssGroup,Setting,(CD_core.getCookie(this.Config[cssGroup].remindName)||this.Config[cssGroup].defaultCSS),'');
	},

	Set:function(cssGroup,setting,setCSS,obj){
		var defCSS=CD_core.getCookie(this.Config[cssGroup].remindName);
		if(!defCSS)defCSS=this.Config[cssGroup].defaultCSS;

		setCSS=(!setCSS || setCSS=="" || setCSS==null || setCSS=="undefined")?defCSS:setCSS;
		CD_core.setCookie(this.Config[cssGroup].remindName,setCSS,1,"/");

		var linksArray=new Array();
		var nowGroup='';

		if(CD.UA.asn=="ie"){
			linksArray=document.styleSheets;
			for(i=0;i<linksArray.length;i++){
				if(!linksArray[i].id)continue;
				nowGroup=document.getElementById(linksArray[i].id).className;
				if(nowGroup && nowGroup==cssGroup){
					linksArray[i].disabled=(linksArray[i].id==setCSS)?false:true;
				}
			}
		}else{
			linksArray=document.getElementsByTagName('link');
			for(i=0;i<linksArray.length;i++){
				if(!linksArray[i].id)continue;
				nowGroup=document.getElementById(linksArray[i].id).className;
				if(nowGroup && nowGroup==cssGroup){
					var targetFileID=linksArray[i].id;
					if(targetFileID==setCSS){
						document.getElementById(targetFileID).disabled=true;
						document.getElementById(targetFileID).disabled=false;
					}else{
						document.getElementById(targetFileID).disabled=true;
					}
				}
			}
		}

		if(obj){
			var clickLinks=this.Groups[cssGroup].getElementsByTagName("a");
			for(var i=0;i<clickLinks.length;i++){
				if(clickLinks[i]!=obj){
					clickLinks[i].className='';
				}else{
					clickLinks[i].className=this.Config[cssGroup].selectClass;
				}
			}
		}

		if(this.Config[cssGroup].complete)eval(this.Config[cssGroup].complete);
	}
}
