﻿@import url(../GlobalNavigationForSP.css);

/*検索エリアの調整*/
.input-group-append {
    position: relative;
    right: -80px;
}

.bootstrap-scope .input-group-append {
    background: transparent !important;
}

.menuinner .svg-inline--fa.fa-w-16 {
    width: initial;
    height: initial;
    width: 1.4rem;
}

.svg-inline--fa.fa-search {
    width: 1.8rem;
    margin-top: 2px;
    margin-left: 4px;
}

#headMenu {
    display: block;
    position: absolute;
    left: 2px;
    top: 0px;
    width: 55px;
}

.bootstrap-scope .IZ-select__input {
    height: 30px;
}

.menuarea {
    display: flex;
    justify-content: space-between;
    margin: 0px auto;
    min-height: 130px;
}

.menuAndGlobalNav {
    position: relative;
}

.menuinner {
    display: flex;
    flex-direction: row;
    align-items: center;
    border-radius: 0px 0px 0px 10px;
    min-height: 40px;
    padding: 0px 28px;
    gap: 20px;
    /*justify-content: flex-end;
    position: absolute;
    right: 0px;
    top: 0px;
    max-width: 827px;*/
}

.nav-area-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0px 20px;
    min-height: 70px;
    /*position: absolute;
    right: 20px;
    bottom: 15px;*/
}

.main_search_wrapper {
    display: flex;
    min-height: 30px;
    align-items: center;
}

.headerAreaDef_wrapper {
    margin: 0 auto;
}

/*:::::::::::::::::::::::::
 * ヘッダーメニュー
 *::::::::::::::::::::::::*/
#header {
    max-width: 100%;
    margin-top: 30px;
    margin-left: 23px;
}

.width1400 {
    max-width: 1400px;
    margin: 0px auto;
    padding: 0px 0px;
    width: 100%;
}

#headerImg {
    float: left;
    padding-top: 10px;
    width: 100%;
}

#imgHeader {
    height: 60px;
    margin-left: 10px;
    padding-top: 4px;
}

#headerMenu {
    float: right;
    height: 95px;
    margin-right: 10px;
    margin-top: 10px;
}

    #headerMenu img {
        vertical-align: top;
    }

.headMenuTtl {
    float: left;
    font-size: 0.9em;
    padding: 5px 0px 10px 15px;
}

    .headMenuTtl p {
        float: left;
        padding-right: 7px;
    }

h1#hd_header {
    font-size: 1em;
    font-weight: normal;
}

/* ヘッダー画像部分 */
#headerAreaDef {
    max-width: 100%;
    height: 100%;
}

.my-green {
    color: #525252;
}

/* フロートヘッダー用 */
.headFixed_margin {
    height: 100px;
}

@media all and (-ms-high-contrast: none) {
    div#naviArea ul#navi_list li p {
        padding-left: 60px;
    }
}



/*:::::::::::::::::::::::::
 * グローバルナビゲーション
 *::::::::::::::::::::::::*/
#GlobalNavigationBlock {
    display: block;
    width: 100%;
    margin-top: 12px;
}

div#naviContainer {
}

div#naviArea a {
    text-decoration: none;
    font-weight: bold;
    font-size: 1.0em;
}

div#naviArea ul#navi_list {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    list-style: none;
    /*display: flex;
        justify-content: flex-end;*/
}

    div#naviArea ul#navi_list li {
        width: 220px;
        min-height: 58px;
        text-align: center;
        font-size: 1.1em;
    }

#navi_tab_1683 {
    width: 190px !important;
}

#navi_tab_1684 {
    width: 190px !important;
}

#navi_tab_1685 {
    width: 180px !important;
}

div#naviArea ul#navi_list li div {
    padding: 14px 0px 0px 0px;
    vertical-align: middle;
}

div#naviArea ul#navi_list li img {
    position: relative;
    display: block;
    margin: 0px auto;
    padding: 0px 0px 0px 0px;
    z-index: 99;
}

div#naviArea ul#navi_list li p {
    text-decoration: none;
    font-weight: bold;
    font-size: 1em;
}

div#popNaviArea ul.g_navi {
    border-radius: 0px 0px 0px 0px;
}

div#popNaviArea ul#navi_list li a {
    display: block;
}

div#popNaviArea li.navi_child a:hover {
    text-decoration: underline;
}

#menuImg {
    display: none;
}

/* グロナビPOPメニュー */
div#naviArea ul#navi_list li#navi_tab_0 div {
    vertical-align: middle;
}

