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

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

───────────────────────────────────────────────────────────*/
    
/*───────────────────────────────────────────────────────────
	layout common
───────────────────────────────────────────────────────────*/
	#wrap {position:relative;width:100%; box-sizing: border-box; overflow: clip;}
    .w_custom{position: relative; width: calc(100% - 60px); max-width: 1420px; margin-inline: auto; box-sizing: border-box;}
        .w_custom.wide{max-width: 1800px;}
    [class*="swiper-button"]:after{display: none;}

    @media (max-width:1300px){
        br.for_pc{display: none;}
    }
    @media (max-width:860px){
        .w_custom{width: calc(100% - 30px);}
    }
    @media (max-width:320px){
        .w_custom{width: calc(100% - 20px);}
    }



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

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

───────────────────────────────────────────────────────────*/
    #header{position: sticky; top:0; width: 100%; height: 100px; background: var(--point-white); box-sizing: border-box; transition: all 0.4s; z-index: 100; transition: all 0.4s;}
        #header.on{box-shadow: inset 0 -1px 0 var(--border-color01);}
    #header .w_custom{display: flex; justify-content: center; height: 100%;}
    #header .logo{height: 100%;}
    #header .logo a{display: flex; align-items: center; justify-content: center; height: 100%; padding-block: 17px 15px; box-sizing: border-box;}

    @media (max-width:1023px){
        #header{height: clamp(60px, 10vw, 100px);}
        #header .logo a{padding-block: clamp(8px, 1.7vw, 17px) clamp(8px, 1.5vw, 15px);}
    }

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

    MAIN | index.html

