@charset "UTF-8";
.contact_component{}
.contact_inner{width: 100%;height: 100dvh;padding: calc((50px * 1.2) + (32px)) var(--main-page-x) var(--main-page-x);box-sizing: border-box;}

.contanct_loading_wrap{position: fixed;inset: 0;z-index: 50;width: 100%;height: 100%;min-height: 100dvh;max-height: 100dvh;overflow: hidden;background-color: var(--color-white);opacity: 0;visibility: hidden;}
.contanct_loading_wrap .dim_inner{width: 100%;height: 100%;display: flex;align-items: center;justify-content: center;flex-direction: column;flex-wrap: nowrap;}
.contanct_loading_wrap .dim_tit_box{}
.contanct_loading_wrap .dim_tit_box .dim_tit{font-size: var(--fs-50);font-weight: 600;line-height: var(--lh-60);color: var(--color-blue-txt);text-align: center;letter-spacing: -0.025em;}
.contanct_loading_wrap .dim_txt_box{}
.contanct_loading_wrap .dim_tit_box + .dim_txt_box{margin-top: 16px;}
.contanct_loading_wrap .dim_txt_box .dim_txt{font-size: var(--fs-20);font-weight: 400;line-height: var(--lh-24);color: var(--color-blue-txt);letter-spacing: -0.025em;text-align: center;}

.contact_end_wrap{position: fixed;inset: 0;z-index: 50;width: 100%;height: 100%;min-height: 100dvh;max-height: 100dvh;overflow: hidden;background-color: var(--color-white);opacity: 0;visibility: hidden;}
.contact_end_wrap .end_inner{width: 100%;height: 100%;display: flex;align-items: center;justify-content: center;flex-direction: column;flex-wrap: nowrap;}
.contact_end_wrap .end_bd{flex: 1 1 0%;width: 100%;display: flex;align-items: center;justify-content: center;flex-direction: column;flex-wrap: nowrap;}
.contact_end_wrap .end_tit_box{}
.contact_end_wrap .end_tit_box .end_tit{font-size: var(--fs-50);font-weight: 600;line-height: var(--lh-60);color: var(--color-blue-txt);letter-spacing: -0.025em;}
.contact_end_wrap .end_txt_box{}
.contact_end_wrap .end_tit_box + .end_txt_box{margin-top: 16px;}
.contact_end_wrap .end_txt_box .end_txt{font-size: var(--fs-20);font-weight: 400;line-height: var(--lh-24);color: var(--color-blue-txt);letter-spacing: -0.025em;text-align: center;}

.contact_end_wrap .end_ft{flex: 0 0 auto;width: 100%;}
.contact_end_wrap .end_ft .ft_inner{width: 100%;padding: 24px var(--main-page-x);box-sizing: border-box;display: flex;align-items: center;justify-content: space-between;flex-wrap: nowrap;column-gap: 10px;}
.contact_end_wrap .end_ft .ft_left{flex: 0 0 auto;}
.contact_end_wrap .end_ft .ft_info_box{}
.contact_end_wrap .end_ft .ft_info_box .info_txt{display: block;font-size: var(--fs-20);font-weight: 400;line-height: var(--lh-24);color: var(--color-blue-txt);letter-spacing: -0.025em;}
.contact_end_wrap .end_ft .ft_info_box .info_txt.info_type_link{display: inline-block;}
.contact_end_wrap .end_ft .ft_right{flex: 0 0 auto;}
.contact_end_wrap .end_ft .ft_insta_box{}
.contact_end_wrap .end_ft .ft_insta_box .info_insta{display: inline-block;font-size: var(--fs-40);font-weight: 400;line-height: var(--lh-50);color: var(--color-blue-txt);letter-spacing: -0.025em;}

.contact_step_wrap{width: 100%;height: 100%;display: flex;align-items: center;justify-content: center;flex-direction: column;flex-wrap: nowrap;opacity: 0;visibility: hidden;}
.contact_step_wrap .step_bd{flex: 1 1 0%;width: 100%;}
.contact_step_wrap #stepForm{width: 100%;height: 100%;}

.contact_step_wrap .step_cnt_box{width: 100%;height: 100%;display: flex;align-items: center;justify-content: center;}
.contact_step_wrap .step_cnt_box .step_tit_box{}
.contact_step_wrap .step_cnt_box .step_tit{font-size: var(--fs-50);font-weight: 600;line-height: var(--lh-60);color: var(--color-blue-txt);letter-spacing: -0.025em;text-align: center;}
.contact_step_wrap .step_cnt_box .step_desc_box{}
.contact_step_wrap .step_cnt_box .step_tit_box + .step_desc_box{margin-top: 12px;}
.contact_step_wrap .step_cnt_box .step_desc{font-size: var(--fs-20);font-weight: 400;line-height: var(--lh-24);color: var(--color-gray4);letter-spacing: -0.025em;text-align: center;}
.contact_step_wrap .step_cnt_box .step_desc_box + .step_frm_wrap{margin-top: 56px;}

