﻿
// ブラウザ判別変数
var isMSIE = /*@cc_on!@*/false;
var agt = navigator.userAgent.toLowerCase();
var isGecko = (agt.indexOf('gecko') != -1);
var isOpera = (agt.indexOf("opera") != -1);

// イベント追加関数
function addEvent(elm,listener,fn){
    try{
        elm.addEventListener(listener,fn,false);
    }catch(e){
        elm.attachEvent("on"+listener,fn);
    }
}



/* 特殊枠waku01用処理群  ------------------------------------> ここから */
function updateNazonomojiretsu() {
    var elems = document.getElementsByTagName("select");

    if (document.getElementById("styletext")) {
        document.getElementById("styletext").value = "";
        for (var i=0;i<elems.length;++i) {
            document.getElementById("styletext").value += elems[i].name + ": " + elems[i].value + "\n";
        }
    }
}

function onChangeSetColor(ptag,pclass,obj)
{
    var elems = document.getElementsByTagName(ptag);

    for (var i=0;i<elems.length;++i) {
        if (elems[i].className == pclass) {
            elems[i].style.color = obj.value;
        }
    }
    updateNazonomojiretsu();
}

function onChangeSetBackgroundColor(ptag,pclass,obj)
{
    var elems = document.getElementsByTagName(ptag);

    for (var i=0;i<elems.length;++i) {
        if (elems[i].className == pclass) {
            elems[i].style.backgroundColor = obj.value;
        }
    }
    updateNazonomojiretsu();
}
/* 特殊枠waku01用処理群  ------------------------------------> ここまで */


/* FAQオープン/クローズ処理  ---------------------------------------> ここから */
var statAllAnswer = "none";
function showFAQ(FAQid)
{
    if (FAQid == "AllAnswer") {
        var AllAns = document.getElementsByTagName("div");
        var n = AllAns.length;
        if (statAllAnswer == "none" ) {
            statAllAnswer = "block";
        } else {
            statAllAnswer = "none";
        }
        for (i = 0;i < n; ++i) {
            if (AllAns[i].className == "FAQs") {
                AllAns[i].style.display = statAllAnswer;
            }
        }
    } else if (document.getElementById(FAQid)) {
        if (document.getElementById(FAQid).style.display == "block") {
            document.getElementById(FAQid).style.display = "none";
        } else {
            document.getElementById(FAQid).style.display = "block";
        }
    }

    TakasaZoroe();
}
/* FAQオープン/クローズ処理  ---------------------------------------> ここまで */


/* 実行時のページデザイン微調整  --------------------------------------------------------------> ここから */

/* 段組枠高さ調整用処理群  -------------------------------------------------------> ここから */
// 2008/10/2頃記述
// 2008/10/9修正
// 一つのページにmenuareaとmainareaの組み合わせが１個
// の場合のみ正常に動作します。
// またmainarea内のleftblockとrightblockの組み合わせは、
// それを囲む親要素が無い（mainareaのみ）場合だけ正常に動作します。
// 参考URL1: http://blog.webcreativepark.net/sample/js/18/heightLine.js
// 参考URL2: http://hkom.blog1.fc2.com/blog-entry-503.html
// 参考URL3: http://d.hatena.ne.jp/susie-t/20061004/1159942798
function GetHeight(tHeight, dhtmlObj)
{
    var retheight = tHeight;
    var stylea = dhtmlObj.currentStyle || document.defaultView.getComputedStyle(dhtmlObj, '');

    if (stylea.paddingTop) retheight -= stylea.paddingTop.replace("px","");
    if (stylea.paddingBottom) retheight -= stylea.paddingBottom.replace("px","");
    if (stylea.borderTopWidth && stylea.borderTopWidth != "medium") retheight-= stylea.borderTopWidth.replace("px","");
    if (stylea.borderBottomWidth && stylea.borderBottomWidth != "medium") retheight-= stylea.borderBottomWidth.replace("px","");
    
    return retheight;
}

