@media (max-width: 1240px){
    header#header-main div.header-main_inner{
        padding-top:24px;
        position:static;
    }
    
    header#header-main div.header-main_inner nav#nav-main div.sp-menu_wrapper{
        display:flex;
        align-items: center;
        margin-left:10px;
    }

    header#header-main div.header-main_inner nav#nav-main ul.lang-switch{
        border-radius: 20px;
        position:static;
    }

    header#header-main div.header-main_inner nav#nav-main a.sp-contact{
        text-decoration: none;
        margin:0 clamp(4px,5.2vw,20px);
        padding:11px 28px;
        font-weight:400;
    }

    header#header-main div.header-main_inner a#sp-menu{
        display:block;
        width:40px;
        height:23px;
        position:relative;
        overflow: hidden;
    }

    header#header-main div.header-main_inner a#sp-menu span{
        position:relative;
        display: block;
        text-indent: 100%;
        white-space: nowrap;
        height:100%;
    }

    header#header-main div.header-main_inner a#sp-menu::before,
    header#header-main div.header-main_inner a#sp-menu::after,
    header#header-main div.header-main_inner a#sp-menu span::before{
        content:"";
        width:40px;
        height:2px;
        background-color: #397BDF;
        position:absolute;
    }

    header#header-main div.header-main_inner a#sp-menu::before{
        top:0;
        transition: transform 0.4s ease;
    }

    header#header-main.top div.header-main_inner nav#nav-main ul.nav-main_list.active {
        left: -20px;
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list.active + .sp-menu_wrapper a#sp-menu:before {
        transform: translateY(10px) rotateZ(-20deg);
        transform-origin: center;
    }
/*     
    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list.active + .sp-menu_wrapper a#sp-menu:after {
        transform-origin: center;
    } */

    header#header-main div.header-main_inner a#sp-menu::after{
        bottom:0;
        transition: transform 0.4s ease;
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list.active + .sp-menu_wrapper a#sp-menu:after {
        transform: translateY(-11px) rotateZ(20deg);
        transform-origin: center;
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list.active + .sp-menu_wrapper a#sp-menu span::before {
        display: none;
    }
    

    header#header-main div.header-main_inner a#sp-menu span::before{
        top:0;
        bottom:0;
        right:0;
        left:0;
        margin:auto;
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list{
        position:absolute;
        width:100vw;
        left: 0px;
        top: 0px;
        border-radius: 0;
        height:0;
        overflow: auto;
        display: block;
        opacity: 0;
        transition: max-height 0.4s ease-in-out, opacity 0.4s ease-in-out, transform 0.4s ease-in-out;
        box-sizing: border-box;
        padding-top:80px;
        padding-bottom:40px;
        z-index:-1;
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list.active{
        /* display: block; */
        height: 100vh;
        opacity:1;
        transform: translateY(0);
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list li.nav-main_li:nth-child(-n+7){
        border-bottom: solid 1px #E9EDF5;
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list li.nav-main_li:nth-child(8),
    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list li.nav-main_li:nth-child(9){
        margin-top:30px;
        position: static;
        bottom:30px;
        transform: translateX(0);
        text-align: center;
        width:100%;
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list li.nav-main_li:nth-child(8){

    }
    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list li.nav-main_li:nth-child(9){
    }

    header#header-main div.header-main_inner nav#nav-main a.top-link, header#header-main div.header-main_inner nav#nav-main span.top-link {
        display: flex;
        justify-content: space-between;
        align-items: center;
        font-weight: 400;
        padding:25px 10px;
    }

    header#header-main div.header-main_inner nav#nav-main a.parent::after ,header#header-main div.header-main_inner nav#nav-main span.top-link::after{
        content:"";
        width:30px;
        aspect-ratio:1/1;
        border:solid 1px #397BDF;
        background: no-repeat center url(../../images/common/icon-plus.svg);
        display: inline-block;
        margin-right:0;
        margin-left:auto;
        border-radius:50%;
        vertical-align: middle;
    }
    header#header-main div.header-main_inner nav#nav-main a.parent.active::after ,header#header-main div.header-main_inner nav#nav-main span.parent.active::after {
        background: no-repeat center url(../../images/common/icon-minus.svg);
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list div.sub-menu{
        position:static;
        box-shadow:none;
        background-color: #F7F9FC;
        border-radius: 0;
        padding:20px;
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list div.sub-menu div.sub-menu_ttl{
        padding-left: 8px;
        padding-bottom: 16px;
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list div.sub-menu div.sub-menu_ttl .ttl-en,
    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list div.sub-menu div.sub-menu_ttl .ttl-jp {
        display: none;
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list div.sub-menu ul.sub-menu_list{
        max-width:100%;
    }

    header#header-main div.header-main_inner a.sp-contact{
        display:block;
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list a.nav-btn{
        display: block;
        width:100%;
        box-sizing: border-box;
        border-radius: 30px;
        margin-left:0px;
        font-size:1rem;
        padding:19px 28px;
    }
    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list li.nav-main_li > div.sub-menu > div.content-cover {
        flex-direction: column;
    }

}

@media (max-width: 640px){
    header#header-main div.header-main_inner a#logo{
        width:60px;
    }
    
    header#header-main div.header-main_inner nav#nav-main ul.lang-switch{
        padding:4px;
    }

    header#header-main div.header-main_inner nav#nav-main a.sp-contact{
        padding:9px 15px;
        font-size:0.625rem;
        white-space: nowrap;
        margin:0 clamp(4px,3vw,20px);
    }

    header#header-main div.header-main_inner a#sp-menu{
        width:24px;
        height:15px;
    }

    header#header-main div.header-main_inner a#sp-menu::before,
    header#header-main div.header-main_inner a#sp-menu::after,
    header#header-main div.header-main_inner a#sp-menu span::before{
        width:24px;
        height:1px;
    }








    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list.active + .sp-menu_wrapper a#sp-menu:before {
        transform: translateY(7px) rotateZ(-20deg);
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list.active + .sp-menu_wrapper a#sp-menu:after {
        transform: translateY(-7px) rotateZ(20deg);
    }











    

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list{
        padding-bottom:75px;
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list li.nav-main_li:nth-child(8),
    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list li.nav-main_li:nth-child(9){
        display: block;
        position:static;
        margin:auto;
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list li.nav-main_li:nth-child(8){
        /* right: 50%; */
        transform: translateX(0); 
        margin-top:30px;

    }
    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list li.nav-main_li:nth-child(9){
        /* left: 50%; */
        transform: translateX(0);
        margin-top:10px;
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list div.sub-menu ul.sub-menu_list{
        display: flex;
        flex-direction:column;
        row-gap: 10px;
    }

    header#header-main div.header-main_inner nav#nav-main ul.nav-main_list div.sub-menu ul.sub-menu_list li{
        width:100%;
    }
}