.contact_step_wrap .step_cnt_box .frm_agree_box{display: flex;align-items: center;justify-content: space-between;flex-wrap: nowrap;column-gap: 10px;margin-top: 20px;}
.contact_step_wrap .step_cnt_box .frm_agree_box .agree_info_box{flex: 0 0 auto;}
.contact_step_wrap .step_cnt_box .frm_agree_box .agree_info_box .info_txt{font-size: var(--fs-16);font-weight: 600;line-height: var(--lh-24);color: var(--color-blue-txt);letter-spacing: -0.025em;}

.contact_step_wrap .step_cnt_box .frm_btns_box{display: flex;align-items: center;justify-content: center;margin-top: 20px;}
.contact_step_wrap .step_cnt_box .frm_btns_box .frm_btns{flex: 1 1 0%;display: inline-flex;align-items: center;justify-content: center;padding: 10px;background-color: var(--color-black2);border-radius: 16px;box-sizing: border-box;cursor: not-allowed;opacity: .5;transition: opacity .3s, background-color .3s;}
.contact_step_wrap .step_cnt_box .frm_btns_box .frm_btns.active{cursor: pointer;opacity: 1;}
.contact_step_wrap .step_cnt_box .frm_btns_box .frm_btns .btns_name{display: inline-block;font-size: var(--fs-30);font-weight: 600;line-height: var(--lh-40);color: var(--color-white);letter-spacing: -0.025em;transition: color .3s;}
.contact_step_wrap .step_cnt_box .frm_btns_box .frm_btns.active:hover{background-color: var(--color-blue-bg);}
.contact_step_wrap .step_cnt_box .frm_btns_box .frm_btns.active:hover .btns_name{color: var(--color-white);}

.contact_step_wrap .step_ft{flex: 0 0 auto;width: 100%;}
.contact_step_wrap .step_paging_box{width: 100%;}
.contact_step_wrap .step_paging_box .box_inner{width: 100%;padding: 0;box-sizing: border-box;display: flex;align-items: center;justify-content: space-between;flex-wrap: nowrap;column-gap: 10px;}
.contact_step_wrap .step_paging_box .box_left{flex: 0 0 auto;line-height: 0;}
.contact_step_wrap .step_paging_box .box_right{flex: 0 0 auto;line-height: 0;}
.contact_step_wrap .step_paging_box .paging_btns{display: inline-flex;align-items: center;flex-wrap: nowrap;column-gap: 24px;cursor: not-allowed;}
.contact_step_wrap .step_paging_box .paging_btns.active{cursor: pointer;}
.contact_step_wrap .step_paging_box .paging_btns .btns_icon{display: inline-block;font-size: var(--fs-20);font-weight: 600;line-height: var(--lh-32);color: var(--color-gray4);letter-spacing: -0.025em;transition: color .3s;}
.contact_step_wrap .step_paging_box .paging_btns .btns_name{display: inline-block;font-size: var(--fs-20);font-weight: 600;line-height: var(--lh-32);color: var(--color-gray4);letter-spacing: -0.025em;transition: color .3s;}
.contact_step_wrap .step_paging_box .paging_btns.active:not(.btns_step_back) .btns_icon,.contact_step_wrap .step_paging_box .paging_btns.active:not(.btns_step_back) .btns_name{color: var(--color-blue);}

#stepForm{}
#stepForm .frm_radio_box{}
#stepForm .frm_radio_box .frm_radio_label{display: inline-flex;align-items: center;justify-content: center;min-width: 160px;height: 46px;padding: 12px;background-color: var(--color-gray3);border-radius: 10px;box-sizing: border-box;cursor: pointer;transition: background-color .3s;}
#stepForm .frm_radio_box .frm_radio_label .frm_label_txt{display: inline-block;font-size: var(--fs-20);font-weight: 400;line-height: var(--lh-24);color: var(--color-blue-txt);-webkit-text-stroke: 0 transparent;transition: color .3s,-webkit-text-stroke .3s;}
#stepForm .frm_radio_box .frm_radio_inp{position: absolute;width: 1px;height: 1px;margin: -1px;padding: 0;overflow: hidden;clip: rect(0,0,0,0);white-space: nowrap;border: 0;}
#stepForm .frm_radio_box .frm_radio_label:has(.frm_radio_inp:checked){background-color: var(--color-blue);}
#stepForm .frm_radio_box .frm_radio_label:has(.frm_radio_inp:checked) .frm_label_txt{color: var(--color-white);-webkit-text-stroke: 0.5px var(--color-white);}
#stepForm .frm_radio_box .frm_radio_label:has(.frm_radio_inp:focus-visible){outline: none;box-shadow: inset 0 0 0 2px var(--color-blue);}