───────────────────────────────────────────────────────────*/
    /* 비주얼 */
        .visual{position: sticky;top:0;overflow: hidden;}
        .visual .thumb{position: relative; width: 100%; height: 820px; overflow: hidden;}
        .visual .thumb img{width: 100%; height: 100%; object-fit: cover;}
        .visual .txt_wrap{position: absolute;top: 29.7%;left:50%;translate: -50%;font-size: var(--title-20);color: var(--point-white);display: flex;flex-direction: column;align-items: center;text-align: center;gap: 22px;}
        .visual .txt_wrap h2{font-size: 600%;font-weight: 600;font-family: var(--font-type02);line-height: 1.1;}
        .visual .txt_wrap h3{font-size: 300%; font-weight: 500; line-height: 1.25;}
        .visual .scr_dwn{position: absolute;left:50%;bottom: 70px;translate: -50%;z-index: 3;font-size: var(--title-20);color: var(--point-white);text-align: center;display: flex;flex-direction: column;align-items: center;gap: 5px; cursor: pointer;}
        .visual .scr_dwn dt{font-size: max(13px, 70%);font-weight: 300; letter-spacing: 0;}
        .visual .scr_dwn dd{position: relative;width: 24px;height: 40px;border: 2px solid rgba(255,255,255,0.6);border-radius: 50px;box-sizing: border-box;}
            .visual .scr_dwn dd:before{position: absolute; content:''; width: 4px; aspect-ratio: auto 1; top:6px; left:50%; translate: -50%; border-radius: 100%; background: var(--point-color01); box-sizing: border-box;}
            .visual .scr_dwn dd:before{animation-name: scrDwn; animation-duration:1.5s; animation-iteration-count:infinite; animation-direction:alternate; animation-fill-mode: forwards; transition-timing-function:linear;}
            @keyframes scrDwn {0% {top:6px;}100% {top:calc(100% - 10px);}}

            .visual .txt_wrap .txtAni{opacity: 0; translate: 0 70px; animation-name: txtAni; animation-duration:1.2s; animation-delay: 0.2s; animation-fill-mode: forwards; transition-timing-function:linear;}
            .visual .txt_wrap .txtAni:nth-child(2){animation-delay: 0.4s;}
            @keyframes txtAni {0% {opacity: 0; translate: 0 70px;}100% {opacity: 1; translate: 0;}}

        @media (max-width:1023px){
            .visual .thumb{height: clamp(500px, 82vw, 820px);}
            .visual .txt_wrap{gap: clamp(12px, 2.2vw, 22px);top: clamp(110px, 24vw, 243px);text-wrap: balance;}
            .visual .txt_wrap h2{font-size: clamp(60px, 12vw, 120px);}
            .visual .txt_wrap h3{font-size: clamp(30px, 6vw, 60px);}
            .visual .scr_dwn{bottom:clamp(25px, 7vw, 70px);}
            .visual .scr_dwn dd{width: clamp(20px, 2.6vw, 24px); height: clamp(34px, 4.2vw, 40px);}
            .visual .scr_dwn dd:before{width: clamp(3px, 0.4vw, 4px); }
        }

    /* 공통 */
        .cont_wrap{position: relative;background: var(--point-white);}

        .icon_btn{display: flex;align-items: center;justify-content: center;gap: 19px;text-align: center;width: fit-content;font-size: var(--title-20);border: 2px solid var(--point-color01);padding-inline: 40px;height: 80px;border-radius: 60px;box-sizing: border-box;letter-spacing: 0; transition: all 0.4s;}
        .icon_btn span{font-size: 130%; font-weight: 600; color: var(--black-color01);}
        .icon_btn :where(span, img){transition: all 0.4s;}

        .cus_titile{position: relative;font-size: var(--title-20);display: flex;flex-direction: column;align-items: flex-start;gap: 20px;box-sizing: border-box;}
            .cus_titile.cen{align-items: center; text-align: center;}
            .cus_titile.hd{margin-bottom: 47px;}
            .cus_titile.hd_top{padding-top: 80px;}
        .cus_titile h2{font-size: 300%;font-weight: 600;color: var(--black-color01);line-height: 1.33;letter-spacing: 0;}
		.cus_titile h2 + h4{margin-top: -18px;}
        .cus_titile h2 em{font-weight: inherit; color: var(--point-color01);}
        .cus_titile h2 big{font-size: 166%;font-weight: 700;line-height: 1.22;}
        .cus_titile h2 small{display: block; font-size: 83.3%; font-weight: 400;}
        .cus_titile h3{font-size: 280%;font-weight: 400;color: var(--black-color01);line-height: 1.28;letter-spacing: -0.03em;}
			.cus_titile h3 + h5{margin-top: 38px;}
        .cus_titile h3 strong{font-weight: 600;}
        .cus_titile h4{font-size: 200%; font-weight: 500; color: var(--black-color01); line-height: 1.4;}
        .cus_titile h4 em{font-weight: inherit; color: var(--point-color01);}
        .cus_titile h5{font-size: 130%;font-weight: 500;color: var(--black-color03);line-height: 1.35;letter-spacing: -0.03em;}
			.cus_titile h5 + p{margin-top: 20px;}
        .cus_titile h6{font-size: 100%; font-weight: 500; color: var(--black-color03);}
			.cus_titile h6 + h3{margin-top:10px;}
        .cus_titile h6 em{font-weight: 700;color: var(--point-color01);letter-spacing: 0;}
        .cus_titile p{font-size: 95%;font-weight: 400;color: var(--black-color06);line-height: 1.73;letter-spacing: -0.03em;}
        .cus_titile p small{display: block;font-size: 94.7%;line-height: 1.66;letter-spacing: 0;}
        .cus_titile .line{width: 1px;height: 80px;background: var(--point-color01);margin-top: 5px;}

            /* over */
            @media (hover:hover) and (pointer:fine){
                .icon_btn:hover{background: var(--point-color01);}
                .icon_btn:hover :where(span, img){filter: var(--filter-white);}
            }

        @media(max-width:1300px){
            .cus_titile{text-wrap: balance;}
        }
        @media(max-width:1023px){
            .icon_btn{padding-inline: clamp(25px, 40px, 4vw);gap: clamp(15px, 2vw, 19px);height: clamp(55px, 9vw, 80px);}
            .icon_btn span{font-size: 120%;}
            .icon_btn img{width: clamp(22px, 3.5vw, 30px);}

            .cus_titile{gap: clamp(10px, 2vw, 20px);}
                .cus_titile.hd{margin-bottom: clamp(30px, 4.7vw, 47px);}
                .cus_titile.hd_top{padding-top: clamp(40px, 8vw, 80px);}
            .cus_titile h2{font-size: 270%;}
            .cus_titile h2 + h4{margin-top: clamp(-18px, -1.8vw, -8px);}
            .cus_titile h3{font-size: 250%;}
            .cus_titile h3 + h5{margin-top: clamp(19px, 3.8vw, 38px);}
            .cus_titile h4{font-size: 190%;}
            .cus_titile h5 + p{margin-top: clamp(10px, 2vw, 20px);}
            .cus_titile h6 + h3{margin-top: clamp(5px, 1vw, 10px);}
            .cus_titile .line{margin-top: clamp(0px, 0.5vw, 5px); height: clamp(40px, 8vw, 80px);}
        }
        @media(max-width:640px){
            .icon_btn span{font-size: 110%;}

            .cus_titile h2{font-size: 240%;}
            .cus_titile h3{font-size: 220%;}
            .cus_titile h4{font-size: 180%;}
            .cus_titile h5{font-size: 120%;}
        }
        @media(max-width:479px){
            .icon_btn span{font-size: 100%;}

            .cus_titile h2{font-size: 200%;}
            .cus_titile h3{font-size: 190%;}
            .cus_titile h4{font-size: 170%;}
            .cus_titile h5{font-size: 110%;}
            .cus_titile p{font-size: 90%;}
        }

    /* 전화문의 */
        .phone_inquiry{padding-top: 150px;}
        .phone_inquiry .title{position: relative;font-size: var(--title-20);display: flex;flex-direction: column;align-items: center;text-align: center;gap:68px;box-sizing: border-box;}
        .phone_inquiry .title h2{position: relative;width: fit-content;padding-inline: 82px;font-size: 400%;font-weight: 600;color: var(--point-color02);line-height: 1.25;box-sizing: border-box;letter-spacing: 0;}
        .phone_inquiry .title h2{&:before, &:after{position: absolute;content:'“';font-size: 150px;font-weight: 900;color: var(--border-color01);line-height: 1;font-family: var(--font-type03);top: -55px;left: 0;}}
        .phone_inquiry .title h2:after{content:'“';rotate: 180deg;inset: auto;right: -30px;bottom: -33px;}
        .phone_inquiry .title h2 em{font-weight: inherit;color: var(--point-color03);}

        @media (max-width:1100px){
            .phone_inquiry .title h2{font-size: clamp(35px, 7.5vw, 80px);}
            .phone_inquiry .title h2{&:before, &:after{font-size: clamp(55px, 14vw, 150px);}}
            .phone_inquiry .title h2:after{right:-5px;}
        }
        @media (max-width:1023px){
            .phone_inquiry{padding-top: clamp(80px, 15vw, 150px);}
            .phone_inquiry .title{gap: clamp(40px, 6.8vw, 68px);}
            .phone_inquiry .title h2{padding-inline: clamp(40px, 8.2vw, 82px);}
            .phone_inquiry .title h2:before{top: clamp(-55px, -5.5vw, -20px);}
            .phone_inquiry .title h2:after{bottom: clamp(-33px, -3.3vw, -10px);}
        }

    /* 어바웃 */
        .about_us{padding-block: 120px 130px;}
        .about_us .w_custom{display: flex;flex-wrap: wrap;align-items: flex-start;}
        .about_us .cus_titile{width: 57.8%;padding-top: 73px;padding-right: 50px;}
        .about_us .thumb{position: relative;width: 42.2%;height: 780px;border-radius: var(--radius-30);overflow: hidden;}
        .about_us .thumb img{width: 100%; height: 100%; object-fit: cover;}

        @media (max-width:1023px){
            .about_us{padding-block: clamp(80px, 12vw, 120px) clamp(80px, 13vw, 130px);}
            .about_us .w_custom{flex-direction: column-reverse;}
            .about_us .cus_titile{width: 100%;padding-right: 0; padding-top: clamp(30px, 7.3vw, 73px);}
            .about_us .thumb{width: auto; height: auto; aspect-ratio: auto 0.769;}
        }

    /* 통증 */
        .treatment .worry_list{display: grid;gap: clamp(15px, 3vw, 50px);grid-template-columns: repeat(3, 1fr);}
        .treatment .worry_list > li{position: relative;aspect-ratio: auto 1;box-sizing: border-box;}
        .treatment .worry_list .desc{position: relative; font-size: var(--title-20); height: 100%;}
        .treatment .worry_list .desc dt{position: relative; height: 100%; border-radius: var(--radius-30); overflow: hidden;}
            .treatment .worry_list .desc dt:before{position: absolute; content:''; inset: 0; background: rgba(0,0,0,0.4);}
        .treatment .worry_list .desc dt img{width: 100%; height: 100%; object-fit: cover;}
        .treatment .worry_list .desc dd{font-size: 120%;font-weight: 500;color: var(--point-white);line-height: 1.66;position: absolute;inset: 0;display: flex;align-items: center;justify-content: center;text-align: center;text-wrap: balance;padding: 30px;padding-top: 50px;box-sizing: border-box;letter-spacing: 0;}
        .treatment .cus_titile h5{letter-spacing: 0;}
        .treatment .cus_titile h5 + p{margin-top:14px;}

        @media (max-width:1023px){
            .treatment .worry_list .desc dd{padding: clamp(20px, 3vw, 30px); padding-top:clamp(20px, 5vw, 50px);}
            .treatment .cus_titile h5 + p{margin-top:clamp(7px, 1.4vw, 14px);}
        }
        @media (max-width:860px){
            .treatment .worry_list{grid-template-columns: repeat(2, 1fr);}
        }
        @media (max-width:479px){
            .treatment .worry_list{grid-template-columns: repeat(1, 1fr);}
        }

    /* 경험 */
        .experience{background: var(--point-color02);padding-block: 125px 100px;margin-top: 100px;}
        .experience .cus_titile h2{filter: var(--filter-white);}
        .experience .exp_list{display: grid;grid-template: auto / repeat(7, 1fr);gap: 40px clamp(15px, 1.2vw, 21px);padding-block: 16px 23px;}
        .experience .exp_list > li{position: relative;display: flex;flex-direction: column;gap: 26px;}
        .experience .exp_list .thumb{display: block;width: 100%;aspect-ratio: auto 0.8;overflow: hidden;border-radius: var(--radius-20);}
        .experience .exp_list .thumb img{width: 100%; height: 100%; object-fit: cover;}
        .experience .exp_list .desc{font-size: var(--title-20);text-align: center;text-wrap: balance;}
        .experience .exp_list .desc :where(dt, dd){filter: var(--filter-white);}
        .experience .exp_list .desc dt{font-size: 110%;font-weight: 600;letter-spacing: 0;}
        .experience .exp_list .desc dt + dd{margin-top: 3px;}
        .experience .exp_list .desc dd{font-size: max(14px, 80%);font-weight: 400;letter-spacing: 0;}

        @media (max-width:1200px){
            .experience .exp_list{grid-template: auto / repeat(4, 1fr);}
        }
        @media (max-width:1023px){
            .experience{padding-block: clamp(80px, 12.5vw, 125px) clamp(80px, 10vw, 100px);margin-top: clamp(80px, 10vw, 100px);}
            .experience .exp_list{padding-block: clamp(0px, 1.6vw, 16px) clamp(0px, 2.3vw, 23px);}
			.experience .exp_list > li{gap: clamp(15px, 2.6vw, 26px);}
        }
        @media (max-width:640px){
            .experience .exp_list{grid-template: auto / repeat(3, 1fr);}
        }
        @media (max-width:479px){
            .experience .exp_list{grid-template: auto / repeat(2, 1fr); row-gap: 30px; padding-block: 0;}
        }

    /* 치료 안내 */
        .cus_guide{padding-block: 100px 140px;}
        .cus_guide .cure_list{display: flex;flex-direction: column;gap: 40px;padding-top: 28px;}
        .cus_guide .cure_list > li{position: relative; display: flex; align-items: center; gap: 30px 0;}
        .cus_guide .cure_list .thumb{position: relative;width: 56.3%;height: 500px;overflow: hidden;border-radius: var(--radius-30);}
        .cus_guide .cure_list .thumb img{width: 100%;height: 100%;object-fit: cover;}
        .cus_guide .cure_list .cus_titile{width: 43.7%;padding-left: clamp(40px, 4.4vw, 80px);padding-bottom: 10px;gap: 22px;}
        .cus_guide .cure_list .cus_titile h3{font-size: 250%;font-weight: 600;letter-spacing: 0;}
        .cus_guide .cure_list .cus_titile h5{font-size: 150%;margin-top: 0;font-weight: 600;color: var(--point-color02);letter-spacing: 0;}
        .cus_guide .cure_list .cus_titile h5:has(.icon){display: flex; align-items: baseline; gap: 20px;}
        .cus_guide .cure_list .cus_titile h5 .icon{display: inline-flex;padding: 6px 20px 5px;background: var(--point-color04);font-size: 80%;font-weight: 500;color: var(--point-white);border-radius: 30px;flex-shrink: 0;line-height: 1.2;translate: 0 -3px;}
        .cus_guide .cure_list .cus_titile h5 + p{margin-top: 5px;}
        .cus_guide .cure_list .cus_titile p{color: var(--black-color03);}

        @media (max-width:1023px){
            .cus_guide{padding-block: clamp(80px, 10vw, 100px) clamp(80px, 14vw, 140px);}
            .cus_guide .cure_list{gap: clamp(35px, 6vw, 60px);padding-top: clamp(0px, 2.8vw, 28px);}
            .cus_guide .cure_list > li{flex-direction: column;align-items:flex-start;gap: clamp(20px, 3vw, 30px);}
            .cus_guide .cure_list .thumb{width: 100%;height: auto;aspect-ratio: auto 1.6;}
            .cus_guide .cure_list .cus_titile{width: 100%;padding: 0;gap: clamp(15px, 2.2vw, 22px);}
            .cus_guide .cure_list .cus_titile h3{font-size: 230%;}
            .cus_guide .cure_list .cus_titile h5{font-size: 140%;}
            .cus_guide .cure_list .cus_titile h5:has(.icon){gap: clamp(15px, 2vw, 20px);}
            .cus_guide .cure_list .cus_titile h5 .icon{padding-inline: clamp(15px, 2vw, 20px);}
            .cus_guide .cure_list .cus_titile h5 + p{margin-top: clamp(0px, 0.5vw, 5px);}
        }
        @media (max-width:640px){
            .cus_guide .cure_list .cus_titile h3{font-size: 210%;}
            .cus_guide .cure_list .cus_titile h5{font-size: 130%;}
        }
        @media (max-width:479px){
            .cus_guide .cure_list{padding-top: 0;}
            .cus_guide .cure_list .cus_titile h3{font-size: 190%;}
            .cus_guide .cure_list .cus_titile h5{font-size: 120%;}
        }

    /* 상담문의 */
        .information{position: relative;}
            .information:before{position: absolute;content:'';left:0;bottom:0;width: 100%;height: 63%;background: var(--gray-bg01);}
        .information .w_custom{padding-block: 173px 84px;}
        .information .cont{position: absolute;top:0;left:0;background: var(--point-color01);width: 100%;max-width: 620px;padding: 46px 60px 55px;display: flex;flex-direction: column;gap: 48px;box-sizing: border-box;border-top-right-radius: 40px;z-index: 2;}
		.information .cus_titile{gap:16px;}
			.information .cus_titile:first-child{margin-bottom: -30px;}
        .information .cus_titile :where(h2, h5, p){filter: var(--filter-white);}
		.information .cus_titile h2{line-height: 1.25;font-weight: 700;}
		.information .cus_titile h5{font-size:150%;font-weight: 600;letter-spacing: 0;}
        .information .cus_titile h5 + p{margin-top: 0;}
        .information .cus_titile p small{display: flex; gap: 4px;}
        .information .cus_titile p small em{flex-shrink: 0; font-weight: inherit;}
        .information .thumb{width: 100%; max-width: 1200px; height: 440px; overflow: hidden; margin-left: auto;}
        .information .thumb iframe{width: 100%; height: 100%;}

        @media (max-width:1300px){
            .information .w_custom{display: flex;flex-direction: column-reverse;padding-top: 0;}
            .information .cont{position: relative;inset: auto;max-width: 100%;border-radius: 0 0 40px 0;}
            .information .thumb{max-width: 100%;}
        }
        @media (max-width:1023px){
            .information .cont{padding: clamp(25px, 4.6vw, 46px) clamp(25px, 6vw, 60px) clamp(25px, 5.5vw, 55px);gap: clamp(24px, 4.8vw, 48px);}
            .information .cus_titile{gap: clamp(5px, 1.6vw, 16px);}
                .information .cus_titile:first-child{margin-bottom: clamp(-30px, -3vw, 0px);}
            .information .cus_titile h5{font-size: 140%;}
            .information .thumb{height: clamp(300px, 44vw, 440px);}
        }
        @media (max-width:860px){
            .information .cont{border-radius:0 0 30px 0;}
        }
        @media (max-width:640px){
            .information .cont{border-radius:0 0 20px 0;}
            .information .cus_titile h5{font-size: 130%;}
        }
        @media (max-width:479px){
            .information .cus_titile h5{font-size: 120%;}
        }

    /* 둘러보기 */
        .tourthe{padding-block: 90px 180px;}
        .tourthe .w_custom{max-width: 1530px;}
        .tourthe .rel_box{position: relative; padding-inline: 55px; box-sizing: border-box;}
        .tourthe .tourSwiper{clip-path: inset(0 -2px); box-sizing: border-box;}
        .tourthe .tourSwiper .swiper-slide{height: auto; aspect-ratio: auto 1; border-radius: var(--radius-20); overflow: hidden; overflow: clip; display: flex;}
        .tourthe .tourSwiper .swiper-slide img{width: 100%; height: 100%; object-fit: cover;}
        .tourthe [class*="swiper-button"]{position: absolute;inset: auto;margin:0;top:50%;left:0;width: 40px;height: auto;aspect-ratio: auto 1;translate: 0 -50%;}
            .tourthe [class*="swiper-button"]:before{position: absolute;content:'';width: 70%;height: 70%;border: 2px solid var(--point-color02);box-sizing: border-box;clip-path: polygon(0 0, 0% 100%, 100% 0);top: 50%;left: 50%;translate: -50% -50%;rotate: -45deg;border-radius: 2px;}
            .tourthe [class*="swiper-button"][class*="next"]{left:auto;right:0;transform: scale(-1,-1);}

        @media (max-width:1023px){
            .tourthe{padding-block: clamp(80px, 9vw, 90px) clamp(100px, 18vw, 180px);}
            .tourthe [class*="swiper-button"]{width: clamp(30px, 4vw, 40px);}
            .tourthe .rel_box{padding-inline: clamp(40px, 5.5vw, 55px);}
        }
        @media (max-width:640px){
            .tourthe .rel_box{padding-inline: 0;}
            .tourthe .tourSwiper{clip-path: unset;padding-right: 24vw;}
            .tourthe [class*="swiper-button"]{display: none;}
        }

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

    FOOTER | outline/footer.html

