﻿.active_btmpanel_bodyOverflow_Hidden {
    /* メニュー展開時に本体（body）のスクロールバーを表示させない */
    overflow: hidden !important;
}

@media screen and (min-width:1001px) {
    .active_btmpanelWrap, .active_btmpanel {
        display: none !important;
    }
}

@media screen and (max-width:1000px) {
    .active_btmpanelWrap {
        padding-bottom: 55px !important; /* ボトムメニューの高さで調整 */
        overflow-y: scroll !important;
        z-index: 10004;
    }
    .active_btmpanel {
        display: block !important;
        height: auto !important;
        min-height: calc(100vh - 55px) !important; /* ボトムメニューの高さで調整 */
        animation: comm_togglebtm-slide-in 0.5s 0s ease;
        animation-fill-mode: forwards;
        padding: 15px 0px !important;
        position: relative;
        z-index: 10004;
        background-color: var(--background-color,#D9D9D9);
    }
}

.comm_togglebtm-btmpanel {
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
    display: none;
}

@keyframes comm_togglebtm-slide-in {
    0% {
        opacity: 0;
        transform: translateY(100vh);
    }

    100% {
        opacity: 1;
        transform: translateY(0px);
    }
}

/* ボトムメニュー */
#bottom_navi {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    height: auto;
    overflow: hidden;
    z-index: 10005;
}
    #bottom_navi .bottom_menu {
        display: none;
    }


#accmenu_close {
    margin: 10px 0px 0px 30px;
    padding: 0px;
    text-align: left;
    position: absolute;
    top: 0px;
    right: 10px;
    z-index: 1003;
    color: var(--text-color,#007BA8);
    fill: var(--text-color,#007BA8);
}

.menuclose {
    padding: 0px 0px 10px;
}


@media screen and (max-width:1000px) {
    #bottom_navi .bottom_menu {
        display: flex;
        flex-direction: row;
        position: fixed;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 55px; /* ボトムメニューの高さ */
        z-index: 10005;
        background-color: #efefef;
    }

    #bottom_navi .bottom_menu_item {
        flex: 1;
        width: 100%;
        padding: 4px 0px;
        list-style: none;
        text-align: center;
        z-index: 10005;
        font-size: 0.8rem;
    }

        #bottom_navi .bottom_menu_item a {
            text-decoration: none !important;
        }

    #bottom_navi .bottom_menu a span {
        display: block;
    }

    #bottom_navi .iconname {
        padding: 0px 0px;
    }

    #bottom_navi .bt_icon {
        padding: 5px 0px 0px;
    }

    #bottom_navi #topbtn {
        display: none;
    }

    .material-symbols-outlined {
        font-family: 'Material Symbols Outlined';
        font-size: 25px;
    }


    /* ボトムメニュー表示時にフッターの下が隠れないように余白を追加 */
    #cp {
        margin-bottom: 81px; /* ボトムメニューの高さで調整 */
    }
}
/* 点滅 */
#bottom_navi .blinking {
    -webkit-animation: btm_blink 1.5s ease-in-out infinite alternate;
    -moz-animation: btm_blink 1.5s ease-in-out infinite alternate;
    animation: btm_blink 1.5s ease-in-out infinite alternate;
}

@-webkit-keyframes btm_blink {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@-moz-keyframes btm_blink {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes btm_blink {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

[id^="closebtm_"] {
    margin:0px auto;
    text-decoration: none;
}

/* 緊急情報 */
#areabtm_kinkyu {
    width: 100%;
    margin: 0px auto;
    display: none;
    max-height: calc(100vh - 120px);
    overflow-y: scroll;
}

    #areabtm_kinkyu .kinkyuTtl {
        float: left;
        text-align: center;
        padding: 0px 3px 0px;
        font-weight: bold !important;
        font-size: 1.8em;
    }

    #areabtm_kinkyu .kinkyu_ichiran {
        padding: 5px 40px;
    }

    #areabtm_kinkyu .kinkyu_item_line {
        display: none;
    }

    #areabtm_kinkyu .kinkyu_menu {
        max-width: 767px;
        width: 100%;
        margin: 0px auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 20px;
        padding: 0px 0px 15px;
    }

    #areabtm_kinkyu .kinkyu_item {
        text-align: left;
        max-width: 260px;
        width: 100%;
        padding: 0px;
        margin: 0px auto;
    }

    #areabtm_kinkyu .kinkyuTtl span {
        padding-left: 5px;
    }