#stepForm .frm_chk_box{}
#stepForm .frm_chk_box .frm_chk_label{display: inline-flex;align-items: center;justify-content: center;min-width: 160px;height: 46px;padding: 12px;background-color: var(--color-gray3);border-radius: 10px;box-sizing: border-box;cursor: pointer;transition: background-color .3s;}
#stepForm .frm_chk_box .frm_chk_label .frm_label_txt{display: inline-block;font-size: var(--fs-20);font-weight: 400;line-height: var(--lh-24);color: var(--color-blue-txt);-webkit-text-stroke: 0 transparent;transition: color .3s,-webkit-text-stroke .3s;}
#stepForm .frm_chk_box .frm_chk_inp{position: absolute;width: 1px;height: 1px;margin: -1px;padding: 0;overflow: hidden;clip: rect(0,0,0,0);white-space: nowrap;border: 0;}
#stepForm .frm_chk_box .frm_chk_label:has(.frm_chk_inp:checked){background-color: var(--color-blue);}
#stepForm .frm_chk_box .frm_chk_label:has(.frm_chk_inp:checked) .frm_label_txt{color: var(--color-white);-webkit-text-stroke: 0.5px var(--color-white);}
#stepForm .frm_chk_box .frm_chk_label:has(.frm_chk_inp:focus-visible){outline: none;box-shadow: inset 0 0 0 2px var(--color-blue);}

#stepForm .frm_label_box{position: absolute;width: 1px;height: 1px;margin: -1px;padding: 0;overflow: hidden;clip: rect(0,0,0,0);white-space: nowrap;border: 0;}
#stepForm .frm_inp_box{position: relative;line-height: 0;}
#stepForm .frm_inp_box .frm_inp{width: 100%;padding: 10px 20px;font-size: var(--fs-16);font-weight: 500;line-height: var(--lh-40);color: var(--color-blue-txt);letter-spacing: -0.025em;background-color: var(--color-gray3);border-radius: 20px;box-sizing: border-box;}
#stepForm .frm_inp_box .frm_inp::placeholder{font-size: var(--fs-16);font-weight: 600;line-height: var(--lh-40);color: var(--color-gray4);letter-spacing: -0.025em;}
#stepForm .frm_inp_box .frm_inp:focus-visible{outline: none;box-shadow: inset 0 0 0 2px var(--color-blue);}

#stepForm .frm_inp_box .frm_txtarea{width: 100%;height: 120px;max-height: 120px;overflow-y: auto;padding: 10px 20px 36px;font-size: var(--fs-16);font-weight: 500;line-height: var(--lh-24);color: var(--color-blue-txt);letter-spacing: -0.025em;background-color: var(--color-gray3);border-radius: 20px;box-sizing: border-box;resize: none;}
#stepForm .frm_inp_box .frm_txtarea:focus-visible{outline: none;box-shadow: inset 0 0 0 2px var(--color-blue);}
#stepForm .frm_inp_box .frm_txtarea::placeholder{font-size: var(--fs-16);font-weight: 500;line-height: var(--lh-24);color: var(--color-gray4);letter-spacing: -0.025em;}
#stepForm .frm_inp_box .frm_length_box{position: absolute;right: 20px;bottom: 12px;z-index: 1;line-height: 0;pointer-events: none;}
#stepForm .frm_inp_box .frm_length_box .length_txt{display: inline-block;font-size: var(--fs-14);font-weight: 400;line-height: var(--lh-20);color: var(--color-gray4);letter-spacing: -0.025em;}

#stepForm .step_fieldset{min-width: 0;margin: 0;padding: 0;border: 0;}
#stepForm .step_frm_wrap{}
#stepForm .step_frm_wrap .frm_flex_box{display: flex;align-items: center;justify-content: center;flex-wrap: wrap;column-gap: 24px;}
#stepForm .step_frm_wrap .frm_flex_box .frm_box{flex: 0 0 auto;margin: 0;}
#stepForm .step_frm_wrap .frm_line + .frm_line{margin-top: 20px;}

