#navArea nav {
    display: block;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    overflow-y: hidden;
    z-index: 10;
    transition: all .3s cubic-bezier(0.25, 0.1, 0.25, 1);
    opacity: 0;
    background: #fff;
    visibility: hidden;
}




#navArea.open nav {
    opacity: 1;
    display: block;
    overflow-y: scroll;
    right: 0;
    visibility: visible;
    border: 4px solid #005bac;
}

header.is-animation div#navArea.open .toggle_btn {
    top: 30%;
}


#navArea nav .inner {
    margin: auto;
    height: 100%;
    max-width: none;
}

#navArea nav .inner .sp_menu_box {
    margin: 0;
    padding: 0;
    height: 100%;
}

#navArea nav .inner .sp_menu_box ul.site-list {
    display: flex;
    margin: 70px auto 0;
    width: 90%;
    flex-wrap: wrap;
    padding: 0;
    max-width: 1200px;
}




#navArea nav .inner ul li {
    width: 30%;
    position: relative;
    margin: 0 4% 0 0;
    border-radius: 5px;
}

#navArea nav .inner ul li.page_link.bus {
    width: 26%;
    margin: 0 0 0 0;
}

#navArea nav .inner ul li.page_link.local {
    width: 70%;
}

#navArea nav .inner ul li.page_link.bus ol li {
    width: 100%;
    margin: 0 0 25px 0;
}

#navArea nav .inner ul li span {
    display: block;
    padding: 0;
    border-bottom: 1px solid #f3f7f9;
    padding: 0 0 10px 0;
    box-shadow: 0px 4px 6px -5px #b8d3e0;
    position: relative;
}

#navArea nav .inner ul li span b.button4 {
    position: absolute;
    top: 37%;
    transform: translateY(-50%);
    right: 0;
}

#navArea nav .inner ul li.page_link.some {
    display: flex;
    margin: 0;
    justify-content: space-between;
    max-width: 800px;
    margin: auto 0 0 0;
    border: none;
    padding: 0 0 0 0;
    background: none;
    width: 66%;
    flex-wrap: wrap;
}

#navArea nav .inner ul li.page_link.some span {
    margin: 10px 0 0 0;
    border: none;
    text-align: left;
    color: #005bac;
    font-weight: 600;
    box-shadow: none;
    padding: 0;
    width: auto;
}

#navArea nav .inner ul li.page_link.some span:last-child {
    margin: 10px 0 0 0;
    padding: 0 24px 0 0;
}

#navArea nav .inner ul li.page_link.some a {
    font-size: 1em;
    padding: 0;
}


#navArea nav .inner ul li ol a {
    width: 100%;
    display: block;
    position: relative;
    padding: 0 0 0 15px;
    font-weight: 500;
}



#navArea nav .inner ul li span>a {
    width: 100%;
    font-size: 1.4em;
    font-weight: 600;
    padding: 0 0 0 40px;
}

#navArea nav .inner ul li:first-child span>a:before {
    content: "";
    width: 32px;
    height: 32px;
    background: url(../images/common/localbus.svg) no-repeat center;
    background-size: 10px;
    left: 0;
    right: 0;
    top: 0;
    border-radius: 40px;
    background-color: #ecf6ff;
    transition: .3s;
    position: absolute;
}

#navArea nav .inner ul li:nth-child(2) .page_link_small span>a:before {
    content: "";
    width: 32px;
    height: 32px;
    background: url(../images/common/airport.svg) no-repeat center;
    background-size: 13px;
    left: 0;
    right: 0;
    top: 0;
    border-radius: 40px;
    background-color: #ecf6ff;
    transition: .3s;
    position: absolute;
}

#navArea nav .inner ul li:nth-child(2) .page_link_small:nth-child(2) span>a:before {
    content: "";
    width: 32px;
    height: 32px;
    background: url(../images/common/news.svg) no-repeat center;
    background-size: 18px;
    left: 0;
    right: 0;
    top: 0;
    border-radius: 40px;
    background-color: #ecf6ff;
    transition: .3s;
    position: absolute;
}

