// JavaScript Document
function mouseover(obj)
{
	//document.getElementById(obj).style.backgroundPosition="0px 92px";
	//document.getElementById(obj).style.borderBottom="none";
	document.getElementById(obj).className="dvMenuTop " + obj + "_in";
}
function mouseout(obj)
{
	//document.getElementById(obj).style.backgroundPosition="0px 0px";
	//document.getElementById(obj).style.borderBottom="none";
	document.getElementById(obj).className="dvMenuTop " + obj + "_out";
}


/*!
 * Text Animation v1.2.0
 * http://sideroad.secret.jp/
 *
 * Copyright (c) 2009 sideroad
 *
 * licensed under the MIT licenses.
 * Date: 2009-03-01
 */
//TextAnimation Plugin
(function($) {  
      
    $.fn.textAnimation = function(settings) {  
      
	    if($.browser.msie) return this;
        var container = this;
        settings = $.extend({  
            mode : "roll"
        }, settings);
            
        function parse(e){
            if(e.hasClass("isTextAnimated")) return;
            var text = e.text();
            e.html("");
            for(var i=0;i< text.length;i++) {
                var span = $("<span></span>").text(text.charAt(i));
                e.append(span);
            }
            e.addClass("isTextAnimated");
        }
            
        function parseDiv(e,width,verticalAlign){
            if(e.hasClass("isTextAnimated")) return;
            var text = e.text();
            e.html("");
			
			//css setting
			var css = {position:"absolute"};
			verticalAlign = verticalAlign || "bottom";
			css[verticalAlign] = "0px";
            
			//width setting
			if(width === false) width = e[0].style.fontSize.replace(/px/,"")/1.25;
			
			for(var i=0;i< text.length;i++) {
				css.left = width*i;
                var div = $("<div></div>").text(text.charAt(i)).css(css);
				e.append(div);
            }
            e.addClass("isTextAnimated").css({position:"relative"});
        }
		
		function execute(options,start,finish){
			var time  = options.time;
			var interval = options.interval;
            var repeat = options.repeat;
            var startId;
			var amountInterval = interval + time;
			if(finish) amountInterval*=2;
			var e = options.e;
			
			if (options.onStart) {
				e.bind(options.onStart, function(){
					if (startId) return;
					start();
					if (repeat) {
						startId = setInterval(start, amountInterval);
						if (finish) {
							setTimeout(function(){
								finish();
								if (repeat) 
									setInterval(finish, amountInterval);
							}, amountInterval / 2);
						}
					}
				});
			} else {
                start();
                if(repeat) setInterval(start, amountInterval);
				if(finish) {
					setTimeout(function(){
                        finish();
                        if(repeat) setInterval(finish, amountInterval);
					},amountInterval/2);
				}
			}
			if (options.onFinish) {
                e.bind(options.onFinish, function(){
                    if (startId && repeat) {
						clearInterval(startId);
						startId = false;
					}
					if(finish) finish();
					
                });
			}
		}
			
        
		var f = {
			roll: function(e){
                var options = $.extend({
                    e : e,
					minsize : 15,
					magnification:15,
					delay : 20,
                    onStart : false,
					onFinish : false,
					onToggle : false,
					stuff : 1,
					fixed : "bottom"
                },settings);
                
                parseDiv(e,options.minsize/options.stuff,options.fixed);
				var i = 0;
                var minsize = options.minsize;
                var magnification = options.magnification;
                e.css({height:minsize+magnification+"px",textAlign:"center"});
				var elements = e.children();
				var de = options.delay;
                var r = function(){
                    i--;
                    elements.each(function(j){
                        var fontSize = Math.abs(Math.sin((i+j)/de)*magnification)+minsize;
                        this.style.fontSize = fontSize+"px";
						this.style.width = minsize+"px";
                    });
                };
				
				if (options.onStart) {
					var intervalId;
                    e.bind(options.onStart, function(){
						r();
						intervalId = setInterval(r,30);
					});
					e.bind(options.onFinish,function(){
						if(intervalId) clearInterval(intervalId);
					});
				} else {
					r();
					setInterval(r, 30);
				}
			},
			
			step : function(e) {
                var options = $.extend({
                    e : e,
                    minsize : 12,
                    maxsize :35,
					fixed : "bottom",
					upper : true,
					stuff: 2.0,
                    delay : 50,
                    interval : 3000,
                    duration : 300,
					repeat: true,
                    onStart : false,
                    onFinish : false
                },settings);
                
                parseDiv(e,options.minsize,options.fixed);
                e.css({height:options.maxsize+"px",textAlign:"center"});
				var elements = e.children().css({
					fontSize: "0px",
					width: "0px",
					left: "0px",
					opacity: 0
				});
				var length = elements.length;
				var m = (options.maxsize-options.minsize) / (length-1);
			    var ba = options.minsize;
				var upper = options.upper;
				if (!upper) {
					m *= -1;
					ba = options.maxsize;
				}
                var du = options.duration;
                var de = options.delay;
				var st = options.stuff;
				var interval = options.interval;
				
                var start = function(){
                    var left = 0;
                    elements.each(function(i){
                        var c = $(this);
                        
                        setTimeout(function(){
                            var fs = ba + (m * i);
                            c.animate({
                                fontSize:fs+"px",
                                width : fs,
                                left: left,
								opacity:1.0
                            },{
                                duration: du
                            });
                            left += (fs / st);
                            
                        },de*i);
                    });
                }
                var finish = function(){
                    elements.each(function(i){
                        var c = $(this);
                                                
                        setTimeout(function(){
                            c.animate({
                                fontSize: "0px",
                                width: 0,
                                left: 0,
                                opacity:0
                            },{
                                duration: du
                            });
                            
                        },de*i);
                    });
                }
				
				options.time = (options.delay * length);
				execute(options,start, finish);
			},
            
            highlight:function(e){
                var options = $.extend({
                    e : e,
                    baseColor : "#AAAAAA",
                    highlightColor : "#FDFF00",
                    delay : 50,
                    interval : 100,
                    duration : 300,
                    repeat: true,
                    onStart : false,
                    onFinish : false
                },settings);
                
                parse(e);
                var i = 0;
                var elements = e.children().css({color:options.baseColor});
                var length = elements.length;
                if(!options.interval && !options.delay) options.interval = 100;
                var hc = options.highlightColor;
                var bc = options.baseColor;
                var du = options.duration;
                var de = options.delay;
                
                var start = function(){
                    elements.each(function(i){
                        var s = $(this);
                        setTimeout(function(){
                            s.animate({
                                color: hc
                            }, {
                                duration: du
                            }).animate({
                                color: bc
                            },{
                                duration: du
                            });
                        },de*i);
                    });
                }
                
                options.time = (options.delay * length);
                execute(options,start);
            },
            
            jump:function(e){
                var options = $.extend({
                    e : e,
                    altitude : 30,
					bound : true,
                    delay : 400,
                    interval : 300,
                    duration : 600,
                    fixed : "bottom",
                    repeat: true,
                    onStart : false,
                    onFinish : false
                },settings);
                
                parseDiv(e,false,options.fixed);
                e.css({height:e[0].style.fontSize});
                var i = 0;
                var elements = e.children();
                var length = elements.length;
                if(!options.interval && !options.delay) options.interval = 100;
                var al = options.altitude;
                var bo = options.bound;
                var du = options.duration;
                var de = options.delay;
				var ea = options.bound ? "easeOutBounce" : "easeInQuad";
				var fi = options.fixed;
                
                var start = function(){
                    elements.each(function(i){
                        var s = $(this);
                        setTimeout(function(){
							var cssleave = {};
                            cssleave[fi] = al;
							var cssarrive = {};
                            cssarrive[fi] = 0;
                            s.animate(cssleave, {
                                duration: du,
								easing : "swing"
                            }).animate(cssarrive,{
                                duration: du,
								easing : ea
                            });
                        },de*i);
                    });
                }
                
                options.time = (options.delay * length);
                execute(options,start);
            } ,
            
            puff : function(e) {
                var options = $.extend({
                    e : e,
                    duration : 400,
                    interval : 400,
                    onStart : false,
                    onFinish : false,
                    repeat : true,
                    percent : 300,
                    color : false,
					times : 1
                },settings);
                
				var times = options.times;
				var du = options.duration/options.times;
                var start = function(){
					var f = function(){
                            var position = e.position();
                            var css = {
                                "position": "absolute",
                                "left": position.left + "px",
                                "top": position.top + "px",
                                "z-index": -1000
                            };
                            if (options.color) 
                                css.color = options.color;
                            if (options.backgroundColor) 
                                css.backgroundColor = options.backgroundColor;
                            
                            e.clone().attr("id", "").insertBefore(e).css(css).hide("puff", {
                                percent: options.percent
                            }, options.duration, function(){
                                $(this).remove();
                            });
				    }
					f();
                    for(var i=0;i<times-1;i++) {
						setTimeout(f,du*i);
					}
                }
                options.time = options.duration;
                execute(options,start);
            },
            
            bigMessage : function(e) {
                var options = $.extend({
                    e : e,
                    duration : 700,
                    interval : 5000,
                    onStart : false,
                    onFinish : false,
                    repeat : false,
                    color : false,
					repeat:false,
					scale : 0.7
                },settings);
                
				var css ={
                    position: "relative",
                    fontStyle: "monospace",
                    top: 0,
                    overflow: "hidden"
                };
				if(options.color) css.color = options.color;
				
				var message = $("<div></div>").text(e.text()).css(css);
				var container = $("<div></div>").css({
                        position:"fixed",
                        overflow:"hidden"
                }).append(message);
                var length = message.text().length;
				var du = options.duration*length;
				var sc = options.scale;
                var start = function(){
                    var bWidth = $(window).width();
                    var bHeight = $(window).height();
                    var fontSize = bHeight*sc;

					container.css({
                        top : (bHeight/2)-(fontSize/2),
                        width : bWidth,
                        height: fontSize
                    });

                    $(document.body).append(container);
                    message.css({
                        fontSize : fontSize+"px",
                        left : bWidth,
                        width : fontSize*length/2,
                        height: fontSize
					}).animate({
						left : -1*fontSize*length/2
					},{
						easing:"linear",
						duration: du,
						complete: function(){
							container.remove();
						}
					});
                }
                options.time = du;
                execute(options,start);
            }
		}
		
        return container.each(function(){  
            f[settings.mode]($(this));
        });
    }
  
})(jQuery);