@media screen and (min-width:1001px) {
    #areabtm_kinkyu {
        display: none !important;
    }
}

/* さがす */
.sagasu_title {
    font-size: 1.5em;
    text-align: center;
    padding: 5px 0px;
    color: var(--text-color,#0083B3);
    display:none;
}

#areabtm_sagasu {
    width: 100%;
    margin: 0px auto;
    padding:50px 0px 30px !important;
    display: none;
}

    #areabtm_sagasu .sagasulist {
        width: 98%;
        height: 100%;
        max-height: calc(100vh - 140px);
        overflow-y: scroll;
        margin: 2px auto 15px auto;
    }
        #areabtm_sagasu .sagasulist .siteSearchArea {
            border-bottom: 1px dotted #ffffff;
            padding-top: 5px;
            padding-bottom: 15px;
        }

    #areabtm_sagasu .sagasuClist1 {
        width: 98%;
        margin: 2px auto;
    }
        #areabtm_sagasu .sagasuClist1 li div a {
            width: 100%;
            padding-left: 25px;
        }

    #areabtm_sagasu ul a {
        display: block;
        padding: 12px 0px 0px 30px;
        text-decoration: none;
        font-size: 1.1rem;
    }


        #areabtm_sagasu ul a:hover {
            top: 0px;
            left: 0px;
        }

    .life_mokutekiSP {
        display: flex;
        flex-direction: row;
        justify-content: center;
        flex-wrap: wrap;
        padding: 0px 10px;
    }

.life_itemSP {
    width: 50%;
    text-align: left;
    padding: 10px 0px;
}

.life_text {
    text-align: center;
    position: relative;
    top: -13px;
    left: 0px;
}

.life_itemSP a {
    text-decoration:none;
}


@media screen and (min-width:1001px) {
    #areabtm_sagasu {
        display: none !important;
    }
}

/* Languages */
#areabtm_languages {
    width: 100%;
    margin: 0px auto;
    display: none;
}
@media screen and (min-width:1001px) {
    #areabtm_languages {
        display: none !important;
    }
}

/*　閲覧補助 */
#areabtm_acc {
    width: 100%;
    margin: 0px auto;
    display: none;
}

@media screen and (min-width:1001px) {
    #areabtm_acc {
        display: none !important;
    }
}

#accessibility_btm {
    position: relative;
    z-index: 10005;
    margin: 0;
    width: 100%;
}


    #accessibility_btm .acce_head_wp {
        position: relative;
        margin: 0px auto 0px auto;
        height: 100%;
    }

    #accessibility_btm .acc_wp {
        padding: 80px 0px 30px;
        z-index: 10005;
        position: relative;
        max-width: 100%;
        margin: 0 auto;
        opacity: 0;
        min-height: 70px;
        margin: 0px auto;
        display: flex;
        flex-direction: row;
        justify-content: center;
        flex-wrap: wrap;
    }