#navArea nav .inner ul li:nth-child(2) .page_link_small:nth-child(3) span>a:before {
    content: "?";
    width: 32px;
    height: 32px;
    background: #ecf6ff;
    left: 0;
    right: 0;
    top: 0;
    border-radius: 40px;
    color: #005bac;
    text-align: center;
    transition: .3s;
    position: absolute;
    font-weight: 500;
    font-size: 19px;
    line-height: 1.5;
}

#navArea nav .inner ul li:nth-child(3) span>a:before {
    content: "";
    width: 32px;
    height: 32px;
    background: url(../images/common/related.svg) no-repeat center;
    background-size: 19px;
    left: 0;
    right: 0;
    top: 0;
    border-radius: 40px;
    background-color: #ecf6ff;
    transition: .3s;
    position: absolute;
}


#navArea nav .inner ul li ol {
    display: flex;
    flex-wrap: wrap;
    margin: 25px auto 0;
}



#navArea nav .inner ul li ol li {
    width: 49%;
    margin: 0 2% 25px 0;
    text-align: left;
    border: none;
}




#navArea nav .inner ul li ol li:nth-child(2n) {
    margin: 0 0 20px 0;
}

#navArea nav .inner ul li:nth-child(3) ol li {
    margin-bottom: 0;
}

#navArea nav .inner ul li ol li.child-big a {
    padding: 10px 5px;
    background: linear-gradient(2300deg, #005bac 0%, #176cb8 52%, #005bac 100%);
    border-radius: 5px;
    text-align: center;
    box-shadow: -1px 4px 14px 2px hsl(200deg 39% 80% / 33%);
    font-size: 1em;
    color: #fff;
    border: 2px solid #005bac;
    transition: .3s;
    height: 106px;
    display: flex;
    justify-content: center;
    align-items: center;
}


#navArea nav .inner ul li ol li.child-big:nth-child(1) a {
    background: linear-gradient(2300deg, #a5daf6 0%, #a5daf6 52%, #a5daf6 100%);
    border: 2px solid #a5daf6;
}


#navArea nav .inner ul li ol li.child-big a:hover {
    box-shadow: 2px 4px 16px 0px #dedede;
    background: linear-gradient(2300deg, #f3f7f9 0%, #ffffff 52%, #f3f7f9 100%);
}

#navArea nav .inner ul li ol li.child-big {
    width: 18.4%;
    margin: 0 2% 3% 0;
}


#navArea nav .inner ul li ol li.child-big:nth-child(5) {
    margin: 0 0 3% 0;
}


#navArea nav .inner ul li ol li.child-big a dd {
    padding: 0;
    color: #fff;
}

#navArea nav .inner ul li ol li.child-big a:hover dd {
    color: #005bac;
}

#navArea nav .inner ul li ol li.child-big:nth-child(1) a:hover dd {
    color: #a5daf6;
}

#navArea nav .inner ul li ol li.child-big a dd span {
    display: block;
    margin: 0 auto 5px;
    height: 30px;
}

#navArea nav .inner ul li ol li.child-big dd span {
    border-bottom: none;
    box-shadow: none;
    padding: 0;
}

#navArea nav .inner ul li ol li.child-big:nth-child(1) a dd span {
    background: url(../images/common/bus_location_w.svg) no-repeat center;
    width: 32px;
    height: 32px;
    text-align: center;
}


#navArea nav .inner ul li ol li.child-big:nth-child(1) a:hover dd span {
    background: url(../images/common/bus_location_b.svg) no-repeat center;
    width: 32px;
    height: 32px;
    text-align: center;
}


#navArea nav .inner ul li ol li.child-big:nth-child(2) a dd span {
    background: url(../images/common/route_w.svg) no-repeat center;
    width: 32px;
    height: 32px;
    text-align: center;
}