#navi_list li {
    position: relative;
    display: inline-block;
}

    #navi_list li::after {
        content: "";
        display: inline-block;
        width: 60px;
        height: 3px;
        background-color: #EB6B3C;
        position: absolute;
        bottom: 4px;
        left: 33%;
    }

div#popNaviArea {
    display: block;
    position: relative;
    max-width: 1100px;
    width: 100%;
    margin: -1px auto;
    padding: 0px;
    z-index: 99999;
}

    div#popNaviArea ul.g_navi {
        position: absolute;
        max-width: 1200px;
        width: 97.5%;
        margin: 0px auto 0px 0px;
        margin-top: 1px;
        padding: 20px 10px 10px 10px;
        box-shadow: 0px 6px 6px rgba(0, 0, 0, 0.16);
        border-radius: 0px 0px 10px 10px;
    }

    div#popNaviArea ul#g_navi_0 {
        border: none;
        padding: 0px;
    }

    div#popNaviArea li.navi_child {
        display: inline-block;
        width: 33%;
        padding-bottom: 27px;
        padding-left: 15px;
        vertical-align: top;
    }

        div#popNaviArea li.navi_child ul {
            margin-top: 20px;
            padding: 0px 8px;
        }

        div#popNaviArea li.navi_child li {
            margin-top: 8px;
            padding: 0px 2px 0px 8px;
            background-image: url("../../images/ya_red.png");
            background-repeat: no-repeat;
            background-position: 0px 7px;
            line-height: 1.3em;
        }

            div#popNaviArea li.navi_child li.exsistpic {
                background-image: none;
            }

        div#popNaviArea li.navi_child img {
            margin-right: 3px;
        }

        div#popNaviArea li.navi_child a {
            display: table-cell;
            padding-left: 3px;
            padding-bottom: 5px;
            vertical-align: middle;
            line-height: 1.2;
            font-size: 1.0em;
        }

    div#popNaviArea li.navi_type_2 {
        display: block;
        width: auto;
    }

        div#popNaviArea li.navi_type_2 li {
            display: inline-block;
            width: 23%;
            vertical-align: middle;
        }

    div#popNaviArea h3.navi_child_name {
        margin: 0px 5px;
        padding: 30px 2px 4px 0px;
        font-weight: bold;
        font-size: 1em;
    }

    /* 親メニュー（大分類） */
    div#popNaviArea .parentMenu {
        float: left;
        width: 100%;
        margin: 8px auto;
    }

        div#popNaviArea .parentMenu .parentlink {
            float: left;
            margin: 0px 0px 0px 20px;
            font-weight: bold;
        }

        div#popNaviArea .parentMenu .closelink {
            float: right;
            margin: 0px 20px 0px 0px;
        }

    /* 親メニュー（中分類） */
    div#popNaviArea .navi_child .close {
        display: none;
    }

    div#popNaviArea .navi_child .childlink {
        background: none;
        padding: 0px 2px 0px 0px;
    }

.noChild {
    background: none !important;
}

#popNaviArea a {
    text-decoration: none;
}

/* ヘッダーメニュー部分 */
.headerMenu_wrapper {
    float: right;
    margin-right: 20px;
    margin-bottom: 10px;
}

.nav_area ul {
    display: flex;
    padding-top: 10px;
}

.nav_area {
    float: right;
}

    .nav_area nav ul li {
        padding-left: 50px;
        margin-top: 15px;
        margin-bottom: 5px;
    }

        .nav_area nav ul li a {
            text-decoration: none;
            font-size: 1.2em;
            font-weight: bold;
            color: #333333;
            font-family: "Noto Serif JP", "游明朝", "Hiragino Mincho ProN", "ＭＳ 明朝", "ＭＳ Ｐ明朝", selif;
        }

.my-green {
    color: #525252;
}

#headerMenu {
    width: 420px;
    text-align: center;
    padding: 0px;
    font-weight: normal;
    line-height: normal;
    float: right;
}

    #headerMenu img {
        vertical-align: middle;
    }

#hd_header02 img {
    margin-top: 60px;
}

#headerMenu01 {
    margin-top: 0px;
    margin-bottom: 0px;
    display: flex;
    min-height: 30px;
}

#headerMenu02 {
    text-align: center;
    margin: 0px 20px 0px;
    padding: 0px;
}

/*:::::::::::::::::::::::::
 * Foreign Language
 *::::::::::::::::::::::::*/