#acc_title_btm {
    position: absolute;
    top: 0px;
    width: 100%;
    text-align: center;
    font-size: 1.5em;
    font-weight: bold;
    padding: 10px 0px;
}

    #accessibility_btm .overlay_acc {
        top: 0;
        right: 0;
        opacity: .99;
        display: flex;
        overflow-y: hidden;
        overflow-x: hidden;
        bottom: 0;
        z-index: 10005;
        padding: 0px;
    }

        #accessibility_btm .overlay_acc li {
            background-image: none;
            float: left;
            padding: 12px;
        }

        #accessibility_btm .overlay_acc ul {
            list-style: none;
            padding: 0;
            margin: 0 auto 10px auto;
            display: inline-block;
            position: relative;
            font-size: 90%;
            width: 100%;
        }

            #accessibility_btm .overlay_acc ul li {
                display: block;
                position: relative;
                min-width: 200px;
            }

                #accessibility_btm .overlay_acc ul li a {
                    position: relative;
                    text-decoration: none;
                    overflow: hidden;
                    background-position: 0 .1em;
                    background-repeat: no-repeat;
                }

                    #accessibility_btm .overlay_acc ul li a:hover,
                    #accessibility_btm .overlay_acc ul li a:focus {
                    }

        #accessibility_btm .overlay_acc .acc_wp {
            opacity: 1;
        }

    #accmenu_close_btm {
        margin: 10px 0px 0px 30px;
        padding: 0px;
        text-align: left;
        position: relative;
    }

        #accmenu_close_btm div {
            padding: 0px;
            text-align: center;
            opacity: 1;
        }

        #accmenu_close_btm span {
            padding: 0px;
            display: block;
        }

        #accmenu_close_btm a {
            display: block;
            text-decoration: none;
        }

    #accessibility_btm .accmenu {
        text-align: center;
        margin: 0px auto;
        float: left;
    }

        #accessibility_btm .accmenu a {
            text-decoration: none;
        }

        #accessibility_btm .accmenu span {
            font-size: 1.2em;
        }


    @media screen and (max-width:975px) {
        #accessibility_btm .accmenu {
            display: none;
        }
    }

    /* 文字サイズ・背景色変更 */
    #mainFontSizeSel_btm {
        margin: 5px auto;
        padding: 0px 40px;
        outline: medium none;
        text-align: center;
    }

    #changeHaikei_btm {
        margin: 5px 0px;
        padding: 0px 4px;
        outline: medium none;
        float: left;
    }

        #changeHaikei_btm span, #mainFontSizeSel_btm span {
            display: inline-block;
            font-size: 1.4em;
            padding: 0px 10px;
        }

        #changeHaikei_btm a, #mainFontSizeSel_btm a {
            padding-right: 3px;
            vertical-align: middle;
        }

        #changeHaikei_btm img, #mainFontSizeSel_btm img {
            padding: 0px 0px;
        }

.close_btn {
    width: 150px;
    margin: 30px auto;
    text-align: center;
    padding: 8px;
    background-color: var(--background-color,#0F7EAD);
}

    .close_btn a {
        color: var(--text-color,#ffffff);
    }

    /* 検索 */
    .kensaku_title {
        font-size: 1.5em;
        text-align: center;
        padding: 5px 0px;
        display:none;
    }

#areabtm_kensaku {
    width: 100%;
    margin: 0px auto;
    padding: 50px 0px 30px !important;
    display: none;
}

    #areabtm_kensaku .kensakulist {
        width: 98%;
        height: 100%;
        max-height: calc(100vh - 140px);
        overflow-y: scroll;
        margin: 2px auto 15px auto;
    }

        #areabtm_kensaku .kensakulist .siteSearchArea {
            border-bottom: 1px dotted #ffffff;
            padding-top: 5px;
            padding-bottom: 15px;
        }

    #areabtm_kensaku .kensakuClist1 {
        width: 98%;
        margin: 2px auto;
    }

        #areabtm_kensaku .kensakuClist1 li div a {
            width: 100%;
            padding-left: 25px;
        }

    #areabtm_kensaku ul a {
        display: block;
        padding: 12px;
        text-decoration: none;
    }

@media screen and (max-width:975px) {

    .siteSearchArea .svg-inline--fa.fa-w-16 {
        color: #007BA8 !important;
        padding: 0px;
    }
}

    /* 閲覧補助 */
    .visualaids_title {
        font-size: 1.5em;
        text-align: center;
        padding: 5px 0px;
        display: none;
    }

    #areabtm_visualaids {
        width: 100%;
        margin: 0px auto;
        padding: 50px 0px 30px !important;
        display: none;
    }

        #areabtm_visualaids .visualaidslist {
            width: 98%;
            height: 100%;
            max-height: calc(100vh - 140px);
            overflow-y: scroll;
            margin: 2px auto 15px auto;
        }

            #areabtm_visualaids .visualaidslist .siteSearchArea {
                border-bottom: 1px dotted #ffffff;
                padding-top: 5px;
                padding-bottom: 15px;
            }

        #areabtm_visualaids .visualaidsClist1 {
            width: 98%;
            margin: 2px auto;
        }

            #areabtm_visualaids .visualaidsClist1 li div a {
                width: 100%;
                padding-left: 25px;
            }

        #areabtm_visualaids ul a {
            display: block;
            padding: 12px;
            text-decoration: none;
        }