#navArea nav .inner ul li ol li.child-big:nth-child(2) a:hover dd span {
    background: url(../images/common/route_b.svg) no-repeat center;
    width: 32px;
    height: 32px;
    text-align: center;
}


#navArea nav .inner ul li ol li.child-big:nth-child(3) a dd span {
    background: url(../images/index/card_w.svg) no-repeat center;
    width: 38px;
    height: 32px;
    text-align: center;
}

#navArea nav .inner ul li ol li.child-big:nth-child(3) a:hover dd span {
    background: url(../images/index/card.svg) no-repeat center;
    width: 38px;
    height: 32px;
    text-align: center;
}

#navArea nav .inner ul li ol li.child-big:nth-child(4) a dd span {
    background: url(../images/index/ntasu_w.svg) no-repeat center;
    width: 38px;
    height: 32px;
    text-align: center;
}

#navArea nav .inner ul li ol li.child-big:nth-child(4) a:hover dd span {
    background: url(../images/index/ntasu.svg) no-repeat center;
    width: 38px;
    height: 32px;
    text-align: center;
}

#navArea nav .inner ul li ol li.child-big:nth-child(5) a dd span {
    background: url(../images/common/local_w.svg) no-repeat center;
    width: 38px;
    height: 32px;
    text-align: center;
}

#navArea nav .inner ul li ol li.child-big:nth-child(5) a:hover dd span {
    background: url(../images/common/local_b.svg) no-repeat center;
    width: 38px;
    height: 32px;
    text-align: center;
}
#navArea nav .inner ul li ol li.child-big:nth-child(6) a dd span {
    background: url(../images/common/education_w.svg) no-repeat center;
    width: 38px;
    height: 32px;
    text-align: center;
}

/*============
  .toggle_btn
  
  =============*/
.toggle_btn {
    display: block;
    position: absolute;
    right: 2%;
    transition: all .5s;
    cursor: pointer;
    z-index: 10;
    top: 8%;
    width: 70px;
    height: 70px;
    /* display: none; */
    background: linear-gradient(2300deg, #005bac 0%, #176cb8 52%, #005bac 100%);
    border-radius: 100px;
}

.toggle_btn span {
    display: block;
    position: absolute;
    left: 0;
    width: 34%;
    height: 1px;
    background-color: #fff;
    transition: all .5s;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    margin: auto;
}

.toggle_btn.transform span {
    background: #000;
}




.toggle_btn span:nth-child(1) {
    top: 37%;
}

.toggle_btn span:nth-child(2) {
    top: 50%;
}

.toggle_btn span:nth-child(3) {
    top: 64%;
}

.open .toggle_btn span:nth-child(1) {
    -webkit-transform: rotate(45deg) translate(6.5px, 2.5px);
    transform: rotate(45deg) translate(6.5px, 2.5px);
    top: 41%;
    left: -5px;
}

.open .toggle_btn span:nth-child(2) {
    opacity: 0;
}

.open .toggle_btn span:nth-child(3) {
    -webkit-transform: rotate(-45deg) translate(6px, -2px);
    transform: rotate(-45deg) translate(6px, -2px);
    top: 58%;
    left: -6px;
}

div#navArea.open .toggle_btn {
    display: block;
    opacity: 1;
    z-index: 11;
    top: -50px;
}


header.is-animation .toggle_btn {
    display: block;
    top: 4%;
}

div#navArea .toggle_btn.t-transform {
    height: 74px;
}

div#navArea .toggle_btn.t-transform span:nth-child(1) {
    top: 20px;
}

div#navArea .toggle_btn.t-transform span:nth-child(2) {
    top: 34px;
}

div#navArea .toggle_btn.t-transform span:nth-child(3) {
    bottom: 8px;
}


div#navArea.open .toggle_btn.t-transform span:nth-child(1) {
    top: 38px;
}

