
/********************************************************************
  POP UP
*********************************************************************/

<!--
i=0;		
wn=0;			
function openBrWindow(theURL,features) { 
	if(i>0 && win1.closed==false){
		win1.close();	
	}
	wn++;	
	win1=window.open(theURL,wn,features); 
	i++;	
}
//-->

/********************************************************************
  INPUT FOCUS
*********************************************************************/

var colorful = new ColorfulInput;
colorful.skip = ['submit'];
colorful.color['focus'] = '#F0F5F7';
/*
window.onload = function() {
   colorful.set();
}*/
function ColorfulInput() {
   this.skip  = [];
   this.color = { 'blur': '', 'focus': '#EEEEEE' };

   this.set = function() {
      for (var i = 0; i < document.forms.length; i++) {
         for (var f = 0; f < document.forms[i].length; f++) {
            var elm = document.forms[i][f];
            if(!this._checkSkip(elm)) continue;

            this._setColor(elm, 'focus');
            this._setColor(elm, 'blur');
         }
      }
   }

   this._checkSkip = function(elm) {
      for(var i in this.skip) {
         if(elm.type == this.skip[i]) return false;
      }
      return true;
   }

   this._setColor = function(elm, type) { 
      var color = this.color[type];
      var event = function() { elm.style.backgroundColor = color; };

      if(elm.addEventListener) {
         elm.addEventListener(type, event, false);
      } else if(elm.attachEvent) {
         elm.attachEvent('on'+type, event);
      } else {
      	 var eventType = 'on'+type;
         elm.eventType = event;
      }
   }
}

/********************************************************************
  Scroll
*********************************************************************/
function scroller(i){
		scroller_up(i,1000);
}
	
function scroller_up(i,y){
	y = y + (i - y)*.1;
	window.scroll(0,y);
	if (((i - y) <= .6)&&((i - y) >= -.6))
	{					
		y = i;
	}else{
		setTimeout("scroller_up("+i+","+y+")",1);
	}
}

function scroller_e(i){
	y = 1;
	kyoukai = i*.6;
	while(y <= kyoukai)
	{
		window.scroll(0,y);
		y = y + (y*.08);
    }
	while(y != i)
	{
		window.scroll(0,y);
		y = y + (i-y)*.08;
		if (((i - y) <= .6)&&((i - y) >= -.6))
		{					
			y = i;
		}		
	}
}

/********************************************************************
  SwfObjects
*********************************************************************/

//v1.0
//Copyright 2006 Adobe Systems, Inc. All rights reserved.
function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '<object ';
  for (var i in objAttrs)
    str += i + '="' + objAttrs[i] + '" ';
  str += '>';
  for (var i in params)
    str += '<param name="' + i + '" value="' + params[i] + '" /> ';
  str += '<embed ';
  for (var i in embedAttrs)
    str += i + '="' + embedAttrs[i] + '" ';
  str += ' ></embed></object>';

  document.write(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":	
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "id":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}

/********************************************************************
  Cross Fade
*********************************************************************/

new function(){
    function setRollOver2(){
        if(!document.images){return;}
        var imgs = document.images;
        var insert = [];
        for(var i=0;i<imgs.length;i++){
            var splitname = imgs[i].src.split('_rollout.');
            if((splitname[1])&&(imgs[i].parentNode.tagName=='A')){
                var rolloverImg = document.createElement('img');
                rolloverImg.src = splitname[0]+'_rollover.'+splitname[1];
                var alpha = 0;
                rolloverImg.currentAlpha = alpha;
                rolloverImg.style.opacity = alpha/100;
                rolloverImg.style.filter = 'alpha(opacity='+alpha+')';
                rolloverImg.style.position = 'absolute';

                //ロールオーバー・アウト処理それぞれを設定
                addEvent(rolloverImg,'mouseover',function(){setFader(this,100);});
                addEvent(rolloverImg,'mouseout',function(){setFader(this,0);});

                // 後で追加するために追加場所と共に保存しておく
                // この時点で追加するとdocument.imagesが書き換わって不都合
                insert[insert.length] = {position:imgs[i],element:rolloverImg};
            }
        }
        // ↑で作ったロールオーバー画像を追加
        for(var i=0;i<insert.length;i++){
            var parent = insert[i].position.parentNode;
            parent.insertBefore(insert[i].element,insert[i].position);
        }
    }

    // 指定要素を指定透明度にするためのフェードアニメを設定する関数

    function setFader(targetObj,targetAlpha){
        targetObj.targetAlpha = targetAlpha;
        if(targetObj.currentAlpha==undefined){
            targetObj.currentAlpha = 100;
        }
        if(targetObj.currentAlpha==targetObj.targetAlpha){
            return;
        }
        if(!targetObj.fading){
            if(!targetObj.fader){
                targetObj.fader = fader;
            }
            targetObj.fading = true;
            targetObj.fader();
        }
    }

    // アルファ値をターゲット値に近づける関数
    // ターゲット値になったら終了

    function fader(){
        this.currentAlpha += (this.targetAlpha - this.currentAlpha)*0.2;
        if(Math.abs(this.currentAlpha-this.targetAlpha)<1){
            this.currentAlpha = this.targetAlpha;
            this.fading = false;
        }
        var alpha = parseInt(this.currentAlpha);
        this.style.opacity = alpha/100;
        this.style.filter = 'alpha(opacity='+alpha+')';
        if(this.fading){
            var scope = this;
            setTimeout(function(){fader.apply(scope)},30);
        }
    }

    // イベントを追加する関数

    function addEvent(eventTarget, eventName, func){
        if(eventTarget.addEventListener){
            // モダンブラウザ
            eventTarget.addEventListener(eventName, func, false);
        }else if(window.attachEvent){
            // IE
            eventTarget.attachEvent('on'+eventName, function(){func.apply(eventTarget);});
        }
    }

    addEvent(window,'load',setRollOver2);

}