.select-box01 {
    float: left;
    width: 180px;
    margin: 0px 5px 0px 0px;
    padding: 0px 0px 0px 10px;
}

    .select-box01 select {
        float: left;
        width: 180px;
        margin: 7px 0px 0px 0px;
        padding: 2px;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        border: 1px solid #999;
        background: #eee;
        background: url("../images/top1/arrow_gray.png") right 50% no-repeat, -webkit-linear-gradient(top, #fff 0%,#F7F7F7 100%);
        background: url("../images/top1/arrow_gray.png") right 50% no-repeat, linear-gradient(to bottom, #fff 0%,#F7F7F7 100%);
        background-size: 26px, 24px;
    }

    .select-box01 .dropmenu {
        width: 100%;
        padding: 0;
        *zoom: 1;
        list-style-type: none;
        -webkit-border-radius: 3px;
        -moz-border-radius: 3px;
    }

        .select-box01 .dropmenu:before, .dropmenu:after {
            content: "";
            display: table;
        }

        .select-box01 .dropmenu:after {
            clear: both;
        }

        .select-box01 .dropmenu img {
            padding-top: 5px;
        }

        .select-box01 .dropmenu li {
            position: relative;
            float: left;
            width: 100%;
            margin: 0px;
            padding: 0px;
            text-align: center;
        }

            .select-box01 .dropmenu li a {
                position: relative;
                display: block;
                min-height: 20px;
                margin: 0px;
                padding: 0px 10px 10px 15px;
                text-decoration: none;
                font-weight: 500;
                font-size: 1em;
            }

            .select-box01 .dropmenu li ul {
                position: absolute;
                top: 100%;
                left: 0;
                margin: 0px;
                padding: 0px;
                list-style: none;
                z-index: 9999;
            }

                .select-box01 .dropmenu li ul li {
                    width: 100%;
                }

                    .select-box01 .dropmenu li ul li a {
                        padding: 5px 2px;
                    }

                        .select-box01 .dropmenu li ul li a.topsub {
                            border-top: none !important;
                        }

        .select-box01 .dropmenu ul img {
            margin-left: 3px;
        }

    .select-box01 #normal li:hover ul,
    .select-box01 #normal ul.focused {
        left: 0em;
    }

    /* Foreign Language メニュー表示 */
    .select-box01 #normal li ul {
        left: -1000em;
    }

#foreign a {
    padding: 5px 0px 0px 28px;
    line-height: 22px;
}

.svg-inline--fa.fa-globe {
    position: relative;
    top: 4px;
    left: -3px;
}

/*:::::::::::::::::::::::::
 * 文字サイズ・背景色変更
 *::::::::::::::::::::::::*/
#changeHaikei, #mainFontSizeSel {
    float: left;
    margin: 10px 0px 0px 10px;
    padding-top: 4px;
    outline: none;
    font-size: 0.9em;
}

    #changeHaikei span, #mainFontSizeSel span {
        display: inline-block;
        vertical-align: middle;
        font-size: 1.2em;
    }

    #changeHaikei a, #mainFontSizeSel a {
        padding-right: 3px;
        vertical-align: middle;
        text-decoration: none;
    }

    #changeHaikei img, #mainFontSizeSel img {
        vertical-align: sub;
    }

/*:::::::::::::::::::::::::
 * 行政トップページへ
 *::::::::::::::::::::::::*/
#headerMenu01 a, #mainTop a {
    font-weight: 500;
}

#mainTop {
    min-width: 155px;
    min-height: 22px;
    margin-right: -3px;
    padding-top: 3px;
    padding-left: 26px;
    background: url("../../images/taiken/icon_top.svg") no-repeat;
    background-size: 8px;
    background-position: 10px 9px;
}

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

        #mainTop a:hover {
            position: relative;
            top: 1px;
            left: 1px;
        }

.headMenuTtl {
    float: left;
    padding: 5px 0px 10px 15px;
    font-size: 0.9em;
}

    .headMenuTtl p {
        float: left;
        padding-right: 7px;
    }

/*:::::::::::::::::::::::::
 * サイト内検索
 *::::::::::::::::::::::::*/
#mainSearch {
    min-width: 270px;
}

#mainSearch {
    float: right;
    margin: 0px 0px 0px 10px;
    font-size: 0.9em;
}

input.searchBox {
    width: 150px;
    height: 24px;
    margin: 0px;
    vertical-align: middle;
}

input.btnSearch {
    margin: 0px;
    padding: 0px;
    vertical-align: middle;
}

#hamburger-menu {
    display: none;
}

/* サイト内検索ver2.0 */
#mainSearch .bootstrap-scope {
    height: 32px;
    border: none !important;
}