div#navArea.open .toggle_btn.t-transform span:nth-child(3) {
    bottom: 3px;
}

ul.drawer-list {
    width: 67%;
    margin: 0 0 0 17%;
}

ul.drawer-list li a {
    display: flex;
    background: #fff;
    padding: 20px;
    width: 100%;
    align-items: center;
    box-shadow: 2px 4px 16px 0px #eaf3fb;
    border: 2px solid;
}

ul.drawer-list li a:hover {
    border: 2px solid;
    box-shadow: -1px 4px 14px 2px hsl(200deg 39% 80% / 33%);
}

#navArea nav .inner ul.drawer-list li {
    width: 48%;
    margin: 0;
    padding: 30px 0;
    border: none;
    background: none;
}

ul.drawer-list li a b {
    width: 26px;
    display: block;
    margin: 0 15px 0 0;
}

#navArea nav .inner ul.drawer-list li a span {
    font-size: 1.1em;
    font-weight: 600;
    border-bottom: none;
    padding: 0;
    box-shadow: none;
}




/*drawer*/
.lng {
    margin: 0 0 30px;
    position: relative;
    justify-content: space-between;
}

.lng:before {
    top: 0;
    bottom: 0;
    margin: auto;
    width: 1px;
    left: 0;
    right: 0;
    background: #fff;
}

.lng li {
    width: 100%;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: space-around;
}

.lng li a {
    display: block;
    width: 100%;
    font-size: 0.9em;
    letter-spacing: 1px;
}

.lng li span {
    border-right: 1px solid rgba(255, 255, 255, 0.2);
    padding: 0 20px 0 32px;
    position: relative;
    font-size: 1em;
    letter-spacing: 1px;
    color: #fff;
}

.lng li span:before {
    content: "";
    background: url("../images/common/i_langage_w.svg") no-repeat left center;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 3px;
    left: 0;
    background-size: 20px;
}

.drawer-menu {
    padding: 0;
}

.drawer-menu a {
    color: #000;
    font-size: 1em;
    transition: .3s;
}

.drawer-menu a:hover {
    color: #005bac;
}

.drawer-menu a.arrow:before {
    border: none;
    background: url(../images/common/arrow_b.svg) no-repeat center center;
    background-size: 10px;
}

.drawer-nav .drwbox {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    height: 100%;
    overflow-y: scroll;
}

.drawer-nav dl {
    width: 100%;
    margin: 0;
}

.drawer-nav dl:nth-child(3) {
    margin: 0;
}

.drawer-nav dt {
    color: #fff;
    padding: 0 0 15px;
    margin: 0 0 20px;
    letter-spacing: 1px;
    font-weight: 100;
    border-bottom: 1px solid #dddddd;
}

.drawer-nav dt a {
    padding: 0;
    font-size: 1.5em;
    font-weight: 600;
    display: block;
}

.drawer-nav dt a:before {
    left: inherit;
    right: 3%;
    width: 20px;
    height: 20px;
    background: url(../images/common/arrow_w.svg) no-repeat center center #005bac;
    background-size: 6px;
    transition: .3s;
}

.drawer-nav dt a:hover:before {
    right: 0%;
}

.drawer-nav dd {
    display: flex;
    flex-wrap: wrap;
}

.drawer-nav dd a {
    font-size: 0.95em;
    font-weight: 600;
    display: block;
    margin: 0 2% 20px 0;
    width: 23.5%;
}

.drawer-nav dd a:nth-child(4n) {
    margin: 0 0 20px 0;
}

.drawer-nav dd a:hover {
    color: #000;
}

.drawer-top .d-logo {
    width: 193px;
}

.drawer-top {
    padding: 0;
    position: relative;
}

.drawer-top-wrap {
    max-width: 1200px;
    margin: auto;
    display: flex;
    align-items: center;
    width: 90%;
}

@media screen and (max-width: 1499px) {
    ul.drawer-list {
        width: 52%;
        margin: 0 3% 0 25%;
    }
}

