var siteMatrix = "/calendar/2010/matrix";




/*
 * IE PNG Fix v1.4
 *
 * Copyright (c) 2006 Takashi Aida http://www.isella.com/aod2/
 *
 */

// IE5.5+ PNG Alpha Fix v1.0RC4
// (c) 2004-2005 Angus Turnbull http://www.twinhelix.com

// This is licensed under the CC-GNU LGPL, version 2.1 or later.
// For details, see: http://creativecommons.org/licenses/LGPL/2.1/

if (typeof IEPNGFIX == 'undefined') {
//--============================================================================

var IEPNGFIX = {
	blank:  siteMatrix + '/images/blank.gif',
	filter: 'DXImageTransform.Microsoft.AlphaImageLoader',

	fixit: function (elem, src, method) {
		if (elem.filters[this.filter]) {
			var filter = elem.filters[this.filter];
			filter.enabled = true;
			filter.src = src;
			filter.sizingMethod = method;
		}
		else {
			elem.style.filter = 'progid:' + this.filter +
				'(src="' + src + '",sizingMethod="' + method + '")';
		}
	},

	fixwidth: function(elem) {
		if (elem.currentStyle.width == 'auto' &&
			elem.currentStyle.height == 'auto') {
			elem.style.width = elem.offsetWidth + 'px';
		}
	},

	fixchild: function(elem, recursive) {
		if (!/MSIE (5\.5|6\.|7\.)/.test(navigator.userAgent)) return;

		for (var i = 0, n = elem.childNodes.length; i < n; i++) {
			var childNode = elem.childNodes[i];
			if (childNode.style) {
				if (childNode.style.position) {
					childNode.style.position = childNode.style.position;
				}
				else {
					childNode.style.position = 'relative';
				}
			}
			if (recursive && childNode.hasChildNodes()) {
				this.fixchild(childNode, recursive);
			}
		}
	},

	fix: function(elem) {
		if (!/MSIE (5\.5|6\.|7\.)/.test(navigator.userAgent)) return;

		var bgImg =
			elem.currentStyle.backgroundImage || elem.style.backgroundImage;

		if (elem.tagName == 'IMG') {
			if ((/\.png$/i).test(elem.src)) {
				this.fixwidth(elem);
				this.fixit(elem, elem.src, 'scale');
				elem.src = this.blank;
				elem.runtimeStyle.behavior = 'none';
			}
		}
		else if (bgImg && bgImg != 'none') {
			if (bgImg.match(/^url[("']+(.*\.png)[)"']+$/i)) {
				var s = RegExp.$1;
				this.fixwidth(elem);
				elem.style.backgroundImage = 'none';
				this.fixit(elem, s, 'scale'); // crop | image | scale

				if (elem.tagName == 'A' && elem.style) {
					if (!elem.style.cursor) {
						elem.style.cursor = 'pointer';
					}
				}

				this.fixchild(elem);
				elem.runtimeStyle.behavior = 'none';
			}
		}
	},

	hover: function(elem, hvImg) {
		var bgImg = elem.style.backgroundImage;

		if (!bgImg && elem.currentStyle) bgImg = elem.currentStyle.backgroundImage;

		if (elem.tagName == 'IMG' && hvImg) {
			var image = elem.src;
			elem.onmouseover = function() {
				elem.src = hvImg;
				IEPNGFIX.fix(elem);
			};
			elem.onmouseout = function() {
				elem.src = image;
				IEPNGFIX.fix(elem);
			};
		}
		else if (bgImg && bgImg != 'none' && hvImg) {
			elem.onmouseover = function() {
				elem.style.backgroundImage = 'url(' + hvImg + ')';
				IEPNGFIX.fix(elem);
			};
			elem.onmouseout = function() {
				elem.style.backgroundImage = bgImg;
				IEPNGFIX.fix(elem);
			};
		}

		IEPNGFIX.fix(elem);
	}
};

//--============================================================================
} // end if (typeof IEPNGFIX == 'undefined')



/**
 * scrollsmoothly.js
 * Copyright (c) 2008 KAZUMiX
 * http://d.hatena.ne.jp/KAZUMiX/
 * Licensed under the MIT License:
 * http://www.opensource.org/licenses/mit-license.php
 */

(function(){
    var easing = 0.20;
    var interval = 20;
    var d = document;
    var targetX = 0;
    var targetY = 0;
    var targetHash = '';
    var scrolling = false;
   var splitHref = location.href.split('#');
    var currentHref_WOHash = splitHref[0];
    var incomingHash = splitHref[1];
    var prevX = null;
    var prevY = null;

    addEvent(window, 'load', init);

    function init(){
        setOnClickHandler();
//        if(incomingHash){
//            if(window.attachEvent && !window.opera){
//                setTimeout(function(){scrollTo(0,0);setScroll('#'+incomingHash);},50);
//            }else{
//                scrollTo(0, 0);
//                setScroll('#'+incomingHash);
//            }
//        }
    }

    function addEvent(eventTarget, eventName, func){
        if(eventTarget.addEventListener){
            eventTarget.addEventListener(eventName, func, false);
        }else if(window.attachEvent){
            eventTarget.attachEvent('on'+eventName, function(){func.apply(eventTarget);});
        }
    }
    
    function setOnClickHandler(){
        var links = d.links;
        for(var i=0; i<links.length; i++){
            var link = links[i];
            var splitLinkHref = link.href.split('#');
            if(currentHref_WOHash == splitLinkHref[0] && d.getElementById(splitLinkHref[1])){
                addEvent(link, 'click', startScroll);
            }
        }
    }

    function startScroll(event){
        if(event){
            event.preventDefault();
        }else if(window.event){ 
            window.event.returnValue = false;
        }
        setScroll(this.hash);
    }

    function setScroll(hash){
        var targetEle = d.getElementById(hash.substr(1));
        if(!targetEle)return;
        var ele = targetEle
        var x = 0;
        var y = 0;
        while(ele){
            x += ele.offsetLeft;
            y += ele.offsetTop;
            ele = ele.offsetParent;
        }
        targetX = x;
        targetY = y;
        targetHash = hash;
        if(!scrolling){
            scrolling = true;
            scroll();
        }
    }

    function scroll(){
        var currentX = d.documentElement.scrollLeft||d.body.scrollLeft;
        var currentY = d.documentElement.scrollTop||d.body.scrollTop;
        var vx = (targetX - currentX) * easing;
        var vy = (targetY - currentY) * easing;
        var nextX = currentX + vx;
        var nextY = currentY + vy;
        if((Math.abs(vx) < 1 && Math.abs(vy) < 1)
           || (prevX === currentX && prevY === currentY)){
            scrollTo(targetX, targetY);
            scrolling = false;
            location.hash = targetHash;
            prevX = prevY = null;
            return;
        }else{
            scrollTo(parseInt(nextX), parseInt(nextY));
            prevX = currentX;
            prevY = currentY;
            var scope = this;
            setTimeout(function(){scroll.apply(scope)},interval);
        }
    }

}());



/*  preload
============================================================*/
//function preload(imgs){
//	for(var i = 0; i < imgs.length; i++){
//		var imgObj = new Image();
//		imgObj.src = imgs[i];
//	}
//}


/*
============================================================*/

//function MM_openBrWindow(theURL,winName,features) { //v2.0
//  window.open(theURL,winName,features);
//}

/*  
============================================================*/
try { 
	document.execCommand('BackgroundImageCache', false, true); 
} catch(e) {} 

$(document).ready(function(){
	$("a").focus(function(){this.blur();});
	$("area").focus(function(){this.blur();});
});





/* gnv  
============================================================*/
$(document).ready(function(){
	var pageID = $('body').attr('id');
	var aNavi = $('a','.global_navi');
	if(pageID == "home") {
		$($(aNavi)[0]).addClass('selected');
	} else if (pageID == "ridgeline") {
		$($(aNavi)[1]).addClass('selected');
	} else if (pageID == "saito") {
		$($(aNavi)[2]).addClass('selected');
	} else {
		return false;
	}
});



/* Ridgeline gallery 
============================================================*/

$(document).ready(function(){
	if(!$('#ridgeline #gallery').length) return false;
	if(navigator.platform.indexOf("Win") == -1) {
		if($.browser.mozilla) { 
			$('#gallery').addClass('body_mac_moz');	
		}
	}
	var btn_lis = $('li', '#gallery #btns');
	var boxs = $('.cal01_box');
	var btnImgs = new Array();
	var slcImgs = new Array();


	for (var i = 0; i < 12; i++) {
		btnImgs[i] = new Image();
		slcImgs[i] = new Image();
		btnImgs[i].src = siteMatrix + '/images/ridgeline/gallery_btn_' + [i] + '.gif';
		slcImgs[i].src = siteMatrix + '/images/ridgeline/gallery_slc_' + [i] + '.gif';
	}


	function setHover() {
		$('.btn', btn_lis).bind('mouseover', function(){
			$(this).stop().fadeTo(150,0.2).fadeTo(400,1.0);
		})
	}


//initial
	setHover();
	boxs.css({"display":"none"});
	$($(boxs)[0]).css({"display":"block"});
	$($('img',boxs)).css({"display":"none"});
	$($('img',boxs)[0]).css({"display":"block"});


//onclick
	function allClear() {
		$('.btn', btn_lis).unbind('mouseover');
		boxs.css({"display":"none"}).children('.photo_text').children('img').css({"display":"none"});
		btn_lis.each( function(i){
				$($(btn_lis)[i]).children('img').attr('src',btnImgs[i].src).addClass('btn');
		});
	}
	
	function showImg() {
		$(this).children('.photo_text').children('img').fadeIn('normal');
	}
	
	btn_lis.each(function(i){
		$(this).bind('click',function(){
			allClear();
			$(this).children('img').attr('src',slcImgs[i].src).removeClass('btn');
			setHover();
			$($(boxs)[i]).fadeIn('normal',showImg);
		})
	})
	
	$('.ft_left', boxs).each( function(i){
		$(this).bind('click',function(){
			allClear();
			$($(btn_lis)[i]).children('img').attr('src',slcImgs[i].src).removeClass('btn');
			setHover();
			$($(boxs)[i]).fadeIn('normal',showImg);
			return false;
		});
	})
	
	$('.ft_right', boxs).each( function(i){
		$(this).bind('click',function(){
			allClear();
			$($(btn_lis)[i+1]).children('img').attr('src',slcImgs[i+1].src).removeClass('btn');
			setHover();
			$($(boxs)[i+1]).fadeIn('normal',showImg);
			return false;
		});
	})
});



/* Staito gallery 
============================================================*/

$(document).ready(function(){
	if(!$('#saito #gallery').length) return false;
	if(navigator.platform.indexOf("Win") == -1) {
		if($.browser.mozilla) { 
			$('#gallery').addClass('body_mac_moz');	
		}
	}
	var btn_lis = $('li', '#gallery #btns');
	var boxs = $('.cal01_box');
	var btnImgs = new Array();
	var slcImgs = new Array();


	for (var i = 0; i < 6; i++) {
		btnImgs[i] = new Image();
		slcImgs[i] = new Image();
		btnImgs[i].src = siteMatrix + '/images/saito/gallery_btn_' + [i] + '.jpg';
		slcImgs[i].src = siteMatrix + '/images/saito/gallery_slc_' + [i] + '.jpg';
	}


	function setHover() {
		$('.btn', btn_lis).bind('mouseover', function(){
			$(this).stop().fadeTo(150,0.2).fadeTo(400,1.0);
		})
	}


//initial
	setHover();
	boxs.css({"display":"none"});
	$($(boxs)[0]).css({"display":"block"});
	$($('img',boxs)).css({"display":"none"});
	$($('img',boxs)[0]).fadeIn('normal');


//onclick
	function allClear() {
		$('.btn', btn_lis).unbind('mouseover');
		boxs.css({"display":"none"}).children('.photo').children('img').css({"display":"none"});
		btn_lis.each( function(i){
				$($(btn_lis)[i]).children('img').attr('src',btnImgs[i].src).addClass('btn');
		});
	}
	
	function showImg() {
		$(this).children('.photo').children('img').fadeIn('normal');
	}
	
	btn_lis.each(function(i){
		$(this).bind('click',function(){
			allClear();
			$(this).children('img').attr('src',slcImgs[i].src).removeClass('btn');
			setHover();
			$($(boxs)[i]).fadeIn('normal',showImg);
		})
	})
	
	$('.ft_left', boxs).each( function(i){
		$(this).bind('click',function(){
			allClear();
			$($(btn_lis)[i]).children('img').attr('src',slcImgs[i].src).removeClass('btn');
			setHover();
			$($(boxs)[i]).fadeIn('normal',showImg);
			return false;
		});
	})
	
	$('.ft_right', boxs).each( function(i){
		$(this).bind('click',function(){
			allClear();
			$($(btn_lis)[i+1]).children('img').attr('src',slcImgs[i+1].src).removeClass('btn');
			setHover();
			$($(boxs)[i+1]).fadeIn('normal',showImg);
			return false;
		});
	})
});




/* hv
============================================================*/

$(document).ready(function(){
	function imgHv() {$(this).fadeTo(150,0.5).fadeTo(400,1.0);}
	$('.hv_op').mouseover(imgHv);
	if(navigator.platform.indexOf("Win") != -1) return false;
	if($.browser.mozilla) { 
		$('.hv_op').parent().addClass('body_mac_moz');	
	}
});
