@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: 1500px; margin-inline: auto; box-sizing: border-box;}
    #container{background: var(--point-white);padding-block:100px 160px;}


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

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

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

───────────────────────────────────────────────────────────*/
	/** PC 일반 **/
    #header { position: fixed; top: 0; width: 100%; z-index: 99; border-bottom: 1px solid var(--border-color01); background: var(--point-white); transition: all 0.4s; box-sizing: border-box; }
    #header.down {top: -111px; transition: all 0.6s ease-out;}
    #header.up {top: 0; transition: all 0.6s ease-out;}
    #header .header_cont { display: flex; align-items: center; justify-content: space-between; padding-block: 30px 29px; max-width: 1800px;  }
    #header .header_cont .logo { width: 107px; height: 50px; position: relative; z-index: 3; }
    #header .header_cont .logo a { display: block; width: 100%; height: 100%; font-size: 0; background: url('../images/skin/img_logo.svg') no-repeat left center; background-size: 100% auto; }
    #header .header_cont .lnb_container{position: absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:100%;}
    #header .header_cont .hd_lnb{display: flex;align-items: center; gap: 0 30px; justify-content: center;transition:linear;}
    #header .header_cont .hd_lnb li { color: var(--black-color03); font-family: var(--font-type03); font-weight: 500; font-size: var(--title-20); letter-spacing: -0.03em; line-height: normal; cursor: pointer;width:auto;display: flex;align-items: center;}
    #header .header_cont .hd_lnb li a { color: inherit; font-size: inherit; font-weight: inherit; font-family: inherit; }
    #header .header_cont .hd_right { display: flex; align-items: center; gap: 40px; }
    #header .header_cont .marquee_btn { width: 150px; height: 46px; flex-shrink: 0; border-radius: 46px; background: var(--black-color00); transition: all 0.4s; box-sizing: border-box; border: 1px solid var(--trans-color); }
    #header .header_cont .marquee_btn a { display: flex; overflow: hidden; width: 100%; height: 100%; color: var(--point-white); font-weight: 400; font-size: var(--title-16); letter-spacing: -0.03em; line-height: normal; box-sizing: border-box; }
    #header .header_cont .marquee_btn a .text { display: inline-flex; align-items: center; font-size: inherit; font-weight: inherit; white-space: nowrap;  }
    #header .header_cont .marquee_btn a .text.clone { display: none; }
    #header .header_cont .hd_lang { position: relative; cursor: pointer; width: 46px; }
    #header .header_cont .hd_lang::before { content: ''; display: block; width: 22px; height: 22px; background: url('../images/skin/ico_lang.svg') no-repeat center; background-size: 100% auto; }
    #header .header_cont .hd_lang::after { content: ''; position: absolute; right: 0; top: calc(50% + 2px); transform: translateY(-50%); display: block; width: 0; height: 0; border-top: 5px solid var(--black-color01); border-right: 5px solid var(--trans-color); border-bottom: 5px solid var(--trans-color); border-left: 5px solid var(--trans-color); transition: all 0.4s;}
    #header .header_cont .hd_lang > ul { display: none; position: absolute;top: calc(100% + 10px); width: 100%; font-size: var(--title-14); font-weight: 400; padding: 5px 0; text-transform: uppercase; background: var(--point-white); border: 1px solid var(--border-color01); box-sizing: border-box; }
    #header .header_cont .hd_lang > ul li + li { margin-top: 5px; }
    #header .header_cont .hd_lang > ul a { color: inherit; font-size: inherit; font-weight: inherit; display: block;padding: 0 5px;box-sizing: border-box; text-align: center; }
    #header .header_cont .hd_lang > ul a.on { color: var(--point-color01); }

    #header .header_cont .marquee_btn .marquee.active .text { padding-left: 30px; animation: textLoop 4s linear infinite; }
    #header .header_cont .marquee_btn .marquee.active .text.clone { display: inline-flex; }

    @keyframes textLoop {
    0% {
        transform: translateX(0%);
    }
    100% {
        transform: translateX(-100%);
    }
    }
    

    #header:not(.on) { background: rgba(0, 0, 0, 0.15); border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
    #header:not(.on) .logo { filter: var(--filter-white); }
    #header:not(.on) .header_cont .hd_lnb li { filter: var(--filter-white); }
    #header:not(.on) .marquee_btn { background: var(--trans-color); border: 1px solid var(--point-white); opacity: 0.5; }
    #header:not(.on) .header_cont .hd_lang::after,
    #header:not(.on) .header_cont .hd_lang::before { filter: var(--filter-white); }
    #header:not(.on) .header_cont .hd_lang > ul a.on { filter: var(--filter-point); }

    #header.down .header_cont .hd_lang > ul { display: none; }

    /* on */
    #header .header_cont .hd_lnb li.on { color: var(--point-color01); }
    #header .header_cont .hd_lang.on::after { transform: scaleY(-1) translateY(100%); }

    #header.sub_hd { position: relative; }


@media screen and (max-width: 1900px){
	#header .header_cont .lnb_container{left:47%;}
    #header .header_cont .hd_lnb { gap: 30px; }
}

@media screen and (max-width: 1750px){
    #header .header_cont { padding-block: 30px 65px; }
    #header.down { top: -135px; }
    #header .header_cont .lnb_container { top: unset; bottom: 15px; left: 0;  width: 100%; box-sizing: border-box; padding-inline: 0; transform: unset; }
	 #header .header_cont .hd_lnb{gap: unset; justify-content: space-between;}
}

@media screen and (max-width: 1600px){
    
    #header .header_cont .hd_right { gap: 20px; }
    #header .header_cont .marquee_btn { width: 125px; }
}

@media screen and (max-width: 1440px){
}

@media screen and (max-width: 1280px){
    /* #header .header_cont .hd_lnb { flex-wrap: nowrap; width: calc(100% + 60px); margin-left: -30px; overflow: hidden; overflow-x: auto; justify-content: flex-start; box-sizing: border-box; gap: 60px; padding-right: 30px; }
    #header .header_cont .hd_lnb::-webkit-scrollbar { display: none; }
    #header .header_cont .hd_lnb li { flex-shrink: 0; }
    #header .header_cont .hd_lnb li:nth-child(1) { margin-left: 30px; } */
}

@media screen and (max-width: 860px){
    #header .header_cont { width: calc(100% - 30px); }
    #header .header_cont .logo { width: 97px; height: 45px; }
    #header .header_cont .marquee_btn { width: 100px; height: 40px; }
    /* #header .header_cont .hd_lnb { padding-right: 15px; margin-left: -15px; width: calc(100% + 30px); }
    #header .header_cont .hd_lnb li:first-child { margin-left: 15px; } */
}

@media screen and (max-width: 640px){
    #header .header_cont .logo { width: 88px; height: 41px; }
    #header .header_cont { padding-block: 15px 50px; }

}

@media screen and (max-width: 479px){
    #header .header_cont .logo { width: 80px; height: 37px; }
    #header .header_cont .marquee_btn { width: 95px; height: 36px; border-radius: 23px; }
}


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

	 FOOTER | outline/footer.html

