/* navigation  */
.nav-solution{
    font-family: "Noto Sans JP";
    font-style: normal;
    font-weight: 700;
}


.right_btns_nav{
    display: flex;
    max-width: 408px;
    width: 100%;
}
.right_btns_nav .btn_nav{
    display: flex;
    width: -webkit-fill-available;
    max-width: 124px;
    justify-content: right;
}
.btn_nav a{
    padding: 0;
    align-content: center;
    align-items: center;
    text-align: -webkit-center;
}
.right_btns_nav .btn_nav_2{
    display: flex;
    gap: 8px;
    width: 100%;
    justify-content: flex-end;
}
.right_btns_nav .btn_nav_2 a{
    padding: 0;
    width: 100%;
    max-width: 124px;
    height: 36px;
    align-content: center;
    align-items: center;
    text-align: -webkit-center;
}
.right_btns_nav .btn_nav_2 .blu_button_line{
    background: var(--white, #fff);
}

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

}
@media screen and (max-width: 1300px) {
    .right_btns_nav .btn_nav{
        display: none;
    }
    .right_btns_nav .btn_nav_2 {
        /* justify-content: right; */
    }
    .global-navigation > ul {
        justify-content: end;
    }
}

@media screen and (max-width: 1200px) {
    .right_btns_nav .btn_nav_2 > .orange_button{
        display: none;
    }
}

@media screen and (max-width: 767px) {
    .right_btns_nav .btn_nav{
        display: none;
    }
    
    .right_btns_nav .btn_nav_2 {
        /* justify-content: right; */
    }
    
    .right_btns_nav .btn_nav_2 .blu_button_line{
        height: 26px;
        max-width: 96px;
        font-size: 12px;
    }
    .right_btns_nav .btn_nav_2 .orange_button{
        display: none;
    }
}
@media (min-width: 1024px) {
    .global-navigation > ul {
        gap: 24px;
    }
}

/* new dropdown menu  */
.global-nav-menu-item > ul {
    width: 90%;
}
.global-nav-menu-item {
    height: unset;
    padding-top: 48px;
    padding-bottom: 48px;
}
.global-nav-menu-item div ul{
    display: flex;
    justify-content: center;
    gap: 80px;
}
.global-nav-menu-item div ul li{
    display: flex;
}
.global-nav-menu-item div ul li a{
    display: flex;
    width: 100%;
    max-width: 360px;
    gap: 20px;
}

