
//////////////////////////////////////////////////////////////////
/// Image rollover
//////////////////////////////////////////////////////////////////
function imgRoll(obj,flag){
	var pathsrc = obj.getAttribute("src");
	var path = pathsrc.slice(0,pathsrc.lastIndexOf("/")+1);
	var imgname = pathsrc.slice(pathsrc.lastIndexOf("/")+1,pathsrc.length);
	if(flag){
		var imgname = imgname.replace(/_def/i,"_ovr");
	} else{
		var imgname = imgname.replace(/_ovr/i,"_def");
	}
	obj.setAttribute("src",path + imgname);
}
function imgRollId(obj,flag){
	obj=document.getElementById(obj);
	var pathsrc = obj.getAttribute("src");
	var path = pathsrc.slice(0,pathsrc.lastIndexOf("/")+1);
	var imgname = pathsrc.slice(pathsrc.lastIndexOf("/")+1,pathsrc.length);
	if(flag){
		var imgname = imgname.replace(/_def/i,"_ovr");
	} else{
		var imgname = imgname.replace(/_ovr/i,"_def");
	}
	obj.setAttribute("src",path + imgname);
}



//////////////////////////////////////////////////////////////////
/// top メインビジュアル
//////////////////////////////////////////////////////////////////
var topFlag;
var topBlow=function(num){
	switchBlock("blow0"+num,"block");
};
var topRoll=function(num){
	topBlow(num);
	topFlag=num;
	var item_num=4;
	for(var i=0;i<item_num;i++){
		var id="btn0"+(i+1);
		var doc=document.getElementById(id);
		var obj=doc.firstChild.firstChild;
		var pathsrc=obj.getAttribute("src");
		var path=pathsrc.slice(0,pathsrc.lastIndexOf("/")+1);
		var imgname=pathsrc.slice(pathsrc.lastIndexOf("/")+1,pathsrc.length);
		if(imgname.indexOf("_def")) imgname=imgname.replace(/_def/i,"_off");
		if(imgname.indexOf("_ovr")) imgname=imgname.replace(/_ovr/i,"_off");
		obj.setAttribute("src",path + imgname);
	}
	var id="btn0"+num;
	var doc=document.getElementById(id);
	var obj=doc.firstChild.firstChild;
	var pathsrc=obj.getAttribute("src");
	var path=pathsrc.slice(0,pathsrc.lastIndexOf("/")+1);
	var imgname=pathsrc.slice(pathsrc.lastIndexOf("/")+1,pathsrc.length);
	if(imgname.indexOf("_def")) imgname=imgname.replace(/_def/i,"_ovr");
	if(imgname.indexOf("_off")) imgname=imgname.replace(/_off/i,"_ovr");
	obj.setAttribute("src",path + imgname);
};
var topOut=function(){
	var item_num=4;
	for(var i=0;i<item_num;i++){
		switchBlock("blow0"+(i+1),"none");
		var id="btn0"+(i+1);
		var doc=document.getElementById(id);
		var obj=doc.firstChild.firstChild;
		var pathsrc=obj.getAttribute("src");
		var path=pathsrc.slice(0,pathsrc.lastIndexOf("/")+1);
		var imgname=pathsrc.slice(pathsrc.lastIndexOf("/")+1,pathsrc.length);
		if(imgname.indexOf("_off")) imgname=imgname.replace(/_off/i,"_def");
		if(imgname.indexOf("_ovr")) imgname=imgname.replace(/_ovr/i,"_def");
		obj.setAttribute("src",path + imgname);
	}
};




//////////////////////////////////////////////////////////////////
/// Tab Image rollover
//////////////////////////////////////////////////////////////////
function imgRollTab(obj,flag){
	var idIRT=document.getElementById("imRankTab");
	var tNLi=idIRT.getElementsByTagName("li");
	if(tNLi==null) return;
	tNImg=new Array;
	for(var i=0;i<tNLi.length;i++){
		tNImg[i]=tNLi[i].childNodes[0].childNodes[0];
		imgRoll(tNImg[i],0);
	}
	imgRoll(obj,flag);
}




//////////////////////////////////////////////////////////////////
/// Tab block rollover
//////////////////////////////////////////////////////////////////
function switchTab(obj){
	for(var i=1;i<6;i++){
		switchBlock("idRankMain0"+[i],"none");
	}
	switchBlock(obj,"block");
}