@media (max-width: 1440px){}
@media (max-width: 1200px){
    .contact_inner{padding: calc(80px) var(--main-page-x) var(--main-page-x);}
}
@media (max-width: 1024px){
    .contact_inner{height: auto;min-height: 100dvh;display: flex;flex-direction: column;}

    .contact_step_wrap{flex: 1 0 auto;height: auto;}
    .contact_step_wrap .step_bd{flex: 1 0 auto;display: flex;flex-direction: column;}
    .contact_step_wrap #stepForm{flex: 1 0 auto;height: auto;display: flex;flex-direction: column;}
    .contact_step_wrap .step_cnt_box{flex: 1 0 auto;height: auto;min-height: 100%;}

    #stepForm .step_frm_wrap .frm_flex_box{flex-direction: column;column-gap: 0;row-gap: 32px;}
    
    .contanct_loading_wrap .dim_tit_box .dim_tit{font-size: var(--fs-40);line-height: var(--lh-48);}

    .contact_step_wrap .step_cnt_box .box_inner{padding: 16px 0;}
    .contact_step_wrap .step_cnt_box.step_04 .box_inner{width: 100%;max-width: 400px;padding: 16px 0;}
    .contact_step_wrap .step_cnt_box .step_tit{font-size: var(--fs-40);line-height: var(--lh-48);}
    
    .contact_step_wrap .step_cnt_box .step_desc_box + .step_frm_wrap{margin-top: 72px;}
    
    #stepForm .step_frm_wrap .frm_line + .frm_line{margin-top: 16px;}
    #stepForm .frm_inp_box .frm_inp{padding: 10px;line-height: var(--lh-20);border-radius: 10px;}
    #stepForm .frm_inp_box .frm_inp::placeholder{line-height: var(--lh-20);}
    #stepForm .frm_inp_box .frm_txtarea{height: 100px;padding: 10px 10px 36px;line-height: var(--lh-20);border-radius: 10px;}
    #stepForm .frm_inp_box .frm_txtarea::placeholder{line-height: var(--lh-20);}

    #stepForm .frm_chk_box .frm_chk_label{min-width: 100px;height: 30px;padding: 10px;}
    #stepForm .frm_chk_box .frm_chk_label .frm_label_txt{font-size: var(--fs-16);line-height: var(--lh-20);}

    .contact_step_wrap .step_cnt_box .frm_btns_box .frm_btns{border-radius: 10px;}
    .contact_step_wrap .step_cnt_box .frm_btns_box .frm_btns .btns_name{font-size: var(--fs-20);line-height: var(--lh-30);}

    .contact_step_wrap .step_paging_box{padding: 16px 0 0;}
    .contact_step_wrap .step_paging_box .paging_btns{column-gap: 16px;}


    .contact_end_wrap .end_ft .ft_info_box .info_txt{font-size: var(--fs-16);line-height: var(--lh-20);}
    .contact_end_wrap .end_ft .ft_insta_box .info_insta{font-size: var(--fs-30);line-height: var(--lh-40);}
}
@media (max-width: 768px){}
@media (max-width: 650px){
    .contact_inner{padding: calc(68px) var(--main-page-x) var(--main-page-x);}

    .contanct_loading_wrap .dim_tit_box .dim_tit{font-size: var(--fs-30);line-height: var(--lh-36);}
    .contact_step_wrap .step_cnt_box .step_tit_box + .step_desc_box{margin-top: 8px;}
    .contanct_loading_wrap .dim_txt_box .dim_txt{font-size: var(--fs-14);line-height: var(--lh-20);}

    .contact_step_wrap .step_cnt_box .step_tit{font-size: var(--fs-30);line-height: var(--lh-36);}
    .contact_step_wrap .step_cnt_box .step_desc{font-size: var(--fs-14);line-height: var(--lh-20);}


    .contact_step_wrap .step_cnt_box .step_desc_box + .step_frm_wrap{margin-top: 64px;}

    #stepForm .step_frm_wrap .frm_flex_box{row-gap: 20px;}
    #stepForm .frm_radio_box .frm_radio_label{height: 40px;padding: 10px;}
    #stepForm .frm_radio_box .frm_radio_label .frm_label_txt{font-size: var(--fs-16);line-height: var(--lh-20);}


    .contact_step_wrap .step_paging_box .paging_btns{column-gap: 10px;}
    .contact_step_wrap .step_paging_box .paging_btns .btns_name{font-size: var(--fs-16);line-height: var(--lh-20);}
    .contact_step_wrap .step_paging_box .paging_btns .btns_icon{font-size: var(--fs-16);line-height: var(--lh-20);}
}
@media (max-width: 375px){}