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

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

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

/*───────────────────────────────────────────────────────────
	layout common
───────────────────────────────────────────────────────────*/
	#wrap {position:relative;width:100%; box-sizing: border-box; overflow: clip;}
    #container, .w_custom{position: relative; width: calc(100% - 60px); max-width: 1815px; margin-inline: auto; box-sizing: border-box;}
    #container{background: var(--point-white);padding-block:100px;}

    #container, .sub_inner { position: relative; width: calc(100% - 60px); max-width: 1240px; margin-inline: auto; box-sizing: border-box; }

    @media (max-width:1023px){
        #container{padding-block:clamp(50px, 10vw, 100px) clamp(50px, 14vw, 100px);}
    }
    @media (max-width:860px){
        #container, .w_custom{width: calc(100% - 30px);}
        .sub_inner { width: calc(100% - 30px); }
    }
    @media (max-width:320px){
        #container, .w_custom{width: calc(100% - 20px);}
        .sub_inner { width: calc(100% - 20px); }
    }

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

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

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

    FOOTER | outline/footer.html

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

    MAIN | index.html

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

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

───────────────────────────────────────────────────────────*/
    .dg.ac{display: none !important;}
    #header {position:fixed;width:100%;top:0;left:0;z-index:10;width:100%;box-sizing:border-box;font-size:0;background: var(--trans-color);transition:all 0.4s;}
    #header .header_cont{position:relative;display:flex;align-items:center;justify-content:center;gap: 20px;height: 130px;margin:0 auto;transition:all 0.4s;}
    #header .hd_logo {height: 100%;}
    #header .hd_logo a {font-size: 0;display: flex;align-items: center;max-width: 207px;height: 100%;padding-block: 40px 10px;transition:all 0.4s;filter: var(--filter-white);box-sizing: border-box;}
    #header .hd_lnb{position:absolute;top: 130px;left: 0;text-align:left;font-size: var(--title-20);transition:all 0.4s;}
    #header .hd_lnb > li{position:relative;width: max-content;font-size: inherit;}
        #header .hd_lnb > li + li{margin-top: 10px;}
    #header .hd_lnb > li > a{display:block;font-size: inherit;font-weight: 700;color: var(--point-color01);padding-right:30px;filter: var(--filter-white);letter-spacing: -0.02em;}
    #header .hd_lnb .hd_lnb_dep2{display:flex;position:absolute;top:50%;transform:translateY(-50%);left:calc(100% - 5px);opacity:0;pointer-events:none;transition: all 0.4s;}
        #header .hd_lnb .hd_lnb_dep2.on{opacity:1; pointer-events:inherit;}
        #header .hd_lnb .hd_lnb_dep2 > li + li{margin-left:10px;}
    #header .hd_lnb .hd_lnb_dep2 > li > a{display:inline-flex; align-items:center; height:45px; font-size:15px; font-weight:500; color:#333; background:#fff; width:max-content; padding:0 15px; border:1px solid #ddd; box-sizing:border-box; transition:all 0.4s;}

        
        /* on */
            #header.on{background: rgba(255,255,255,0.9);box-shadow:0 0 10px rgba(0,0,0,0.3);}
            #header.on .header_cont{height:100px; justify-content:flex-start;}
            #header.on .hd_logo a{filter: none;padding-block: 20px;}
            #header.on .hd_right .menu-trigger{filter: none;}
            #header.on .hd_lnb{top:50%;left:50%;transform: translate(-50%, -50%);display:flex;height: 100%;}
            #header.on .hd_lnb > li + li{margin-top:0;}
            #header.on .hd_lnb > li > a{padding:0 25px;display: flex;color: var(--black-color03);height: 100%;align-items: center;filter: none;}
            #header.on .hd_lnb .hd_lnb_dep2{display:block;top:100%;left:50%;transform:translateX(-50%);min-width: 100%; width:max-content; background: #fff;box-shadow:var(--shadow-01); text-align:center; opacity:0; pointer-events:none;}
            #header.on .hd_lnb .hd_lnb_dep2 > li + li{margin:0;}
            #header.on .hd_lnb .hd_lnb_dep2 > li > a{border:0; width:100%; justify-content:center;}

        /* over */
            @media (min-width:1024px){
                #header .hd_lnb > li:hover > a{color: var(--point-color01);}
                #header .hd_lnb .hd_lnb_dep2 > li:hover > a{background: var(--point-color01);border-color: var(--point-color01);color:#fff;box-shadow:var(--shadow-02)}
                #header.on .hd_lnb > li:hover .hd_lnb_dep2{opacity:1; pointer-events:inherit;}
            }

    #header .hd_right {display:flex;align-items: center;gap: clamp(20px, 3vw, 40px);position: absolute;top: 0;right: 0;height: 100%;box-sizing: border-box;}
    #header .hd_lang{display: inline-flex;align-items: center;font-size: var(--title-20);filter: var(--filter-white); transition: all 0.4s;}
        #header.on .hd_lang{filter: none;}
    #header .hd_lang:before{display: inline-flex;content:'';width: 16px;height: 16px;background: url('../images/skin/lang_icon.svg') no-repeat center / 100% auto;margin-right: 14px;}
    #header .hd_lang > li{font-size: 80%; font-weight: 500; color: var(--black-color03);}
        #header .hd_lang > li.on{font-weight: 600;}
        #header .hd_lang > li:not(:last-child):after{display: inline-flex; content:''; width: 1px; height: 12px; background: rgba(51,51,51,0.2); margin-inline: 14px;}
    #header .hd_lang > li > a{opacity: 0.5; transition: all 0.4s;}
        #header .hd_lang > li.on a{opacity: 1;}
    #header .hd_right .menu-trigger {position:relative;padding:0;width: 26px;height: 26px;box-sizing: border-box;background:url('../images/skin/menu_trigger.png') no-repeat center / 100% auto;filter: var(--filter-white);}

        /* over */
            @media (min-width:1024px){
                #header .hd_lang > li > a:hover{opacity: 1;}
            }

    

    @media (max-width:1415px) {
        #header .hd_lnb > li > a{font-size:18px;}
        #header.on .hd_lnb > li > a{padding:0 20px;}
    }

    @media (max-width:1290px){
        #header.on .hd_lnb > li > a{padding:0 10px;}
    }

    @media (max-width: 1200px){
        #header .hd_lnb{display:none !important;}
    }

    @media (max-width:1023px) {
        #header .hd_lnb{display:none !important;}
        #header .header_cont{height:clamp(73px, 13vw, 130px);}
            #header.on .header_cont{height:clamp(60px, 10vw, 100px);}
        #header .hd_logo a{padding-block: clamp(20px, 4vw, 40px) 10px;}
        #header.on .hd_logo a{padding-block: clamp(15px, 2vw, 20px);}
        #header .hd_lang:before{margin-right: clamp(10px, 2vw, 14px);}
        #header .hd_lang > li:not(:last-child):after{margin-inline: clamp(10px, 2vw, 14px); height: clamp(10px, 2vw, 12px);}
        
    }
    @media (max-width:640px) {
        #header .header_cont{justify-content: space-between !important;}
		#header .hd_right{position:relative;inset: auto;flex-shrink: 0;}
    } 


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

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