function TakasaZoroe()
{
    if (!document.getElementById("menuarea")) return false;
    if (!document.getElementById("mainarea")) return false;

    var elem1 = document.getElementById("menuarea");
    var elem2 = document.getElementById("mainarea");
    elem1.style.height = "auto";
    elem2.style.height = "auto";    

    var i,j,n,n2;
    var ix1,ix2,height1,height2;
    var bLeft = new Array();
    var bRight = new Array();

    height1 = elem1.offsetHeight;
    height2 = elem2.offsetHeight;
    if (height1 > height2) {
        elem2.style.height = GetHeight(height1, elem2) + "px";
    } else if (height1 < height2) {
        elem1.style.height = GetHeight(height2, elem1) + "px";
    }

    var elems = elem2.getElementsByTagName("div");
    n = elems.length;
    for (i = 0;i < n; ++i) {
        if (elems[i].className == "leftblock") {
            bLeft[bLeft.length] = i;
        } else if (elems[i].className == "rightblock") {
            bRight[bRight.length] = i;
        }
    }
    n2 = bLeft.length;
    if ((n2 > 0) && (n2 == bRight.length)) {
        for (i = 0;i < n2; ++i) {
            ix1 = bLeft[i];
            for (j = 0;j < n2; ++j) {
                ix2 = bRight[j];
                if (elems[ix1].offsetTop == elems[ix2].offsetTop) {
                    height1 = elems[ix1].offsetHeight;
                    height2 = elems[ix2].offsetHeight;
                    if (height1 < height2) {
                        elems[ix1].style.height = GetHeight(height2, elems[ix1]) + "px";
                    } else if (height1 > height2) {
                        elems[ix2].style.height = GetHeight(height1, elems[ix2]) + "px";
                    }
                    break;
                }
            }
        }
    }
}

/* 段組枠高さ調整用処理群  -------------------------------------------------------> ここまで */

/* IEでの検索ボタンテキスト位置微調整  -------------------------------------------> ここから */
// 2008/10/24頃記述
// デフォルトスタイルが日本語、IE用としてbSearchStartのpaddingTopが4であることに依存しています。
function SearchButtonTextPosition()
{
    if (!document.getElementById("bSearchStart")) return false;
    if (!document.getElementById("bSitemap")) return false;
    if (!isMSIE) return false;
    
    var wQS = new Array;
    if (location.search.length > 1) {
        var wIdx;
        var wArr1 = location.search.substr(1).split("&");
        for (wIdx in wArr1) {
            wQS.push(wArr1[wIdx].split("="));
        }
        for (wIdx in wQS) {
            if ((wQS[wIdx][0] == "lang") && (wQS[wIdx][1] == 1)) {
                document.getElementById("bSearchStart").style.paddingTop="2px";
            }
        }
    }
}
/* IEでの検索ボタンテキスト位置微調整  -------------------------------------------> ここまで */

/* 事例紹介でのスクロール調整  -------------------------------------------> ここから */
function JireiListScroll()
{
    if (!document.getElementById("listScrollable")) return false;
    if (!document.getElementById("orgCurrentNo")) return false;
    if (!document.getElementById("orgMaxNo")) return false;
    
    var cCaseNo = parseInt(document.getElementById("orgCurrentNo").firstChild.data);
    var mCaseNo = parseInt(document.getElementById("orgMaxNo").firstChild.data);
    if ((mCaseNo - cCaseNo) > 4) {
        var tHeight = (mCaseNo - cCaseNo) * 19;
        if (tHeight > document.getElementById("listScrollable").scrollHeight) {
            tHeight = document.getElementById("listScrollable").scrollHeight;
        }
        document.getElementById("listScrollable").scrollTop = tHeight;
    }
}
/* 事例紹介でのスクロール調整  -------------------------------------------> ここまで */

// onLoadイベント追加
function RuntimeDesignSetting() {

    TakasaZoroe();
    SearchButtonTextPosition();
    JireiListScroll();

}
addEvent(window,"load",RuntimeDesignSetting);
/* 実行時のページデザイン微調整  --------------------------------------------------------------> ここから */