───────────────────────────────────────────────────────────*/
	/* PC 일반 */
		#footer { font-size: var(--title-20); box-sizing: border-box; padding-block: 60px 76px; background: var(--black-color00); }
        #footer > div { display: flex; justify-content: space-between; }
        #footer h2 { color: var(--point-white); font-size: 120%; font-weight: 500; letter-spacing: -0.03em; line-height: normal; margin-bottom: 20px; }
        #footer .info { color: var(--point-white); font-weight: 100; font-size: var(--title-18); letter-spacing: -0.02em; line-height: normal; }
        #footer .info a { color: inherit; font-size: var(--title-17); font-weight: inherit; letter-spacing: 0.035em; }
        #footer .info_wrap ul { display: flex; flex-wrap: wrap; margin-top: 10px; }
        #footer .info_wrap li { box-sizing: border-box; font-family: var(--font-type02); flex-shrink: 0; }
        #footer .info_wrap li:has(+ li) { position: relative; margin-right: 16px; padding-right: 16px; }
        #footer .info_wrap li:has(+ li)::after { content: ''; position: absolute; right: 0; top: 5px; width: 1px; height: 12px; background: var(--point-white); opacity: 0.2; }
        #footer .copy { color: var(--point-white); font-size: var(--title-16); letter-spacing: -0.026em; font-weight: 100; font-family: var(--font-type02); opacity: 0.4; margin-top: 32px; }
        #footer .copy strong { font-weight: 400; }
        #footer .copy a { color: inherit; font-size: inherit; letter-spacing: inherit; font-weight: inherit; margin-left: 13px; }

        #footer .privacy_wrap { display: flex; justify-content: space-between; flex-direction: column; flex-shrink: 0; padding-top: 3px; }
        #footer .privacy_wrap ul { display: flex; }
        #footer .privacy_wrap li { box-sizing: border-box; color: var(--point-white); font-size: var(--title-18); letter-spacing: -0.03em; font-weight: 300; }
        #footer .privacy_wrap li a { color: inherit; font-size: inherit; font-weight: inherit; }
        #footer .privacy_wrap li:has(+ li) { position: relative; margin-right: 22px; padding-right: 23px; }
        #footer .privacy_wrap li:has(+ li)::after { content: ''; position: absolute; right: 0; top: 10px; width: 4px; height: 4px; background: var(--point-white); opacity: 0.2; transform: translateX(50%); }
        #footer .privacy_wrap li:not(:last-child) { color: var(--black-color10); }
        #footer .privacy_wrap .insta { display: flex; justify-content: center; align-items: center; margin-left: auto; width: 60px; height: 60px; margin-bottom: 6px; border-radius: 8px; background: var(--black-color01); }
        #footer .privacy_wrap .insta a { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; }
        #footer .privacy_wrap .insta img { display: block; }

    @media screen and (max-width: 1680px){
        #footer .privacy_wrap .insta { margin-right: 70px;}
    }

	@media only screen and (max-width:1380px) {
		#footer .ft_inner {width:calc(100% - 30px);padding:30px 0 60px;}
	}
	@media only screen and (max-width:1024px) {
        
        #footer { padding-block: clamp(40px, 6vw, 60px) clamp(50px, 7.6vw, 76px); }
        #footer h2 { margin-bottom: clamp(15px, 2vw, 20px); }
        #footer .info_wrap ul { margin-top: 10px; }
        #footer .privacy_wrap .insta { margin-bottom: 0; }
        #footer .copy { margin-top: clamp(15px, 3.2vw, 32px); }
        #footer .privacy_wrap li:has(+ li) { margin-right: clamp(15px, 2.2vw, 22px); padding-right: clamp(15px, 2.2vw, 22px); }
        #footer .privacy_wrap li:has(+ li)::after { top: 9px; }
        #footer .info_wrap li:has(+ li)::after { top: 6px; }
	}
	@media only screen and (max-width:860px) {
		#footer .privacy_wrap li:has(+ li)::after { top: 7px; }
        #footer .privacy_wrap .insta { width: 50px; height: 50px; }
        
	}

	@media only screen and (max-width:640px) {
		#footer > div { flex-direction: column; gap: 20px; }
        #footer .privacy_wrap { gap: 25px; }
        #footer .privacy_wrap .insta { margin-left: unset; margin-right: auto; }
	}
	@media only screen and (max-width:479px) {
        #footer .privacy_wrap .insta { width: 40px; height: 40px; border-radius: 4px; }
        #footer .info_wrap ul { flex-direction: column; gap: 10px; }
        #footer .info_wrap li:has(+ li) { margin-right: 0; padding-right: 0; }
        #footer .info_wrap li:has(+ li)::after { display: none; }
        #footer .copy span { display: block; margin-top: 5px; }
        #footer .copy a { margin-left: 0; }
        
	}

    @media screen and (max-width: 370px){
        
    }



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

	 MAIN | index.html

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


    /* visual */
	.main_visual {position:relative; font-size: var(--title-20); }
    .main_visual::before { content: ''; position: absolute; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.1); left: 0; top: 0; z-index: 1; }
    .main_visual .slick-slide {position: relative;display: flex;align-items: center; width: 100%; height: 960px; overflow: hidden;background: var(--black-color00);float: none; box-sizing: border-box; }
    .main_visual video{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width: 100%;height: 100%;min-width: 1920px; object-fit: cover;}

    .main_visual .txt_wrap { position: absolute; z-index: 5; left: 50%; top: 51%; transform: translate(-50%, -50%); }
    .main_visual .txt_wrap small { display: block; color: var(--point-white); font-size: 150%; font-weight: 400; line-height: normal; letter-spacing: -0.03em; }
    .main_visual .txt_wrap h2 { color: var(--point-white); font-size: 350%; font-weight: 600; line-height: 1.29; letter-spacing: -0.03em; margin-top: 30px; }
    .main_visual .txt_wrap .desc { color: var(--point-white); font-size: 110%; font-weight: 200; line-height: 1.46; letter-spacing: -0.025em; margin-top: 40px; opacity: 0.8; }
    .main_visual .txt_wrap .visual_btn_wrap { display: flex; gap: 20px; margin-top: 80px; }
    .main_visual .txt_wrap .visual_btn_wrap li { width: 200px; height: 60px; border-radius: 10px; flex-shrink: 0; box-shadow: 4px 3px 30px 0px rgba(0, 0, 0, 0.15); }
    .main_visual .txt_wrap .visual_btn_wrap li:first-child { background: var(--black-color00); }
    .main_visual .txt_wrap .visual_btn_wrap li:last-child { background: var(--point-color01); }
    .main_visual .txt_wrap .visual_btn_wrap li a { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; color: var(--point-white); font-weight: 400; font-size: 100%; letter-spacing: -0.03em; }

    .txtAni2 { transition-delay: 0.2s; }
    .txtAni3 { transition-delay: 0.4s; }
    .txtAni4 { transition-delay: 0.6s; }

    @media screen and (max-width: 1023px){
        .main_visual .slick-slide { height: clamp(620px, 105vw, 960px); }
        .main_visual .txt_wrap small { font-size: 140%; }
        .main_visual .txt_wrap h2 { font-size: 320%; margin-top: clamp(15px, 2vw, 30px); }
        .main_visual .txt_wrap p { margin-top: clamp(20px, 4vw, 40px); }
        .main_visual .txt_wrap .desc { margin-top: clamp(20px, 4vw, 40px); }
        .main_visual .txt_wrap .visual_btn_wrap { margin-top: clamp(30px, 8vw, 80px); gap: clamp(10px, 2vw, 20px); }
        .main_visual .txt_wrap .visual_btn_wrap li { box-shadow: 4px 3px clamp(15px, 3vw, 30px) 0px rgba(0, 0, 0, 0.15); }
    }

    @media screen and (max-width: 860px){
        .main_visual .txt_wrap small { font-size: 115%; }
        .main_visual .txt_wrap h2 { font-size: 270%; }
        .main_visual .txt_wrap .visual_btn_wrap li { width: 180px; height: 54px; }
        .main_visual .txt_wrap .desc { font-size: 105%; }
    }

    @media screen and (max-width: 767px){
        .main_visual .txt_wrap { top: 55%; }
        .main_visual .txt_wrap h2 { font-size: 260%; }
    }

    @media screen and (max-width: 640px){
        .main_visual .txt_wrap small { font-size: 100%; }
        .main_visual .txt_wrap h2 { font-size: 240%; }
        .main_visual .txt_wrap .desc { font-size: 100%; }
        .main_visual .txt_wrap .visual_btn_wrap li { width: 162px; height: 49px; }
    }

    @media screen and (max-width: 510px){
        .main_visual .txt_wrap h2 { font-size: 230%; }
        .main_visual .txt_wrap h2 br { display: none; }
        .main_visual .txt_wrap .visual_btn_wrap li { width: 146px; height: 49px; }
    }

    @media screen and (max-width: 375px){
        .main_visual .txt_wrap small { font-size: 100%; }
        .main_visual .txt_wrap h2 { font-size: 210%; }
        .main_visual .txt_wrap p { font-size: 95%; }
        .main_visual .txt_wrap .visual_btn_wrap li { width: 132px; height: 45px; }
    }


    /* 공통 */
    .main_content { position: relative; box-sizing: border-box; padding-top: 140px; padding-bottom: 160px; }
    .main_content .flex_des { display: flex; }
    .main_content .anchor_position { position: absolute; top: -50px; }

    .case_num { color: var(--point-color01); font-size: var(--title-18); font-family: var(--font-type02); font-weight: 600; letter-spacing: -0.03em; }
    .case_num span { position: relative; }

    .main_title { font-size: var(--title-20); }
    .main_title .main_sub_title { display: inline-flex; justify-content: center; align-items: center; padding: 8px 24px 9px 23px; box-sizing: border-box; border: 1px solid rgba(233, 72, 22, 0.40); background: var(--point-white); border-radius: 45px; box-shadow: 0px 0px 20px 0px rgba(233, 72, 22, 0.10); }
    .main_title .main_sub_title p { position: relative; color: var(--point-color01); font-size: 100%; font-weight: 600; letter-spacing: -0.03em; box-sizing: border-box; padding-left: 19px; }
    .main_title .main_sub_title p::before { content: ''; position: absolute; left: 0; top: 10px; width: 7px; height: 7px; border-radius: 100%; background: var(--point-color01); }
    .main_title h2 { color: var(--black-color01); font-weight: 600; font-size: 280%; letter-spacing: -0.03em; line-height: 1.34; margin-top: 40px; }
    .main_title h2 strong { font-weight: inherit; color: var(--point-color01); }
    .main_title .main_title_desc { color: var(--black-color05); font-weight: 400; font-size: 110%; letter-spacing: -0.03em; line-height: 1.64; margin-top: 34px; }

    .main_title.title_rev .main_sub_title { background: var(--point-color01); }
    .main_title.title_rev .main_sub_title p { color: var(--point-white); font-weight: 400; }
    .main_title.title_rev .main_sub_title p::before { background: var(--point-white); }
    .main_title.title_rev h2 { color: var(--point-white); font-weight: 600; }
    .main_title.title_rev .main_title_desc { color: var(--point-white); opacity: 0.9; font-weight: 200; letter-spacing: -0.025em; }

    @media screen and (max-width: 1280px){
        .main_title h2 { font-size: 260%; margin-top: 30px; }
        
    }

    @media screen and (max-width: 1140px){
        .main_title h2 { font-size: 240% }
    }

    @media screen and (max-width: 1023px){
        .main_content { padding-top: clamp(70px, 14vw, 140px); padding-bottom: clamp(80px, 16vw, 160px); }
        .main_title .main_sub_title { padding: clamp(4px, 0.8vw, 8px) clamp(13px, 2.5vw, 25px); box-shadow: 0px 0px clamp(10px, 2vw, 20px) 0px rgba(233, 72, 22, 0.10); }
        .main_title .main_sub_title p::before { top: 9px; }
        .main_title h2 { font-size: 230%; margin-top: clamp(20px, 3vw, 30px); }
        .main_title .main_title_desc { margin-top: clamp(17px, 3.4vw, 34px); }
    }

    @media screen and (max-width: 860px){
        .main_title h2 { font-size: 220%; }
        .main_title .main_sub_title p { padding-left: 15px; }
        .main_title .main_sub_title p::before { width: 6px; height: 6px; }
    }

    @media screen and (max-width: 640px){
        .main_title h2 { font-size: 210%; }
        .main_title .main_title_desc { font-size: 100%; }
        .main_title .main_sub_title p { padding-left: 12px; }
        .main_title .main_sub_title p::before { top: 8px; }
    }

    @media screen and (max-width: 479px){
        .main_title h2 { font-size: 210%; }
        .main_title .main_title_desc { font-size: 100%; }
        .main_title .main_sub_title p { padding-left: 10px; padding-top: 2px; }
        .main_title .main_sub_title p::before { width: 5px; height: 5px; top: 9px; }
    }

    .main_intro { font-size: var(--title-20); position: relative; }
    .main_intro .main_title { text-align: center; }
    .main_intro .main_sub_title { margin-left: 2px; }
    .main_intro .flex_des { flex-wrap: wrap; gap: 28px; margin-top: 69px; }
    .main_intro .flex_des li { width: calc(100% / 4 - 21px); height: auto; box-sizing: border-box; padding: 39px 39px; border: 1px solid var(--border-color01); background: var(--point-white); border-radius: 20px; }
    .main_intro .flex_des li .ico { position: relative; display: flex; justify-content: center; align-items: center; width: 80px; height: 80px; border-radius: 100%; background: var(--gray-bg03); overflow: hidden; box-sizing: border-box; padding: 12px; }
    .main_intro .flex_des li dl { margin-top: 24px; }
    .main_intro .flex_des li dt { color: var(--black-color03); font-weight: 600; font-size: 130%; line-height: 1.54; letter-spacing: -0.03em; }
    .main_intro .flex_des li dd { color: var(--black-color06); font-weight: 400; font-size: var(--title-18); letter-spacing: -0.03em; line-height: 1.56; margin-top: 6px; }

    .main_intro .flex_des li:nth-child(1) .ico img { margin-left: 2px; }
    .main_intro .flex_des li:nth-child(3) .ico img { margin-top: 1px; }
    .main_intro .flex_des li:nth-child(4) .ico img { margin-top: 1px; }
    .main_intro .flex_des li:nth-child(7) .ico img { margin-top: 5px; }

    @media screen and (max-width: 1505px){
        .main_intro .flex_des li dd br.del { display: none; }
    }

    @media screen and (max-width: 1380px){
        .main_intro .flex_des { gap: 20px; }
        .main_intro .flex_des li { padding: 25px; width: calc(100% / 4 - 15px); }
    }

    @media screen and (max-width: 1023px){
        .main_intro .flex_des { margin-top: clamp(35px, 6.9vw, 69px); }
        .main_intro .flex_des li { width: calc(100% / 3 - 13.34px); padding: clamp(15px, 3vw, 39px); }
        .main_intro .flex_des li dl { margin-top: clamp(15px, 2.4vw, 24px); }
        .main_intro .flex_des li dd { margin-top: clamp(3px, 0.6vw, 6px); }

        .main_intro .flex_des li:nth-child(3) .ico img { margin-top: 0; }
        .main_intro .flex_des li:nth-child(4) .ico img { margin-top: 0; }
    }

    @media screen and (max-width: 860px){
        .main_intro .flex_des li { border-radius: 10px; }
        .main_intro .flex_des li .ico { width: 60px; height: 60px; }
        .main_intro .flex_des li dt { font-size: 120%; }
    }

    @media screen and (max-width: 640px){
        .main_intro .introSlide { box-sizing: border-box; padding-right: 15vw; }
        .main_intro .flex_des { gap: unset; flex-wrap: unset; }
        .main_intro .flex_des li { height: auto; padding: 16px 18px 79px; }
        
        .main_intro .flex_des li dl { margin-top: 0; }
        .main_intro .flex_des li .ico { width: 50px; height: 50px; position: absolute; right: 10px; bottom: 10px; }
        .main_intro .flex_des li { width: calc(100% / 2 - 10px); height: auto; }
        .main_intro .flex_des li dt { font-size: 110%; }
    }

    @media screen and (max-width: 479px){
        .main_intro .main_title_desc br { display: none; }
        .main_intro .introSlide { box-sizing: border-box; padding-right: 33.5vw; }
        .main_intro .flex_des li:nth-child(1) .ico img { margin-left: 0; }
        .main_intro .flex_des li:nth-child(7) .ico img { margin-top: 0; }
    }

    @media screen and (max-width: 375px){
        .main_intro .flex_des li { width: 100%; }
    }


    .main_patent { position: relative; font-size: var(--title-20); position: relative; }
    .main_patent .main_title .main_title_desc { margin-top: 33px; }
    .main_patent .flex_des { display: flex; box-sizing: border-box; }
    .main_patent .flex_des > div { width: 50%; box-sizing: border-box; }
    .main_patent .txt_wrap { position: relative; padding-right: 150px; padding-top: 150px; padding-bottom: 149px;  }
    .main_patent .txt_wrap::before { content: ''; position: absolute; left: -50%; top: 0; width: 150%; height: 100%; background: var(--black-color00); box-sizing: border-box; }
    .main_patent .img_wrap { position: relative; display: flex; justify-content: center; align-items: center; padding-left: 280px; }
    .main_patent .img_wrap::before { content: ''; position: absolute; right: -50%; top: 0; width: 150%; height: 100%; background: url('../images/skin/img_patent_bg.jpg') no-repeat center; background-size: cover; z-index: -1; }
    .main_patent .patent_num { display: flex; gap: 24px; align-items: center; box-sizing: border-box; padding: 33px 40px; background: var(--black-color01); border-radius: 15px; margin-top: 120px; }
    .main_patent .patent_num dt { color: var(--point-white); font-weight: 400; font-size: 120%; line-height: normal; letter-spacing: -0.03em; }
    .main_patent .patent_num dd { color: var(--point-white); font-weight: 300; font-size: 100%; line-height: normal; letter-spacing: -0.03em; opacity: 0.8; margin-top: 9px; }

    @media screen and (max-width: 1680px){
        .main_patent .img_wrap { padding-left: 5vw; }
    }

    @media screen and (max-width: 1560px){
        .main_patent .txt_wrap { padding-right: 30px; }
    }

    @media screen and (max-width: 1140px){
        .main_patent .patent_num { padding: 25px; }
    }

    @media screen and (max-width: 1060px){
        .main_patent .main_title .main_title_desc br { display: none; }
    }

    @media screen and (max-width: 1023px){

        .main_patent .main_title .main_title_desc { margin-top: clamp(17px, 3.3vw, 30px); }

        .main_patent .txt_wrap { padding-block: clamp(80px, 16vw, 160px); }
        .main_patent .patent_num { margin-top: clamp(30px, 8vw, 120px); padding: clamp(20px, 2.5vw, 70px); gap: clamp(20px, 2.4vw, 24px); }
        .main_patent .img_wrap { padding: 0; }
        .main_patent .img_wrap .img { padding: clamp(30px, 5vw, 50px); padding-right: 0; }
        
        
    }

    @media screen and (max-width: 860px){
        .main_patent .flex_des { flex-direction: column; }
        .main_patent .flex_des > div { width: 100%; }
        .main_patent .txt_wrap { padding-right: 0; }
        .main_patent .txt_wrap::before { left: -15px; width: calc(100% + 30px); }
        .main_patent .img_wrap { padding-block: clamp(30px, 15vw, 150px); }
        .main_patent .img_wrap .img { padding-left: 0; }
        .main_patent .img_wrap::before { right: unset; left: -15px; width: calc(100% + 30px); }
        .main_patent .patent_ico { width: 50px; }
    }

    @media screen and (max-width: 640px){
        .main_patent .patent_ico { width: 45px; }
        .main_patent .patent_num dt { font-size: 110%; }
    }

    @media screen and (max-width: 479px){
        .main_patent .patent_num { border-radius: 7px; }
        .main_patent .patent_ico { width: 40px; }
        .main_patent .img_wrap .img { padding-inline: clamp(50px, 7vw, 70px); }
    }

    .main_case { position: relative; font-size: var(--title-20); padding-bottom: 159px; }
    .main_case::after { content: ''; position: absolute; width: 100%; height: 412px; bottom: 0; left: 0; background: var(--gray-bg01); z-index: -1; }
    .main_case .main_title { text-align: center; }
    .main_case .case_slide_wrap { margin-top: 60px; }
    .main_case .case_slide_wrap ul { transition-timing-function: linear; }
    .main_case .case_slide_wrap li { position: relative; width: calc(100% / 4.4); border-radius: 20px; background: var(--point-white); overflow: hidden; height: auto; }
    .main_case .case_slide_wrap li::before { content: ''; position: absolute; width: 100%; height: 100%; border: 1px solid var(--border-color01); z-index: 1; box-sizing: border-box; border-radius: inherit; }
    .main_case .case_slide_wrap li .img { width: 100%; position: relative; z-index: 2; }
    .main_case .case_slide_wrap li .img img { width: 100%; object-fit: cover; }
    .main_case .case_slide_wrap dl { box-sizing: border-box; padding: 30px 40px 40px; }
    .main_case .case_slide_wrap dt { color: var(--black-color03); font-weight: 600; font-size: 130%; line-height: 1.54; letter-spacing: -0.03em; }
    .main_case .case_slide_wrap dd { color: var(--black-color06); font-weight: 400; font-size: var(--title-18); line-height: 1.56; letter-spacing: -0.03em; margin-top: 24px; }

    @media screen and (max-width: 1440px){
        .main_case .case_slide_wrap li { width: calc(100% / 3); }
    }

    @media screen and (max-width: 1023px){
        .main_case { padding-bottom: clamp(80px, 16vw, 159px); }
        .main_case::after { height: clamp(240px, 41vw, 412px); }
        .main_case .case_slide_wrap { margin-top: clamp(30px, 6vw, 60px); }
        .main_case .case_slide_wrap li { width: calc(100% / 2.5); }
        .main_case .case_slide_wrap dl { padding: clamp(15px, 3vw, 30px) clamp(20px, 3vw, 40px) clamp(20px, 3vw, 40px); }
        .main_case .case_slide_wrap dt { font-size: 110%; }
        .main_case .case_slide_wrap dd { margin-top: clamp(15px, 2vw, 24px); }
    }

    @media screen and (max-width: 930px){
        .main_case .main_title br { display: none; }
    }

    @media screen and (max-width: 640px){
        .main_case .case_slide_wrap li { width: calc(100% / 2); }
    }

    @media screen and (max-width: 530px){
        .main_case .case_slide_wrap li { border-radius: 10px; }
    }

    @media screen and (max-width: 479px){
        .main_case .case_slide_wrap li { width: calc(100% / 1.75); }
    }

    @media screen and (max-width: 375px){
        .main_case .case_slide_wrap li { width: calc(100% / 1.5); }
    }

    .main_use { font-size: var(--title-20); position: relative; }
    .main_use { background: url('../images/skin/img_use_bg.jpg') no-repeat center; background-size: cover; }
    .main_use .main_title { text-align: center; }
    .main_use .slide_cont { position: relative; box-sizing: border-box; padding-inline: 70px; }
    .main_use .use_slide_wrap { position: relative; margin-top: 60px; max-width: 1240px; margin-inline: auto; overflow: hidden; }
    .main_use .use_slide_wrap li { display: flex; height: auto; }
    .main_use .use_slide_wrap li > div { width: 50%; }
    .main_use .use_slide_wrap li .img { border-radius: 30px; flex-shrink: 0; overflow: hidden; }
    .main_use .use_slide_wrap li .img img { display: block; width: 100%; height: 100%; object-fit: cover; }
    .main_use .use_slide_wrap li .txt { box-sizing: border-box; padding: 80px; background: var(--point-white); border-radius: 30px; }
    .main_use .use_slide_wrap li .txt .case_num { color: var(--point-color01); font-size: var(--title-18); font-family: var(--font-type02); font-weight: 600; letter-spacing: -0.03em; }
    .main_use .use_slide_wrap li .txt dl { margin-top: 21px; }
    .main_use .use_slide_wrap li .txt dt { color: var(--black-color02); font-size: 210%; font-weight: 600; line-height: 1.4; letter-spacing: -0.03em; text-wrap: balance; }
    .main_use .use_slide_wrap li .txt dd { color: var(--black-color06); font-size: var(--title-18); font-weight: 400; line-height: 1.78; letter-spacing: -0.03em; box-sizing: border-box; padding-top: 40px; margin-top: 40px; border-top: 1px solid var(--border-color01); }

    .main_use .use_slide_wrap li .case_num span::before { display: none; }

    .main_use .slide_btn_wrap button { position: absolute; top: 50%; transform: translateY(-50%); width: 60px; height: 60px; flex-shrink: 0; background: url('../images/skin/ico_next_on.svg') no-repeat center; background-size: 100% auto; opacity: 0.5; transition: all 0.4s; z-index: 5; }
    .main_use .slide_btn_wrap .prev_btn { transform: scaleX(-1) translateY(-50%); left: 0; }
    .main_use .slide_btn_wrap .next_btn { right: 0; }

    @media screen and (max-width: 1400px){
        .main_use .use_slide_wrap li .txt dd br.del { display: none; }
        .main_use .use_slide_wrap li .txt dt br { display: none; }
    }

    @media screen and (max-width: 1310px){
        .main_use .use_slide_wrap li .txt dt { font-size: 200%; }
    }

    @media screen and (max-width: 1280px){
        .main_use .use_slide_wrap li .txt dl { margin-top: 20px; }
        .main_use .use_slide_wrap li .txt dd { margin-top: 30px; padding-top: 30px; }
    }

    @media screen and (max-width: 1215px){
        .main_use .use_slide_wrap li .txt dt { font-size: 190%; }
    }

    @media screen and (max-width: 1200px){
        .main_use .use_slide_wrap li .txt { padding: clamp(30px, 6.6vw, 80px); }
    }

    @media screen and (max-width: 1170px){
        .main_use .use_slide_wrap li .txt dt { font-size: 170%; }
    }

    @media screen and (max-width: 1075px){
        .main_use .use_slide_wrap li .txt dt { font-size: 160%; }
    }

    @media screen and (max-width: 1023px){
        .main_use .use_slide_wrap { margin-top: clamp(30px, 6vw, 60px); }
        .main_use .use_slide_wrap li { display: flex; flex-direction: column; }
        .main_use .use_slide_wrap li > div { width: 100%; }
        .main_use .use_slide_wrap li .img { aspect-ratio: auto; height: clamp(230px, 40vw, 400px);}
        .main_use .use_slide_wrap li .txt dl { margin-top: clamp(8px, 1.8vw, 18px); }
        .main_use .use_slide_wrap li .txt dd { margin-top: clamp(15px, 3.0vw, 30px); padding-top: clamp(15px, 3.0vw, 30px); }
        
        .main_use .slide_btn_wrap button { width: 50px; height: 50px; }
    }

    @media screen and (max-width: 860px){
        .main_use .slide_btn_wrap button { width: 40px; height: 40px; }
        .main_use .use_slide_wrap li .txt { height: 100%; }
        .main_use .use_slide_wrap ul { align-items: unset; }
        .main_use .use_slide_wrap li { flex-direction: column; height: auto; }
        .main_use .use_slide_wrap li > div { width: 100%; }
        
    }

    @media screen and (max-width: 640px){
        .main_use .slide_cont { padding-inline: 0; width: calc(100% + 30px); margin-left: -15px; }
        .main_use .use_slide_wrap { padding-right: 10vw; padding-left: 10vw; box-sizing: border-box; }
        .main_use .slide_btn_wrap { display: none; }
        .main_use .use_slide_wrap li .txt dt { font-size: 160%; }
    }

    @media screen and (max-width: 479px){
        .main_use .use_slide_wrap li .img { border-radius: 15px; }
        .main_use .use_slide_wrap li .txt { border-radius: 15px; }
        .main_use .slide_btn_wrap button { width: 30px; height: 30px; }
    }

    .main_effect { position: relative; font-size: var(--title-20); padding-top: 160px; background: url('../images/skin/img_effect_bg.jpg') no-repeat center; background-size: cover; }
    .main_effect .main_title .main_title_desc { margin-top: 33px; }
    .main_effect .flex_des { align-items: flex-start; }
    .main_effect .sticky_wrap { position: sticky; top: 190px; width: 46.67%; padding-right: 113px; padding-bottom: 74px; box-sizing: border-box; flex-shrink: 0; }
    .main_effect .effect_list_wrap { display: grid; grid-template-columns: repeat(2, 1fr); gap: 40px; counter-reset: num 0; }
    .main_effect .effect_list_wrap li { min-height: 520px; box-sizing: border-box; padding: 40px 30px; border-radius: 20px; background: var(--point-white); box-shadow: 4px 3px 22px 0px rgba(0, 0, 0, 0.15); }
    .main_effect .effect_list_wrap li:nth-child(even) { transform: translateY(182px); }
    .main_effect .effect_list_wrap .case_num { font-size: var(--title-17); }
    .main_effect .effect_list_wrap dl { margin-top: 18px; }
    .main_effect .effect_list_wrap dt { color: var(--black-color03); font-weight: 600; font-size: 150%; line-height: 1.38; letter-spacing: -0.04em; text-wrap: balance; }
    .main_effect .effect_list_wrap dd { color: var(--black-color06); font-weight: 400; font-size: 90%; line-height: 1.67; letter-spacing: -0.03em; margin-top: 30px; }
    .main_effect .effect_list_wrap dd .img { border-radius: 10px; overflow: hidden; width: 100%; }
    .main_effect .effect_list_wrap dd .img img { display: block; width: 100%; }
    .main_effect .effect_list_wrap dd p { margin-top: 30px; }

    @media screen and (max-width: 1475px){
        .main_effect .effect_list_wrap dd p br.del { display: none; }
    }

    @media screen and (max-width: 1555px){
        .main_effect .effect_list_wrap dt { font-size: 140%; }
    }

    @media screen and (max-width: 1480px){
        .main_effect .effect_list_wrap dt { font-size: 130%; }
    }

    @media screen and (max-width: 1405px){
        .main_effect .effect_list_wrap dt { font-size: 120%; }
        .main_effect .effect_list_wrap { gap: 20px; }
        .main_effect .sticky_wrap { padding-right: 50px; }
        .main_effect .effect_list_wrap li { padding: 30px; }
        .main_effect .effect_list_wrap li { min-height: unset; }
    }


    @media screen and (max-width: 1240px){
        .main_effect .flex_des { display: block; }
        .main_effect .sticky_wrap { position: static; width: 100%; padding-bottom: 0; }
        .main_effect .effectSlide { width: 100%; padding-left: 0; box-sizing: border-box; margin-top: 40px; }
        .main_effect .effect_list_wrap { display: flex; gap: 0; grid-template-columns: unset; }
        .main_effect .effect_list_wrap li { height: auto; }
        .main_effect .effect_list_wrap li:nth-child(even) { transform: unset; }
        .main_effect .effect_list_wrap dl { margin-top: 15px; }
        .main_effect .effect_list_wrap dd { margin-top: 20px; }
        .main_effect .effect_list_wrap dd p { margin-top: 20px; }
    }

    @media screen and (max-width: 1023px){
        
        .main_effect { padding-top: clamp(80px, 16vw, 160px); }
        .main_effect .main_title .main_title_desc { margin-top: clamp(15px, 3.3vw, 33px); }
        .main_effect .effect_list_wrap dt { font-size: 130%; }
        .main_effect .effect_list_wrap dl { margin-top: clamp(10px, 1.5vw, 15px); }
        .main_effect .effect_list_wrap dd { margin-top: clamp(10px, 2vw, 20px); }
        .main_effect .effect_list_wrap dd p { margin-top: clamp(10px, 2vw, 20px) }
        .main_effect .effect_list_wrap li { padding: clamp(25px, 3.5vw, 42px); }
        
        
    }

    @media screen and (max-width: 860px){
        
    }

    @media screen and (max-width: 640px){
        
    }

    
    @media screen and (max-width: 479px){
        .main_effect .main_title .main_title_desc br { display: none; }
        
        .main_effect .effect_list_wrap { display: flex; gap: 0; grid-template-columns: unset; }
        .main_effect .effect_list_wrap li { height: auto; border-radius: 10px; }
        
    }
	
	#wrap .main_difference{padding-bottom:0;}
	.main_difference .main_title{text-align: center;}
	.main_difference .w_custom{max-width:1240px;}
	.main_difference .m_table{display: none;}
	.main_difference .pc_table{box-sizing:border-box;overflow:hidden;border-radius:10px;box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.15);margin-top:60px;position: relative;}
	.main_difference .pc_table:before{width:27.5%;height:calc(100% - 79px);content:"";border:3px solid var(--point-color01);position: absolute;bottom:0;right:0;border-radius:0 0 10px 0;box-sizing:border-box;}
	.main_difference .pc_table table{font-size:var(--title-20);}
	.main_difference .pc_table table thead tr th{text-align: center;box-sizing:border-box;background:var(--black-color03);font-size:120%;color:var(--point-white);font-weight:500;padding:24px 0;height:80px;}
	.main_difference .pc_table table tbody tr th, .main_difference .pc_table table tbody tr td{box-sizing:border-box;vertical-align: middle;border:1px solid var(--border-color01);text-align: center;padding:20px 20px;}
	.main_difference .pc_table table tbody tr.prd_row th, .main_difference .pc_table table tbody tr.prd_row td{padding:24px 24px;}
	.main_difference .pc_table table tbody tr.prd_row td{vertical-align: top;}
	.main_difference .pc_table table tbody tr th{background:rgba(233, 72, 22, 0.05);;}
	.main_difference .pc_table table tbody tr th strong{font-size:100%;color:var(--point-color01);font-weight:500;margin:0;}
	.main_difference .pc_table table tbody tr th span{display: block;font-size:80%;color:var(--point-color01);font-weight:400;line-height:1.37;margin:6px 0;}
	.main_difference .pc_table table tbody tr th p{font-size:70%;color:var(--black-color08);font-weight:400;}
	.main_difference .pc_table table tbody tr td{font-size:90%;color:var(--black-color06);font-weight:400;line-height:1.55;letter-spacing:-0.03em;}
	.main_difference .pc_table table tbody tr.cost_row td{font-size:80%;}
	.main_difference .pc_table table tbody tr td.last{color:var(--black-color03);}
	.main_difference .pc_table table tbody tr .img{width:100%;height:0;padding-bottom:58.5%;position: relative;overflow:hidden;box-sizing:border-box;border-radius:10px;}
	.main_difference .pc_table table tbody tr .img img{width:100%;height:100%;position: absolute;top:0;left:0;object-fit:cover;}
	.main_difference .pc_table table tbody tr strong{display: block;font-size:var(--title-20);color:var(--black-color03);font-weight:600;margin-top:18px;}
	.main_difference .pc_table table tbody tr td span{display: block;margin-top:6px;font-size:var(--title-18);color:var(--black-color06);font-weight:500;letter-spacing:-0.03em;}
	.main_difference .pc_table table tbody tr td.last span{color:var(--black-color03);}
	
	@media screen and (max-width: 1023px){
		.main_difference .pc_table{margin-top:40px;}
		.main_difference .pc_table table tbody tr th, .main_difference .pc_table table tbody tr td{padding:15px 15px;}
		.main_difference .pc_table table tbody tr.prd_row th, .main_difference .pc_table table tbody tr.prd_row td{padding:15px 15px;}
	}
	@media screen and (max-width: 860px){
		.main_difference .pc_table{display: none;}	
		.main_difference .m_table{display:block;margin-top:30px;font-size:var(--title-20);}	
		.main_difference .m_table h3{text-align: center;box-sizing:border-box;background:var(--black-color03);font-size:120%;color:var(--point-white);font-weight:500;padding:18px 10px;border-radius:10px;}
		.main_difference .m_table ul{margin-top:30px;}
		.main_difference .m_table ul li{box-sizing:border-box;border-radius:10px;border:1px solid var(--border-color01);box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.15);}
		.main_difference .m_table ul li.last{border:3px solid var(--point-color01);}
		.main_difference .m_table ul li + li{margin-top:40px;}
		.main_difference .m_table ul li .prd_box{text-align: center;padding:20px 0;font-size:var(--title-20);}
		.main_difference .m_table ul li .prd_box img{border-radius:10px;}
		.main_difference .m_table ul li .prd_box strong{display: block;font-size:120%;color:var(--black-color03);font-weight:600;margin-top:18px;line-height:1.3;letter-spacing:-0.03em;}
		.main_difference .m_table ul li .info_box{display: table;box-sizing:border-box;border-top:1px solid var(--border-color01);}
		.main_difference .m_table ul li .info_box dl{display:table-row;font-size:var(--title-20);}
		.main_difference .m_table ul li .info_box dl dt, .main_difference .m_table ul li .info_box dl dd{box-sizing:border-box;border-bottom:1px solid var(--border-color01);padding:20px 10px;display: table-cell;vertical-align: middle;}
		.main_difference .m_table ul li .info_box dl:last-child dt, .main_difference .m_table ul li .info_box dl:last-child dd{border-bottom:none;}
		.main_difference .m_table ul li .info_box dl dt{width:30%;background:rgba(233, 72, 22, 0.05);text-align: center;}
		.main_difference .m_table ul li .info_box dl dt strong{font-size:100%;color:var(--point-color01);font-weight:500;margin:0;}
		.main_difference .m_table ul li .info_box dl dt span{display: block;font-size:80%;color:var(--point-color01);font-weight:400;line-height:1.37;margin:6px 0;}
		.main_difference .m_table ul li .info_box dl dt p{font-size:70%;color:var(--black-color08);font-weight:400;}
		.main_difference .m_table ul li .info_box dl dd{width:70%;padding-left:15px;padding-right:15px;font-size:90%;color:var(--black-color06);font-weight:400;line-height:1.55;letter-spacing:-0.03em;}
		.main_difference .m_table ul li.last .info_box dl dd{color:var(--black-color03);}
		.main_difference .m_table ul li .info_box dl.cost dd {font-size:80%;}
		.main_difference .m_table ul li .info_box dl dd span{display: block;margin-top:6px;font-size:var(--title-18);color:var(--black-color06);font-weight:500;letter-spacing:-0.03em;}
		.main_difference .m_table ul lilast .info_box dl dd span {color:var(--black-color03);}
	}
	@media screen and (max-width:479px){
		.main_difference .m_table h3{padding:15px 10px;border-radius:5px;}
		.main_difference .m_table ul li{border-radius:5px;box-shadow:0px 0px 10px 0px rgba(0, 0, 0, 0.15);}
		.main_difference .m_table ul li .prd_box{padding:20px 15px;}
		.main_difference .m_table ul li .prd_box img{border-radius:5px;}
		.main_difference .m_table ul li .prd_box strong{margin-top:12px;}
		
	}
    
    .main_faq { position: relative; font-size: var(--title-20); padding-bottom: 159px; }
    .main_faq .main_title { text-align: center; }
    .main_faq ul { margin-top: 79px; max-width: 1240px; margin-inline: auto; }
    .main_faq li { position: relative; box-sizing: border-box; padding: 33px 40px 34px; border-top: 1px solid var(--border-color01); }
    .main_faq li:last-child { border-bottom: 1px solid var(--border-color01); }

    .main_faq .question { position: relative; color: var(--black-color03); font-weight: 500; font-size: 120%; letter-spacing: -0.03em; line-height: normal; padding-right: 18px; box-sizing: border-box; cursor: pointer; }
    .main_faq .answer { position: relative; display: none; cursor: default; color: var(--black-color06); font-weight: 400; font-size: 90%; letter-spacing: -0.03em; line-height: 1.67; margin-top: 20px; padding-right: 18px; box-sizing: border-box; }
    
    .main_faq .question::before { content: ''; position: absolute; right: 0; top: 6px; width: 18px; height: 18px; background: url('../images/skin/ico_more.svg') no-repeat center; background-size: 100% auto; transition: all 0.4s; }

    .main_faq li.on .question::before { transform: rotate(45deg); filter: var(--filter-point); }
    .main_faq li.on .question { font-weight: 600; }

    @media screen and (max-width: 1023px){
        .main_faq { padding-bottom: clamp(80px, 16vw, 159px); }
        .main_faq ul { margin-top: clamp(40px, 7.9vw, 79px); }
        .main_faq li { padding: clamp(20px, 3.3vw, 33px) clamp(20px, 4vw, 40px); }
        .main_faq .answer { margin-top: clamp(15px, 2vw, 20px); }
    }

    @media screen and (max-width: 860px){
        .main_faq .question { font-size: 110%; }
        .main_faq .question::before { width: 16px; height: 16px; }
        .main_faq .question { padding-right: 18px; }
        .main_faq .answer { padding-right: 18px; }
    }

    @media screen and (max-width: 640px){
        .main_faq .question { padding-right: 16px; }
        .main_faq .answer { padding-right: 16px; }
        .main_faq .question::before { width: 14px; height: 14px; }
    }

    @media screen and (max-width: 479px){
        .main_faq .question { font-size: 100%; padding-right: 14px; }
        .main_faq .answer { padding-right: 14px; }
        .main_faq .question::before { top: 4px; width: 12px; height: 12px; }
    }

    .main_contact { position: relative; font-size: var(--title-20); background: url('../images/skin/img_contact_bg.jpg') no-repeat center; background-size: cover; padding-bottom: 0; padding-top: 157px; }
    .main_contact .main_title { flex-shrink: 0; box-sizing: border-box; padding-top: 59px; }
    .main_contact .form_wrap { position: relative; width: 100%; margin-left: 107px; padding-left: 80px; padding-block: 100px; box-sizing: border-box; background: var(--point-white); border-radius: 60px 0 0 0;  }
    .main_contact .form_wrap::before { content: '';  position: absolute; right: -50%; top: 0; width: 150%; height: 100%; background: var(--point-white); z-index: -1; border-radius: inherit; }
    #wrap .bbs_write_box { display: flex; flex-direction: column; flex-wrap: wrap; gap: 16px; box-sizing: border-box; }
    #wrap .bbs_write_box .line2 { display: flex; flex-wrap: wrap; gap: 20px; }
    #wrap .bbs_write_box .line2 dl { width: calc(100% / 2 - 10px); }
    #wrap .bbs_write_box dl { display: flex; flex-wrap: wrap; width: 100%; align-items: flex-start; box-sizing: border-box; border: 1px solid var(--border-color01); padding-inline: 19px; border-radius: 5px; }
    #wrap .bbs_write_box dl dt { display: flex; flex-shrink: 0; align-items: center; width: 120px; min-height: 58px; color: var(--black-color03); font-size: var(--title-18); font-weight: 500; letter-spacing: -0.03em; line-height: normal; box-sizing: border-box; padding-right: 15px; padding-top: 3px; }
    #wrap .bbs_write_box dl dt span { color: var(--point-color01); margin-left: 4px; }
    #wrap .bbs_write_box dl dd { width: calc(100% - 120px); min-height: 58px; display: flex; align-items: center; box-sizing: border-box; }
    #wrap .bbs_write_box dl dd input[type="text"] { width: 100%; height: 58px; box-sizing: border-box; padding: 0; font-size: var(--title-17); color: var(--black-color03); font-weight: 400; border: none; letter-spacing: -0.03em; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; font-family: var(--font-type01); }
    #wrap .bbs_write_box textarea { resize: none; width: 100%; height: 117px; box-sizing: border-box; padding: 20px 0; font-size: var(--title-17); color: var(--black-color03); font-weight: 400; border: none; letter-spacing: -0.03em; font-family: var(--font-type01);  }
    #wrap .bbs_write_box dl.captcha_dl dt { width: 141px; padding-top: 2px; }
    #wrap .bbs_write_box dl.captcha_dl dd { width: calc(100% - 143px); gap: 20px; flex-wrap: wrap; }
    #wrap .bbs_write_box .captcha_wrap{padding:11px 0;box-sizing: border-box; display: flex; gap:5px;}
    #wrap .bbs_write_box #captcha_box{margin:0;width:161px;height:36px;box-sizing:border-box;border-radius:4px;overflow:hidden;}
    #wrap .bbs_write_box #captcha_box img{width: calc(100% + 2px) !important;height: calc(100% + 2px) !important;max-width: initial;max-height: initial;margin-left: -1px;margin-top: -1px;}
    #wrap .bbs_write_box #refreshCode{display: inline-flex; background:var(--black-color08) url('../images/skin/ico_reset.svg') no-repeat center; font-size: 0; cursor: pointer; min-width:36px; width:36px; height:36px;box-sizing: border-box; border-radius: 4px; }
    #wrap .bbs_write_box input#captcha{width:calc(100% - 223px); margin:0;}

    #wrap .bbs_write_box dl:has(dd input[type="text"]:focus, dd textarea:focus) { border: 1px solid var(--black-color01); }
    #wrap .bbs_write_box dl dd input[type="text"]::placeholder { color: var(--black-color10); font-weight: 300; }
    #wrap .bbs_write_box dl:has(.edit-box) { flex-direction: column; padding: 17px 19px 20px; }
    #wrap .bbs_write_box dl:has(.edit-box) dt { width: 100%; min-height: initial; }
    #wrap .bbs_write_box dl:has(.edit-box) dd { width: 100%; }
    

    #wrap .policy_wrap{box-sizing: border-box; margin-top:26px;display: flex;flex-wrap:wrap; flex-direction: column; align-items: flex-start;justify-content: space-between; gap: 20px; }
    #wrap .policy_wrap .chk_cont{display: inline-flex;align-items: center;}
    #wrap .policy_wrap .chk_cont a{ flex-shrink: 0; font-size:var(--title-16);color:var(--black-color08);font-weight:500;text-decoration: underline;letter-spacing: -0.05em;text-underline-offset: 4px; align-self: flex-start; }
    #wrap .policy_wrap .btn_send_main{display: inline-flex;box-sizing:border-box;align-items: center;justify-content: center;text-align: center;width:200px;height:60px;background:var(--black-color00);border-radius:10px; font-family: var(--font-type01); font-size:var(--title-20);color:var(--point-white);font-weight:400;letter-spacing:-0.03em; box-shadow: 4px 3px 30px 0px rgba(0, 0, 0, 0.15); }


    #wrap .policy_wrap .chk_cont label span a { display: inline-block; margin-left: 22px; }

    #wrap input[type="checkbox"] + label:before, 
    #wrap input[type="checkbox"] + label::before { flex-shrink: 0; display:inline-block; content:""; width:22px; height:22px; margin:2px 10px 0 0; vertical-align:middle; background:url("../images/skin/ico_chk.svg") no-repeat 0 50%; cursor:pointer;background-size:auto 100%;}
	#wrap input[type="checkbox"]:checked + label:before, 
    #wrap input[type="checkbox"]:checked + label::before { background:url("../images/skin/ico_chk_on.svg") no-repeat 0 50%;background-size:auto 100%;}
    #wrap input[type="checkbox"] + label { display: inline-flex; font-size: var(--title-19); font-weight: 500; color: var(--black-color03); line-height: normal; letter-spacing: -0.05em; }
    #wrap input[type="checkbox"] + label strong { display: inline-block; margin-right: 3px; flex-shrink: 0; color: var(--point-color01); font-weight: inherit; font-size: inherit; letter-spacing: inherit; }

    .ft_quick { position: fixed; right: 30px; bottom: 29px; transition: all 0.3s; z-index: -1; opacity: 0; }
    .ft_quick.on { opacity: 1; z-index: 10; }
    .ft_quick li { width: 60px; height: 60px; border-radius: 10px; background: var(--point-color01); cursor: pointer; }
    .ft_quick li span { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; }


    @media screen and (max-width: 1330px){
        .main_contact .form_wrap { padding-left: 40px; margin-left: 40px; padding-block: 40px; border-radius: 30px 0 0 0;  }

    }


    @media screen and (max-width: 1190px){
        .main_contact br { display: none; }
        .main_contact .flex_des { flex-direction: column; gap: 40px; }
        .main_contact .main_title { padding-top: 0; width: calc(100% - 30px); margin-right: auto; box-sizing: border-box; }
        .main_contact .form_wrap { margin-left: 0; padding-block: 3vw;}
    }

    @media screen and (max-width: 1023px){
        .main_contact { padding-top: clamp(80px, 16vw, 157px); }
        .main_contact .form_wrap { padding-left: clamp(20px, 4vw, 40px); padding-right: clamp(20px, 3vw, 30px); border-radius: 30px 0 0 0; padding-block: clamp(20px, 4vw, 40px) 40px; }
        #wrap .policy_wrap .btn_send_main { box-shadow: 4px 3px clamp(15px, 3vw, 30px) 0px rgba(0, 0, 0, 0.15); }
        .ft_quick { right: clamp(15px, 3vw, 30px); bottom: clamp(15px, 3vw, 30px); }
    }

    @media screen and (max-width: 860px){
        .main_contact .flex_des { gap: clamp(30px, 6vw, 60px); }

        .ft_quick li { width: 50px; height: 50px; }

        #wrap .policy_wrap .btn_send_main { width: 180px; height: 54px; }

        #wrap .bbs_write_box dl.captcha_dl dt { width: 120px; }
        #wrap .bbs_write_box dl.captcha_dl dd { width: calc(100% - 120px); }

        #wrap input[type="checkbox"] + label:before, #wrap input[type="checkbox"] + label::before { margin-top: 0; }
    }

    @media screen and (max-width: 640px){
        
        #wrap .bbs_write_box dl { padding: 10px 10px; }
        #wrap .bbs_write_box dl dt { width: 100px; min-height: 40px; }
        #wrap .bbs_write_box dl dd { min-height: 40px; width: calc(100% - 100px); }
        #wrap .bbs_write_box dl dd input[type="text"] { height: 40px; }
        #wrap .bbs_write_box textarea { height: 150px; padding: 8px 0; }
        #wrap .bbs_write_box .captcha_wrap { padding: 0; }
        #wrap .bbs_write_box dl.captcha_dl dt { width: 100%; }
        #wrap .bbs_write_box dl.captcha_dl dd { width: 100%; }
        
        #wrap .bbs_write_box .line2 dl { width: 100%; }
        #wrap .bbs_write_box dl:has(.edit-box) { padding: 10px 10px; }
        #wrap .policy_wrap { gap: 20px 10px; align-items: center; }
        #wrap .policy_wrap .chk_cont { gap: 10px; }
        #wrap .policy_wrap .btn_send_main { width: 162px; height: 49px; }
        #wrap .policy_wrap .chk_cont label span a { margin-left: 10px; }
    }

    @media screen and (max-width: 512px){
        #wrap .policy_wrap .btn_send_main { width: 146px; height: 49px; border-radius: 5px; }
    }

    @media screen and (max-width: 479px){
        
        .main_contact .form_wrap { border-radius: 15px 0 0 0; padding-bottom: 70px; }
        #wrap .bbs_write_box .line2 dl { width: 100%; }
        #wrap .bbs_write_box dl { padding: 8px 10px; }
        #wrap .bbs_write_box dl dt { min-height: 35px; }
        #wrap .bbs_write_box dl dd { min-height: 35px; }
        #wrap .bbs_write_box dl dd input[type="text"] { height: 35px; }

        
        #wrap input[type="checkbox"] + label:before, #wrap input[type="checkbox"] + label::before { width: 20px; height: 20px; }

        #wrap .bbs_write_box dl.captcha_dl dd { gap: 10px; }
        #wrap .bbs_write_box #captcha_box { width: 152px; height: 32px; }
        #wrap .bbs_write_box #refreshCode { width: 32px; height: 32px; min-width: 32px; }
        #wrap .bbs_write_box input#captcha { width: 100%; }

        .ft_quick li { width: 40px; height: 40px; border-radius: 5px; }

        
    }

    @media screen and (max-width: 370px){
        
    }

    @media screen and (max-width: 365px){
        #wrap .bbs_write_box #captcha_box { width: 100%; }
    }

    @media (hover: hover) and (pointer: fine){
        .main_use .slide_btn_wrap button:hover { opacity: 1; }
    }