───────────────────────────────────────────────────────────*/
	#footer{position: relative; background: var(--black-color01); box-sizing: border-box; font-size: var(--title-20); text-align: center; color: var(--border-color01); padding-block: 40px;}
    #footer .w_custom{font-size: max(13px, 70%);font-weight: 300;display: flex;flex-direction: column;gap: 30px;}
    #footer .logo{font-size: 0; max-width: 179px; margin-inline: auto;}
    #footer .addr_list{display: flex;flex-direction: column;gap: 11px;margin-top: 5px;}
    #footer .addr_list > li{display: flex;flex-wrap: wrap;align-items: center;justify-content: center;gap: 11px 0;}
    #footer .addr_list .desc{display: flex;align-items: baseline;gap: 4px;}
    #footer .addr_list .desc:not(:last-child):after{display: inline-flex; content:''; width: 1px; height: 8px; background: rgba(217, 217, 217, 0.4); margin-inline: 16px 20px;}
    #footer .addr_list .desc dt{flex-shrink: 0;}
    #footer .addr_list .desc dd{text-align: left;}
    #footer .sns_list{display: flex;flex-wrap: wrap;align-items: flex-start;justify-content: center;gap: 17px;margin-top: 8px;}
    #footer .copy{display: flex; justify-content: center; font-weight: 300; color: rgba(255,255,255,0.3);}

    .quick_wrap{position: fixed;left:50%;bottom: 110px;translate: -50%;max-width: 1820px;pointer-events: none;display: flex;flex-direction: column;align-items: flex-end;z-index: 50;}
    .quick_wrap .cont{position: relative;display: flex;flex-direction: column;align-items: center;gap: 9px; opacity: 0; transition: all 0.4s;}
        body:has(#header.on:not(.end)) .quick_wrap .cont{opacity: 1; pointer-events: all;}
    .quick_wrap .link_list{position: relative;border-radius: var(--radius-16);overflow: hidden;width: 100%;width: 80px;transition: all 0.4s;}
    .quick_wrap .link_list > li{position: relative;padding: 19px 5px 13px;box-sizing: border-box;background: var(--point-color02);}
        .quick_wrap .link_list > li:first-child{background: var(--point-color03);}
        .quick_wrap .link_list > li:nth-child(n+3){border-top: 1px solid rgba(204, 204, 204, 0.3);}
    .quick_wrap .link_list .link{position: absolute; inset: 0; z-index: 5;}
    .quick_wrap .link_list .desc{font-size: var(--title-20);text-align: center;}
    .quick_wrap .link_list .desc dt{font-size: 0;display: flex;justify-content: center;}
    .quick_wrap .link_list .desc dt + dd{margin-top: 8px;}
    .quick_wrap .link_list .desc dd{font-size: max(13px, 70%);font-weight: 500;filter: var(--filter-white);line-height: 1.43;letter-spacing: -0.04em;}
    .quick_wrap .act_btn{position: relative;display: block;width: 50px;aspect-ratio: auto 1;border-radius: 100%;background: var(--point-white);box-shadow: var(--shadow-03);}
    .quick_wrap .scr_top:before{position: absolute;content:'';width: 27%;height: 27%;border: 2px solid var(--black-color05);top: 55%;left:50%;translate: -50% -50%;rotate: 45deg;box-sizing: border-box;clip-path: polygon(0 0, 0% 100%, 100% 0);border-radius: 2px;}
    .quick_wrap .icon_toggle{display: none;background: var(--point-color01);}
    .quick_wrap .icon_toggle{&:before, &:after{position: absolute;content:'';width: 14px;height: 2px;background: var(--point-white);top:50%;left:50%;translate: -50% -50%; transition: all 0.4s;}}
    .quick_wrap .icon_toggle:after{width: 2px; height: 14px;}
    .quick_wrap .icon_toggle.on:after{opacity: 0;}

    @media (max-width:1023px){
        #footer .w_custom{gap: clamp(20px, 3vw, 30px);}
        #footer .logo{max-width: clamp(120px, 19vw, 179px);}
        #footer .addr_list{gap: clamp(8px, 1.5vw, 11px);}
        #footer .addr_list > li{row-gap: clamp(8px, 1.5vw, 11px);}
        #footer .addr_list .desc:not(:last-child):after{margin-inline: clamp(11px, 1.6vw, 16px) clamp(15px, 2vw, 20px);}
        #footer .sns_list{gap: clamp(15px, 1.7vw, 15px);}

        .quick_wrap{bottom: clamp(30px, 11vw, 110px);}
        .quick_wrap .link_list{width: clamp(55px, 8vw, 80px);}
        .quick_wrap .link_list > li{padding-block: clamp(15px, 1.9vw, 19px);}
        .quick_wrap .link_list .desc dt{max-height: clamp(22px, 3.2vw, 32px);}
        .quick_wrap .act_btn{width: clamp(40px, 5.5vw, 50px);}
    }
    @media (max-width:640px){
        .quick_wrap .link_list .desc dd{display: none;}
        .quick_wrap .icon_toggle{display: block;}
		.quick_wrap .link_list{opacity:0;pointer-events:none;position: absolute;bottom: calc(100% + 10px);left: 50%;translate: -50% 0;}
        .quick_wrap:has(.icon_toggle.on) .link_list{opacity: 1; pointer-events: all;}
    }
    @media (max-width:479px){
        #footer .addr_list > li{column-gap: 20px;}
        #footer .addr_list .desc{display: inline-block;}
            #footer .addr_list .desc:not(:last-child):after{display: none;}
        #footer .addr_list .desc :where(dt, dd){display: inline; text-align: inherit;}
    }