@charset "utf-8";
/*───────────────────────────────────────────────────────────
	
	header, footer, main 관련 작성 css 파일입니다.

	** 이와 서브페이지 관련 css는 /css/sub.css 에 있습니다.

───────────────────────────────────────────────────────────*/
body::-webkit-scrollbar{display: none;}

/*───────────────────────────────────────────────────────────

    HEADER | outline/header.html, outline/nav.html

───────────────────────────────────────────────────────────*/
	/* PC 일반 */
		#header {position:fixed;left:0;top:0;width:100%;height:110px;z-index:100;transition:all 0.3s;}
		#header .header_cont {display:flex;align-items:center;justify-content:space-between;width:100%;height:100%;margin:0 auto;padding:0 60px;box-sizing:border-box;}
		#header .hd_logo { flex-shrink:0;}
            #header .hd_logo a { display:block; width:100%; height:100%; }
            #header .hd_logo img { width:100%; height:100%; object-fit:contain; filter:var(--filter-white); }
        #header .gnb { display:flex; align-items:center; gap:60px; }
            #header .gnb > li { position:relative;font-size:var(--text-20);}
            #header .gnb > li > a { display:block;font-weight:600; font-size:95%;color:var(--black-color03);letter-spacing:-0.03em;line-height:110px;filter:var(--filter-white);}
            #header .gnb > li > a.group_tit{display: flex;align-items: center;gap:10px;}
            #header .gnb > li > a.group_tit:after{width:6px;aspect-ratio:auto 1;content:"";display:block;border:2px solid var(--black-color03);border-width:2px 2px 0 0;transform:rotate(135deg);transition:all 0.3s;translate:0 -3px;filter:var(--filter-white);}
        #header .gnb .dep02 { position: absolute; top: 80%; left: 50%; translate: -50%; background: var(--point-color01); border-radius: var(--radius-10); padding-block: 20px; opacity: 0; pointer-events: none; transition: all 0.4s; width: 180px; }
            #header .gnb .dep02 > li { font-size: 90%; font-weight: 500; filter: var(--filter-white); transition: all 0.4s; text-align: center;}
            #header .gnb .dep02 > li > a { display: block; padding: 10px 20px; }
        #header .hd_right { display:flex; align-items:center; gap:40px; flex-shrink:0;}
		#header .hd_btn_contact {position:relative;display:flex;align-items:center;justify-content:center;width:138px;height:44px;border:1px solid var(--point-white);box-sizing:border-box;overflow:hidden;transition:all 0.3s;font-size:var(--title-19);}
		#header .hd_btn_contact span {position:relative;z-index:2;font-size:85%;font-weight:600;color:var(--point-white);letter-spacing:-0.03em;transition:all 0.3s;}
		#header .hd_btn_contact:before {content:'';position:absolute;left:0;top:0;width:0;height:100%;background:var(--point-white);transition:all 0.3s;}
		
		#header .allCate {position:relative;width:45px;height:14px;background:none;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:space-between;filter:var(--filter-white);}
		#header .allCate span {width:100%;height:3px;background:var(--black-color03);transition:all 0.3s;}
		
	/*on*/
    #wrap #header.on { background: var(--point-white); box-shadow: 0 -1px 0 inset var(--border-color01); }
    #wrap #header.on :where(.hd_logo img, .gnb > li > a, .allCate){filter: none;}
    #wrap #header.on .gnb > li > a.group_tit:after{filter: none;}
    #header.on .hd_btn_contact{border-color:var(--point-color02);}
    #header.on .hd_btn_contact span{color:var(--point-color02);}
    #header.on .hd_btn_contact:before{background:var(--point-color02);}

    /*over*/
    @media (hover: hover) and (pointer: fine) {
        /* #header:hover { background: var(--point-white); box-shadow: 0 -1px 0 inset var(--border-color01); }
        #wrap #header:hover :where(.hd_logo img, .gnb > li > a, #header .hd_btn_contact, .allCate){filter: none;} */
        #header .gnb > li:hover a { color: var(--point-color01); }
        #header .gnb > li:hover a.group_tit:after{transform:rotate(-45deg);border-color:var(--point-color01);translate:0 2px;}
            #header .gnb > li:hover .dep02 { opacity: 1; pointer-events: all; }
            #header .gnb .dep02:has(> li:hover) > li:not(:hover){opacity: 0.4;}
        #header .hd_btn_contact:hover:before {width:100%;}
            #header .hd_btn_contact:hover span {color:var(--point-color02);}
            #header.on .hd_btn_contact:hover span {color:var(--point-white);}
    }

    @media (max-width:1500px) {
		#header .header_cont { padding:0 30px; }
		#header .gnb { gap:38px; }
		#header .gnb > li > a { font-size:17px; }
	}
    @media (max-width:1280px) {
        #header .hd_logo img{height:38px;}
        #header .gnb { gap:25px;}
        #header .gnb > li > a { font-size:15px;}
        #header .hd_right{gap:20px;}
        #header .hd_btn_contact{width:120px;height:40px;}
    }
	@media (max-width:1023px) {
		#header { height:80px; }
		#header .header_cont { padding:0 30px; }
		#header .gnb { display:none; }
	}
	@media (max-width:640px) {
		#header .header_cont { padding:0 20px; }
		#header .allCate { width:24px;}
	}
    @media (max-width:479px) {
        #header { height:70px; }
        #header .hd_logo img{height:30px;}
        #header .hd_btn_contact{display: none;}
    }
	@media only screen and (max-width:320px) {
		#header { padding:0 15px; }
	}


