body{
    margin: 0;
    background-color: #1D1D1D;
}

/* button */
/* blue button */

.white_btn_n{
    display: flex;
    width: 100%;
    align-items: center;
    text-decoration: none;
    gap: 16px;

    max-width: 320px;
    height: 58px;
    border-radius: 29px;
    background: #FFF;
    box-shadow: 0px 0px 18px 0px rgba(42, 87, 154, 0.15);
}
.white_btn_n div{
    display: flex;
    width: 100%;
    margin-left: 8px;
    max-width: 42px;
    height: 42px;
    justify-content: center;
    align-items: center;
    border-radius: 21px;
    background: #2A579A;
}
.white_btn_n span{
    color: #0E203B;
    font-size: 13px;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 1.04px;
}

.blue_btn_n{
    display: flex;
    width: 100%;
    align-items: center;
    text-decoration: none;
    gap: 16px;

    max-width: 320px;
    height: 58px;
    border-radius: 29px;
    background: #2A579A;
    box-shadow: 0px 0px 18px 0px rgba(42, 87, 154, 0.15);
}
.blue_btn_n div{
    display: flex;
    width: 100%;
    margin-left: 8px;
    max-width: 42px;
    height: 42px;
    justify-content: center;
    align-items: center;
    background-color: #fff;
    border-radius: 21px;
    background: #FFF;
}
.blue_btn_n span{
    color: #FFF;
    font-size: 13px;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 1.04px;
}

.white_btn_n:hover,
.blue_btn_n:hover{
    opacity: .5;
    transition: all .2s ease-out 0s;
}