.global-nav-menu-item > ul.nav-solution{
    flex-direction: column;
    gap: 0px;
}
.nav-solution .menu-sub-itms-primary{
    display: flex;
    width: 100%;
    max-width: 1240px;
    gap: 80px;
}
.nav-solution .menu-sub-itms-primary > div{
    display: flex;
    gap: 20px;
}
.nav-solution .menu-sub-itms-primary > div .menu-item-lft{
    display: flex;
    width: 100%;
    align-items: center;
}
.nav-solution .menu-sub-itms-primary > div .menu-item-lft img{
    display: block;
    width: 100%;
    height: auto;
    max-width: 112px;
}
.nav-solution .menu-sub-itms-primary > div .menu-item-rgt{
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: baseline;
}
.nav-solution .menu-sub-itms-primary > div .menu-item-rgt .menu-item-title{
    color: var(--blue, #0974E8);
    text-align: center;
    font-size: 18px;
    line-height: normal;
    position: relative;
}
.nav-solution .menu-sub-itms-primary > div .menu-item-rgt .menu-item-title span{
    color: var(--blue, #0974E8);
}

.nav-solution .menu-sub-itms-primary > div .menu-item-rgt .menu-item-subinfo{
    margin: 0;
    color: var(--black, #252729);
    text-align: justify;
    font-size: 12px;
    font-weight: 400;
    line-height: 200%; /* 24px */
}


.nav-solution .menu-sub-itms{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.nav-solution .menu-sub-itms .menu-item-line-gray{
    background: var(--gray-30, #DCDEE0);
    height: 1px;
    display: flex;
    width: 100%;
    max-width: 1312px;
    margin-top: 24px;
    margin-bottom: 24px;
}
.nav-solution .menu-sub-itms .menu-sub-itms-lnk{
    display: flex;
}
.nav-solution .menu-sub-itms .menu-sub-itms-lnk a{
    color: var(--blue, #0974E8);
    text-align: center;
    font-size: 18px;
    line-height: normal;
    position: relative;
    width: fit-content;
}

.nav-cases .menu-sub-itms-primary,
.nav-event .menu-sub-itms-primary{
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 535px;
    gap: 24px;
}
.nav-cases li .wh_box,
.nav-event li .wh_box{
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.nav-cases li .wh_box a,
.nav-event li .wh_box a{
    color: var(--blue, #0974E8);
    font-size: 18px;
    line-height: normal;
}

.nav-cases li .wh_box .wh_box_a_title,
.nav-event li .wh_box .wh_box_a_title{
    font-weight: 700;
    position: relative;
    width: fit-content;
}

.nav-cases li .wh_box ul,
.nav-event li .wh_box ul{
    display: flex;
    gap: 24px;
    justify-content: left;
}
.nav-cases li .wh_box ul > li,
.nav-event li .wh_box ul > li{
    display: contents;
    width: 100%;
}
.nav-cases li .wh_box ul > li > a,
.nav-event li .wh_box ul > li > a{
    color: var(--blue, #0974E8);
    text-align: center;
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
    width: initial;
    display: flex;
    position: relative;
}

.nav-event li .wh_box ul {
    flex-wrap: wrap;
    row-gap: 16px;
}

.nav-cases li .gray_box,
.nav-event li .gray_box{
    display: flex;
    width: 100%;
    gap: 16px;
    flex-direction: column;
    padding-top: 24px;
    padding-bottom: 24px;
    align-items: center;
    background: var(--gray-40, #F7F7F8);
}
.nav-cases li .gray_box .gray_box_title,
.nav-event li .gray_box .gray_box_title{
    display: flex;
    text-align: left;
    width: 95%;
    max-width: 487px;
}
.nav-cases li .gray_box .gray_box_title span,
.nav-event li .gray_box .gray_box_title span{
    color: var(--black, #252729);
    text-align: center;
    font-size: 14px;
    line-height: normal;
}
.nav-cases li .gray_box .gray_box_itms,
.nav-event li .gray_box .gray_box_itms{
    width: 95%;
    display: flex;
    flex-wrap: wrap;
    max-width: 487px;
    gap: 16px;
}
.nav-cases li .gray_box .gray_box_itms a,
.nav-event li .gray_box .gray_box_itms a{
    color: var(--blue,#0974E8);

    font-size: 12px;
    font-weight: 400;
    line-height: normal;

    text-decoration: none;
    cursor: pointer;

    position: relative;
}

.nav-cases li .cases-btnbox{
    display: flex;
    align-items: center;
}
.nav-cases li .cases-btnbox > img{
    max-width: 120px;
}
.nav-cases li .cases-btnbox a{
    position: relative;
}
.nav-cases li .cases-btnbox a span{
    color: var(--blue,#0974E8);
}
.nav-cases .graynavbar,
.nav-event .graynavbar{
    width: 1px;
    align-self: stretch;
    background: var(--gray-30, #DCDEE0);
}

.eventli{
    display: flex;
    align-items: center;
    gap: 20px;
}
.eventli img{
    display: block;
    width: 100%;
    height: auto;
    max-width: 120px;
}
.eventli div{
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.eventli div a{
    color: var(--blue, #0974E8);
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
    position: relative;
    width: fit-content;
}
.eventli div a:nth-child(1){
    font-size: 18px;
    line-height: normal;
    font-weight: 700;
}


.global-nav-menu-item > ul.companyinfo{
    justify-content: center;
    align-items: unset;
}
.companyinfo li{
    display: flex;
    flex-direction: column;
}

.companyinfo li .a_title span{
    color: var(--blue, #0974E8);
    text-align: center;
    font-size: 18px;
    line-height: normal;
    font-weight: 700;
}
.companyinfo li .label2 span{
    color: var(--blue, #0974E8);
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
}
.companyinfo li .label2,
.companyinfo li .a_title{
    margin-bottom: 10px;
    padding-bottom: 0;
    width: fit-content;
}
.companyinfo li .label2::after,
.companyinfo li .a_title::after{
}

/* hover animation 241119 */
.nav-cases li .wh_box ul li a::after,
.nav-event li .wh_box ul li a::after,
.nav-cases li .gray_box .gray_box_itms a::after,
.nav-event li .gray_box .gray_box_itms a::after,
.eventli div a::after,
.nav-cases li .wh_box .wh_box_a_title::after,
.nav-event li .wh_box .wh_box_a_title::after,
.nav-solution .menu-sub-itms .menu-sub-itms-lnk a::after,
.nav-cases li .cases-btnbox a::after,
.nav-solution .menu-sub-itms-primary > div .menu-item-rgt .menu-item-title::after {
	position: absolute;
	bottom: -0.4rem;
	left: 0;
	content: '';
	width: 100%;
	height: 0.2rem;
	border-radius: 0.6rem;
	background: #0974E8;
	transform: scale(0, 1);
	transform-origin: center top;
    transition: transform .3s;
}
.nav-cases li .wh_box ul li a:hover::after,
.nav-event li .wh_box ul li a:hover::after,
.nav-cases li .gray_box .gray_box_itms a:hover::after,
.nav-event li .gray_box .gray_box_itms a:hover::after,
.eventli div a:hover::after,
.nav-cases li .wh_box .wh_box_a_title:hover::after,
.nav-event li .wh_box .wh_box_a_title:hover::after,
.nav-solution .menu-sub-itms .menu-sub-itms-lnk a:hover::after,
.nav-cases li .cases-btnbox a:hover::after,
.nav-solution .menu-sub-itms-primary > div .menu-item-rgt .menu-item-title:hover::after {
    transform: scale(1, 1);
}

.global-nav-menu-item .support{
    
}
.global-nav-menu-item .support > li{
    display: flex;
    align-items: center;
    gap: 3.2rem;
}
.global-nav-menu-item .support > li img{
    max-width: 120px;
}
.global-nav-menu-item .support > li a{
    padding-bottom: 0;
}
.global-nav-menu-item .support > li a span{
    color: var(--blue-0, #0974E8);
    font-size: 18px;
}

.global-nav-menu-item .nav-cases,
.global-nav-menu-item .nav-event{
    gap: 40px;
}

/* mobile side menu */
.button-ul{
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.button-ul .button-container_v2{
    display: flex;
    width: 100%;
    justify-content: center;
}
.button-ul .button-container_v2 a{
    border-radius: 24px;
    border: 1px solid var(--white, #FFF);
    color: var(--white, #FFF);
    text-align: center;
    font-size: 14px;
    line-height: normal;
    display: flex;
    width: 100%;
    height: 48px;
    align-items: center;
    justify-content: center;
}
.button-ul .button-container_v2 a:hover{
    border: 1px solid var(--gray-35, #EAEBEC);
    transition: all .3s;
}
.white {
    border: 1px solid var(--white,#fff);
    color: var(--white,#fff);
    border-radius: 24px;
}

/* header logo image size fix 0906  */
@media screen and (max-width: 1380px) {
    .right_btns_nav {
        max-width: 383px;
    }

    .global-nav-menu-item > ul {
        gap: 7.6rem;
    }
}
@media screen and (max-width: 1150px) {
    .global-navigation > ul {
        gap: 10px;
    }
    .global-nav-menu-item > ul {
        gap: 4.6rem;
    }
}
@media screen and (max-width: 600px) {
    .header-logo {
        width: 120px;
        min-width: 120px;
    }
}
.screen-mobile {
    /* display: block; */
    /* display: none; */
}
.menu-items-mobile ul > li >  a{
    font-weight: 400;
}
.menu-icon{
    display: none;
}

@media screen and (max-width: 1060px) {
    .menu-icon{
        display: flex;
    }
    .mask {
        display: none;
    }
}