@charset "utf-8";
/* CSS Document */

/* 汎用 */


/* テンプレート */


/* ヘッダ */
.header{
    height: 5.6rem;
    box-sizing: border-box;
    padding: 2.8rem 2.8rem;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
}

.header__logo img{
    height: 9rem;
    width: auto;
}

.header__nav{
    display: block;
    background-color: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(10px);
    position: fixed;
    left:0 ;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.4s, visibility 0.4s;
}

body.is-navOpen .header__nav{
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.navBtn{
    position: fixed;
    top: 2.8rem;
    right: 2.8rem;
    z-index: 200;
    width: 5.6rem;
    height: 5.6rem;
    box-sizing: border-box;
    padding: 1.8rem 1.4rem;
    cursor: pointer;
    span{
        display: block;
        width: 100%;
        height: 2px;
        background-color: var(--color2);
        transition: transform 0.4s, opacity 0.4s;
        &:not(:last-child){
            margin-bottom: 0.8rem;
        }
    }
}

body.is-navOpen .navBtn{
    span:nth-child(1){
        transform: translateY(1rem) rotate(45deg);
    }
    span:nth-child(2){
        opacity: 0;
    }
    span:nth-child(3){
        transform: translateY(-1rem) rotate(-45deg);
    }
}

.header__nav__list{
    list-style-type: none;
    margin: 0;
    padding: 5.6rem;
    text-align: left;
    li{
        padding-bottom: 2.8rem;
        font-size: 4.6vw;
        font-weight: 900;
        a{
            text-decoration: none;
            background-image: linear-gradient(to bottom, #02284d, #0a50a1);
            -webkit-background-clip: text;
            background-clip: text;
            color: transparent;
            -webkit-text-fill-color: transparent;
            &:before{
                content:"-";
                padding-right:0.3em;
            }
        }
    }
}



/* コンテンツ領域コンテナ */


/* フッター */