.header2025{
    display: flex;
    justify-content: center;
    height: 74px;
    align-items: center;
    /* position: fixed; */
    z-index: 99999;
    width: 100%;

    position: sticky;
    top: 0;
}
.header2025 .inner{
    display: flex;
    justify-content: center;
    max-width: 1440px;
    width: 95%;
    justify-content: space-between;
    z-index: 999;
}
.header2025 .inner .gslogo{
    display: flex;
    align-items: center;
}
.header2025 .inner .gslogo a{
    z-index: 9999;
}
.header2025 .inner .gslogo a img{
    max-width: 120px;
}
.header2025 .inner .header_globalnav{
    display: flex;
    align-items: center;
    gap: 64px;
}
.header2025 .inner .header_globalnav .global-pc-nav-itms{
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 40px;
}
.header2025 .inner .header_globalnav .global-pc-nav-itms li{
    
}
.header2025 .inner .header_globalnav .global-pc-nav-itms li a{
    text-decoration: none;

    color: #0E203B;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 13px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;

    display: flex;
    z-index: 9999;
    position: relative;
}
.header2025 .inner .header_globalnav .global-pc-nav-itms li a:hover{
    transition: all .3s;
    opacity: .5;
}
.header2025 .inner .header_globalnav .global-pc-nav-itms .li_curr{
    border-bottom: 2px solid #2A579A;
    padding: 8px 0px;
}
.header2025 .inner .header_globalnav .btnbox_nav{
    display: flex;
    gap: 12px;
    z-index: 9999;
}
.header2025 .inner .header_globalnav .btnbox_nav .blue_btn_n{
    color: #FFF;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 13px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}
.header2025 .inner .header_globalnav .btnbox_nav .white_btn_n{
    color: #2A579A;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 13px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}
.header2025 .inner .header_globalnav .btnbox_nav .blue_btn_n,
.header2025 .inner .header_globalnav .btnbox_nav .white_btn_n{
    height: 42px;
    width: 144px;
    justify-content: center;
}

/* submenu plan etc */
/* .header2025 .sub_items_globalnav_2025.show {
    display: flex;
} */
.header2025 .inner .header_globalnav .global-pc-nav-itms .has-submenu {
  /* position: relative; */
  width: 100%;
  display: flex;
  align-items: anchor-center;
  justify-content: center;
  max-width: fit-content;
}
.header2025 .inner .header_globalnav .global-pc-nav-itms .has-submenu:hover{
    /* background-color: #2A579A; */
}
.header2025 .inner .header_globalnav .global-pc-nav-itms .has-submenu:hover .solplan_a_btn_globalnav{
    color: #2A579A;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 13px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    display: flex;
    position: relative;
    /* padding-bottom: 8px;
    border-bottom: 2px solid #2A579A; */
}

.header2025 .inner .header_globalnav .global-pc-nav-itms .has-submenu:hover .solplan_a_btn_globalnav .blu_nav_lne{
    position: absolute;
    bottom: -8px;
    width: 100%;
    height: 2px;
    background-color:#2A579A;
}

.header2025 .inner .header_globalnav .global-pc-nav-itms .has-submenu .sub_items_globalnav_2025 {
    display: none;
    position: absolute;
    top: 0px;
    left: 0;
    width: 100%;
    padding-top: 104px;
    padding-bottom: 40px;
    display: none;
    justify-content: center;
    align-items: center;  
    flex-direction: column;
    background: #FFF;
    box-shadow: -4px 13px 18px 0px rgba(42, 87, 154, 0.15);
    gap: 40px;
}
  
.header2025 .inner .header_globalnav .global-pc-nav-itms .has-submenu:hover .sub_items_globalnav_2025 {
    display: flex;
}

.header2025 .sub_items_globalnav_2025 .plan_globalnav_pcnav{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    width: 74%;
    align-items: anchor-center;
    max-width: 1440px;
}
.header2025 .sub_items_globalnav_2025 .plan_globalnav_pcnav a{
    text-decoration: none;
    display: flex;
    gap: 8px;
    align-items: anchor-center;
}
.header2025 .sub_items_globalnav_2025 .plan_globalnav_pcnav a img{
    display: block;
    width: 100px;
    height: auto;
    max-width: 40px;
}
.header2025 .sub_items_globalnav_2025 .plan_globalnav_pcnav a span{
    color: #0E203B;
    font-feature-settings: 'palt' on;
    font-family: "Noto Sans JP";
    font-size: 13px;
    font-style: normal;
    font-weight: 500;
    line-height: 160%; /* 20.8px */
}
.header2025 .sub_items_globalnav_2025 .plan_globalnav_pcnav_solution{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    width: 74%;
    align-items: anchor-center;
    max-width: 800px;
}
.header2025 .sub_items_globalnav_2025 .plan_globalnav_pcnav_solution a{
    display: flex;
    flex-direction: column;
    align-items: center;
}
.header2025 .sub_items_globalnav_2025 .plan_globalnav_pcnav_solution a:hover{
    transition: all .3s;
    opacity: .5;
}
.header2025 .sub_items_globalnav_2025 .plan_globalnav_pcnav_solution a img{
    display: block;
    width: 100%;
    height: auto;
    max-width: 120px;
}
.header2025 .sub_items_globalnav_2025 .plan_globalnav_pcnav_solution a span{
    color: #0E203B;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 10px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%; /* 13px */
}
.header2025 .sub_items_globalnav_2025 .plan_globalnav_pcnav_solution a p{
    color: #0E203B;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%; /* 15.6px */
}

.header2025 .sub_items_globalnav_2025 .plan_globalnav_pcnav_botbtn{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}
.header2025 .sub_items_globalnav_2025 .plan_globalnav_pcnav_botbtn .blue_btn_n{

}
.header2025 .inner .header_globalnav .global-pc-nav-itms .has-submenu:hover .sub_items_globalnav_area_set {
    display: flex;
    left: unset;
    width: auto;
    padding-top: 55px !important;
}
.header2025 .sub_items_globalnav_area_set{
    background: transparent !important;
    box-shadow: none !important;
    padding-top: 74px !important;
}
.header2025 .sub_items_globalnav_area_set .plan_globalnav_pcnav_solution{
    display: flex;
    width: 100%;
    left: 80px;
    position: relative;
}
.header2025 .sub_items_globalnav_area_set .plan_globalnav_pcnav_solution ul{
    margin: 0;
    padding: 5px 18px;
    background: #fff;
    border: 1px solid #1356a0;
    list-style: none;
    display: flex;
    flex-direction: column;
    width: 250px;
}
.header2025 .sub_items_globalnav_area_set .plan_globalnav_pcnav_solution ul li{

}
.header2025 .sub_items_globalnav_area_set .plan_globalnav_pcnav_solution ul li a{
    text-align: left !important;
    color: #141414;
    display: block !important;
    position: relative;
    padding: 10px 0;
    border-bottom: 1px solid black;
    font-size: 16px !important;
    line-height: 1.5em !important;
    font-weight: normal !important;
}
.header2025 .sub_items_globalnav_area_set .plan_globalnav_pcnav_solution ul li:nth-last-child(1) a{
    border-bottom: none;
}
.header2025 .sub_items_globalnav_area_set .plan_globalnav_pcnav_solution ul li a:hover{
    border-bottom: 2px solid #1356a0;
    color: #1356a0;
    transition: none !important;
    opacity: 1 !important;
}
.header2025 .sub_items_globalnav_area_set .plan_globalnav_pcnav_solution_v2{
    left: 93px;
}

/* nav - sp */
.nav_sp{
    display: flex;
    justify-content: center;
    position: relative;

}
.nav_sp .navdiv{
    display: flex;
    width: 82%;
    justify-content: space-between;
    background-color: transparent;
    position: fixed;
    z-index: 6;
    top: 0px;
    min-height: 100px;
    transition: height 0.3s ease-in-out;
}
.nav_sp .navdiv .logo{
    align-self: center;
    padding-left: 8px;
}
.nav_sp .navdiv .logo a{
    cursor: pointer;
}

.nav_sp .navdiv .logo a img{
    display: block;
    width: 100%;
    height: auto;
    max-width: 74px;
    transition: .3s ease-in-out;
}

.nav_sp .navdiv .menulgr{
    display: flex;
    gap: 40px;
    align-items: center;
    padding-right: 8px;
}
.nav_sp .navdiv .menulgr li{
    list-style: none;
    padding: 0;
    display: flex;
    gap: 5px;
}

.nav_sp .navdiv .menulgr li a{
    text-decoration: none;
}

.nav_sp .navdiv .menulgr li a span{
    color: #FFF;
    font-feature-settings: 'palt' on;
    font-family: "Noto Sans JP";
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 100%; /* 14px */
    letter-spacing: 0.42px;
}
.nav_sp .navdiv .menulgr li a .current{
    color: rgba(255, 255, 255, 0.50);
}

.nav_sp .navdiv .menulgr .btndiv{

}
.nav_sp .navdiv .menulgr .btndiv a{
    border-radius: 5px;
    background: #2E2E2E;
    display: flex;
    height: 56px;
    padding: 0px 20px;
    justify-content: center;
    align-items: center;

    color: #FFF;
    text-align: center;
    font-family: BIZ UDPGothic;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 18px */
    letter-spacing: 0.9px;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

.nav_sp .navdiv .menulgr .btndiv a.is-active{
    display: none;
}

.nav_sp .navdiv .menulgr .btndiv a:hover{
    transition: all 0.3s;
    box-shadow: none;
    color: rgba(255, 255, 255, 0.30);
    background: rgba(46, 46, 46, 0.50);
}

.nav_sp .mininav{
    display: none;
}

.nav_sp .navdiv .btnbox_nav_sp{
    display: flex;
    gap: 8px;
    align-items: anchor-center;
    margin-right: 16px;
}

.nav_sp .navdiv .btnbox_nav_sp .blue_btn_n{
    height: 36px;
    gap: 8px;
}
.nav_sp .navdiv .btnbox_nav_sp .blue_btn_n div{
    width: 22px;
    height: 22px;
}
.nav_sp .navdiv .btnbox_nav_sp .blue_btn_n div svg{
    width: 6px;
    height: 6px;
}
.nav_sp .navdiv .btnbox_nav_sp .blue_btn_n span{
    padding-right: 8px;
}
.nav_sp .navdiv .btnbox_nav_sp .hbgbtn_2{
    aspect-ratio: 1 / 1;
    display: inline-block;
    width: 48px;
    height: 45px;
    position: relative;
}
.nav_sp .navdiv .btnbox_nav_sp .hbgbtn_2 img{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    min-width: 138%;
    height: auto;
}


.slidenav{
    width: 100%;
    position: fixed;
    left: 0;
    /* top: 70px; */
    top: -10px;
    background-color: #FFF;
    /* background-color: pink; */
    /* visibility: hidden; */
    /* opacity: 1; */
    /* transition: 0.3s; */
    transform: translateY(-100%);
    /* z-index: 10; */
    z-index: 1;
    height: 100vh;
    display: none;
}

.slidenav.is-active{
    display: block;
    overflow-y: auto;
    transform: translateY(0);
    transition: 0.3s;
    position: fixed;
    z-index: 5;
    top: 0px;
}


.slidenav .slide-list{
    height: calc( 100vh - 80px );
    position: relative;
    top: 80px;
    overflow: scroll;
}

.slidenav .slide-list .slide-list-ul-main{
    margin: 0;
    padding: 0;
    list-style: none;

    display: flex;
    flex-direction: column;
}

.slidenav .slide-list .slide-list-ul-main{
    margin: 0;
    padding: 0;
    list-style: none;

    display: flex;
    flex-direction: column;
    border-top: 1px solid rgba(14, 32, 59, 0.06);
}
.slidenav .slide-list .slide-list-ul-main li{
    display: flex;
    height: 60px;
    width: 100%;
    align-items: anchor-center;
    /* padding-left: 16px; */
    border-bottom: 1px solid rgba(14, 32, 59, 0.06);
}
.slidenav .slide-list .slide-list-ul-main > li{
    display: flex;
    flex-direction: column;
    height: auto;
    background: #fff;
}

.slidenav .slide-list .slide-list-ul-main li a{
    color: #0E203B;
    text-align: center;
    font-feature-settings: 'palt' on;
    font-family: Overpass;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%; /* 20.8px */

    text-decoration: none;
}
.slidenav .slide-list .slide-list-ul-main > li > a{
    height: 60px;
    align-content: center;
    width: 95%;
    text-align: left;
}
.slidenav .slide-list .slide-list-ul-main li .slidenav_sp_ul_divbox{
    display: none;
    width: 100%;
}

.slidenav .slide-list .slide-list-ul-main li .slidenav_sub_op_btn{
    display: flex;
    align-items: anchor-center;
    justify-content: space-between;
}
.slidenav .slide-list .slide-list-ul-main li .slidenav_sub_op_btn > div{

}
.slidenav .slide-list .slide-list-ul-main li .slidenav_sub_op_btn > div img{
    width: 22px;
    height: 22px;
}
.slidenav .slide-list .slide-list-ul-main li .slidenav_sub_op_btn > div img.active{
    transform: rotate(180deg);
}

.slidenav .slide-list .slide-list-ul-main li .slidenav_sp_ul{
    padding: 0;
    width: 95%;
    display: flex;
    flex-direction: column;
    gap: 5px;
    justify-self: center;
    margin-bottom: 16px;
    position: relative;
    background: transparent;
    top: unset;
}

.slidenav .slide-list .slide-list-ul-main li .slidenav_sp_ul > li{
    border-bottom: 0;
    height: auto;
}
.slidenav .slide-list .slide-list-ul-main li .slidenav_sp_ul > li > a{
    border-radius: 3px;
    background: #F2F8FA;
    width: 100%;
    text-align: left;
    height: 50px;
    align-content: center;
    display: flex;
    align-items: center;
}
.slidenav .slide-list .slide-list-ul-main li .slidenav_sp_ul > li > a span{
    color: #0E203B;
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: 160%; /* 19.2px */
}
.slidenav .slide-list .slide-list-ul-main li .slidenav_sp_ul > li > a img{
    display: block;
    width:100%;
    max-width: 30px;
    height: auto;
}

.slidenav .slide-list .slide-list-ul-main li .sp_ul_sol_itms{
    display: flex;
    margin-bottom: 16px;
}
.slidenav .slide-list .slide-list-ul-main li .sp_ul_sol_itms a{

}
.slidenav .slide-list .slide-list-ul-main li .sp_ul_sol_itms a span{
    color: #0E203B;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 10px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%; /* 13px */
}
.slidenav .slide-list .slide-list-ul-main li .sp_ul_sol_itms a p{
    color: #0E203B;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%; /* 15.6px */
    margin: 0;
}

.slidenav .slide-list .skblu_bottom_sp_box{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    padding: 24px 16px;
    background: #F2F8FA;
}
.slidenav .slide-list .skblu_bottom_sp_box a{
    text-decoration: none;
}

.menu-outbg{
    /* display: flex; */
    display: none;
    width: 100%;
    position: fixed;
    top: 0px;
    height: 74px;
    /* filter: blur(15px); */
    /* background: rgba(255, 255, 255, 0.70); */
    background:#fff;
    z-index: 3;
}

.nav_sp .navdiv .menulgr .nav_sp_n_btn{
    display: flex;
    max-width: 96px;
    height: 28px;
    padding: 0px 7px;
    justify-content: center;
    align-items: center;
    gap: 10px;

    border-radius: 3px;
    background: #2A579A;
}
.nav_sp .navdiv .menulgr .nav_sp_n_btn span{
    color: #FFF;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 10px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 10px */
}

.nav_sp .navdiv .menulgr .nav_sp_sol_btn{
    display: flex;
    max-width: 100px;
    height: 28px;
    padding: 0px 8px;
    justify-content: center;
    align-items: center;
    gap: 6px;

    border-radius: 3px;
    background: #0091E1;
}
.nav_sp .navdiv .menulgr .nav_sp_sol_btn span{
    color: #FFF;

    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 10px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 10px */
}

.nav_sp .navdiv .menulgr .nav_sp_sol_btn.is-active{

}
.nav_sp .navdiv .menulgr .nav_sp_sol_btn.is-active svg{
    transform: rotate(180deg);
}

@media screen and (max-width: 1111px) {
    .nav{
        position: sticky;
        top: 0;
        z-index: 999998;
    }
    .nav .nav-menu{
        display: none;
    }
    .nav .mininav{
        display: block;
    }   
}

@media (max-width: 767px) {
    #pageHead.header2022 {
        display: none;
    }
    .globalMenu {
        height:74px;
        position: sticky;
        z-index: 999999;
        width: 100%;
        left: 0;
        top: 0;
    }
}
@media screen and (max-width: 1110px) {
    .header2025 .inner .header_globalnav ,
    .header2025 .inner .header_globalnav .global-pc-nav-itms{
        gap: 20px;
    }
    .header2025 .inner .gslogo a img{
        max-width: 100px;
    }
}

@media screen and (max-width:970px) {
    .header2025 .inner .header_globalnav .btnbox_nav .blue_btn_n{
        display: none;
    }
}


@media screen and (max-width: 767px) {
    .header2025{
        display: none;
    }

    .menu-outbg{
        height: 74px;
    }
    .nav .navdiv {
        min-height: 74px;
        width: 100%;
        background-color: #fff;
    }

    .slidenav .slide-list {
        height: calc( 100vh - 74px );
        top: 74px;
    }
    .slidenav .slide-solu-list{
        top: 74px;
    }

    .nav .navdiv .menulgr .btndiv a{
        height: 32px;
        padding: 0px 11.503px;
        justify-content: center;
        align-items: center;

        border-radius: 3px;

        font-size: 12px;
        letter-spacing: 0.6px;
    }
    .nav .navdiv .menulgr {
        gap: 16px;
    }
}