#mainSearch #input_form_search_word {
    width: 215px;
}

.IZ-select {
    width: 240px;
}

.bootstrap-scope .IZ-select__input input {
    padding-left: 11px !important;
}

.bootstrap-scope .btn-gray {
    border: none !important;
    color: #fff !important;
    background-color: transparent !important;
}

.bootstrap-scope .IZ-select * {
    border-radius: 50px !important;
    margin-left: 2px;
}

#floatmenu {
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1);
    min-height: 130px;
}

/*:::::::::::::::::::::::::
 * お問い合わせボタン
 *::::::::::::::::::::::::*/
.contact-button {
    box-sizing: border-box;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    width: 160px;
    min-height: 46px;
    font-weight: 600;
    font-size: 0.9em;
    text-decoration: none;
    border-radius: 5px;
    white-space: nowrap;
    flex-shrink: 0;
}

    /* 左側の疑似要素アイコン */
    .contact-button::before {
        content: "";
        display: inline-block;
        width: 20px;
        height: 16px;
        background: url("../../images/taiken/icon-mail.svg") no-repeat center;
        flex-shrink: 0;
    }

    /* ホバー（任意） */
    .contact-button:hover {
        opacity: 0.85;
    }



/*:::::::::::::::::::::::::
 * アクセシビリティ
 *::::::::::::::::::::::::*/
#headerMenu03 {
    display: none;
}

#accessibility {
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 1099;
    margin: 0;
    width: 100%;
}

    #accessibility.active {
        opacity: .89;
    }

.accessibility {
    display: flex;
    width: 145px;
    min-height: 27px;
    align-items: center;
    gap: 5px;
    /*padding-top: 3px;
        background: url("../../images/taiken/icon_acc.svg") no-repeat;
        background-size: 22px;
        background-position: 4px 4px;*/
}

    .accessibility img {
        width: 25px;
    }

    .accessibility a {
        display: block;
        text-decoration: none;
        font-size: 0.9em;
    }

.acce_head_wp {
    position: relative;
    min-width: 765px;
    margin: 0px auto 0px auto;
}

    .acce_head_wp.active {
        height: 100%;
    }

.acc_wp {
    position: relative;
    max-width: 1200px;
    min-width: 765px;
    margin: 0px auto;
    padding: 20px 0px 25px 25%;
    z-index: 1099;
    opacity: 0;
}

.overlay_acc {
    display: none;
    top: 0;
    right: 0;
    opacity: 0;
    z-index: 1099;
    transition: opacity .35s, visibility .35s, height .35s;
    -webkit-transition: opacity .35s, visibility .35s, height .35s;
    -o-transition: opacity .35s, visibility .35s, height .35s;
    background: #575757;
}

    .overlay_acc.open .acc_wp {
        animation: fadeInDown .5s ease forwards;
        animation-delay: .1s;
        -webkit-animation: fadeInDown .5s ease forwards;
        -webkit-animation-delay: .1s;
    }

    .overlay_acc.open {
        display: block;
        top: 0;
        right: 0;
        bottom: 0;
        opacity: .99;
        overflow-x: hidden;
        overflow-y: hidden;
        z-index: 9999;
    }

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

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

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

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

                .overlay_acc ul li a:hover,
                .overlay_acc ul li a:focus {
                    background-color: rgba(32, 62, 80, 0.8);
                }

/*:::::::::::::::::::::::::
 * ナビメニュー
 *::::::::::::::::::::::::*/
/* 展開時のスタイル */
@-webkit-keyframes fadeInRight {
    0% {
        opacity: 0;
        left: 20%;
    }

    100% {
        opacity: 1;
        left: 0;
    }
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        left: 20%;
    }

    100% {
        opacity: 1;
        left: 0;
    }
}

@-webkit-keyframes fadeInDown {
    0% {
        opacity: 0;
        transform: scaleY(0);
        transform-origin: top;
    }

    100% {
        opacity: 1;
        transform: scaleY(1);
        transform-origin: top;
    }
}

@keyframes fadeInDown {
    0% {
        opacity: 0;
        transform: scaleY(0);
        transform-origin: top;
    }

    100% {
        opacity: 1;
        transform: scaleY(1);
        transform-origin: top;
    }
}

/* ナビゲーションを閉じるリンク */
#accmenu {
    float: right;
    position: absolute;
    top: 0;
    right: 0;
}

