var EventNo = 0, EventOldNo = -1, EventCount = 0, EventStep = 10;
function funcEvent( no )
{
  var x, y;
  var obj;

  if ( 0 <= no && no < EventMax ) { EventNo = no; }

  if ( EventOldNo != -1 ) {
    obj = document.getElementById( "event" + EventOldNo );
    if ( !obj ) { return; }

    obj.style.visibility = "hidden";
    EventOldNo = -1;
  }

  obj = document.getElementById( "event" + EventNo );
  if ( !obj ) { return; }

  if ( EventCount == 0 ) {
    obj.style.visibility = "visible";
  }

  x = EventEndX + ( EventStep - ( EventCount + 1 ) )
    * ( ( EventStartX - EventEndX) / EventStep );
  y = EventEndY + ( EventStep - ( EventCount + 1 ) )
    * ( ( EventStartY - EventEndY) / EventStep );
  x = x + 90
  obj.style.left = x + "px";
  obj.style.top  = y + "px";

  if ( ++EventCount == EventStep ) {
    EventOldNo = EventNo;
    if ( ++EventNo == EventMax) { EventNo = 0; }
    EventCount = 0;
    return;
  }
  setTimeout( "funcEvent(" +  no + ");", 50 );
}

var TitleNo = 0, TitleCount = 0, TitleStep = 10;
var TitleStartX, TitleStartY, TitleEndX, TitleEndY;
var blnExexInit3 = false;
var blnExexInit4 = false;

function AnimeTitle( blink )
{
  var x, y;
  var obj = document.getElementById( "title" + TitleNo );

  if ( !obj ) {
    if ( blink == true ) {
			BlinkTitle();
		} else {
	    if ( blnExexInit3 == true ) { initFunc3(); }
	    if ( blnExexInit4 == true ) { initFunc4(); }
		}

    return;
  }
  if ( TitleCount == 0 ) {
    obj.style.visibility = "visible";
  }

  x = TitleEndX[TitleNo] + ( TitleStep - ( TitleCount + 1 ) )
    * ( ( TitleStartX[TitleNo] - TitleEndX[TitleNo]) / TitleStep );
  y = TitleEndY[TitleNo] + ( TitleStep - ( TitleCount + 1 ) )
    * ( ( TitleStartY[TitleNo] - TitleEndY[TitleNo]) / TitleStep );
  obj.style.left = x + "px";
  obj.style.top  = y + "px";

  if ( ++TitleCount == TitleStep ) { TitleNo++; TitleCount = 0; }
  setTimeout( "AnimeTitle(" + blink + ");", 50 );
}

function BlinkTitle()
{
  var obj = document.getElementById( "title0" );

  if ( TitleCount % 2 ) {
    obj.style.visibility = "visible";
  } else {
    obj.style.visibility = "hidden";
  }

  if ( ++TitleCount < 4 ) {
	  if ( TitleCount % 2 ) {
	    setTimeout( "BlinkTitle()", 100 );
	  } else {
	    setTimeout( "BlinkTitle()", 2000 );
	  }
  } else {
    obj.style.visibility = "hidden";

    if ( blnExexInit3 == true ) { initFunc3(); }
    if ( blnExexInit4 == true ) { initFunc4(); }
  }
}

function GetWinWidth()
{
  var width = 600;

  if ( window.innerWidth ) {
    width = window.innerWidth;
  } else
  if ( document.compatMode == "CSS1Compat" ) {
    width = document.body.parentNode.clientWidth;
  } else
  if ( document.body.clientWidth ) {
    width = document.body.clientWidth;
  }

  return width;
}

function GetWinHeight()
{
  var height = 800;

  if ( window.innerHeight ) {
    height = window.innerHeight;
  } else
  if ( document.compatMode == "CSS1Compat" ) {
    height = document.body.parentNode.clientHeight;
  } else
  if ( document.body.clientHeight ) {
    height = document.body.clientHeight;
  }

  return height;
}

var spaceWidth  = 20;
function AnimeLetter()
{
  if( document.getElementById ) {
    var obj = document.getElementById( "leftlogo" );
    obj.style.letterSpacing = spaceWidth + "px";

    spaceWidth -= 5;
    if ( spaceWidth >= 0 ) {
      setTimeout( "AnimeLetter();", 100 );
    } else {
      initFunc2();
    }
  }
}

var PageNo = 1;
function funcNextPage( no )
{
  var x, y;
  var obj;

  if ( 0 <= no && no <= PageMax ) { PageNo = no; }

  location.href = "./" + PageName + PageNo + ".html";

  if ( PageNo++ == PageMax) { PageNo = 1; }
}

var currentDetail = "";
function showDetail( e, id )
{
    if ( !document.getElementById ) { return; }
    if ( currentDetail == id  ) { return; }
    closeDetail();
    var obj = document.getElementById(id);
    var x = e.clientX + scrollLeft();
    var y = e.clientY + scrollTop();
    obj.style.left = (x-60) + "px";
    obj.style.top = (y+16) + "px";
    obj.style.visibility = "visible";
    currentDetail = id;
}
function closeDetail()
{
    if ( !document.getElementById ) { return; }
    if ( !currentDetail ) { return; }
    var obj = document.getElementById(currentDetail);
    obj.style.visibility = "hidden";
    currentDetail = "";
}

function scrollLeft()
{
	var left = 0;

	if ( window.pageXOffset ) {
		left = window.pageXOffset;
	}
	if ( document.compatMode == "CSS1Compat" ) {
		left = document.body.parentNode.scrollLeft;
	}
	if ( document.body.scrollLeft ) {
		left = document.body.scrollLeft;
	}
	return left;
}
function scrollTop()
{
	var top = 0;

	if ( window.pageYOffset ) {
		top = window.pageYOffset;
	}
	if ( document.compatMode == "CSS1Compat" ) {
		top = document.body.parentNode.scrollTop;
	}
	if ( document.body.scrollTop ) {
		top = document.body.scrollTop;
	}

	return top;
}

function initFunc2()
{
	var w, h, cx, cy;
	var obj = document.getElementById( "image3" );

	if ( obj ) {
		obj.style.visibility = "hidden";
	}
	blnExexInit3 = false;
	blnExexInit4 = true;

	obj = document.getElementById( "image2" );

	if ( obj ) {
    obj.style.left = "450px";
    obj.style.top = "195px";
    obj.style.visibility = "visible";
	}
	w  = GetWinWidth();
	h  = GetWinHeight();
	cx = w / 2;
	cy = h / 2;

	TitleStartX = new Array(cx, w  );
	TitleStartY = new Array(h,  20 );
	TitleEndX   = new Array(80, 340);
	TitleEndY   = new Array(0, 190);

	AnimeTitle( false );
}

function initFunc4()
{
	var obj = document.getElementById( "image3" );
	if ( obj ) {
		obj.style.visibility = "visible";
	}
}
