#mobile-nav-wrap{
    display: none;
}

@media (min-width: 1024px) and (max-width: 1280px) { }

@media (min-width: 769px) and (max-width: 1024px) { 

}

/*@media (min-width: 480px) and (max-width: 768px) {*/
    @media (max-width: 768px) {
    #main-nav-wrap{
        display: none;
    }
    #mobile-nav-wrap{
        display: block;
    }

    #hamburger{
        position: fixed;
        right: 20px;
        top: 35px;
        width: 50px;
        height: 50px;
        z-index: 10;
        cursor: pointer;
    }

    #btn-top,
    #btn-middle,
    #btn-bottom{
        transition: 0.6s;
        position: absolute;
    }
    #btn-top{
        top: 10px;
        left: 50%;
        transform: translate(-50%,0);
    }
    #btn-middle{
        top: 18px;
        left: 50%;
        transform: translate(-50%,0);
    }
    #btn-bottom{
        top: 26px;
        left: 50%;
        transform: translate(-50%,0);
    }



    .hamburger-line{
        display: block;
        height: 3px;
        width: 38px;
        margin: 4px auto;
        background-color: var(--main-navy);
    }
    #mobile-nav{
        opacity: 0;
        transition-delay: 1s;
        transition-property: display;
        position: fixed;
        /* transition: opacity 0.6s; */
    }

    .mobile-page-list,
    .mobile-page-list a,
    .mobile-sub-nav a,
    .mobile-sub-nav{
    transition: all 0.6s;
}

    .mobile-page-list{
        font-family: gill-sans-nova-condensed, sans-serif;
        font-weight: 600;
        font-style: normal;
        letter-spacing: 0.05em;
        font-size: 24px;
        margin: 3px 0;
    }

    .mobile-sub-nav{
        font-size: 20px;
        margin: 3px 0;
    }

    #overlay{
        display: block;
        position: fixed;
        left: 0;
        top: 0;
        width: 100vw;
        height: 100vh;
        z-index: 0;
        background-color: #fff;
        opacity: 0;
        visibility: hidden;/* 非表示にしておきます */
        transition: all .6s;
    }

    /* open */
    .nav-open #overlay{
        opacity: 1;
        z-index: 4;
        visibility: visible;
        transition: all 0.6s;
    }

    .nav-open #mobile-nav{
        opacity: 1;
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
        z-index: 5;
        transition: opacity 0.6s;
    }

    .nav-open #btn-top,
    .nav-open #btn-middle,
    .nav-open #btn-bottom{
        transition: 0.6s;
    }

    .nav-open #btn-top{
        transform: rotate(-45deg);
        top: 20px;
        left: 6px;
    }

    .nav-open #btn-middle{
        opacity: 0;
        width: 0;
    }

    .nav-open #btn-bottom{
        transform: rotate(45deg);
        top: 20px;
        left: 6px;
    }

    .nav-open .mobile-page-list{
        margin: 8px 0;
    }

    .nav-open .mobile-sub-nav{
        margin: 5px 0;
    }

    .nav-open .mobile-sub-nav a{
        color: #95a8c5;
    }
}

@media (max-width: 480px) {
    #hamburger {
        top: 15px;
    }
}