//-------------
// SCROLLER.JS
//-------------

// USER SETTING
SPEED = 100;	// SCROLL SPEED => 1000以下の数字。数字が大きいほど動きが早くなる。
SMOOTH = 5;	// SCROLL SMOOTHING => 最小は1。数字が大きいほどスムーズに動くが遅くなる。
MATCH = 3;	// SCROLL MATCHING => スクロールが近づいた時に止まり方。大きいほどあらが目立つがしっかり止まる。
//-------------



BR = "mo";
START = 0;
END = 0;

function jump ( to ) {

  if ( document.all ) BR = "ie";

  if ( BR == "ie" ) {

    START = document.body.scrollTop;

    if ( to == 0 )
      END = 0;

    else {

      i = 0;
      END = 0;
      element = document.all[ to ];

      while ( i == 0 ) {

        if ( element.tagName != "BODY" && element.tagName != "body" ) {

          END += element.offsetTop;
          element = element.offsetParent;

        }

        else
          break;

      }

      document.all[ to ].offsetTop;

    }

    jumpInterval = setInterval ( "jumping ()", 1000 / SPEED );

  }

  else {

    START = pageYOffset;

    if ( to == 0 )
      END = 0;

    else
      END = document.getElementById ( to ).offsetTop;

    jumpInterval = setInterval ( "jumping ()", 1000 / SPEED );

  } 


}

function jumping () {

  if ( START > END ) {

    START = START - ( START - END ) / SMOOTH;

    if ( START - END < MATCH ) {

      START = END;
      clearInterval ( jumpInterval );

    }

  }

  else {

    START = START + ( END - START ) / SMOOTH;

    if ( END - START < MATCH ) {

      START = END;
      clearInterval ( jumpInterval );

    }

  }

  if ( BR == "ie" )
    document.body.scrollTop = START;

  else
    document.body.scrollTop = START;

}

// Written By Freesale