───────────────────────────────────────────────────────────*/
    #aside {top:0;right:0;width:100%; height:100%; box-sizing:border-box;box-sizing:border-box;position:fixed;background:#fff;z-index:95; opacity:0; pointer-events:none; transition:all 1.5s; transition-delay:0.6s;}
    #aside.on {opacity:1; pointer-events:inherit; }
        body:has(#aside.on){overflow: hidden; touch-action: none;}

    .aside_bg {position:fixed; width:100%; height:100%; top:0; left:0; z-index:90;background:#fff0; pointer-events:none; transform:scaleX(-1)}
    .aside_bg.on {opacity:1;display:block; pointer-events:inherit;}
    .aside_bg div {position: absolute;z-index: 1; background-repeat: no-repeat; transform: rotateY(-50deg) scale(0.5); opacity: 0; transform-origin: bottom; transition: all .6s cubic-bezier(.71, .05, .09, .91); transition-delay:0.3s;}
        .aside_bg.on div{ opacity: 1; transform: rotate(0deg) translateY(0);}


        #aside .aside_box.for_m {display:none;}
    #aside .aside_box{display: block;width:100%;height:100%;}
    #aside .aside_head{height: 160px;position: relative;border-bottom:1px solid #ddd;box-sizing:border-box;transition:all 0.4s;}
    #aside .aside_head .w_custom{display: flex; justify-content: space-between; height: 100%;}
    #aside .aside_head .aside_logo{left:50%;top: 50%;position:absolute;z-index:15;transform: translate(-50%, -50%);height: 100%;}
    #aside .aside_head .aside_logo a {display: flex;align-items: center;font-size:0;height:100%;padding-block: 20px;box-sizing: border-box;}
    #aside .aside_head_right {top:50%;right: 0;transform:translate(0,-50%);margin:0;padding:0;font-size:0;position:absolute;vertical-align:top;text-align:center;display:inline-block;box-sizing:border-box;z-index:15;}
    #aside .menu-trigger2.active-1{position:relative;padding:0;width:26px;height:26px;box-sizing: border-box;background: url('../images/skin/menu_trigger_on.png')no-repeat center / 100% auto;display: inline-block;} 
        /* 스크롤 */
            #aside.scroll .aside_head{height:100px;}
            #aside.scroll .aside_head .aside_logo{left: 0;transform: translateY(-50%);}
    #aside ul.aside_menu .dep1_li {text-align:left;display: inline-flex;align-items: center;}
    #aside ul.aside_menu .dep1_li .dep1_a {transition:0.2s;color:#333;font-size:36px;display: block;padding:0;font-weight:700;box-sizing: border-box; padding-right: 20px; }
    #aside ul.aside_menu .dep1_li .dep2 {width:calc(100% - 315px);display: flex;flex-wrap: wrap;gap: 10px 0;}
    #aside ul.aside_menu .dep1_li .dep2 li {position:relative;display: inline-block;}
    #aside ul.aside_menu .dep1_li .dep2 li a {display:block;font-size:16px;line-height:1.2;color:#888;font-weight:500;}

    #aside .aside_box .aside_cont{position: absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:1425px;}
    #aside .aside_box ul.aside_menu{position: relative;width:100%;display: flex;flex-wrap: wrap;gap: 60px 30px;}
    #aside .aside_box .dep1_li{position: relative;display: block;width: calc(100% / 2 - 15px);box-sizing: border-box;}
    #aside .aside_box .dep1_li > a{width:315px;}
    #aside .aside_box .dep1_li .dep2{display: block;}
    #aside .aside_box .dep1_li .dep2 li{position: relative;}
    #aside .aside_box .dep1_li .dep2 li + li{margin-left:26px;}
    #aside .aside_box .dep1_li .dep2 li + li:before{width:3px;height:3px;background:#888;content:"";border-radius:100%;position: absolute;top:50%;left:-17px;transform:translate(0,-50%);}

		/* over */
		@media (min-width:1024px) {
			#aside .aside_box .dep1_li:hover > a, #aside .aside_box .dep1_li:focus > a{color:var(--point-color01);}
			#aside .aside_box .dep1_li .dep2 li:hover a{color:var(--point-color01);} 
		}

	@media (max-width:1600px) {
		#aside .aside_box .aside_cont{width:1250px;}
		#aside .aside_box .dep1_li > a{width:275px;}
		#aside ul.aside_menu .dep1_li .dep2{width:calc(100% - 275px);}

	}
	@media (max-width:1350px) {
		#aside .aside_box .aside_cont{width:100%;box-sizing:border-box;padding:0 50px;}
		#aside .aside_box .dep1_li > a{font-size:38px;}
	}
    @media (max-width:1280px){
        #aside ul.aside_menu .dep1_li .dep1_a { font-size: 30px; }
    }
	@media (max-width:1217px) {
		#aside .aside_head_right{right:15px;}
		#aside.scroll .aside_head .aside_logo{left:15px;}
	}
	/* @media (max-width:1150px) {
		#aside .aside_box .dep1_li > a{font-size:30px;}
	} */
	@media (max-width:1100px) {

		#aside .aside_box .aside_cont{padding:0 30px;}
		#aside ul.aside_menu .dep1_li .dep2 li a{font-size:14px;}
	}
	@media (max-width:1023px) {
        #aside ul.aside_menu .dep1_li{display: block;}
        #aside .aside_box .dep1_li > a{width: 100%;}
        #aside ul.aside_menu .dep1_li .dep2, #aside .aside_box .dep1_li .dep2{width:100%; margin-top:15px;}

		#aside .aside_head{height: clamp(73px, 13vw, 130px);}
			#aside.scroll .aside_head{height: clamp(60px, 10vw, 100px);}
		#aside .aside_head .aside_logo{}
		#aside .aside_head .aside_logo a{padding-block: clamp(15px, 2vw, 20px);}
	}
	
	@media (max-width:900px) {
		#aside .aside_box .aside_cont{padding:0 30px;}
		
	}
	@media (max-width:725px) {

		#aside .aside_box{display: block;height:100%;overflow-y:scroll;}
            #aside.on {right:0;}

		#aside .aside_box.for_pc{display:none;}
		#aside .aside_box.for_m{display:block;}
		#aside .aside_box .aside_cont{padding:0; top:auto; left:auto; position:relative; transform:none;}
		#aside .aside_box ul.aside_menu{box-sizing:border-box;padding:40px 30px 20px 30px;gap: 30px;}
		#aside .aside_box .dep1_li{width: 100%;}
		#aside ul.aside_menu .dep1_li .dep1_a{font-size:22px;color:#333;font-weight:700;display: block;position: relative;transition:all 0.5s;padding-right: 40px;}
		#aside .aside_box .dep1_li .dep1_a.on{color:var(--point-color01);transition:all 0.5s;}
		#aside .aside_menu .group_tit > a:before{width:20px;height:2px;content:"";background:#666;position: absolute;right: 0;top:50%;transform:translate(0,-50%); transition:all 0.4s;}
		#aside .aside_menu .group_tit > a:after{width:2px;height:20px;content:"";background:#666;position: absolute;right: 9px;top:50%;transform:translate(0,-50%); transition:all 0.4s;}
		#aside .aside_menu .group_tit > a.on:before{background:var(--point-color01);}
		#aside .aside_menu .group_tit > a.on:after{opacity:0;}
		#aside ul.aside_menu .dep1_li .dep2{position:relative;display: none ; line-height:145%;}
		#aside ul.aside_menu .dep1_li .dep2 li{box-sizing:border-box;padding-left:25px;position: relative; display:block; margin:0;}
		#aside ul.aside_menu .dep1_li .dep2 > li a{display:block;font-size:16px;line-height:30px;color:#888;font-weight:500;}
		#aside ul.aside_menu .dep1_li .dep2 > li a:before{width:3px;height:3px;background:#888;content:"";border-radius:100%;position: absolute;top:50%;left:10px;transform:translate(0,-50%);}
		#aside ul.aside_menu .dep1_li .dep2 li + li:before{display:none;}

	}
	@media (max-width:600px) {
		#aside ul.aside_menu .dep1_li .dep2 > li a{font-size:14px;}

	}
	@media (max-width:479px) { 
		#aside .aside_head{height:73px;}
		#aside.scroll .aside_head{height:60px;}
		#aside .aside_head .aside_logo{width:117px;}
		#aside .aside_box .aside_menu{padding:30px 20px;}
		#aside ul.aside_menu .dep1_li .dep1_a{font-size:20px;}
		#aside ul.aside_menu .dep1_li .dep2 > li a:before{width:2px;height:2px;left:3px;}
		#aside ul.aside_menu .dep1_li .dep2 li{padding-left:20px;}

	}
	@media (max-width:360px) { 
		#aside ul.aside_menu .dep1_li .dep1_a{font-size:18px;}
	}
	@media (max-width:360px) { 
		#aside ul.aside_menu .dep1_li .dep1_a{font-size:18px;}
		#aside .aside_box ul.aside_menu{gap: 30px;}
		#aside.scroll .aside_head .aside_logo{left:10px;}
		#aside .aside_head_right{right:10px;}
		#aside .aside_box .aside_menu{padding:25px 15px;}
	}

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

	MAIN | index.html

───────────────────────────────────────────────────────────*/
    /* 비주얼 */
        .main_content .visual_wrapper{display: block;padding-top: 0;}
        .main_visual{position: relative; overflow: clip; background: var(--black-color00);}
        .main_visual .slick-slide{position: relative; height: 100vh; overflow: clip;}
        .main_visual .thumb{position: relative; display: block; width: 100%; height: 100%; background: no-repeat center / cover; opacity: 0.9; transform: scale(1.1);}
        .main_visual .active .thumb{opacity: 1; transform: scale(1); transition: all 5s;}
        .main_visual .txt_box{position: absolute;bottom: 30%;left:50%;transform: translateX(-50%);text-align: center;font-size: var(--title-20);z-index: 3; transition: all 0.4s;}
        .main_visual .txt_box h2{font-size: 420%; font-weight: 400; color: var(--point-color01); line-height: 1.22;}
            .main_visual .txt_box h2 + h5{margin-top: 20px;}
        .main_visual .txt_box h2 em{font-weight: 700; color: var(--point-color02);}
        .main_visual .txt_box h2 strong{font-weight: 700; color: var(--point-color03);}
        
        .main_visual .txt_box h5{font-size: 130%; font-weight: bold; color: var(--point-color04);}
        .main_visual .txtAni{transform: scale(0.95); opacity: 0;}
            .main_visual .active .txtAni{transform: scale(1); opacity: 1; transition: all 1.2s; }
            .main_visual [data-slick-index="0"] .txt_box h2{color: var(--point-color04);}
            .main_visual [data-slick-index="0"] .txt_box h2 :is(em, strong){color: inherit;}
        
        .main_visual .controller{position: absolute;bottom: 20.5%;left:50%;transform: translateX(-50%);z-index: 5;display: flex;align-items: center;justify-content: center;gap: 45px;}
        .main_visual .count_box{display: inline-flex; align-items: inherit; gap: 30px; font-size: var(--title-20);}
        .main_visual .count_box span{font-size: 110%;font-weight: 500;color: var(--point-color04);min-width: 30px;text-align: center;}
        .main_visual .count_box .slideCountAll{opacity: 0.6;}
        .main_visual .slick-arrow{position: relative; width: 14px; height: 24px;}
            .main_visual .slick-arrow:before{position: absolute;content:'';width: 100%;aspect-ratio: auto 1;border: solid var(--point-color04);border-width: 0 0 3px 3px;box-sizing: border-box;top:50%;left: calc(50% + 3px);translate: -50% -50%;rotate: 45deg;}
            .main_visual .slick-arrow.next{transform: scale(-1,-1);}
        .main_visual .slider-progress{position: relative; width: 180px; height: 3px; background:rgba(83, 35, 107, 0.3);}
        .main_visual .slider-progress em{position: absolute; top:0; left:0; height: 100%; background: var(--point-color04);}
        .main_visual .slickBtn{position: relative; width: 12px; height: 16px; font-size: 0;}
        .main_visual .slickBtn{&:before, &:after{position: absolute; content:''; width: 4px; height: 100%; background: var(--point-color04); top:0; left:0;}}
        .main_visual .slickBtn:after{left: auto; right:0;}
        .main_visual .slickBtn.play:before{width: 100%; clip-path: polygon(0 0, 0% 100%, 100% 50%);}
        .main_visual .slickBtn.play:after{opacity: 0;}
        .main_visual .scr_dwn{position: absolute;left:50%;bottom:0;translate: calc(-50% - 0.5px) 0;pointer-events: none;}
        .main_visual .scr_dwn .desc{position: relative;font-size: var(--title-20);pointer-events: all;font-family: var(--font-type02);display: flex;align-items: center;gap: 12px;writing-mode: tb-rl;margin-left: auto; cursor: pointer;}
        .main_visual .scr_dwn .desc dt{font-size:80%;font-weight: 700;filter: var(--filter-white);transform: scale(-1,-1);line-height: 1;}
        .main_visual .scr_dwn .desc dd{position: relative; width: 1px;height: 140px;background: rgba(255,255,255,0.3); overflow: clip;}
            .main_visual .scr_dwn .desc dd:before{position: absolute; content:''; top:-20%; left:0; width: 100%; height: 20%; background: var(--point-white);}
            .main_visual .scr_dwn .desc dd:before{animation-name: scrDwn; animation-duration:2s; animation-iteration-count:infinite; transition-timing-function:linear;}
            @keyframes scrDwn {0% {top:-20%;}100% {top:120%;}}

            body:has([data-slick-index="1"].slick-active) #header :is(.hd_logo a, .hd_lnb > li > a){filter:none;}
            body:has([data-slick-index="2"].slick-active) .main_visual :is(.txt_box, .controller){filter: var(--filter-white);}

        @media (max-width:1280px){
            .main_visual .txt_box h2 { font-size: 400%; }
            .main_visual .txt_box h5 { font-size: 120%; }
        }

        @media (max-width:1240px){
            .main_visual .controller{gap: clamp(20px, 3.7vw, 45px);}
            .main_visual .count_box{gap: clamp(15px, 2.5vw, 30px);}
            .main_visual .slider-progress{width: clamp(120px, 15vw, 180px);}
            .main_visual .count_box span{font-size: 100%;min-width: clamp(18px, 3.5vw, 30px);}
            .main_visual .slick-arrow{width: clamp(12px, 1.5vw, 14px);height: clamp(20px, 2.3vw, 24px);}
            .main_visual .slickBtn{width: clamp(10px, 1.7vw, 12px);height: clamp(14px, 2.1vw, 16px);}
        }
        @media (max-width:1200px){
            .main_visual .txt_box{text-wrap: balance;}
            .main_visual .txt_box br.for_pc{display: none;}
            .main_visual .txt_box h2{font-size: clamp(32px, 7vw, 70px);}
            .main_visual .txt_box h2 + h5{margin-top: clamp(15px, 2vw, 20px);}
            .main_visual .txt_box h5{font-size: clamp(16px, 2vw, 26px);}
        }
        @media (max-width:1023px){
            .main_visual .txt_box { bottom: 40%; }
            .main_visual .controller { bottom: 30.5%; }
            .main_visual .slick-slide{height: clamp(600px, 96vw, 960px);}
        }
        @media (max-width:640px){
            .main_visual .slick-arrow:before{border-width: 0 0 2px 2px;}
            .main_visual .slickBtn{&:before, &:after{width:3px;}}
            .main_visual .scr_dwn{display: none;}
        }
        @media (max-width:479px){
            .main_visual .count_box span{font-size: 90%;}
        }


	/* 공통 */
        .main_content > section{position: relative;box-sizing: border-box;}
        .main_content .main_tit{position: relative;font-size: var(--title-20);box-sizing: border-box;display: flex;flex-direction: column;gap: 14px;align-items: flex-start;}
		.main_content .main_tit h2{font-size:140px; font-weight:bold; color:#111;}
		.main_content .main_tit h3{font-size:300%;font-weight: 700;color:var(--point-color01); line-height: 1.33;}
			.main_content .main_tit h3 + h6{margin-top: 17px;}
        .main_content .main_tit h3 big{font-size: 103%;font-weight: 600;}
		.main_content .main_tit h4{font-size:36px; font-weight:400; color:#333;}
		.main_content .main_tit h5{font-size:24px; font-weight:400; color:#111;} 
		.main_content .main_tit h6{font-size:inherit;font-weight: 500;color:var(--black-color00);line-height:1.5;letter-spacing: -0.02em;}
		.main_content .main_tit p{font-size: 80%;font-weight: 400;color: var(--black-color06);line-height: 1.87;letter-spacing: 0.1em;}
		.main_content .main_tit .read_more_btn{margin-top: 50px;}
		.main_content .tit_nav{position:absolute;top:0;left:0;font-size: var(--title-16);font-weight: 600;color: var(--black-color03);line-height: 1;display: inline-flex;align-items: center;letter-spacing: -0.01em;}
			.main_content .tit_nav:before{display:inline-flex;content:'';width:6px;height:6px;background:var(--point-color05);margin-right: 8px;vertical-align:middle;}
		.main_content .read_more_btn{display:inline-block;font-size: var(--title-20);}
		.main_content .read_more_btn span{display: inline-block;position:relative;font-size: 80%;color: var(--black-color03);font-weight: 600;padding-bottom: 2px;padding-right: 2px;transition:all 0.4s;}
			.main_content .read_more_btn span:before{position:absolute;content:'';width:100%;height:1px;background:var(--black-color03);left:0;bottom: 1px;}
			.main_content .read_more_btn span:after{position:absolute; content:''; width:30px; height:1px; background:var(--point-white); left:0; bottom:1px; opacity:0; transition:all 0.4s; display: none;}
		.main_content .view_more_btn{position:fixed; display:none; transform:translate(-50%, -50%); z-index:2;}
		.main_content .view_more_btn span{display:inline-flex; align-items:center; justify-content:center; width:120px; height:120px; background:var(--point-color01); font-size:14px; font-weight:500; color:#fff; border-radius:100%;}
		.main_content .swiper-button-prev:after, .main_content .swiper-button-next:after{display:none;}

			/* over */
			@media (min-width:1024px) {
                body:has(.main_content){overflow: hidden;}
                .main_content > section{height: 100vh;display: flex;flex-direction: column;align-items: center;justify-content: center; padding-top: 100px;}
				.main_content .read_more_btn:hover span{color:var(--point-color01);}
                .main_content .read_more_btn:hover span:before{background: var(--point-color01); animation-name: ReadMore; animation-duration:2s;  animation-direction:alternate;  animation-fill-mode: forwards;}
				@keyframes ReadMore { 0% {clip-path: inset(-1px 0);} 50% {clip-path: inset(-1px 0 -1px 100%);} 60% {clip-path: inset(-1px 100% -1px 0);} 100% {clip-path: inset(-1px 0);} }
			}
            
        @media only screen and (max-width:1600px) {
            .main_content .main_tit p{font-size:75%; line-height:1.53;}
        }
        @media (max-width:1023px) {
            .main_content .main_tit{gap: clamp(10px, 1.4vw, 14px); text-wrap: balance;}
            .main_content .main_tit h3{font-size: 270%;}
            .main_content .main_tit h3 + h6{margin-top: clamp(5px, 1.7vw, 17px);}
            .main_content .main_tit h4{font-size:24px;}
            .main_content .main_tit p{font-size:max(14px, 70%);}
            .main_content .main_tit .read_more_btn{margin-top: clamp(15px, 5vw, 50px);}
            .main_content .view_more_btn{display:none !important;}
        }
        @media (max-width:860px) {
            .main_content .main_tit h3{font-size: 240%;}
            .main_content .main_tit h4{font-size:21px;}
            .main_content .read_more_btn span{font-size:14px;}
        }
        @media (max-width:640px) {
            .main_content .main_tit h3{font-size: 210%;}
            .main_content .main_tit h4{font-size:18px;}
            .main_content .read_more_btn span{font-size:13px;}
        }
        @media (max-width:479px) {
            .main_content .main_tit h3{font-size: 180%;}
            .main_content .main_tit h6{font-size:90%;}
            .main_content .main_tit p{font-size:13px;}
        }
        @media (max-width:374px) {
            .main_content .main_tit h4{font-size:17px;}
            .main_content .main_tit p{font-size:12px;}
            .main_content .read_more_btn span{font-size:12px;}
        }

	/* main_about */
		.main_about{/* overflow: clip; */z-index: 2;}
        .main_about:before{position: absolute;content:'';width: 1px;height: calc(100% + 100px);background: var(--border-color01);top:0;left:50%;}
        .main_about:after{position: absolute;content:'';width: 100vw;height: 1px;background: var(--border-color01);bottom: 25%;right: 50%;}
        .main_about .cont{position: relative;width: fit-content;margin-inline:auto;z-index: 3;}
        .main_about .thumb{position: relative;width: 100%;max-width: 620px;/* aspect-ratio: auto 0.85; */height: 70vh;max-height: 658px;overflow: clip;z-index: 1;padding-inline: 30px;box-sizing: border-box;}
        .main_about .thumb img{width: 100%; height: 100%; object-fit: cover;}
        .main_about .logo_box{position: absolute;top:-60px;left: -60px;background: var(--point-color01);padding: 29px 30px 26px;z-index: 3;display: flex;flex-direction: column;justify-content: space-between;gap:30px;width: 250px;min-height: 250px;box-sizing: border-box;border-radius: var(--radius-10);}
        .main_about .logo{display: block; filter: var(--filter-white);}
        .main_about .tit_nav{position: relative;inset: auto;color: var(--point-white);font-weight: 500;}
        .main_about .main_tit{position: absolute;right:13%;bottom:40px;z-index: 3;width: max-content;}

        @media (max-width:1400px){
            .main_about .main_tit{right: 0;}
        }
        @media (max-width:1023px){
            .main_about{padding-block: clamp(100px, 12vw, 120px) clamp(70px, 12vw, 120px);}
            .main_about .thumb{height: auto; aspect-ratio:auto 0.85; max-height: none;}
            .main_about .logo_box{top: -30px;left: 0;width: clamp(150px, 25vw, 250px);min-height: clamp(150px, 25vw, 250px);padding: clamp(20px, 2.6vw, 26px) clamp(20px, 3vw, 30px);}
        }
        @media (max-width:640px){
            .main_about:after{top:35%;}
            .main_about .main_tit{position: relative;inset: auto;width: 100%;padding-top: 35px;}
        }

	/* main_wide_bnr */
		.main_wide_bnr{ opacity:0; transition:all 0.7s;}
			.main_wide_bnr.aos-animate{opacity:1;}
		.main_wide_bnr .bnr_list{display:flex;justify-content:space-between;height: 100%;}
		.main_wide_bnr .bnr_list > li{position:relative; width:100%; box-sizing:border-box; overflow:hidden;}
		.main_wide_bnr .bnr_list .link{position:absolute; inset: 0; z-index: 5;}
		.main_wide_bnr .bnr_list .tittle{position:absolute;inset: 0;z-index:1;color:var(--black-color01);font-size: var(--title-20);box-sizing: border-box;display: flex;flex-direction: column;align-items: flex-start;justify-content: flex-end;padding: 70px;}
		.main_wide_bnr .bnr_list .tittle dt{font-size:220%;font-weight:700;color:var(--black-color01);}
			.main_wide_bnr .bnr_list .tittle dt + dd{margin-top: 11px;}
		.main_wide_bnr .bnr_list .tittle dd{font-size:100%;font-weight:600;letter-spacing: -0.02em;}
            .main_wide_bnr .bnr_list > li:nth-child(1) .tittle :is(dt, dd){filter: var(--filter-white);}
		.main_wide_bnr .bnr_list .thumb{display:block; font-size:0; width:100%; height:100%; overflow:clip;}
		.main_wide_bnr .bnr_list .thumb img{width:100%; height:100%; object-fit:cover; transition:all 0.4s;}

			/* over */
			@media (min-width:1024px) {
				.main_wide_bnr .bnr_list > li:hover .thumb img{transform:scale(1.05); opacity:0.9;}
			}

        @media (max-width:1200px){
            .main_wide_bnr .bnr_list .tittle dt { font-size: 200%; }
        }

        @media (max-width:1060px){
            .main_wide_bnr .bnr_list .tittle dt { font-size: 185%; }
        }

        @media (max-width:1023px) {
            .main_wide_bnr .bnr_list{min-height: auto; display: block;}
            .main_wide_bnr .bnr_list .tittle{padding:clamp(30px, 7vw, 70px);}
            .main_wide_bnr .bnr_list .tittle dt + dd{margin-top: clamp(7px, 1.5vw, 11px);}
            
            .main_wide_bnr .bnr_list .thumb{aspect-ratio: auto 1.43;height: auto;min-height: 300px;}
        }
        @media (max-width:860px){
            
        }
        @media (max-width:640px) {
            .main_wide_bnr .bnr_list .tittle dt{font-size: 180%;}
            
        }
        @media (max-width:479px) {
            .main_wide_bnr .bnr_list .tittle dt{font-size: 160%;}
            .main_wide_bnr .bnr_list .tittle dd{font-size: 80%;}
        }
        @media (max-width:360px) {
            .main_wide_bnr .bnr_list .tittle dt{font-size: 140%;}
        }


	/* main_portfolio */
		.main_portfolio{background:var(--point-color01);}
        .main_portfolio .view_more_btn span{background: var(--black-color00);}
        .main_portfolio .w_custom{display: flex;max-width: 1795px; opacity: 0; padding-top: 100px; }
        .main_portfolio.aos-animate .w_custom{opacity: 1;padding-top: 0;transition: all 1.2s;}
		.main_portfolio .tit_nav{color:var(--point-white);left: 0;z-index:7;top: 56px;font-weight: 500;} 
		.main_portfolio .tit_wrap{width: 26.7%;min-width: 430px;padding-right: 30px;box-sizing: border-box;flex-shrink: 0;}
        .main_portfolio .main_tit :is(h3, h6){filter: var(--filter-white);}
        .main_portfolio .main_tit h3 + h6{padding-top: 9px;}
        .main_portfolio .main_tit h6{opacity: 0.8;line-height: 1.7;}
        .main_portfolio .main_tit h6 strong{font-weight: bold; font-size: 110%;}
        .main_portfolio .titSwiper{box-sizing: border-box;padding-block: 155px;}
        .main_portfolio .titSwiper .swiper-slide{position: relative; opacity: 0 !important; pointer-events: none;}
            .main_portfolio .titSwiper .swiper-slide.swiper-slide-thumb-active{opacity: 1 !important; pointer-events: all;}
            .main_portfolio .titSwiper .swiper-slide:has(~ .swiper-slide-thumb-active){opacity: 0 !important; pointer-events: none;}
        .main_portfolio .tag_list{display: flex; flex-wrap: wrap; gap: 12px; font-size: var(--title-20);}
        .main_portfolio .tag_list > li{font-size: 90%;font-weight: 500;filter: var(--filter-white);opacity: 0.5;letter-spacing: -0.01em;}
        .main_portfolio .thumbSwiper{position: relative;width: 73.3%;box-sizing: border-box;clip-path: inset(0 -200% 0 0);padding-right: 320px;padding-right: clamp(0px, 17vw, 320px);}
        .main_portfolio .thumbSwiper .thumb{position: relative; width: 100%; height: 580px; overflow: clip;}
        .main_portfolio .thumbSwiper .thumb img{width: 100%; height: 100%; object-fit: cover;}
        .main_portfolio .controller{position: absolute; left:0; bottom:40px; display: flex;align-items: center;gap: 40px;}
        .main_portfolio .controller [class*="swiper-button"]{position: relative;width: 14px;height: 24px;inset: auto;margin: 0;}
            .main_portfolio .controller [class*="swiper-button"]:before{position: absolute;content:'';width: 100%;aspect-ratio: auto 1;border: solid var(--point-color04);border-width: 0 0 3px 3px;box-sizing: border-box;top:50%;left: calc(50% + 3px);translate: -50% -50%;rotate: 45deg; filter: var(--filter-white);}
            .main_portfolio .controller [class*="swiper-button"].swiper-button-next{transform: scale(-1,-1);}
        .main_portfolio .controller .swiper-pagination-num{width: auto;display: inline-flex;align-items: inherit;gap: 25px;font-size: var(--title-20);}
        .main_portfolio .controller .swiper-pagination-num span{font-size: 110%;font-weight: 500;color: var(--point-color04);min-width: 30px;text-align: center; filter: var(--filter-white);}
        .main_portfolio .controller .swiper-pagination-num .swiper-pagination-total{opacity: 0.6;}
        .main_portfolio .swiper_btn{position: relative; width: 12px; height: 16px; font-size: 0;}
            .main_portfolio .swiper_btn{&:before, &:after{position: absolute; content:''; width: 4px; height: 100%; background: var(--point-color04); top:0; left:0; filter: var(--filter-white);}}
            .main_portfolio .swiper_btn:after{left: auto; right:0;}
            .main_portfolio .swiper_btn.play:before{width: 100%; clip-path: polygon(0 0, 0% 100%, 100% 50%);}
            .main_portfolio .swiper_btn.play:after{opacity: 0;}
        .main_portfolio .slider-progress{position: relative; width: 140px; height: 3px; background:rgba(255, 255, 255, 0.3);}
        .main_portfolio .slider-progress em{position: absolute; top:0; left:0; height: 100%; background: var(--point-color04); filter: var(--filter-white);}
            .main_portfolio:has(.thumbSwiper.stop) .slider-progress em{width: 100%;}
            .main_portfolio:has(.thumbSwiper.on:not(.stop)) .slider-progress em{animation-name: portPro; animation-duration:5s;  animation-direction:alternate; animation-fill-mode: forwards; transition-timing-function:linear;}
        @keyframes portPro {0% {width: 0;}100% {width:100%;}}

			/* over */
			@media (min-width:1024px) {
			}
        @media (max-width:1240px) {
            .main_portfolio .controller{bottom:0;gap: clamp(20px, 3.4vw, 40px);}
            .main_portfolio .controller [class*="swiper-button"]{width: clamp(12px, 1.5vw, 14px);height: clamp(20px, 2.3vw, 24px);}
            .main_portfolio .controller .swiper-pagination-num{gap: clamp(15px, 2.1vw, 25px);}
            .main_portfolio .controller .swiper-pagination-num span{font-size: 100%;min-width: clamp(18px, 3.5vw, 30px);}
            .main_portfolio .swiper_btn{width: clamp(10px, 1.7vw, 12px); height: clamp(14px, 2.1vw, 16px);}
            .main_portfolio .slider-progress{width: clamp(120px, 11.4vw, 140px);}
        }
        @media (max-width:1023px) {
            .main_portfolio{padding-block: clamp(70px, 12vw, 120px);}
            .main_portfolio .w_custom{flex-direction: column-reverse;gap: 30px;}
            .main_portfolio .tit_nav{top:0;}
            .main_portfolio .tit_wrap{width: 100%;min-width: auto;padding-right: 0;flex-shrink: unset;}
            .main_portfolio .main_tit h3 + h6{padding-top: clamp(0px, 1vw, 9px);}
            .main_portfolio .main_tit br.for_pc{display: none;}
            .main_portfolio .titSwiper{padding-block: 0 clamp(70px, 15vw, 150px);}
            .main_portfolio .thumbSwiper{width: 100%;padding-right: 0;padding-top: 30px;}
            .main_portfolio .thumbSwiper .thumb{height: auto;aspect-ratio: auto 1.72;min-height: 200px;}
            .main_portfolio .controller { width: 100%; justify-content: center; }
        }
        @media (max-width:640px){
            .main_portfolio .controller [class*="swiper-button"]:before{border-width: 0 0 2px 2px;}
            .main_portfolio .swiper_btn{&:before, &:after{width:3px;}}
        }
        @media (max-width:479px){
            .main_portfolio .controller .swiper-pagination-num span{font-size: 90%;}
        }

    /* main_service */
		.main_service{z-index:3;}
		.main_service .tit_nav{position: relative; inset: auto; margin-bottom: 30px;}
		.main_service .ser_list{border-block: 1px solid var(--border-color01);padding:67px 0 78px;display:flex;height: 620px;box-sizing: border-box;}
		.main_service .ser_list > li{position:relative;border-left: 1px solid var(--border-color01);width: calc(26.5% / 2); box-sizing: border-box;transition:all 0.8s;cursor:pointer;}
		.main_service .ser_list > li .link{position:absolute; top:0; left:0; width:100%; height:100%; z-index:2;}
		.main_service .ser_list > li dl{display:flex;align-items: flex-end;height: 100%;position: relative;}
		.main_service .ser_list > li dl dt{writing-mode:vertical-rl;font-size:60px;font-weight: 600;color:#111;transform:rotate(-180deg);padding-right: 25px;box-sizing: border-box;letter-spacing: -0.02em; height:100%; transition:all 0.8s; }
		.main_service .ser_list > li dl dd{ opacity:0;  height:100%; overflow:hidden; }
		.main_service .ser_list > li .cont{display: inline-flex;align-items: flex-end;height: 100%;}
		.main_service .ser_list > li .thumb{font-size:0; width:0; height:620px; opacity:0; transition:all 0.8s;}
		.main_service .ser_list > li .thumb img{width:100%; height:100%; object-fit:cover;}
		.main_service .ser_list > li .main_tit{opacity:0; transition:all 0.6s; transition-delay:0.4s; transition-property:opacity;}
		.main_service .ser_list > li .main_tit p{letter-spacing:0;}
		.main_service .ser_list > li .main_tit .read_more_btn{margin-top:36px;}

		.main_service .ser_list > li.on{border-color:var(--point-color01);width: 73.5%;}
		.main_service .ser_list > li.on dl dt{width: 230px;}
		.main_service .ser_list > li.on dl dd{width: calc(100% - 230px); opacity:1;}
		.main_service .ser_list > li.on .thumb{width: 480px;opacity:1;}
		.main_service .ser_list > li.on .main_tit{width: calc(100% - 480px);padding: 0 60px 40px;box-sizing: border-box;opacity:1;}
		
            /* over */
                @media (min-width:1024px) {
                    .main_service .ser_list{transform:none !important;}
                    .main_service .ser_list > li:nth-child(n+4){display:none;}
                    .main_service .ser_list > li:hover .read_more_btn span{color:var(--point-color01);}
                    .main_service .ser_list > li:hover .read_more_btn span:before{background: var(--point-color01); animation-name: ReadMore; animation-duration:2s;  animation-direction:alternate;  animation-fill-mode: forwards;}
                }

        @media (max-width:1800px) {
            .main_service .main_tit p{text-wrap: balance;}
            .main_service .main_tit p br{display: none;}
        }
        @media (max-width:1600px) {
            .main_service .ser_list > li dl dt{font-size:3.7vw;}
            .main_service .ser_list > li .thumb{height:38.75vw;}
            .main_service .ser_list > li .main_tit .read_more_btn{margin-top: clamp(15px, 2.4vw, 36px);}
            .main_service .ser_list > li.on dl dt{width:14.37vw;}
            .main_service .ser_list > li.on dl dd{width:calc(100% - 14.37vw);}
            .main_service .ser_list > li.on .thumb{width:20vw;}
            .main_service .ser_list > li.on .main_tit{padding:0 3.7vw 2.5vw; width:calc(100% - 20vw);}
        }
        @media (max-width:1400px) {
            .main_service .ser_list > li.on dl dt{width:11vw;}
            .main_service .ser_list > li.on dl dd{width:calc(100% - 11vw);}
        }
        @media (max-width:1023px) {
            .main_service{padding-block: clamp(70px, 12vw, 120px);}
            .main_service .ServiceSwiper{width:100%; box-sizing:border-box; padding-right:0;}
            .main_service .ser_list{width: calc(100% + 60px);margin-left: -30px;height:auto;border:0;padding:0 30px;overflow: hidden;overflow-x: auto;scroll-snap-type: x mandatory;}
            .main_service .ser_list > li{border:0;width: 43vw !important;scroll-snap-align: start;padding-inline: 7.5px;}
			.main_service .ser_list > li:first-child{padding-left:15px;}
			.main_service .ser_list > li:last-child{padding-right:0;}
            .main_service .ser_list > li dl{display:block;}
            .main_service .ser_list > li dl dt{position:absolute;top:59vw;left: 5px;height:auto;writing-mode:inherit;transform:none; padding-right:0;}
            .main_service .ser_list > li dl dd{height:auto; opacity:1;}
            .main_service .ser_list > li .cont{display:block; height:auto;}
            .main_service .ser_list > li .thumb{width:100%; opacity:1; height:57vw;}
            .main_service .ser_list > li .main_tit, .main_service .ser_list > li.on .main_tit{padding: 8vw 0 0 0;}
            .main_service .ser_list > li .main_tit{opacity:1;}
            .main_service .ser_list > li.on{width: auto;}
            .main_service .ser_list > li.on dl dt{width: 100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
            .main_service .ser_list > li.on dl dd{width: 100%;}
            .main_service .ser_list > li.on .thumb{width: 100%;}
            .main_service .ser_list > li.on .main_tit{width: 100%;padding-left: 5px;}
        }
        @media (max-width:860px) {
            .main_service .ser_list{width: calc(100% + 30px); margin-left: -15px; padding-inline:15px; }
                .main_service .ser_list {-ms-overflow-style: none; scrollbar-width: none; }
                .main_service .ser_list::-webkit-scrollbar {display: none;}
            .main_service .ser_list > li{width: 43vw !important;}
        }
        @media (max-width:767px) {
            .main_service .ser_list > li dl dt{font-size:25px;}
            .main_service .ser_list > li .main_tit, .main_service .ser_list > li.on .main_tit{padding-top:55px;}
        }

        @media (max-width:640px){
            .main_service .ser_list > li{width: 60vw !important;}
        }

        @media (max-width:479px) {
            .main_service .ser_list > li{width: 80vw !important;}
            .main_service .ser_list > li .thumb{height:82.7vw;}
            .main_service .ser_list > li dl dt{top: 90vw;}
            .main_service .ser_list > li .main_tit, .main_service .ser_list > li.on .main_tit{padding-top: 70px;}
            .main_service .ser_list > li .main_tit p{letter-spacing:-0.01em;}
        }
        @media (max-width:374px) {
            .main_service .ser_list > li dl dt{font-size:23px;}
            .main_service .ser_list > li .main_tit, .main_service .ser_list > li.on .main_tit{padding-top:65px;}
            .main_service .ser_list > li .main_tit .read_more_btn{margin-top:25px;}
            .main_news .NewsSwiper .swiper-slide .txt strong{font-size:13px;}
        }

	/* main_company */
        .main_content .main_company{justify-content: flex-end;}
        .main_company{position: relative;}
        .main_company .thumb{position: relative;width: 100%;height: 100%;overflow: hidden;}
		.main_company .thumb .normal{display: none;}
        .main_company .thumb img{width: 100%;height: 100%;min-height: 840px;object-fit: cover;position: absolute;left: 0;bottom: 0;}
        .main_company .info{max-width: 1720px;pointer-events: none;position: absolute;top: 100px;left:50%;translate:-50% 0; z-index: 2;}
        .main_company .info .desc{font-size: var(--title-20);font-family: var(--font-type02);background: var(--point-color01);pointer-events: all;display: flex;align-items: center;gap: 12px;writing-mode: tb-rl;padding: 20px 8px;max-width: 36px;box-sizing: border-box;}
        .main_company .info .desc dt{font-size: 80%;font-weight: 700;filter: var(--filter-white);transform: scale(-1,-1);}
        .main_company .info .desc dd{width: 1px;height: 60px;background: rgba(255,255,255,0.2);}
        .main_company #footer{flex-shrink: 0;}

        @media (max-width:1920px){
			.main_company .thumb .big{display: none;}
			.main_company .thumb .normal{display: block;}
		}
		@media (max-width:1023px){
            .main_company .thumb{height: auto;min-height: 400px;aspect-ratio: auto 2.28;}
            .main_company .info{top:clamp(-40px, -4vw, -20px)}
            .main_company .info .desc{padding-inline: clamp(15px, 2vw, 20px);}
            .main_company .info .desc dd{height: clamp(40px, 6vw, 60px);}
        }

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

    FOOTER | outline/footer.html

───────────────────────────────────────────────────────────*/
    #footer{position: relative;padding-block:20px;box-sizing: border-box;}
    #footer .w_custom{display:flex;flex-direction: column;align-items: center;gap:20px;text-align: center;}
    #footer .w_custom:before{display: block; content:''; width: 1px; height: 40px; background: var(--border-color04);}
    #footer .addr_list{display: flex;flex-direction: column;align-items: center;gap: 10px;}
    #footer .addr_list > li{display: flex;align-items: center;flex-wrap: wrap;gap: 10px 0;justify-content: center;}
    #footer .addr_list .desc{display: inline-flex;align-items: baseline;justify-content: center;flex-wrap: wrap;font-size: var(--title-20);gap: 4px;}
    #footer .addr_list .desc:not(:last-child):after{display: inline-flex;content:'';width: 1px;height: 12px;background: var(--border-color01);margin-inline: 10px 14px;}
    #footer .addr_list .desc :is(dt, dd){font-size: max(13px, 75%);font-weight: 500;color: var(--black-color05);line-height: 1.25;letter-spacing: -0.01em;}
    #footer .link_list{display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 35px; font-size: var(--title-20);}
    #footer .link_list > li{font-size: 90%; font-weight: 600; color: var(--black-color03);}
    #footer .link_list > li em{font-weight: inherit; color: var(--point-color01);}
    #footer .copy{display: flex;justify-content: center;flex-wrap: wrap;gap: 5px 16px;font-size: var(--title-20);margin-top: 6px;}
    #footer .copy :is(dt, dd){font-size: max(12px, 70%);font-weight: 500;color: var(--black-color10);line-height: 1.4;letter-spacing: -0.01em;}
    #footer .copy strong{font-weight: 600; text-transform: uppercase;}

    .scr_top{position: fixed;right:25px;bottom:30px;z-index: 50;display: flex;align-items: center;justify-content: center;width: 60px;height: 60px;padding: 10px;box-sizing: border-box;background: var(--black-color00); pointer-events: none; opacity: 0; transition: all 0.4s;}
    body:has(#header.active) .scr_top{pointer-events: all; opacity: 1;}

    @media (max-width: 1023px){
        #footer{padding-block: clamp(30px, 4vw, 40px);}
        #footer .w_custom{gap: clamp(20px, 3.6vw, 36px);}
        #footer .w_custom:before{height: clamp(25px, 4vw, 40px);}
        #footer .addr_list .desc:not(:last-child):after{height: clamp(10px, 1.7vw, 12px);}
        #footer .link_list{column-gap: clamp(20px, 3.5vw, 35px);}

        .scr_top{width: clamp(40px, 6vw, 60px);height: clamp(40px, 6vw, 60px);}
    }
    @media (max-width: 860px){
        .scr_top{position: fixed; right:15px; bottom:25px;}
    }
    @media (max-width: 479px){
        #footer .addr_list .desc:not(:last-child):after{display: none;}
        #footer .addr_list > li{column-gap: 20px;}
    }