/*───────────────────────────────────────────────────────────

    ASIDE | outline/header.html, outline/nav.html

───────────────────────────────────────────────────────────*/
#aside{position: fixed;top: 0;left:0;width: 100%;height: 100%;z-index: 999;background: rgba(0,0,0,0.8);backdrop-filter:blur(10px);display: flex;flex-direction: column;overflow: hidden;overflow-y: auto; box-sizing: border-box;opacity: 0;transition: all 0.6s;clip-path: inset(0 0 100% 0);}
#aside.on { opacity: 1; clip-path: inset(0); }
body:has(#aside.on) { overflow: clip; touch-action: none; }
#aside .main_w_custom { flex-shrink: 0; max-width: 1720px; min-height: 100%; padding-block: 100px; }
#aside .cont { position: relative; width: 100%; display: flex; flex-direction: column; height: 100%; justify-content: center; }
#aside .gnb { width: 100%; font-size: var(--text-20); letter-spacing: 0; display: grid; align-items: start; justify-content: center; grid-template: auto / repeat(6, 1fr); gap: clamp(15px, 2.2vw, 40px); }
#aside .gnb > li { color: var(--point-white); font-size: inherit; text-align: center; }
#aside .gnb > li > a{position: relative;display: block;font-size: 180%;font-weight: 700;line-height: 1.2;padding-block: 30px;transition: all 0.4s;}
#aside .gnb > li > a:before{position: absolute;content: '';top: 0;left: 50%;translate: -50%;width:12px;height: 0;opacity:0;border-radius:100%;background: var(--point-color01);transition:all 0.3s;}
#aside .gnb > li > a em{font-weight: inherit;}
#aside .gnb > li > a span{font-size: 60%;font-weight: 400;color: rgba(255,255,255,0.6);}
#aside .gnb .dep02{margin-top: 8px;}
#aside .gnb .dep02 > li { transition: all 0.4s; }
#aside .gnb .dep02 > li > a{display: block;font-size:110%;font-weight:400;padding-block: 15px;color: var(--point-white);transition: all 0.4s;}
#aside .aside_top{position: absolute;z-index: 9;  top: 40px; right: 0;display: flex;align-items: center;gap:10px;}
#aside .aside_top .hd_btn_contact{display: none;font-size:var(--text-20);}
#aside .aside_top .hd_btn_contact span{position: relative;z-index: 2;font-size: 85%;font-weight: 600;color: var(--point-white);letter-spacing: -0.03em;display: inline-block;padding:8px 14px;border:1px solid var(--point-white);box-sizing: border-box;}
#aside .close_btn{ width: 40px;height: 40px;display: inline-block;position: relative;}
#aside .close_btn span{position: absolute;top:50%;left:50%;transform: translate(-50%, -50%) rotate(45deg);width: 100%;height: 2px;background: var(--point-white);}
#aside .close_btn span + span{transform: translate(-50%, -50%) rotate(-45deg);}

@media (hover: hover) and (pointer: fine) {
    #aside .gnb > li:hover > a::before { height: 12px; opacity: 1; }
    #aside .gnb .dep02 > li:hover a{color: var(--point-white);}
    #aside .gnb .dep02:has(li:hover) li:not(:hover) > a{color:var(--black-color08)}

}

@media (max-width: 1280px) {
    #aside .gnb { grid-template: auto / repeat(3, 1fr); }
}

@media (min-width:861px) {
    #aside .gnb > li{opacity:0;translate:0 100px;transition:all 0.8s 0.3s;}
    #aside.on .gnb > li{opacity:1;translate:0;}
    #aside.on .gnb > li:nth-child(2){transition-delay:0.4s;}
    #aside.on .gnb > li:nth-child(3){transition-delay:0.5s;}
    #aside.on .gnb > li:nth-child(4){transition-delay:0.6s;}
    #aside.on .gnb > li:nth-child(5){transition-delay:0.7s;}
    #aside.on .gnb > li:nth-child(6){transition-delay:0.8s;}
}

@media (max-width: 1023px) {
    #aside .main_w_custom { padding-block: clamp(70px, 10vw, 100px);  }
    #aside .close_btn { width: clamp(25px, 4vw, 40px); height: clamp(25px, 4vw, 40px); }
}

@media (max-width: 860px) {
    #aside { display: block; }
    #aside .gnb{grid-template: auto / repeat(1, 1fr);gap:0;}
    #aside .gnb > li { display: block; padding: 25px 0; width: 100%; text-align: left; box-sizing: border-box; border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
    #aside .gnb > li > a { padding-block: 0; }
    #aside .gnb > li > a::before { display: none; }
    #aside .gnb .dep02 { display: grid; gap: 0 20px; grid-template: auto / repeat(2, 1fr); margin-top: 15px; justify-content: flex-start; }
    #aside .gnb .dep02 > li > a { padding-block: 12px; }
}

@media (max-width: 640px) {
    #aside .gnb > li > a{font-size: 170%;}
    #aside .gnb .dep02 > li > a{padding-block: 7px;font-size:100%;}
}

@media (max-width: 479px) {
    #aside .aside_top .hd_btn_contact{display: block;}
    #aside .gnb > li > a { font-size: 150%; }
    #aside .gnb > li > a span { width: 100%; }
    #aside .gnb .dep02 { margin-top: 10px; grid-template: auto / repeat(1, 1fr); }
    #aside .gnb .dep02 > li > a { font-size: 95%; }
}

/*───────────────────────────────────────────────────────────

    FOOTER | outline/footer.html

───────────────────────────────────────────────────────────*/
	#footer{padding:60px 0 76px;}
    #footer .ft_top_box{display: flex;align-items: center;justify-content: space-between;}
    #footer .ft_top_box .ft_menu{display: flex;align-items: center;}
        #footer .ft_top_box .ft_menu li{display: flex;align-items: center;}
        #footer .ft_top_box .ft_menu li + li:before{width:4px;aspect-ratio:auto 1;content:"";box-sizing:border-box;border-radius:100%;background:var(--border-color01);display: inline-block;margin:0 20px;}
        #footer .ft_top_box .ft_menu li a{font-size:var(--title-18);color:var(--black-color06);font-weight:400;letter-spacing:-0.03em;}
        #footer .ft_top_box .ft_menu li a strong{color:var(--black-color01);font-weight:500;}
    #footer .ft_info_box{margin-top:46px;}
    #footer .ft_info_box .company_info{display: flex;align-items: center;}
        #footer .ft_info_box .company_info p, #footer .ft_info_box .company_info strong{font-size:var(--title-18);color:var(--black-color03);font-weight:400;letter-spacing:-0.03em;display: inline-flex;align-items: center;}
        #footer .ft_info_box .company_info strong{font-weight: 500;}
        #footer .ft_info_box .company_info p:before{width:1px;height:12px;content:"";background:var(--border-color01);display: inline-block;margin:0 14px;}
    #footer .ft_info_box .info{margin-top:14px;display: flex;align-items: center;flex-wrap:wrap;gap:10px 28px;}
        #footer .ft_info_box .info dl{display: flex;align-items: center;position: relative;gap:5px;}
        #footer .ft_info_box .info dl + dl:before{width:1px;height:12px;content:"";background:var(--border-color01);position: absolute;left:-14px;top:50%;translate:0 -50%;}
        #footer .ft_info_box .info dl dt, #footer .ft_info_box .info dl dd{font-size:var(--title-18);color:var(--black-color01);font-weight:400;letter-spacing:-0.03em;}
    #footer .copyright{margin-top:61px;font-size:var(--title-16);color:var(--black-color08);font-weight:400;letter-spacing:0;}
        #footer .copyright strong{color:var(--black-color06);}
        #footer .copyright a{display: inline-block;margin-left:10px;}

    .ft_quick{position: fixed;right:60px;bottom:60px;z-index:10;opacity:0;pointer-events:none;transition:all 0.3s;}
    .ft_quick.on{opacity:1;pointer-events:all;}
    .ft_quick .ft_quick_btn{width:60px;aspect-ratio:auto 1;background:var(--point-color01);box-shadow: 5px 5px 20px 0 rgba(0, 0, 0, 0.10);display: flex;align-items: center;justify-content: center;}

    @media (max-width: 1023px) {
        #footer{padding:clamp(40px, 6vw, 60px) 0 clamp(50px, 7.6vw, 76px);}
        #footer .ft_logo img{height:clamp(30px, 4.6vw, 46px);}
        #footer .ft_top_box .ft_menu li + li:before{margin-inline:clamp(10px, 2vw, 20px);}
        #footer .ft_info_box{margin-top:clamp(30px, 4.6vw, 46px);}
        #footer .copyright{margin-top:clamp(40px, 6vw, 61px);}

        .ft_quick{right:clamp(20px, 4vw, 40px);bottom:clamp(20px, 4vw, 40px);}
        .ft_quick .ft_quick_btn{width:clamp(40px, 6vw, 60px);}
        .ft_quick .ft_quick_btn img{max-width:30%;}
    }
    @media (max-width: 640px) {
        #footer .ft_info_box .info dl + dl:before{display: none;}
        #footer .ft_info_box .company_info{flex-direction: column;gap:10px;align-items: flex-start;}
        #footer .ft_info_box .company_info p:before{display: none;}
        #footer .ft_info_box .info{gap:8px 20px;}
        #footer .copyright a{display: block;margin:10px 0 0 0;}
    }
    @media (max-width: 479px) {
        #footer .ft_top_box{flex-direction: column;align-items: flex-start;gap:15px;}
    }


/*───────────────────────────────────────────────────────────

    MAIN | index.html

───────────────────────────────────────────────────────────*/
	/*video*/
    .main_video { position: relative; height: 980px; }
    .main_video::before { content: ''; position: absolute; inset: 0; width: 100%; height: 100%; background:url('../images/skin/main_video_bg.png')no-repeat center / cover;z-index: 1; }
    .main_video video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
    .main_video img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
    .main_video .txt_box { height: 100%; font-size: var(--text-20); display: flex; flex-direction: column; justify-content: center; gap:30px; z-index: 2;max-width: 1510px;text-align: center; align-items: center;translate:0 -10px;}
        .main_video .txt_box h2 { font-size: 330%; font-weight: 600; line-height: 1.4; letter-spacing:-0.03em;color:var(--point-white);}
        .main_video .txt_box span { font-size: 110%; font-weight: 400; line-height: 1.4; letter-spacing:0;color:var(--point-white);}
        .main_video .txt_box p { font-size: 110%; font-weight: 400; line-height: 1.6; letter-spacing: -0.03em; margin-top:10px;display: inline-block;color:var(--point-white);}
    .main_video .scr_dwn{position: absolute;bottom:0;left:50%;translate: -50%;font-size:var(--text-20);cursor:pointer;z-index:10;padding-bottom:130px;overflow:hidden;}
    .main_video .scr_dwn:before{width:2px;height:120px;content:"";background: rgba(255, 255, 255, 0.30);position: absolute;bottom:0;left:calc(50% - 1px);}
    .main_video .scr_dwn:after{width:2px;height:20px;content:"";background:var(--point-white);position: absolute;bottom:100px;left:calc(50% - 1px);animation: scr_dwn_ani 1.5s infinite linear;}
        .main_video .scr_dwn span{font-size:80%;color:var(--point-white);letter-spacing:-0.02em;opacity:0.8;}
    @keyframes scr_dwn_ani {
        0% { bottom:100px;}
        100% { bottom:-100px; }
    }

    @media (max-width: 1023px) {
        .main_video { height: clamp(540px, 98vw, 980px); }
        .main_video .txt_box { gap: clamp(15px, 3vw, 30px); }
        .main_video .txt_box h2 { font-size: clamp(34px, 6vw, 350%); }
        .main_video .txt_box span { font-size: clamp(105%, 2.6vw, 120%); }
        .main_video .txt_box p { font-size: clamp(100%, 2.2vw, 120%); }

        .main_video .scr_dwn{padding-bottom:70px;}
        .main_video .scr_dwn:before{height:60px;}
        .main_video .scr_dwn:after{height:10px;}
        @keyframes scr_dwn_ani {
            0% { bottom:50px;}
            100% { bottom:-50px; }
        }
    }
    @media (max-width: 640px) {
        .main_video .txt_box{translate:0;}
    }

    /*공통*/
    .main_content > section{position: relative;box-sizing:border-box;}
    .main_title {font-size: var(--text-20);margin-bottom:60px;text-align: center;display: grid;gap:20px;}
    .main_title span{font-size:100%;color:var(--point-color01);font-weight:700;}
    .main_title h3{font-size:270%;color:var(--black-color01);font-weight:700;}
    .main_title p{font-size:100%;color:var(--black-color01);font-weight:400;line-height:1.6;margin-top:10px;}

    /*more*/
    .view_more{display: inline-flex;box-sizing:border-box;align-items: center;justify-content: space-between;padding:11px 23px;border:1px solid var(--point-color02);font-size:var(--title-18);color:var(--point-color02);font-weight:700;line-height:1.6;gap:28px;position: relative;}
    .view_more:before{content:"";width:0;height:100%;background:var(--point-color02);position: absolute;top:0;left:0;z-index:1;transition:width 0.4s ease;}
    .view_more span{font-size:inherit;color:inherit;font-weight:inherit;line-height:inherit;z-index:2;position: relative;transition:all 0.4s ease;}
    .view_more:after{width:15px;height:15px;content:"";background:url('../images/skin/view_more.svg') no-repeat center;background-size:auto 100%;z-index:2;position: relative;transition:all 0.4s ease;}

    @media (hover: hover) and (pointer: fine) {
        .view_more:hover{color:var(--point-white)}
        .view_more:hover:before{width:100%;color:var(--point-white);}
        .view_more:hover:after{filter:var(--filter-white);}
    }

    @media (max-width:1280px) {
        .main_title{gap:clamp(10px, 2vw, 20px);margin-bottom:clamp(30px, 5vw, 50px);}
        .main_title h3{font-size:clamp(40px, 4.8vw, 270%);}
    }
    @media (max-width:640px) {
        .view_more{gap:20px;padding:8px 15px;}
        .view_more:after{width:12px;height:12px;}
    }


    /* Our Business*/
        .our_business { padding-top:137px;}
        .our_business .business_list {display: flex;flex-wrap:wrap;gap:40px;}
        .our_business .business_list li {width: calc(33.333% - 26.666px);box-sizing:border-box;position: relative;}
        .our_business .business_list li:before, .our_business .business_list li:after{width:100%;height:20px;content:"";background:var(--point-white);position: absolute;left:0;pointer-events: none;transition:height 0.4s ease;z-index:3;}
            .our_business .business_list li:before{top:0;}
            .our_business .business_list li:after{bottom:0;}
            .our_business .business_list li a{position: relative;display: block;width:100%;height:100%;}
            .our_business .business_list li a:before{width:100%;height:100%;content:"";background: linear-gradient(0deg, rgba(0, 0, 0, 0.40) 0%, rgba(0, 0, 0, 0.00) 100%);position: absolute;top:0;left:0;z-index:2;opacity:0;pointer-events: none;transition:all 0.4s ease;}
        .our_business .business_list li .thumb{width:100%;height:540px;position: relative;z-index:1;}
            .our_business .business_list li .thumb img{width:100%;height:100%;object-fit:cover;}
        .our_business .business_list li .txt_box{width:100%;height:100%;box-sizing:border-box;text-align: center;position: absolute;top:0;left:0;z-index:5;padding:80px 40px;font-size:var(--title-19);display: flex;flex-direction: column;justify-content:space-between;}
            .our_business .business_list li .txt_box dl{display: flex;flex-direction: column;gap:10px;gap:24px;}
            .our_business .business_list li .txt_box dl dt{display: flex;flex-direction: column;gap:10px;gap:14px;}
            .our_business .business_list li .txt_box dl dt span{font-size:var(--title-18);color:var(--point-white);font-weight:400;line-height:1.4;}
            .our_business .business_list li .txt_box dl dt strong{font-size:190%;color:var(--point-white);font-weight:600;line-height:1.4;}
            .our_business .business_list li .txt_box dl dd{font-size:95%;color:var(--point-white);font-weight:400;line-height:1.6;transition:all 0.4s ease;}
        .our_business .business_list li .btn_more{width:100%;box-sizing:border-box;display: flex;align-items: center;justify-content: space-between;padding:15px 0;border-top:1px solid var(--point-white);font-size:var(--title-18);color:var(--point-white);font-weight:700;line-height:1.6;transition:all 0.4s ease;}
            .our_business .business_list li .btn_more span{font-size:inherit;color:inherit;font-weight:inherit;line-height:inherit;}
            .our_business .business_list li .btn_more:after{width:14px;height:11px;content:"";background:url('../images/skin/view_more.svg') no-repeat center;bakcgorund-size:auto 100%;filter:var(--filter-white);}

        @media (min-width:1023px) {
            .our_business .business_list li .txt_box dl dd,
            .our_business .business_list li .btn_more{opacity:0;pointer-events: none;translate:0 50px;}
        }

        @media (hover: hover) and (pointer: fine) {
            .our_business .business_list li:hover{box-shadow: 15px 15px 50px 0 rgba(0, 0, 0, 0.15);}
            .our_business .business_list li:hover:before, .our_business .business_list li:hover:after{height:0;}
            .our_business .business_list li:hover a:before{opacity:1;}
            .our_business .business_list li:hover .txt_box dl dd,
            .our_business .business_list li:hover .btn_more{opacity:1;pointer-events: all;translate:0;}
        }

        @media (max-width:1280px) {
            .our_business .business_list li .txt_box{padding:60px 20px;}
        }
        @media (max-width:1023px) {
            .our_business{padding-top:clamp(70px, 14vw, 140px);}  
            .our_business .business_list{gap:clamp(20px, 3vw, 40px);}
            .our_business .business_list li {width:calc(100% / 3 - clamp(20px, 3vw, 40px) * 2 / 3);}
            .our_business .business_list li:before, .our_business .business_list li:after{display: none;}
            .our_business .business_list li a:before{opacity:1;}
            .our_business .business_list li .thumb{aspect-ratio:auto 0.6;height:auto;}
            .our_business .business_list li .txt_box{padding:30px 20px;}
            .our_business .business_list li .txt_box dl{gap:15px;}
            .our_business .business_list li .txt_box dl dt{gap:10px;}
        }
        @media (max-width:767px) {
            .our_business .business_list{gap:0;flex-wrap:nowrap;}
            .our_business .business_list li .thumb{aspect-ratio:auto 0.9;}
            .our_business .business_list li a:before{opacity:0;}
            .our_business .business_list li .txt_box dl dd,
            .our_business .business_list li .btn_more{opacity:0;pointer-events: none;translate:0 50px;}

            .our_business .business_list .swiper-slide-active a:before{opacity:1;}
            .our_business .business_list .swiper-slide-active .txt_box dl dd,
            .our_business .business_list .swiper-slide-active .btn_more{opacity:1;pointer-events:initial;translate:0;}
        }
        @media (max-width:479px) {
            .our_business .business_list li{width:100%;}
            .our_business .business_list li .thumb{aspect-ratio:auto 0.8;}
        }

    /*solution*/
        .main_solution{padding:140px 0 0 0;margin-top:20px;}
        .main_solution:before{width:100%;height:calc(100% - 140px);content:"";background:var(--point-color03);position: absolute;top:0;left:0;z-index:1;}
        .main_solution .main_w_custom{z-index:3;}
        .main_solution .main_title{text-align:left;}
            .main_solution .main_title h3{color:var(--point-white);}
            .main_solution .main_title p{color:var(--point-white);opacity:0.8;}
        .main_solution .solution_cont{position: relative;}
        .main_solution .solution_cont .sol_tab{position: absolute;top:60px;left:60px;display: flex;flex-direction: column;gap:20px;font-size:var(--text-20);z-index:4;}
            .main_solution .solution_cont .sol_tab button{display: flex;align-items: center;gap:14px;opacity:0.4;font-size:110%;color:var(--point-white);font-weight:600;position: relative;}
            .main_solution .solution_cont .sol_tab button:before{width:16px;aspect-ratio:auto 1;content:"";box-sizing:border-box;border:1px solid var(--trans-color);border-radius:100%;}
            .main_solution .solution_cont .sol_tab button:after{width:6px;aspect-ratio:auto 1;content:"";box-sizing:border-box;border-radius:100%;background:var(--point-white);position: absolute;top:50%;left:50%;translate: -50% -50%;left:5px;top:50%;translate:0 -50%;}
            .main_solution .solution_cont .sol_tab button.on{opacity:1;}
            .main_solution .solution_cont .sol_tab button.on:before{border-color:var(--point-white);}

        .main_solution .tab_content{box-sizing:border-box;position: relative;width:calc(100% + 12vw);}
        .main_solution .tab_content > article{position: relative;display: none;}
        .main_solution .tab_content > article.on{display: block;}
        .main_solution .tab_content .thumb{width:100%;position: relative;aspect-ratio:auto 2.64;}
            .main_solution .tab_content .thumb:before{width:100%;height:50%;content:"";opacity: 0.6;background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, #000 100%);position: absolute;bottom:0;left:0;z-index:2;pointer-events: none;}
            .main_solution .tab_content .thumb img{width:100%;height:100%;object-fit:cover;}
        .main_solution .tab_content .txt_box{position: absolute;bottom:60px;left:60px;font-size:var(--text-20);display: flex;flex-direction: column;gap:14px;z-index:3;max-width:calc(100% - 18vw)}
            .main_solution .tab_content .txt_box h4{font-size:190%;color:var(--point-white);font-weight:700;line-height:1.4;}
            .main_solution .tab_content .txt_box p{font-size:95%;color:var(--point-white);font-weight:400;line-height:1.6;font-family:var(--font-type02);}

        @media (max-width:1023px) {
            .main_solution{padding-top:clamp(70px, 14vw, 140px);margin-top:10px;}
            .main_solution:before{height:calc(100% - clamp(70px, 14vw, 140px));}
            .main_solution .solution_cont .sol_tab{top:30px;left:30px;}
            .main_solution .tab_content .thumb{aspect-ratio:auto 2;}
            .main_solution .tab_content .txt_box{bottom:30px;left:30px;}
        }
        @media (max-width:640px) {
            .main_solution .solution_cont .sol_tab{top:20px;left:20px;gap:10px;}
            .main_solution .solution_cont .sol_tab button{gap:8px;font-size:100%;}
            .main_solution .tab_content .txt_box{bottom:20px;left:20px;gap:10px;}
            .main_solution .tab_content .txt_box h4{font-size:140%;}
            .main_solution .tab_content .txt_box p{font-size:80%;}
        }
        @media (max-width:479px) {
            .main_solution .tab_content .thumb{aspect-ratio:auto 1.1;}
        }
        
    /*news*/
        .our_news .main_title{display: flex;align-items:flex-end;justify-content: space-between;}
        .our_news .title_box{text-align:left;display:grid;gap:20px;}
        .our_news .board_box{display: flex;gap:80px;flex-wrap:wrap;}
        .our_news .recruit_box{display: flex;flex-direction: column;gap:30px;width:420px;}
        .our_news .recruit_box .thumb{width:100%;aspect-ratio:auto 1.555;overflow:hidden;}
            .our_news .recruit_box .thumb img{width:100%;height:100%;object-fit:cover;transition:all 0.4s ease;}
        .our_news .recruit_box .txt{display: flex;flex-direction: column;gap:14px;font-size:var(--text-20);}
            .our_news .recruit_box .txt h4{font-size:190%;color:var(--black-color01);font-weight:400;line-height:1.4;}
            .our_news .recruit_box .txt p{font-size:95%;color:var(--black-color05);font-weight:400;line-height:1.7;}
            .our_news .recruit_box a{display: inline-flex;align-items: center;gap:10px;font-size:var(--title-18);color:var(--point-color01);font-weight:600;line-height:1.6;margin-top:20px;}
            .our_news .recruit_box a span{font-size:inherit;color:inherit;font-weight:inherit;line-height:inherit;}
            .our_news .recruit_box a:after{width:15px;height:15px;content:"";background:url('../images/skin/view_more.svg') no-repeat center;background-size:auto 100%;filter: brightness(0) saturate(100%) invert(72%) sepia(2%) saturate(4895%) hue-rotate(349deg) brightness(84%) contrast(79%);transition:all 0.4s ease;}
        .our_news .notice_box{width:calc(100% - 500px);box-sizing:border-box;border-left: 1px solid var(--border-color03);padding-left:80px;}
            .our_news .notice_box ul{box-sizing:border-box;border-top:1px  solid var(--border-color03);}
            .our_news .notice_box ul li{box-sizing:border-box;padding:30px 16px;border-bottom:1px solid var(--border-color03);position: relative;font-size:var(--text-20);}
            .our_news .notice_box ul li:before{width:0;height:1px;content:"";background:var(--point-color01);position: absolute;bottom:-1px;left:0;transition:width 0.4s ease;}
            .our_news .notice_box ul li a{display: block;width:100%;height:100%;position: absolute;top:0;left:0;z-index:2;}
            .our_news .notice_box ul li strong{display: block;font-size:105%;color:var(--black-color03);font-weight:500;line-height:1.4;width:100%;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}
            .our_news .notice_box ul li p{margin-top:10px;font-size:80%;color:var(--black-color08);font-weight:400;line-height:1.4;font-family:var(--font-type02);}


        @media (hover: hover) and (pointer: fine) {
            .our_news .recruit_box:hover .thumb img{transform:scale(1.05);}
            .our_news .recruit_box:hover a:after{translate:3px;}
            .our_news .notice_box ul li:hover:before{width:100%;}
        }

        @media (max-width:1200px) {
            .our_news .board_box{gap:30px;}
            .our_news .notice_box{padding-left:30px;width:calc(100% - 450px);}    
        }
        @media (max-width:1023px) {
            .our_news .recruit_box{width:100%;flex-direction:row;align-items: center;}
                .our_news .recruit_box .thumb{width:43%;}
                .our_news .recruit_box .txt{width:calc(57% - 30px)}
            .our_news .notice_box{width:100%;padding-left:0;border-left:none;}
        }
        @media (max-width:640px) {
            .our_news .recruit_box .txt{gap:8px;}
            .our_news .recruit_box a{margin-top:10px;}
            .our_news .recruit_box a:after{width:12px;height:12px;}
            .our_news .notice_box ul li{padding:20px 10px;}
        }
        @media (max-width:479px) {
            .our_news .recruit_box{width:100%;flex-direction:column;gap:20px;}
                .our_news .recruit_box .thumb,
                .our_news .recruit_box .txt{width:100%}
            .our_news .notice_box ul li p{margin-top:6px;}
        }
        
    /*location*/
        .main_location{margin-top:40px;}
        .main_location .map_box{width:100%;height:740px;position: relative;overflow:hidden;}
        .main_location .map_box iframe{width:100%;height:100%;position: absolute;top:0;left:0;;}
        .main_location .map_info{position: absolute;top:0;left:50%;translate:-50%;display: flex;justify-content: flex-end;height:100%;pointer-events: none;}
        .main_location .map_info .info_box{height:100%;padding:80px 59px;background:var(--point-color02);pointer-events:all;width:500px;box-sizing:border-box;display: flex;flex-direction: column;justify-content: space-between;}
        .main_location .main_title{text-align:left;margin:0;}
            .main_location .main_title h3, .main_location .main_title p{color:var(--point-white);}
            .main_location .main_title p{opacity:0.8;font-size:95%;line-height:1.7;font-weight:300;letter-spacing:-0.03em}
        .main_location .info_list{display: flex;flex-direction: column;gap:19px;margin-top:40px;padding-top:40px;box-sizing:border-box;border-top:1px solid rgba(255, 255, 255, 0.2);}
            .main_location .info_list dl{display: flex;gap:10px;}
            .main_location .info_list dl dt{flex-shrink:0;translate:0 2px;}
            .main_location .info_list dl dd{font-size:var(--title-17);color:var(--point-white);font-weight:300;line-height:1.6;letter-spacing:-0.02em}
        .main_location .view_more{width:100%;border-color:var(--point-white);color:var(--point-white);font-weight: 600;padding:14px 30px;}
        .main_location .view_more:before{background:var(--point-white);}
            .main_location .view_more:after{filter:var(--filter-white);}

        @media (hover: hover) and (pointer: fine) {
            .main_location .view_more:hover{color:var(--point-color02);}
            .main_location .view_more:hover:after{filter:none;}
        } 

        @media (max-width:1200px) {
            .main_location .map_info .info_box{width:40%;padding:60px 30px;}
        }
        @media (max-width:1023px) {
            .main_location{margin-top:clamp(20px, 4vw, 40px);}
            .main_location .map_box{height:clamp(500px, 74vw, 740px);}
            .main_location .map_info{position: static;translate:0;width:100%;height:auto;}
            .main_location .map_info .info_box{width:100%;}
            .main_location .info_list{margin-top:clamp(20px, 4vw, 40px);padding-top:clamp(20px, 4vw, 40px);gap:clamp(10px, 2vw, 20px);}
            .main_location .view_more{margin-top:40px;padding:15px 20px;}
        }
        @media (max-width:640px) {
            .main_location .map_info .info_box{padding:40px 15px;}
        }