
.mobile-pc-only-label { display: none; }
.mobile-menu-backdrop { display: none; }
@media (max-width: 1023px) {
	.mobile-pc-only-label { display: inline; white-space: nowrap; }
	.mb-only-view{display:block}
	.mh{display:none !important}
	header#header{
		height:60px;
		z-index: 101;
        position: fixed;
        left: 0;
        top: 0;
	}
	header#header .main-menu,
	header#header .opt-menu
	{display:none}

	:is(header#header, header.ml_header) .mobile-menu-btn.menu_btn {
		display:block;
        width: 24px;
        aspect-ratio: 1 / 1;
        background: url(/images/icon/ico_menu.png) no-repeat center / contain;
        border:0;margin-right:15px
    }

	header#header .aisolution-wrapper.h82{height:60px;width: 100%;}
	header#header .main-logo {
		width: 160px;
		display: flex;
        align-items: center;
	}
	header#header .main-logo img {
		margin-left: 1rem;max-height: 36px;
	}	

	.top-blank {
		height: 60px;
	}
	
    :is(header#header, header.ml_header) .mobile-menu{
        position: fixed;
        top: 0;
        width: 100%;
        height: 100vh;
        height: 100dvh;
        overflow: hidden;
        z-index: 100;
        display: flex;
        flex-direction: column;
        background:#fff;
        transition: all 0.6s ease;
        right: -100%;
         box-sizing: border-box;
         max-width:320px;
    }

    :is(header#header, header.ml_header) .mobile-menu.show {right: 0;}

    :is(header#header, header.ml_header) .mobile-menu-backdrop {
        position: fixed;
        inset: 0;
        z-index: 99;
        background: rgba(0, 0, 0, 0.5);
        touch-action: none;
    }

    :is(header#header, header.ml_header) .mobile-menu.show + .mobile-menu-backdrop {
        display: block;
    }

    .mobile-menu .mobile-menu-scroll {
        flex: 1;
        min-height: 0;
        overflow-x: hidden;
        overflow-y: auto;
        overscroll-behavior-y: contain;
        padding-bottom: calc(2rem + env(safe-area-inset-bottom, 0px));
        scrollbar-width: none;
        -ms-overflow-style: none;
    }

    .mobile-menu .mobile-menu-scroll::-webkit-scrollbar {
        display: none;
        width: 0;
        height: 0;
    }

	:is(header#header, header.ml_header) .mobile-menu .close_btn {	
		  width: 24px;
        aspect-ratio: 1 / 1;	
        background: url(/images/icon/ico_menu_close.png) no-repeat center / contain;
		 border:0;margin-right:15px;
	}

	.mobile-menu .headbox {
        flex-shrink: 0;
        background: #fff;
        width: 100%;
        height: 60px;
        border-bottom: 1px solid #e5e8ec;
    }
	.mobile-menu .headbox .h_inner {
        width: 100%;
        height: 60px;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

	.mobile-menu .headbox .h_inner .h_left, .mobile-menu .headbox .h_inner .h_right {
        position: relative;
        display: flex;
        align-items: center;
        gap: 10px;
    }

	.mobile-menu .headbox .h_inner .h_left {
        margin-left: 1rem;
    }
	.mobile-menu .headbox .h_inner .h_info {
        font-weight: 700;
        font-size: 16px;
        line-height: 150%;
        color: #000
    }

	.mobile-menu .headbox .h_inner .h_left, .mobile-menu .headbox .h_inner .h_right {
        position: relative;
        display: flex;
        align-items: center;
	}

	.mobile-menu .headbox .h_inner .btn.login_link {
        font-size: 12px;
        line-height: 150%;
        text-align: center;
        color: #747983;
        padding: 5px 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        border: 1px solid #d8dadd;
        border-radius: 4px;
        width: initial;
        height: 30px;
		z-index: 100;background: initial;
    }
	

	.mobile-menu .navbox {position: relative;margin-top: 1rem;padding: 0px 0.8rem;}
    .mobile-menu .navbox > li {width: 100%;}
    .mobile-menu .navbox > li .acc_tit { width: 100%; display: flex; align-items: center; justify-content: space-between; padding: 5px 16px; gap: 12px; cursor: pointer;}
    .mobile-menu .navbox > li .acc_tit.direct {margin-top: 1rem;margin-bottom:1rem}

    .mobile-menu .navbox > li .acc_tit .txt{ flex: 1; font-weight: 700; font-size: 1.02rem;  line-height: 150%; color: #000000}
    .mobile-menu .navbox.mobile-utility-menu > li .acc_tit .txt { font-size: 0.85rem; }
    .mobile-menu .navbox.mobile-utility-menu > li .link {
        display: flex;
        align-items: center;
        min-height: 20px;
    }
    .mobile-menu .navbox > li .acc_tit .icon {  background: url(/images/icon/hamburger_arrow.png) no-repeat center / contain;  width: 24px;  aspect-ratio: 1 / 1;  cursor: pointer;  transition: all 0.4s ease}
    .mobile-menu .navbox > li.show .acc_tit .icon {transform: rotate(180deg);}
    .mobile-menu .navbox > li .nav_cont { display: none; background: #f4f6f8;border-radius: 10px;margin-bottom: 1rem;}
    .mobile-menu .navbox > li .nav_cont > li {  font-weight: 400;  font-size:0.9rem;  line-height: 170%;  color:#747983}
    .mobile-menu .navbox > li .nav_cont > li:nth-child(1) { padding-top: 12px;}
    .mobile-menu .navbox > li .nav_cont > li:last-child { padding-bottom: 12px;}
    .mobile-menu .navbox > li .nav_cont > li > a { display: block;  padding: 0 1.8rem;}
    .mobile-menu .navbox > li .nav_cont > li.noDepth:has(+ li.noDepth > .link.font-bold) { margin-bottom: 12px; }
    .mobile-menu .line {width: calc(100% - 16px*2); height: 1px; border-bottom:1px solid #e5e8ec; margin: 16px auto 16px;-webkit-animation:initial;-ms-animation:initial;animation:initial}
    .mobile-menu .navbox2 { display: flex;  flex-direction: column;  gap: 12px;    padding: 0 2rem;}
    .mobile-menu .navbox2 > li {width: 100%; }
    .mobile-menu .navbox2 > li .link { display: block;  font-weight: 700;  font-size: 0.9rem;  line-height: 154%; color:#000000}
    
	.mobile-menu .navbox > li .acc_tit .txt .link.pop {
        padding-right:20px;background:url(/images/icon/popup-icon.png) no-repeat right center
    }

    .mobile-menu .navbox > li.big-title{
       padding:1.2rem 0 0.5rem 0
    }
    .mobile-menu .navbox > li.big-title:first-child {
       padding-top:0
    }

    .mobile-menu .navbox > li.big-title.direct span {
        width: calc(100% - 2rem);
        display: flex;
        align-items: center;
        align-content: center;
        padding: 0.8rem 0rem;
        gap: 12px;
        font-size: 1.3rem;
        font-weight: 600;
        color: #000000;
        border-bottom:0;
        margin: 0 auto;
    }
    .mobile-menu .navbox > li.big-title span {
        width: calc(100% - 2rem);
        display: flex;
        align-items: center;
        align-content: center;
        padding: 0.8rem 0rem 0.5rem 0;
        gap: 12px;
        font-size: 0.95rem;
        font-weight: 200;
        color: #000000;
        border-bottom: 1px solid #dfdfdf;
        margin: 0 auto;
    }

}
