function hasClassName(el,class_name){return new RegExp('\\b'+class_name+'\\b').test(el.className)}
function addClassName(el,class_name){if(!el.className){el.className=class_name}else if(!hasClassName(el,class_name)){var className=el.className+" "+class_name;el.className=className.split(/\s+/).join(' ')}}
function removeClassName(el,class_name){var className=el.className;if(className){className=className.replace(new RegExp('\\b'+class_name+'\\b'),'');className=className.replace(/\s+/g,' ');el.className=className.replace(/\s+$/g,'')}}
function addEventHandler(target,type,listener)
{if(target.addEventListener)target.addEventListener(type,listener,false);else if(target.attachEvent)target.attachEvent('on'+type,listener);else target['on'+type]=listener;}
function removeEventHandler(target,type,listener)
{if(target.removeEventListener)target.removeEventListener(type,listener,false);else if(target.detachEvent)target.detachEvent('on'+type,listener);else target['on'+type]=null;}
function getRadioValue(form,name)
{var list=document.forms[form].elements[name];for(var i=0;i<list.length;i++){if(list[i].checked)return list[i].value;}
return null;}
function getEventTarget(event)
{event=event||window.event;if(event.target)return event.target;else if(event.srcElement)return event.srcElement;return null;}
function getEventPt(event)
{event=event||window.event;if(document.all||window.opera){var offsetX=document.documentElement.scrollLeft;var offsetY=document.documentElement.scrollTop;if(window.opera)offsetX=offsetY=0;return{x:event.screenX+offsetX,y:event.screenY+offsetY};}else{var offsetX=window.scrollX;var offsetY=window.scrollY;return{x:event.screenX+offsetX,y:event.screenY+offsetY};}}
function getElementsByClass(searchClass,el,tag)
{var res=new Array();if(el==null||el==undefined)el=document;if(tag==null||tag==undefined)tag='*';var els=el.getElementsByTagName(tag);var elsLen=els.length;var pattern=new RegExp('(^|\\s)'+searchClass+'(\\s|$)');for(i=0,j=0;i<elsLen;i++){if(pattern.test(els[i].className))res[j++]=els[i];}
return res;}
function Rectangle(x,y,w,h){this.left=x;this.top=y;this.width=w;this.height=h;}
Rectangle.prototype={inside:function(x,y){if(x<this.left)return false;if(x>=this.left+this.width)return false;if(y<this.top)return false;if(y>=this.top+this.height)return false;return true;},grow:function(dh,dv){this.left-=dh;this.top-=dv;this.width+=dh*2;this.height+=dv*2;return this;}};function getWindowRect()
{var ua=navigator.userAgent.toLowerCase();var _netspape=(i=ua.indexOf("netscape"))!=-1;if(_netspape){scrollL=window.pageXOffset;scrollT=window.pageYOffset;}else if(document.documentElement){scrollL=document.documentElement.scrollLeft;scrollT=document.documentElement.scrollTop;}else{scrollL=document.body.scrollLeft;scrollT=document.body.scrollTop;}
if(_netspape){windowW=window.innerWidth;windowH=window.innerHeight;}else if(document.documentElement){windowW=document.documentElement.clientWidth;windowH=document.documentElement.clientHeight;}else{windowW=document.body.offsetWidth;windowH=document.body.offsetHeight;}
return new Rectangle(scrollL,scrollT,windowW,windowH);}
function getElementRect(el)
{var is_ie=(document.all&&!window.opera);var rt=new Rectangle(0,0,el.offsetWidth,el.offsetHeight);do{rt.left+=el.offsetLeft;rt.top+=el.offsetTop;el=el.offsetParent;if(el&&(is_ie)){rt.left+=(parseInt(getActiveStyle(el,"border-left-width"))||0);rt.top+=(parseInt(getActiveStyle(el,"border-top-width"))||0);}}while(el);return rt;}
function getActiveStyle(element,property,pseudo)
{if(element.currentStyle){property=(property.match(/-/))?property.camelize():property;return element.currentStyle[property.camelize()];}else if(document.defaultView.getComputedStyle){property=(property.match(/-/)==null)?property.deCamelize():property;return document.defaultView.getComputedStyle(element,pseudo).getPropertyValue(property);}
return"";}
String.prototype.camelize=function()
{return this.replace(/-([a-z])/g,function($0,$1){return $1.toUpperCase()});}
String.prototype.deCamelize=function()
{return this.replace(/[A-Z]/g,function($0){return"-"+$0.toLowerCase()});}
function addRule(selector,property,sheetindex,ruleindex)
{if(sheetindex==undefined)sheetindex=0;var sheet=document.styleSheets[sheetindex];if(sheet.addRule){if(ruleindex==undefined)ruleindex=sheet.rules.length;sheet.addRule(selector,"{"+property+"}",ruleindex);return ruleindex;}else if(sheet.insertRule){if(ruleindex==undefined)ruleindex=sheet.cssRules.length;return sheet.insertRule(selector+"{"+property+"}",ruleindex);}
return null;}
function removeRule(index,sheetindex)
{if(sheetindex==undefined)sheetindex=0;var sheet=document.styleSheets[sheetindex];if(sheet.removeRule){sheet.removeRule(index);}else if(sheet.deleteRule){sheet.deleteRule(index);}}
function createCookie(name,value,days)
{var expires="";if(days){var date=new Date();date.setTime(date.getTime()+(days*24*3600));expires="; expires="+date.toGMTString();}
document.cookie=name+"="+value+expires+"; path=/";}
function readCookie(name)
{var nameEQ=name+"=";var ca=document.cookie.split(';');for(var i=0;i<ca.length;i++){var c=ca[i];while(c.charAt(0)==' ')c=c.substring(1,c.length);if(c.indexOf(nameEQ)==0)return c.substring(nameEQ.length,c.length);}
return null;}
function MyAjaxObject(){}
MyAjaxObject.prototype={_create:function(){if(window.XMLHttpRequest)return new XMLHttpRequest();if(window.ActiveXObject){try{return new ActiveXObject("Msxml2.XMLHTTP");}catch(e){return new ActiveXObject("Microsoft.XMLHTTP");}}
return null;},send:function(url,arr,callback,params){var req=this._create();req.onreadystatechange=function(){if(req.readyState==4&&req.responseText){callback(req,arr,params);req=null;}}
req.open((arr==null)?"GET":"POST",url,true);req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");var d="";if(arr!=null){for(var k in arr){if(d!="")d+="&";d+=k+"="+escape(arr[k]);}}
req.send(d);return req;},abort:function(req){if(req.readyState!=0&&req.readyState!=4)req.abort();}};(function(){function CommonInterface(){}
CommonInterface.prototype={isMSIE:0,insertFont:function(){document.write('<dl id="font_size">');document.write('<dt><span>文字サイズ</span></dt>');document.write('<dd class="font_sml"><span>小</span></dd>');document.write('<dd class="font_mid"><span>中</span></dd>');document.write('<dd class="font_big"><span>大</span></dd>');document.write('</dl>');var font=readCookie('font');if(!font)font='mid';g_common.setFontSize(font);},doFont:function(e){var node=getEventTarget(e);var v=node.getAttribute("data-size");if(v)g_common.setFontSize(v);},setFontSize:function(name){var nSize=document.getElementById("font_size");if(!nSize)return;var list=nSize.getElementsByTagName('dd');for(var i=0;i<list.length;i++){var node=list[i];removeClassName(node,"active");var v=new String(node.className.match('\\bfont_[a-z]+\\b'));if(!v)continue;v=v.replace("font_","");node.setAttribute("data-size",v);if(v==name)addClassName(node,"active");addEventHandler(node,'click',g_common.doFont);}
var v=new String(document.body.className.match('\\bfont_[a-z]+\\b'));if(v){removeClassName(document.body,v);}
addClassName(document.body,"font_"+name);createCookie('font',name,(name!='mid')?30:-1);}};window.CommonInterface=CommonInterface;})();var g_common=new CommonInterface();