//////////////////////////////////////////////////////////////////
/// Window open
//////////////////////////////////////////////////////////////////
// 汎用
function openSubWindow(strUrl,winName,winWidth,winHeight){
	var features = 'toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizable=1,width=' + winWidth + ',height=' + winHeight;
	winName = window.open(strUrl,winName,features);
	winName.focus();
	return false;
}



//////////////////////////////////////////////////////////////////
/// 汎用id表示切り替え
//////////////////////////////////////////////////////////////////
function switchImg(id,vl){
	var elm=document.getElementById(id);
	var pathsrc=elm.getAttribute("src");
	var path=pathsrc.slice(0,pathsrc.lastIndexOf("/")+1);
	var imgname=pathsrc.slice(pathsrc.lastIndexOf("/")+1,pathsrc.length);
	var ext=imgname.slice(imgname.lastIndexOf("."),imgname.length);
	imgname=vl+ext;
	elm.setAttribute("src",path + imgname);
}
function switchImgSrc(id,vl){
	var elm=document.getElementById(id);
	elm.setAttribute("src",vl);
}
function switchBlock(id,vl){
	var elm=document.getElementById(id);
	elm.style.display=vl;
}
function switchZindex(id,vl){
	var elm=document.getElementById(id);
	elm.style.zIndex=vl;
}
function switchClass(id,vl){
	var elm=document.getElementById(id);
	elm.className=vl;
}
function switchBgImg(id,vl){
	var elm=document.getElementById(id);
	elm.style.backgroundImage="url("+vl+")";
}



//////////////////////////////////////////////////////////////////
/// スタイル操作
//////////////////////////////////////////////////////////////////
function switchClass(id,vl){
	var idSel=document.getElementById(id);
	idSel.className=vl;
}



//////////////////////////////////////////////////////////////////
/// フォーム使用開始操作
//////////////////////////////////////////////////////////////////
function startText(elms){
	var formVl=elms.parentNode;
	var formNm=formVl.getAttribute("name");
	var vlText=document.forms[formNm].elements[0].value;
	if(vlText=="商品名・キーワード") document.forms[formNm].elements[0].value="";
}



//////////////////////////////////////////////////////////////////
/// cookie operation
//////////////////////////////////////////////////////////////////
function class_cookielib(){
	this.getCookie = getCookie;
	this.setCookie = setCookie;
	this.removeCookie = removeCookie;

	var expireDate = new Date();
	expireDate.setFullYear(expireDate.getFullYear()+1);
	expireStr = "expires=" + expireDate.toUTCString();

	function getCookie(name){
		var gc=name+"=";
		var Cookie=document.cookie;
		if (Cookie.length>0){
			var start=Cookie.indexOf(gc);
			if (start!=-1){
				start+=gc.length;
				terminus=Cookie.indexOf(";",start);
				if (terminus==-1) terminus=Cookie.length;
				return unescape(Cookie.substring(start,terminus));
			}
		}
		return '';
	}
	function setCookie(){
		var key = arguments[0];
		var val = arguments[1];
		var path = (typeof(arguments[2]) != 'undefined' ? arguments[2] : '/');
		var exp = (typeof(arguments[3]) != 'undefined'  ? arguments[3] : expireStr);
		var sc = key + "=" + escape(val) + "; path=" + path + "; " + exp;
		document.cookie = sc;
	}
	function removeCookie(key,path){
		if(!path){
			path = '/';
		}
		var rc = key + "=; path=" + path + "; expires=Thu, 1 Jan 1970 00:00:00 UTC";
		document.cookie = rc;
	}
}
var cookieObj = new class_cookielib();



//////////////////////////////////////////////////////////////////
/// フォントサイズ 調整
//////////////////////////////////////////////////////////////////
strTextSizeB1='\n<li><img src="/common/image/layout/font_size_s_cur.gif" alt="小" height="16" width="24" /></li>\n';
strTextSizeB1+='<li><a href="javascript:void(0);" onclick="changeTextSize(2);"><img src="/common/image/layout/font_size_m_def.gif" alt="中" height="16" width="24" /></a></li>\n';
strTextSizeB1+='<li><a href="javascript:void(0);" onclick="changeTextSize(3);"><img src="/common/image/layout/font_size_l_def.gif" alt="大" height="16" width="24" /></a></li>';

