.header {
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    top : 0;
    left: 0;
    margin: 0 auto;
    padding: 1.4rem 0rem;
    width: calc(100% - 80px);
    
}

.header .logo {
    max-width: 30%;
}

.header .logo img{
    max-height: 40px;
    
    width: auto;
}


.header .menu{
    max-width: 70%;
}


.header .menu .pc_menu{

}

.header .menu .pc_menu ul{
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    font-weight: bold;
}

.header .menu .pc_menu ul li{
    padding: .5rem 1rem;
    min-width: 80px;
    text-align: center;
    letter-spacing: 1px;
    margin-bottom: 3px;
    padding-bottom: 8px;
    background-image: linear-gradient(#dc020b 0 0);
    background-position: 0 100%; /*OR bottom left*/
    background-size: 0% 2px;
    background-repeat: no-repeat;
    transition:
        background-size 0.3s,
        background-position 0s 0.3s; /*change after the size immediately*/
        
}

.header .menu .pc_menu ul li.in_active{
    background-position: 100% 100%; /*OR bottom right*/
    background-size: 100% 2px;
    transition:
        background-size 0.3s,
        background-position 0s 0.3s; /*change after the size immediately*/ 
}

.header .menu .pc_menu ul li:hover{
    background-position: 100% 100%; /*OR bottom right*/
    background-size: 100% 2px;
    opacity: .7;
    transition:
        background-size 0.3s,
        background-position 0s 0.3s; /*change after the size immediately*/
}

.header .menu .sp_menu{

}


.sp_menu_content{
    display: none;
}


@media screen and (max-width:767px){
    .header{
        width: calc(100% - 40px);
    }
    
    .menu-btn {
        position: fixed;
        top: 20px;
        right: 10px;
        display: flex;
        height: 40px;
        width:  40px;
        justify-content: center;
        align-items: center;
        z-index: 90;
        background-color: var(--default_red_color);
        border-radius: 50%;
        transition: .5s;
    }
    .menu-btn span,
    .menu-btn span:before,
    .menu-btn span:after {
        content: '';
        display: block;
        height: 2px;
        width: 10px;
        border-radius: 3px;
        background-color: #ffffff;
        position: absolute;
        transition: .5s;
    }
    .menu-btn span:before {
        bottom: 8px;
        width: 20px;
        left: -5px;
        transition: .5s;
    }
    .menu-btn span:after {
        top: 8px;
        width: 20px;
        left: -5px;
        transition: .5s;
    }

    #menu-btn-check:checked ~ .menu-btn span {
        background-color: rgba(255, 255, 255, 0);/*メニューオープン時は真ん中の線を透明にする*/
        transition: .5s;
    }
    #menu-btn-check:checked ~ .menu-btn span::before {
        bottom: 0;
        transform: rotate(45deg);
        transition: .5s;
    }
    #menu-btn-check:checked ~ .menu-btn span::after {
        top: 0;
        transform: rotate(-45deg);
        transition: .5s;
    }

    #menu-btn-check:checked ~ .menu-btn{
        background: #000;
    }

    #menu-btn-check {
        display: none;
    }

    .menu-content {
        display: inline;
        width: 100%;
        height: 100%;
        position: fixed;
        top: 0;
        left: 100%;/*leftの値を変更してメニューを画面外へ*/
        z-index: 80;
        background-color: #000;
        transition: all 0.5s;/*アニメーション設定*/
    }

    .menu-content a.sp_menu_icon img {
        max-height: 40px;
        width: auto;
        margin: 1.4rem 0rem;
        margin-left: 20px;
        
    }
    .menu-content ul {
        padding: 3rem 10px 0;
        overflow-y: scroll;
        height: calc( 100% - 6rem );
        
    }
    .menu-content ul li {
        border-bottom: none;
        list-style: none;
        display: block;
        text-align: center;

    }
    .menu-content ul li a {
        display: inline-block;
        width: auto;
        font-size: 20px;
        box-sizing: border-box;
        color:#ffffff;
        text-decoration: none;
        padding: 9px 15px 1.5rem 0;
        position: relative;
    }

    #menu-btn-check:checked ~ .menu-content {
        left: 0;/*メニューを画面内へ*/
    }
    
    .menu-content ul .menu_btn a{
        
        display: inline-block;
        width: 80%;
        max-width: 400px;
        background: #fff;
        color: #000;
        padding: 1.5rem 4rem;
        margin-top: 2rem;
        margin-bottom: 3rem;
        /* border: 1px solid var(--default_red_color); */
        border-radius: 50px;
        position : relative;
    }
    
    .menu-content ul .menu_btn a:before{
        content: "";
        width: 30px;
        height: 30px;
        background: url(/wordpress/wp-content/themes/fsd20250801/asset/img/mv_icon.png) no-repeat;
        background-size: contain;
        display: inline-block;
        position: absolute;
        left: 10%;
        top: 50%;
        transform: translate(10%, -50%);
        
    }
    
    .menu-content ul .menu_small a{
        
        font-size:14px;
    }
}