@media screen and (max-width: 1299px) {
    .toggle_btn {
        width: 60px;
        height: 60px;
    }

    ul.drawer-list {
        margin: 0 10% 0 10%;
        width: 62%;
    }

    .open .toggle_btn span:nth-child(3) {
        top: 61%;
    }

    #navArea nav .inner .sp_menu_box ul.site-list {
        margin: 40px auto 0;
    }

    #navArea nav .inner ul li span>a {
        font-size: 1.3em;
    }

    #navArea nav .inner ul li.page_link.some {
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    #navArea nav .inner ul li.page_link.some span {
        width: auto;
        margin: 15px 5% 0 0;
    }

    #navArea nav .inner ul li.page_link.some span:last-child {
        margin: 15px 0 0 0;
    }

    #navArea nav .inner ul li ol li.child-big a {
        font-size: 0.8em;
    }
}

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

    .toggle_btn {
        top: 4%;
    }

    #navArea nav .inner ul li.page_link.some {
        flex-wrap: wrap;
    }


}

@media screen and (max-width: 1100px) {
    #navArea nav .inner ul li span>a {
        font-size: 1.2em;
    }

}

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




@media screen and (max-width: 991px) {
    #navArea nav .inner ul li.page_link.local {
        width: 58%;
    }

    #navArea nav .inner ul li.page_link.bus {
        width: 38%;
    }

    #navArea nav .inner ul li.page_link.some {
        flex-wrap: wrap;
        margin: 50px auto 0;
        width: 100%;
    }


    #navArea nav .inner ul>li:nth-child(3) {
        width: 58%;
    }

    #navArea nav .inner ul.drawer-list li a span {
        font-size: 1em;
    }

    ul.drawer-list {
        width: 70%;
        margin: 0 5%;
    }

    #navArea nav .inner ul li ol a {
        font-size: 0.9em;
    }

    #navArea nav .inner ul li ol li.child-big a dd {
        font-size: 0.9em;
    }

    #navArea nav .inner ul li ol li.child-big a dd br {
        display: none
    }

    #navArea nav .inner ul li ol li.child-big a {
        padding: 4px 0 6px;
        height: auto;
        font-size: 1em;
    }

    #navArea nav .inner ul li ol li.child-big {
        width: 49%;
    }

    #navArea nav .inner ul li ol li.child-big:nth-child(2n) {
        margin: 0 0 3% 0;
    }

    #navArea nav .inner ul li ol li.child-big:nth-child(5) {
        /* width: 100%; */
    }

    #navArea nav .inner ul li ol li.child-big a dd span {
        margin: 0 auto;
    }


    .toggle_btn {
        opacity: 0;
    }

    header.is-animation div#navArea.open .toggle_btn {
        top: 46%;
    }


}

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

    .drawer-top-wrap {
        flex-wrap: wrap;
        padding: 5% 0 2%;
    }

    .drawer-top .d-logo {
        width: 165px;
    }

    div#navArea.open .toggle_btn {
        top: 35%;
        right: 5%;
    }

    .open .toggle_btn span:nth-child(3) {
        top: 72%;
    }

    .open .toggle_btn span:nth-child(1) {
        top: 0;
    }

    #navArea nav .inner ul li ol li.child-big a dd br {
        display: block
    }

    ul.drawer-list {
        width: 100%;
        margin: 0;
    }

    ul.drawer-list li a {
        padding: 10px;
        box-shadow: 1px 1px 1px 0px hsl(200deg 39% 80% / 33%);
        border: 1px solid;
    }

    #navArea nav .inner .sp_menu_box ul.site-list {
        margin: 0 auto;
    }

    #navArea nav .inner ul li.page_link.local {
        width: 100%;
    }

    #navArea nav .inner ul li ol li,
    #navArea nav .inner ul li ol li:nth-child(2n) {
        width: 100%;
        margin: 0 0 15px 0;
    }

    #navArea nav .inner ul li.page_link.bus {
        width: 100%;
        margin: 0 0 20px;
    }

    #navArea nav .inner ul>li:nth-child(3) {
        width: 100%;
        margin: 0;
    }

    #navArea nav .inner ul li.page_link.bus ol li {
        margin: 0 0 15px 0;
    }

    #navArea nav .inner ul li.page_link {
        margin: 0 0 20px 0;
    }

    #navArea nav .inner ul li.page_link.some {
        margin: 10px auto 0;
        justify-content: space-around;
        width: 100%;
    }

    #navArea nav .inner ul li.page_link.some span,
    #navArea nav .inner ul li.page_link.some span:last-child {
        width: 100%;
        margin: 0 0 4% 0;
        font-weight: 400;
        text-align: left;
        padding-right: 0;
    }

    #navArea nav .inner ul li:nth-child(3) ol li {
        margin: 0 0 15px 0;
    }

    #navArea nav .inner ul li.page_link.some a {
        font-size: 0.95em;
        padding: 0;
        font-weight: 500;
    }

    #navArea nav .inner ul li.page_link.some:last-child a {
        padding: 0 24px 0 0;
    }

    #navArea nav .inner ul li.page_link.some a:before {
        /*content:none;*/
    }

    #navArea nav .inner ul li span {
        padding: 0 0 20px 0;
    }

    #navArea nav .inner ul li span>a {
        font-weight: 600;
        font-size: 1.1em;
        position: relative;
        padding: 0 0 0 41px;
    }





    #navArea nav .inner ul li.page_link .ol-wrap {
        display: none;
    }

    #navArea nav .inner ul li span b.button4:before {
        transform: rotateZ(90deg);
        top: 28%;
        transition: .3s;
    }


    #navArea nav .inner ul li span.active b.button4:before {
        transform: rotateZ(-90deg);
    }



    #navArea nav .inner ul li ol li.child-big {
        width: 48.5%;
        margin: 0 3% 3% 0;
    }

    #navArea nav .inner ul li ol li.child-big:nth-child(2n) {
        margin: 0 0 3% 0;
    }

    #navArea nav .inner ul li ol li.child-big:nth-child(3) {
        margin: 0 3% 3% 0;
    }

    #navArea nav .inner ul li ol li.child-big:nth-child(4) {
        margin: 0 0 3% 0;
    }

    #navArea nav .inner ul li ol li.child-big:nth-child(5) {
        margin: 0 3% 7% 0;
    }


    #navArea nav .inner ul li ol li.child-big a {
        padding: 7px;
        height: 87px;
    }
    #navArea nav .inner ul li ol li.child-big.education a{
        background: #c62828;
        border-color: #c62828;
    }
	#navArea nav .inner ul li ol li.child-big.education a:hover dd {
		color: #fff
	}

    #navArea nav .inner ul li ol li.child-big a dd span {
        margin: 0 auto 1px;
    }

    ul.drawer-list li a b {
        margin: 0 10px 0 0;
    }

    #navArea nav .inner ul li ol li.child-big:nth-child(2) a dd span,
    #navArea nav .inner ul li ol li.child-big:nth-child(3) a dd span,
    #navArea nav .inner ul li ol li.child-big:nth-child(4) a dd span {
        width: 33px;
        height: 29px;
    }

    #navArea nav .inner ul li ol li.child-big:first-child a dd span {
        width: 28px;
        height: 29px;
    }

    /*recruit*/
    #navArea nav .inner ul li.recruit_sp {
        width: 100%;
    }

    #navArea nav .inner ul li.recruit_sp span>a:before {
        content: "";
        width: 32px;
        height: 32px;
        background: url(../images/common/recruit.svg) no-repeat center;
        background-size: 20px;
        left: 0;
        right: 0;
        top: 0;
        border-radius: 40px;
        background-color: #ecf6ff;
        transition: .3s;
        position: absolute;
    }


}