strTextSizeB2='\n<li><a href="javascript:void(0);" onclick="changeTextSize(1);"><img src="/common/image/layout/font_size_s_def.gif" alt="小" height="16" width="24" /></a></li>\n';
strTextSizeB2+='<li><img src="/common/image/layout/font_size_m_cur.gif" alt="中" height="16" width="24" /></li>\n';
strTextSizeB2+='<li><a href="javascript:void(0);" onclick="changeTextSize(3);"><img src="/common/image/layout/font_size_l_def.gif" alt="大" height="16" width="24" /></a></li>';

strTextSizeB3='\n<li><a href="javascript:void(0);" onclick="changeTextSize(1);"><img src="/common/image/layout/font_size_s_def.gif" alt="小" height="16" width="24" /></a></li>\n';
strTextSizeB3+='<li><a href="javascript:void(0);" onclick="changeTextSize(2);"><img src="/common/image/layout/font_size_m_def.gif" alt="中" height="16" width="24" /></a></li>\n';
strTextSizeB3+='<li><img src="/common/image/layout/font_size_l_cur.gif" alt="大" height="16" width="24" /></li>';

function outputTextSizeCtrl(num){
	if(document.layers){
		return;
	}
	document.write(eval('strTextSizeB'+new String(txtSizeVal)));
}


//////////////////////////////////////////////////////////////////
/// change text size
//////////////////////////////////////////////////////////////////
var txtSizeVal=2;
var txtSize=new Array();
txtSize[1]="fontsize_s";
txtSize[2]="fontsize_m";
txtSize[3]="fontsize_l";
var path="/common/css/";

function setTextSize(){
	if(cookieObj.getCookie('txtsize')!=''){
		txtSizeVal=1*cookieObj.getCookie('txtsize');
	}
	document.write('<link rel="stylesheet" href="'+path+txtSize[txtSizeVal]+'.css" type="text/css" media="all" />');
}

function changeTextSize(num){
	cookieObj.setCookie('txtsize',num,'/');
	window.location.reload();
	return false;
}





//////////////////////////////////////////////////////////////////
/// flash判定
//////////////////////////////////////////////////////////////////
var dwdFlash = new FlashHandler("8,0,0,0","http");
function outputFlash(on,off){
  if(dwdFlash.checkPlugin()){
		if(on=='') return;
		switchBlock(off,'none');
  }else{
		switchBlock(on,'none');
	}
}

/* FlashHandler
--------------------------------------------------------------------*/
function FlashHandler(ver,pro){
  this._classid = "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000";
  this._type = "application/x-shockwave-flash";
  var vertmp = ver.split(",");
  for(var i = 4; i > vertmp.length; i--)
    ver += (ver.match(/,$/)) ? "0,0" : ",0";
  this._ver  = ver;
  this._must = parseInt(ver.toString().replace(/^([0-9]+),.*$/,"$1"));
  this._pro  = (pro.match(/^https?$/)) ? pro : "http";
  this._apply = false;
  this._plugin = (
    (navigator.mimeTypes && navigator.mimeTypes["application/x-shockwave-flash"])
      ? navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin
      : 0
  );
  if(this._plugin){
    var tmp = navigator.plugins["Shockwave Flash"].description;
    this._apply = (tmp.match(/\s([0-9.]*)\s/)[1] >= this._must);
  } else if(navigator.userAgent.indexOf("MSIE") != -1){
    if(navigator.appVersion.indexOf("Win") != -1){ try{
      applytmp = false;
      execScript(
        "on error resume next : applytmp = " +
        "(IsObject(CreateObject('ShockwaveFlash.ShockwaveFlash." +
        this._must + "')))", "VBScript"
      );
      this._apply = applytmp;
    } catch(e){} }
  }
  this.checkPlugin = function(){ return this._apply; };
  this.getCode = function(id,size,param){
    var ua = navigator.userAgent, pro = this._pro, type = this._type;
    var ids = (
      (id.match(/^[a-zA-Z].*$/))
        ? [' id="' + id + '"',' name="' + id + '"']
        : ["",""]
    );
    var tg = [
      '<object' + ids[0] + ' classid="' + this._classid +
      '" codebase="' + pro + '://download.macromedia.com/pub/' +
      'shockwave/cabs/flash/swflash.cab#version=' + this._ver + '"' +
      ' type="' + type + '" width="' + size[0] + '" height="' +
      size[1] + '">',
      '<embed' + ids[1] + ' type="' + type + '" pluginspage="' + pro +
      '://www.macromedia.com/go/getflashplayer" width="' + size[0] +
      '" height="' + size[1] + '"',
      '></embed>',
      '</object>'
    ];
    for(var i in param){
      tg[0] += '<param name="' + i + '" value="' + param[i] + '" />';
      tg[1] += ' ' + ((i == "movie") ? 'src' : i) + '="' + param[i] + '"';
    }
    return (
      (ua.indexOf("Mac") != -1 && ua.indexOf("MSIE") != -1 && ua.indexOf("Opera") == -1)
        ? tg[1] + tg[2]
        : tg.join("")
    );
  };
}





