/* 字體 */

@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100;300;400;500;700;900&family=Noto+Serif+TC:wght@200;300;400;500;600;700;900&display=swap");
@font-face {
    font-family: "FuturaStd-Medium";
    src: url(../../fonts/Futura-Std-Medium.OTF);
}

@font-face {
    font-family: "Roxborough";
    src: url(../../fonts/Roxborough-CF.ttf);
}

@font-face {
    font-family: "Futura-Std-Book";
    src: url(../../fonts/Futura-Std-Book.otf);
}

@font-face {
    font-family: "Futura-Std-Heavy";
    src: url(../../fonts/Futura-Std-Heavy.otf);
}

@font-face {
    font-family: "FuturaStd-Light";
    src: url(../../fonts/Futura-Std-Light.otf);
}


/*============nav===============*/

.logo {
    width: 36vw;
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 9999;
}

.bar {
    position: absolute;
    display: block;
    width: 5vw;
    height: 5vw;
    top: 50%;
    transform: translateY(-50%);
    left: 3vw;
    z-index: 9999;
}

.bar img {
    height: 100%;
    width: auto;
}

#header {
    position: fixed;
    display: block;
    top: 0;
    left: 0px;
    z-index: 99999;
    width: 100%;
    height: 100%;
    color: #313131;
    box-sizing: border-box;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 3.9vw;
    letter-spacing: 0.2vw;
    overflow: auto;
}

.header-bg {
    background-color: rgba(0, 0, 0, 0.7);
    position: fixed;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0px;
    display: none;
    z-index: 99998;
}

.header-area {
    position: fixed;
    display: block;
    width: 100%;
    height: 16vw;
    top: 0;
    left: 0;
    z-index: 100000;
    background-color: #fff;
    border-bottom: 0.5px solid #dee1de;
}

nav {
    width: 60%;
    height: 100vh;
    position: relative;
    margin: 0 auto 0 0;
    background-color: #fff;
    overflow: auto;
}

nav ul {
    height: auto;
    padding: 0;
    margin: 16vw 0 0 0;
}

nav li {
    width: 100%;
    vertical-align: middle;
    display: block;
    list-style-type: none;
    position: relative;
    margin: 0;
    border-bottom: 0.5px solid #dee1de;
}

nav li:last-child {
    border: none;
}

nav li>a {
    color: #0d4c95;
    line-height: 20vw;
    height: 100%;
    display: block;
    text-indent: 4vw;
    position: relative;
}

.menu-line {
    width: 90%;
    position: absolute;
    left: 7%;
    bottom: 18%;
}

.sub {
    width: 55%;
    height: auto;
    display: block;
    position: relative;
    margin: 1vw 0 5vw 45%;
}

.sub-li {
    width: 100%;
    height: 100%;
    display: block;
}

.sub a {
    width: 100%;
    color: #0d4c95;
    display: block;
    font-size: 3.9vw;
    letter-spacing: 0.2vw;
    position: relative;
    transition: all 0.5s;
    margin: 0 auto 1.5vw auto;
}
.search {
    position: absolute;
    display: block;
    width: 5vw;
    height: 5vw;
    top: 50%;
    transform: translateY(-50%);
    right: 3vw;
    z-index: 9999;
}
.search img{
    width:100%;
}