#accmenu_close {
    position: absolute;
    margin: 10px 0px 0px 65px;
    padding: 0px;
    text-align: left;
    z-index: 10000;
    color: #fff;
}

    #accmenu_close div {
        width: 1em;
        padding: 0px;
        text-align: center;
        opacity: 1;
    }

    #accmenu_close span {
        display: block;
        padding: 0px;
        color: #fff;
    }

    #accmenu_close a {
        display: block;
        text-decoration: none;
        color: #fff;
    }

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

    .accmenu a {
        text-decoration: none;
    }

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

*:focus {
    outline: none;
}

#naviAreaSP {
    position: relative;
    padding: 10px;
    z-index: 1001;
}

    #naviAreaSP ul#navi_listSP li a {
        color: #333333;
    }

#asc_navi_listSP {
    display: none !important;
    margin-top: 10px;
    padding: 0px;
    padding-top: 6px;
    padding-bottom: 7px;
    background-color: #fff;
    border-radius: 5px;
}

    #asc_navi_listSP li {
        position: relative;
        top: 0px;
        left: 16px;
        padding-left: 5px;
        font-weight: bold;
        background: url("../../images/top1/ya_r.gif") no-repeat 0px;
        color: #333333;
    }

#shiyuuzaisan_navi_listSP {
    display: none !important;
}

#taiken_navi_listSP {
    display: none !important;
}

.border_none a {
    border-bottom: none !important;
}



/*:::::::::::::::::::::::::
 * レスポンシブ
 *::::::::::::::::::::::::*/
@media screen and (max-width:1350px) {
    #floatmenu {
        min-height: 70px;
    }

    #imgHeader {
        height: 52px;
        margin-left: 0px;
        padding-top: 10px;
    }

    .menuarea {
        min-height: 70px;
    }

    #header {
        margin-top: 0px;
        margin-left: 0px;
    }

    .headerimgarea {
        margin: 0 auto;
    }

    /*右上メニューを消す*/
    #GlobalNavigationBlock, .menuinner {
        display: none;
    }

    /*ハンバーガーメニュー色*/
    .openbtn {
        background-color: #fff !important;
        border-radius: 0px;
    }

        .openbtn span:nth-of-type(3)::after {
            color: #09175b !important;
        }

        .openbtn span {
            background: #09175b !important;
        }

    /*グロナビSPを出す*/
    #menuImg {
        display: block;
        margin-top: 10px;
        margin-left: 7px;
    }

    div#naviAreaSP ul#navi_listSP li a {
        font-weight: bold;
    }

    div#naviAreaSP a {
        display: block;
        padding: 10px;
        background-size: 15px 15px;
        text-decoration: none;
        border-bottom: 1px dotted #a8a8a8;
        color: #333;
        /*background: url(../../images/top1/ya_sp.png) no-repeat 98% center;*/
    }

        div#naviAreaSP a:visited {
            color: #333 !important;
        }

    .nav-area-wrap {
        bottom: 0px;
    }

    .contact-button {
        display: none;
    }

        /* 左側の疑似要素アイコン */
        .contact-button::before {
            display: none;
        }

    #taiken_navi_listSP {
        display: block !important;
        font-weight: bold;
    }

        #taiken_navi_listSP img {
            width: 16px;
            padding-right: 9px;
        }

    /*行政トップへボタン*/
    /*.toTopMenu {
        display: block !important;
        text-align: center;
        background-color: #f1f1f1
    }*/
}

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

    #keepSavePage-container {
        top: 230px !important;
    }

    #accessibility {
        display: none;
    }

    #hd_header02 img {
        display: none;
    }
}

@media screen and (max-width: 975px) {
    #keepSavePage-container {
        display: none !important;
    }
}

@media screen and (max-width:767px) {
    /*ヘッダー*/
    #floatmenu {
        min-height: 60px;
    }

    #header img {
        height: 42px;
    }

    #header {
        min-height: 60px;
    }

    .menuarea {
        min-height: 60px !important;
    }

    #menuImg {
        display: block;
        margin-top: 6px;
        margin-left: 4px;
    }

    .nav-area-wrap {
        bottom: -5px;
        padding: 0px;
    }
}

@media screen and (max-width:400px) {
    #imgHeader {
        margin-left: 50px !important;
    }
}


.menu_border {
    height: 10px;
    background-color: #009462;
}

#keepSavePage-container {
    display: none !important;
    top: 30%;
}

    #keepSavePage-container .keepSavePage-viewsw {
        height: 120px;
    }

#keepSavePage-viewSw-btn {
    font-size: 0.9em !important;
}

#topbtn {
}