//////////////////////////////////////////////////////////////////
/// Scroll
//////////////////////////////////////////////////////////////////
var ss ={
  fixAllLinks: function(){
    var allLinks = document.getElementsByTagName('a');
    for (var i=0;i<allLinks.length;i++){
      var lnk = allLinks[i];
      if ((lnk.href && lnk.href.indexOf('#') != -1) && 
          ( (lnk.pathname == location.pathname) ||
	    ('/'+lnk.pathname == location.pathname) ) && 
          (lnk.search == location.search)){
        ss.addEvent(lnk,'click',ss.smoothScroll);
      }
    }
  },

  smoothScroll: function(e){
    if (window.event){
      target = window.event.srcElement;
    } else if (e){
      target = e.target;
    } else return;
    if (target.nodeName.toLowerCase() != 'a'){
      target = target.parentNode;
    }
    if (target.nodeName.toLowerCase() != 'a') return;
    anchor = target.hash.substr(1);
    var allLinks = document.getElementsByTagName('a');
    var destinationLink = null;
    for (var i=0;i<allLinks.length;i++){
      var lnk = allLinks[i];
      if (lnk.name && (lnk.name == anchor)){
        destinationLink = lnk;
        break;
      }
    }
    if (!destinationLink) return true;
  
    var destx = destinationLink.offsetLeft; 
    var desty = destinationLink.offsetTop;
    var thisNode = destinationLink;
    while (thisNode.offsetParent && 
          (thisNode.offsetParent != document.body)){
      thisNode = thisNode.offsetParent;
      destx += thisNode.offsetLeft;
      desty += thisNode.offsetTop;
    }
    clearInterval(ss.INTERVAL);
  
    cypos = ss.getCurrentYPos();
  
    ss_stepsize = parseInt((desty-cypos)/ss.STEPS);
    ss.INTERVAL =
setInterval('ss.scrollWindow('+ss_stepsize+','+desty+',"'+anchor+'")',10);
    if (window.event){
      window.event.cancelBubble = true;
      window.event.returnValue = false;
    }
    if (e && e.preventDefault && e.stopPropagation){
      e.preventDefault();
      e.stopPropagation();
    }
  },

  scrollWindow: function(scramount,dest,anchor){
    wascypos = ss.getCurrentYPos();
    isAbove = (wascypos < dest);
    window.scrollTo(0,wascypos + scramount);
    iscypos = ss.getCurrentYPos();
    isAboveNow = (iscypos < dest);
    if ((isAbove != isAboveNow) || (wascypos == iscypos)){
      window.scrollTo(0,dest);
      clearInterval(ss.INTERVAL);
      location.hash = anchor;
    }
  },

  getCurrentYPos: function(){
    if (document.body && document.body.scrollTop)
      return document.body.scrollTop;
    if (document.documentElement && document.documentElement.scrollTop)
      return document.documentElement.scrollTop;
    if (window.pageYOffset)
      return window.pageYOffset;
    return 0;
  },

  addEvent: function(elm, evType, fn, useCapture){
    if (elm.addEventListener){
      elm.addEventListener(evType, fn, useCapture);
      return true;
    } else if (elm.attachEvent){
      var r = elm.attachEvent("on"+evType, fn);
      return r;
    } else{
      alert("Handler could not be removed");
    }
  } 
}

ss.STEPS = 15;

ss.addEvent(window,"load",ss.fixAllLinks);
