@charset "utf-8";

div.container_wr > div.container { position: relative; }

section.visual { position: relative; width: 100%; height: 100vh; }
section.visual > div.video_wrap { position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: -1; }
section.visual > div.video_wrap::before { content: ''; display: block; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.7); }
section.visual > div.video_wrap > video { width: 100%; height: 100%; object-fit: cover; }

section.visual > div { height: 100%; }
section.visual div.visual_con { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; flex-direction: column; text-align: center; }
section.visual div.visual_con > div.title_wrap > p.sub_title { font-family: var(--font-pretendard); font-weight: 700; font-size: 44px; line-height: 1.3; color: #fff; word-break: keep-all; }
section.visual div.visual_con > div.title_wrap > p.sub_title > span { font-weight: 800; color: var(--yellow-color); }
section.visual div.visual_con > div.title_wrap > p.sub_title > span.space { display: none; }

section.visual div.visual_con > div.title_wrap > h2 { margin-top: 10px; font-family: var(--font-pretendard); font-weight: 800; font-size: 96px; line-height: 1.3; color: #fff; word-break: keep-all; }
section.visual div.visual_con > div.title_wrap > p.eng_name { margin-top: 10px; font-family: var(--font-pretendard); font-weight: 600; font-size: 30px; line-height: 1.3; color: #fff; word-break: keep-all; }

section.visual div.visual_con > div.desc_wrap { margin-top: 80px; }
section.visual div.visual_con > div.desc_wrap > p { font-family: var(--font-pretendard); font-weight: 500; font-size: 30px; line-height: 1.4; color: #fff; word-break: keep-all; }
section.visual div.visual_con > div.desc_wrap > p > span { font-weight: 900; }

section.visual div.visual_con > div.desc_wrap > p:last-child { margin-top: 35px; }


section.com_sec {padding-top: 250px;padding-bottom: 250px;overflow: hidden;}
section.sec01 > div > div.flex_wrap {display: flex;justify-content: space-between;align-items: flex-start;width: 100%;margin-bottom: 130px;}

section.sec01 div.left_flex > div.img_wrap { width: fit-content; height: fit-content; }
section.sec01 div.left_flex > div.img_wrap > img { display: block; width: 100%; max-width: 376px; object-fit: cover; }
section.sec01 div.left_flex > div.text_wrap { margin-top: 90px; }
section.sec01 div.left_flex div.text_wrap > p { font-family: var(--font-pretendard); font-weight: 500; font-size: 40px; line-height: 1.5; color: #515151; word-break: keep-all; }
section.sec01 div.left_flex div.text_wrap > p > span { font-weight: 800; color: rgba(0, 0, 0, 0.8);  }
section.sec01 div.left_flex div.text_wrap > p:last-child { margin-top: 1em; }

section.sec01 div.right_flex > div.img_wrap { width: fit-content; height: fit-content; }
section.sec01 div.right_flex > div.img_wrap > img { display: block; width: 100%; max-width: 394px; object-fit: cover; }



/* 1분 자가진단, 하나법률사무소 무료상담 폼 공통 부분 시작 */
section.sec01 .cont_wrap > form > ul > li {width: calc(50% - 25px);margin-bottom: 68px;}
section.sec01 .cont_wrap > form > ul > li > label {display: block;margin-bottom: 20px;font-family: var(--font-pretendard);font-size: 28px;font-weight: 600;}
section.sec01 .cont_wrap > form  div.chks_wrap {display: flex;flex-wrap: wrap;/* justify-content: space-between; */}
section.sec01 .cont_wrap > form  div.chks_wrap > label {display: inline-block;position: relative;margin: 8px 0;padding-left: 33px;font-family: var(--font-pretendard);font-size: 24px;}
section.sec01 .cont_wrap > form  div.chks_wrap > label:not(:last-child) {/* margin-right: 40px; */}
section.sec01 .cont_wrap > form  div.chks_wrap > label > input[type="checkbox"] { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; }
section.sec01 .cont_wrap > form  div.chks_wrap > label::before,
section.sec01 .cont_wrap > form  div.chks_wrap > label::after { content: ''; display: block; box-sizing: border-box; position: absolute; top: -1px; bottom: 0; margin: auto; }
section.sec01 .cont_wrap > form  div.chks_wrap > label::before {border-radius: 2px;width: 22px;height: 22px;border-radius: 2px;border: 1px solid #E6E6E6;background: #fff;left: 0;}
section.sec01 .cont_wrap > form  div.chks_wrap > label::after {border: 2px solid #fff;border-top: 0;border-right: 0;width: 10px;height: 6px;transform: rotate(-45deg);margin: 3px 0 0 3px;opacity: 0;top: -4px;left: 5px;margin: auto;}
section.sec01 .cont_wrap > form  div.chks_wrap > label:has(input[type="checkbox"]:checked)::before {background: var(--sky-color);border: 0;} 
section.sec01 .cont_wrap > form  div.chks_wrap > label:has(input[type="checkbox"]:checked)::after { opacity: 1; transition: .35s linear; } 
section.sec01 .cont_wrap > form  div.chks_wrap > input {width: 260px;height: 45px;padding: 0 10px;border: 1px solid #ECECEC;box-sizing: border-box;}

section.sec01 .cont_wrap > form > .agree-box > div {display: flex;justify-content: center;align-items: center;margin: 10px 0;text-align: center;}
section.sec01 .cont_wrap > form > .agree-box input[type="checkbox"] { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; }
section.sec01 .cont_wrap > form > .agree-box input[type="checkbox"] + label {display: inline-flex;align-items: center;margin-bottom: 0;padding-left: 44px;font-family: var(--font-pretendard);font-size: 30px;font-weight: 500;position: relative;cursor: pointer;}
section.sec01 .cont_wrap > form > .agree-box input[type="checkbox"] + label:before,
section.sec01 .cont_wrap > form > .agree-box input[type="checkbox"] + label:after { content: ''; display: block; box-sizing: border-box; position: absolute; top: -1px; bottom: 0; margin: auto; }
section.sec01 .cont_wrap > form > .agree-box input[type="checkbox"] + label:before {width: 34px;height: 34px;border-radius: 2px;background: #fff;left: 0;}
section.sec01 .cont_wrap > form > .agree-box input[type="checkbox"] + label:after {border: 4px solid #fff;border-top: 0;border-right: 0;width: 20px;height: 12px;transform: rotate(-45deg);margin: 3px 0 0 3px;opacity: 0;top: -4px;left: 7px;margin: auto;} 
section.sec01 .cont_wrap > form > .agree-box input[type="checkbox"]:checked + label:before {background: #3891E0;}
section.sec01 .cont_wrap > form > .agree-box input[type="checkbox"]:checked + label:after { opacity: 1; transition: .35s linear; } 
section.sec01 .cont_wrap > form > .agree-box [class*=privacy_btn] {margin-left: 8px;font-family: var(--font-pretendard);font-size: 30px;font-weight: 600;cursor: pointer;}
section.sec01 .cont_wrap > form > .btn {display: block;max-width: 700px;width: 100%;height: auto;margin: 0 auto;padding: 27.5px 0;border-radius: 45px;color: #fff;font-family: var(--font-pretendard);font-size: 30px;font-weight: 500;transition: .35s;}
section.sec01 .cont_wrap > form > .btn:hover,
section.sec01 .cont_wrap > form > .btn:focus {filter: grayscale(.4);}
/* 1분 자가진단, 하나법률사무소 무료상담 폼 공통 부분 끝 */

section.sec01 div.self_wrap {background: url(../img/img_index_sec01_self_bg.png) center center/cover no-repeat;}
section.sec01 div.self_wrap .title {margin-bottom: 10px;color: #fff;font-family: var(--font-pretendard);font-size: 60px;font-weight: 700;text-align: center;line-height: 1.3;word-break: keep-all;}
section.sec01 div.self_wrap .cate {display: flex;justify-content: center;align-items: center;}
section.sec01 div.self_wrap .cate > label {}
section.sec01 div.self_wrap .cate > div.chks_wrap {display: flex;justify-content: center;}
section.sec01 div.self_wrap .cate > div.chks_wrap > label {color: #fff;margin: 0 25px;}
section.sec01 div.self_wrap .cate > div.chks_wrap > label::before {width: 20px;height: 20px;border-color: #fff;}
section.sec01 div.self_wrap .cont_wrap {padding: 150px 0;}
section.sec01 div.self_wrap .cont_wrap > form > ul {display: flex;flex-wrap: wrap;justify-content: space-between;margin-top: 48px;padding: 100px;border-radius: 50px;box-sizing: border-box;background: #fff;}
section.sec01 div.self_wrap .cont_wrap > form > ul > li:last-child {width: 100%;margin-bottom: 0;}
section.sec01 div.self_wrap .cont_wrap > form > ul > li {/* width: calc(50% - 40px); */width: 100%;}
section.sec01 div.self_wrap .cont_wrap > form > ul > li > input {max-width: 50%;width: 100%;padding: 14px 20px;border: 1px solid #E8E8E8;border-radius: 5px;box-sizing: border-box;font-family: var(--font-pretendard);font-size: 25px;}

section.sec01 div.self_wrap .cont_wrap > form > ul > li > .chks_wrap {margin: -10px -20px;}
section.sec01 div.self_wrap .cont_wrap > form > ul > li > .chks_wrap > label {/* width: calc(50% - 11px); */margin: 10px 20px;color: #898989;}
section.sec01 div.self_wrap .cont_wrap > form > .agree-box {margin: 30px 0 75px;}
section.sec01 div.self_wrap .cont_wrap > form > .agree-box > div {display: flex;justify-content: center;align-items: center;margin: 10px 0;text-align: center;}
section.sec01 div.self_wrap .cont_wrap > form > .agree-box input[type="checkbox"] + label {color: #fff;}
section.sec01 div.self_wrap .cont_wrap > form > .agree-box input[type="checkbox"] + label:before,
section.sec01 div.self_wrap .cont_wrap > form > .agree-box input[type="checkbox"] + label:after { content: ''; display: block; box-sizing: border-box; position: absolute; top: -1px; bottom: 0; margin: auto; }
section.sec01 div.self_wrap .cont_wrap > form > .agree-box [class*=privacy_btn] {color: #8DCAFF;}
section.sec01 div.self_wrap .cont_wrap > form > .btn {background: #3891E0;}
section.sec01 div.self_wrap .cont_wrap > form > .btn:hover,
section.sec01 div.self_wrap .cont_wrap > form > .btn:focus {background-color: #0069d9 !important;border-color: #0062cc !important;}

section.sec01 div.consult_wrap {padding: 140px 0;background: url(../img/img_index_sec01_consult_bg.png) center center/cover no-repeat;}
section.sec01 div.consult_wrap .tit {margin-bottom: 40px;color: #001268;font-family: var(--font-pretendard);font-size: 60px;text-align: center;line-height: 1.3;word-break: keep-all;}
section.sec01 div.consult_wrap .tit > span {font-weight: 700;}
section.sec01 div.consult_wrap .cont_wrap {}
section.sec01 div.consult_wrap .cont_wrap {/* padding: 150px 0; */}
section.sec01 div.consult_wrap .cont_wrap > form > ul {display: flex;flex-wrap: wrap;justify-content: space-between;/* column-gap: 50px; */padding: 100px;border-radius: 50px;box-sizing: border-box;background: #fff;}
/* section.sec01 div.consult_wrap .cont_wrap > form > ul > li {width: calc(50% - 25px);margin-bottom: 68px;} */
section.sec01 div.consult_wrap .cont_wrap > form > ul > li:last-child {width: 100%;margin-bottom: 0;}
section.sec01 div.consult_wrap .cont_wrap > form > ul > li > input {width: 100%;padding: 14px 20px;border: 1px solid #E8E8E8;border-radius: 5px;box-sizing: border-box;font-family: var(--font-pretendard);font-size: 25px;}
section.sec01 div.consult_wrap .cont_wrap > form > ul > li > .chks_wrap {display: block;/* margin: 0 -50px; */}
section.sec01 div.consult_wrap .cont_wrap > form > ul > li > .chks_wrap > label {/* width: calc(25% - 11px); *//* color: #898989; *//* font-family: var(--font-pretendard); */}
section.sec01 div.consult_wrap .cont_wrap > form > ul > li > .chks_wrap > label:not(:last-child) {margin-right: 100px;}
section.sec01 div.consult_wrap .cont_wrap > form > .agree-box {margin: 30px 0 75px;}
section.sec01 div.consult_wrap .cont_wrap > form > .agree-box > div {display: flex;justify-content: center;align-items: center;margin: 10px 0;text-align: center;}
section.sec01 div.consult_wrap .cont_wrap > form > .agree-box p { color: var(--color-main); cursor: pointer; font-size: var(--font16); font-weight: 500; }
section.sec01 div.consult_wrap .cont_wrap > form > .agree-box input[type="checkbox"] + label {color: #333;}
section.sec01 div.consult_wrap .cont_wrap > form > .agree-box input[type="checkbox"] + label:before,
section.sec01 div.consult_wrap .cont_wrap > form > .agree-box input[type="checkbox"] + label:after {content: '';display: block;box-sizing: border-box;position: absolute;top: -1px;bottom: 0;margin: auto;}
section.sec01 div.consult_wrap .cont_wrap > form > .agree-box [class*=privacy_btn] {color: #001268;}
section.sec01 div.consult_wrap .cont_wrap > form > .btn {background: #001268;}
section.sec01 div.consult_wrap .cont_wrap > form > .btn:hover,
section.sec01 div.consult_wrap .cont_wrap > form > .btn:focus {background-color: #001268 !important;border-color: #001268 !important;}

section.sec02 {padding-top: 0;background-color: #f5f5f5;overflow: hidden;}

section.sec02 > div.promise_wrap { width: 100%; max-width: 1633px; margin: 0 auto; }
section.sec02 > div.promise_wrap > p.title { font-family: var(--font-pretendard); font-weight: 500; font-size: 40px; line-height: 1.5; text-align: center; color: #515151; word-break: keep-all; }
section.sec02 > div.promise_wrap > p.title > span { font-weight: 700; color: #000; }

section.sec02 > div.promise_wrap > div.flex_wrap { position: relative; display: flex; justify-content: flex-start; align-items: center; width: 100%; padding-left: 12px; margin-top: 100px; }
section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_box { position: relative; display: flex; justify-content: center; align-items: center; width: 324.9px; text-align: center; aspect-ratio: 1/1; }
section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_box > p { font-family: var(--font-pretendard); font-weight: 500; color: #000; word-break: keep-all; }
section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_box > p > span { font-weight: 900; }

section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_box:not(:nth-of-type(2)) > p { font-size: 30px; line-height: 1.3; }
section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_box:nth-of-type(2) { flex-direction: column; }
section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_box:nth-of-type(2) > p { font-size: 20px; line-height: 1.4; word-break: keep-all; }
section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_box:nth-of-type(2) > p:last-child { margin-top: 1em; }
section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_box:nth-of-type(2) > p > span { font-weight: 800; }

section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_odd { background: url('../img/img_index_sec02_01.png') no-repeat center center; background-size: cover; }
section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_even { background: url('../img/img_index_sec02_02.png') no-repeat center center; background-size: cover; }

section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_box::before { content:''; display: block; position: absolute; left: 0; top: 50%; transform: translate(-50%, -50%); width: 22.64px; height: 22.67px; background-color: var(--acc-color); border-radius: 9999px; }

section.sec02 > div.slide_wrap { position: relative; margin-top: 200px; }
section.sec02 > div.slide_wrap > p.title { font-family: var(--font-pretendard); font-weight: 500; font-size: 40px; line-height: 1.5; color: #515151; text-align: center; word-break: keep-all; }
section.sec02 > div.slide_wrap > p.title > span { font-weight: 700; color: #000; }
section.sec02 div.swiper_slide_wrap { position: relative; max-width: 1660px; margin: 0 auto; overflow: hidden; margin-top: 100px; }
section.sec02 div.swiper_slide_wrap > div.swiper_wrap { max-width: 1520px; width: 100%; margin: 0 auto; overflow: hidden; }

/*section.sec02 div.swiper_slide_wrap div.swiper-slide { width: 356px !important; } */

section.sec02 div.swiper_slide_wrap div.swiper-slide > img { display: block; width: 100%; max-width: 356px; object-fit: cover; }

section.sec02 div.slide_pagination button { display: block; width: 43px; height: 86px; }
section.sec02 div.slide_pagination button > img { display: block; width: 100%; max-width: 43px; object-fit: cover; margin-inline: auto; }
section.sec02 div.slide_pagination button::after { display: none; }
section.sec02 div.slide_pagination > button.swiper-button-prev { left: 0; } 
section.sec02 div.slide_pagination > button.swiper-button-next { right: 0; }

section.sec02 > div.procedure_wrap { padding-top: 200px; }
section.sec02 > div.procedure_wrap > div > p.title { font-family: var(--font-pretendard); font-weight: 500; font-size: 40px; line-height: 1.5; color: #515151; text-align: center; word-break: keep-all; }
section.sec02 > div.procedure_wrap > div > p.title > span { font-weight: 700; color: #000; }

section.sec02 > div.procedure_wrap div.flex_wrap { position: relative; display: flex; justify-content: center; align-items: center; flex-wrap: wrap; width: 100%; margin-top: 100px; background-color: #fff; }
section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box { position: relative; width: 33.3333%; height: 408px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; }

section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box > div.step_wrap { display: flex; justify-content: center; align-items: center; padding: 4.5px 16px; background-color: var(--acc-color); border-radius: 16.5px; }
section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box > div.step_wrap > p { font-family: var(--font-pretendard); font-weight: 600; font-size: 20px; line-height: 1.3; color: #fff; word-break: keep-all; }

section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box > div.icon_wrap { margin-top: 50px; }
section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box > div.icon_wrap > img { display: block; object-fit: cover; }

section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box > div.desc_wrap { margin-top: 30px; }
section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box > div.desc_wrap > p.title { font-family: var(--font-pretendard); font-weight: 700; font-size: 30px; line-height: 1.3; color: #000; word-break: keep-all; }
section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box > div.desc_wrap > p.desc { margin-top: 20px; font-family: var(--font-pretendard); font-weight: 500; font-size: 20px; line-height: 1.4; color: #000; }

section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box:nth-of-type(2) > div.desc_wrap > p.desc { margin-bottom: 1em; word-break: keep-all; }

section.sec02 > div.procedure_wrap div.flex_wrap::before { content:''; display: block; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 100%; max-width: 1393px; height: 1px; background-color: #d9d9d9; }

section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box:not(:nth-of-type(3)):not(:nth-of-type(6))::before { content: ''; display: block; position: absolute; right: 0; width: 1px; height: 369.5px; background-color: #d9d9d9; }

section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box:nth-of-type(-n+3)::before { bottom: 0; }
section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box:nth-of-type(n+4)::before { top: 0; }

section.sec03 div.recovery_wrap {margin-bottom: 150px;}
section.sec03 div.recovery_wrap > .title {margin-bottom: 10px;font-family: var(--font-pretendard);font-size: 60px;text-align: center;line-height: 1.3;word-break: keep-all;}
section.sec03 div.recovery_wrap > .title > span {font-weight: 700;}
section.sec03 div.recovery_wrap > .txt {margin-bottom: 50px;font-family: var(--font-pretendard);color: #808080;font-size: 22px;text-align: center;}
section.sec03 div.recovery_wrap > ul {display: flex;flex-wrap: wrap;}
section.sec03 div.recovery_wrap > ul > li {display: flex;flex-direction: column;justify-content: center;align-items: center;width: 33.333%;padding: 91px 0;}
section.sec03 div.recovery_wrap > ul > li:nth-child(1) {background: url(../img/img_index_sec01_recovery01.png) center center / cover no-repeat;}
section.sec03 div.recovery_wrap > ul > li:nth-child(2) {background: url(../img/img_index_sec01_recovery02.png) center center / cover no-repeat;}
section.sec03 div.recovery_wrap > ul > li:nth-child(3) {background: url(../img/img_index_sec01_recovery03.png) center center / cover no-repeat;}
section.sec03 div.recovery_wrap > ul > li:nth-child(4) {background: url(../img/img_index_sec01_recovery04.png) center center / cover no-repeat;}
section.sec03 div.recovery_wrap > ul > li:nth-child(5) {background: url(../img/img_index_sec01_recovery05.png) center center / cover no-repeat;}
section.sec03 div.recovery_wrap > ul > li:nth-child(6) {background: url(../img/img_index_sec01_recovery06.png) center center / cover no-repeat;}
section.sec03 div.recovery_wrap > ul > li > .tit {margin-bottom: 15px;font-family: var(--font-pretendard);font-size: 42px;text-align: center;}
section.sec03 div.recovery_wrap > ul > li:nth-child(2n-1) > .tit {color: #18335F;}
section.sec03 div.recovery_wrap > ul > li:nth-child(2n) > .tit {color: #fff;}
section.sec03 div.recovery_wrap > ul > li > .tit > span {font-weight: 700;}
section.sec03 div.recovery_wrap > ul > li > .txt {font-family: var(--font-pretendard);font-size: 22px;text-align: center;}
section.sec03 div.recovery_wrap > ul > li:nth-child(2n-1) > .txt {color: #6E737C;}
section.sec03 div.recovery_wrap > ul > li:nth-child(2n) > .txt {color: rgba(255,255,255,.5);}
section.sec03 div.recovery_wrap > ul > li > .txt > span {display: block;}

section.sec03 div.history_wrap { position: relative; width: 100%; max-width: 1204px; margin: 0 auto; margin-top: 150px; }
section.sec03 div.history_wrap > div.flex_wrap { display: flex; justify-content: space-around; align-items: flex-end; width: 100%; text-align: center; padding-bottom: 4px; }
section.sec03 div.history_wrap > div.flex_wrap > div.flex_box > p.year { font-family: var(--font-pretendard); font-weight: 600; font-size: 30px; line-height: 1.3; color: var(--acc-color); word-break: keep-all; }
section.sec03 div.history_wrap > div.flex_wrap > div.flex_box > p.desc { margin-top: 6px; font-family: var(--font-pretendard); font-weight: 500; font-size: 24px; line-height: 1.3; color: #515151; word-break: keep-all; }
section.sec03 div.history_wrap > div.flex_wrap > div.flex_box > div.circle_wrap { width: 16px; margin: 0 auto; margin-top: 22px; }
section.sec03 div.history_wrap > div.flex_wrap > div.flex_box > div.circle_wrap > img { display: block; width: 100%; max-width: 16px; object-fit: cover; }
section.sec03 div.history_wrap > div.flex_wrap > div.flex_box:last-child > div.circle_wrap > img.m_img { display: none; }

section.sec03 div.history_wrap > div.flex_wrap > div.flex_box:last-child > div.circle_wrap { margin-top: 11px; }

section.sec03 div.history_wrap::after { content:''; display: block; position: absolute; width: 100%; height: 22px; left: 0; bottom: 0; background: url('../img/img_index_sec01_timeline.png') no-repeat center center; background-size: cover; }

section.sec03 div.location_wrap { margin-top: 150px; }
section.sec03 div.location_wrap > div.map_wrap { width: 100%; max-width: 1502px; margin: 0 auto; border-radius: 234px; }
section.sec03 div.location_wrap > div.map_wrap > div { border-radius: inherit; }
section.sec03 div.location_wrap > div.map_wrap > div > div:last-child { display: none; }

section.sec03 div.location_wrap > div.flex_wrap { display: flex; justify-content: space-between; align-items: center; margin-top: 30px; }
section.sec03 div.location_wrap > div.flex_wrap > div.flex_box { display: flex; justify-content: flex-start; align-items: center; column-gap: 15px; }
section.sec03 div.location_wrap > div.flex_wrap > div.flex_box > p.title { font-family: var(--font-pretendard); font-weight: 600; font-size: 40px; line-height: 1.3; color: #515151; word-break: keep-all; }
section.sec03 div.location_wrap > div.flex_wrap > div.flex_box > p.desc { font-family: var(--font-pretendard); font-weight: 500; font-size: 20px; line-height: 1.3; color: rgba(0, 0, 0, 0.8); word-break: keep-all; }


div.form_wrap { position: fixed; left: 0; bottom: 0; width: 100%; height: 80px; background-color: #001268; z-index: 10; }
div.form_wrap > div { height: 100%; }
div.form_wrap > div.m_arrow { display: none; }
div.form_wrap form { height: 100%; }
div.form_wrap div.form_visi_wrap { display: flex; justify-content: flex-start; align-items: center; width: 100%; height: 100%; }

div.form_wrap div.form_visi_wrap > div.form_title_wrap { display: flex; justify-content: flex-start; align-items: center; margin-right: 16px; }
div.form_wrap div.form_visi_wrap > div.form_title_wrap > p.form_title { font-family: var(--font-pretendard); font-weight: 700; font-size: 30px; line-height: 1.3; color: #fff; }
div.form_wrap div.form_visi_wrap > div.form_title_wrap > p.form_title > span { font-size: 24px; }
div.form_wrap div.form_visi_wrap > div.form_title_wrap > p.form_title02 { margin-left: 11px; font-family: var(--font-pretendard); font-weight: 600; font-size: 30px; line-height: 1.3; color: #fff; }

div.form_wrap div.form_visi_wrap > div.frm_phone { width: 460px; margin-right: 11px; }
div.form_wrap div.form_visi_wrap > div.frm_phone > input { width: 100%; height: 49px; background-color: rgba(32, 65, 220, 0.33); font-family: var(--font-pretendard); font-weight: 400; font-size: 20px; line-height: 1.3; padding-left: 1em; border: none; border-radius: 5px; color: #fff; }
div.form_wrap div.form_visi_wrap > div.frm_phone > input::-webkit-inner-spin-button { appearance: none; -moz-appearance: none; -webkit-appearance: none; outline: none; border: none; }
div.form_wrap div.form_visi_wrap > div.frm_phone > input::placeholder { color: #5f6cad; }

div.form_wrap div.form_visi_wrap > div.frm_check { margin-top: 30px; }
div.form_wrap div.form_visi_wrap > div.frm_check > label { font-family: var(--font-pretendard); font-weight: 500; font-size: 16px; line-height: 1.3; color: #a0a0a0; }

div.form_wrap div.form_visi_wrap > div.frm_btnBox { margin-left: 14px; }
div.form_wrap div.form_visi_wrap > div.frm_btnBox > button { display: flex; justify-content: center; align-items: center; width: 367px; height: 49px; font-family: var(--font-pretendard); font-weight: 500; font-size: 24px; line-height: 1.3; color: #fff; border-radius: 39px; background-image: linear-gradient(to right, #2041DC, #050A24);}

div.form_wrap div.ico_wrap { display: flex; justify-content: flex-start; align-items: center; column-gap: 10px; margin-left: 94px; }

footer div.ico_wrap { display: none; }

section.sec01 {position: relative;padding-bottom: 0;}

section.sec01::before { content: ''; display: block; position: absolute; left: -17%; bottom: -10%; width: 1177px; height: 800px; background: url('../img/img_sec_bg.png') no-repeat center center; background-size: cover; }

@media screen and (max-width: 1680px){
    section.sec02 div.slide_pagination > button.swiper-button-prev { left: 25px; }
    section.sec02 div.slide_pagination > button.swiper-button-next { right: 25px; }
    section.sec02 div.swiper_slide_wrap > div.swiper_wrap { width: 90%; }
    section.sec02 div.swiper_slide_wrap div.swiper-slide { width: auto; }
}

@media screen and (max-width: 1640px){

    section.sec01 div.self_wrap .cont_wrap > form > ul,
    section.sec01 div.consult_wrap .cont_wrap > form > ul {padding: 80px 60px;}
    
    section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_odd { background-size: cover; }
    section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_even { background-size: cover; }

}

@media screen and (max-width: 1530px){
    section.visual div.visual_con > div.title_wrap > p.sub_title { font-size: 40px; }
    section.visual div.visual_con > div.title_wrap > h2 { font-size: 92px; }
    section.visual div.visual_con > div.title_wrap > p.eng_name { font-size: 26px; }
    section.visual div.visual_con > div.desc_wrap > p { font-size: 26px; }

    div.form_wrap div.form_visi_wrap { justify-content: center; }

    div.form_wrap div.form_visi_wrap > div.frm_phone { width: 25%; }
    div.form_wrap div.form_visi_wrap > div.frm_phone > input { width: 100%; }

    div.form_wrap div.form_visi_wrap > div.frm_btnBox { width: 20%; }
    div.form_wrap div.form_visi_wrap > div.frm_btnBox > button { width: 100%; }

    section.sec01 div.left_flex div.text_wrap > p { font-size: 36px; }

    section.sec01 > div > div.flex_wrap > div.left_flex img { display: block; width: 40%; max-width: 376px; }
    
    section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_odd { background-size: cover; }
    section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_even { background-size: cover; }

    section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_box:not(:nth-of-type(2)) > p { font-size: 24px; }
    section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_box:nth-of-type(2) > p { font-size: 16px; }

    section.sec02 div.swiper_slide_wrap > div.swiper_wrap { width: 80%; }
    section.sec02 div.slide_pagination > button.swiper-button-prev { left: 5%; }
    section.sec02 div.slide_pagination > button.swiper-button-next { right: 5%; }

    section.sec03 div.location_wrap > div.map_wrap > div { width: 100% !important; }

    section.sec03 div.location_wrap > div.flex_wrap { column-gap: 0; justify-content: space-between; }
    section.sec03 div.location_wrap > div.flex_wrap > div.flex_box { justify-content: space-between; column-gap: 10px; }

    section.sec03 div.location_wrap > div.flex_wrap > div.flex_box > p.title { font-size: 36px; }
    section.sec03 div.location_wrap > div.flex_wrap > div.flex_box > p.desc { font-size: 18px; }
}

@media screen and (max-width: 1480px){

    section.sec01 .cont_wrap > form > ul > li {margin-bottom: 48px;}
    section.sec01 div.self_wrap .cont_wrap > form > ul > li > .chks_wrap {}
    section.sec01 div.self_wrap .cont_wrap > form > ul > li > .chks_wrap > label {/* width: 100%; */}

}

@media screen and (max-width: 1440px){
    section.sec01 div.left_flex div.text_wrap > p { font-size: 32px; }

}

@media screen and (max-width: 1380px){
    
}

@media screen and (max-width: 1350px){
    section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box { width: 33.3333%; }
    
    section.sec03 div.location_wrap > div.flex_wrap > div.flex_box > p.title { font-size: 32px; }
    section.sec03 div.location_wrap > div.flex_wrap > div.flex_box > p.desc { font-size: 16px; }

}

@media screen and (max-width: 1280px){

    section.visual div.visual_con > div.title_wrap > p.sub_title { font-size: 36px; }
    section.visual div.visual_con > div.title_wrap > h2 { font-size: 86px; }
    section.visual div.visual_con > div.title_wrap > p.eng_name { font-size: 22px; }
    section.visual div.visual_con > div.desc_wrap > p { font-size: 22px; }

    section.sec01 div.left_flex div.text_wrap > p { font-size: 26px; }

    section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_box:not(:nth-of-type(2)) > p { font-size: 20px; }
    section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_box:nth-of-type(2) > p { padding-left: 20px; padding-right: 20px; }
    section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_box:nth-of-type(2) > p > br { display: none; }

    section.sec02 div.slide_pagination button > img { width: 90%; }

    div.form_wrap div.form_visi_wrap > div.form_title_wrap > p.form_title { font-size: 28px; }
    div.form_wrap div.form_visi_wrap > div.form_title_wrap > p.form_title02 { font-size: 24px; }

    section.sec01::before { width: 941.6px; height: 640px; }

}

@media screen and (max-width: 1240px){
    section.sec03 div.history_wrap::after { background-size: contain; }
}

@media screen and (max-width: 1200px){
    section.sec01 .cont_wrap > form > ul > li > label {/* margin-bottom: 10px; */font-size: 26px;}
    section.sec01 .cont_wrap > form div.chks_wrap > label {font-size: 22px;}
    section.sec01 div.self_wrap .cont_wrap > form > ul > li > input {font-size: 22px;}
    section.sec01 div.consult_wrap .cont_wrap > form > ul > li > input {font-size: 18px;}
    section.sec01 div.self_wrap .title,
    section.sec01 div.consult_wrap .tit {font-size: 50px;}
    section.sec01 div.consult_wrap .cont_wrap > form > ul > li > label {font-size: 26px;}

    section.sec03 div.recovery_wrap > .title {font-size: 50px;}
    section.sec03 div.recovery_wrap > .txt {font-size: 20px;}
    
    div.form_wrap div.form_visi_wrap > div.form_title_wrap > p.form_title { font-size: 28px; }
    div.form_wrap div.form_visi_wrap > div.form_title_wrap > p.form_title02 { font-size: 22px; }
    div.form_wrap div.ico_wrap { margin-left: 10px; }

}

@media screen and (max-width: 1190px){
    

}

@media screen and (max-width: 1180px){

    section.com_sec { padding-top: 200px; padding-bottom: 200px; }

    section.visual div.visual_con > div.title_wrap > p.sub_title { font-size: 32px; }
    section.visual div.visual_con > div.title_wrap > h2 { font-size: 80px; }

    section.sec01 {padding-bottom: 0;}
    section.sec01 div.left_flex div.text_wrap > p { font-size: 22px; }

    section.sec01 div.right_flex > div.img_wrap > img { width: 80%; margin-left: auto; }

    section.sec02 {padding-top: 0;}
    section.sec02 > div.promise_wrap > div.flex_wrap { margin-top: 70px; padding-left: 0; }

    section.sec02 > div.promise_wrap > div.flex_wrap { flex-direction: column; }
    section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_odd { background: url('../img/img_index_sec02_01_m.png') no-repeat center center; }
    section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_even { background: url('../img/img_index_sec02_02_m.png') no-repeat center center; }
    section.sec02 > div.promise_wrap > div.flex_wrap > div.flex_box::before { left: 50%; top: 0; }

    section.sec02 div.swiper_slide_wrap { margin-top: 70px; }
    section.sec02 div.slide_pagination button > img { width: 80%; }
    

    section.sec02 > div.procedure_wrap div.flex_wrap { margin-top: 70px; }
    section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box > div.step_wrap > p { font-size: 16px; }
    section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box > div.icon_wrap > img { width: 80%; margin-inline: auto; }
    section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box > div.desc_wrap > p.title { font-size: 26px; }
    section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box > div.desc_wrap > p.desc { font-size: 16px; }

    section.sec03 div.history_wrap > div.flex_wrap > div.flex_box > p.year { font-size: 24px; }
    section.sec03 div.history_wrap > div.flex_wrap > div.flex_box > p.desc { font-size: 20px; }

    section.sec03 div.location_wrap > div.flex_wrap { flex-direction: column; align-items: flex-start; justify-content: center; row-gap: 20px; }
}

@media screen and (max-width: 1080px){
    
}

@media screen and (max-width: 1024px){
    section.sec01 .cont_wrap > form > ul > li {width: calc(50% - 15px);margin-bottom: 30px;}
    section.sec01 .cont_wrap > form > ul > li > label {font-size: 20px;}
    section.sec01 .cont_wrap > form > ul > li > .chks_wrap > label {font-size: 18px; }
    section.sec01 .cont_wrap > form > .agree-box input[type="checkbox"] + label {font-size: 26px;}
    section.sec01 .cont_wrap > form > .agree-box [class*=privacy_btn] {font-size: 26px;}
    section.sec01 .cont_wrap > form > .btn {max-width: 600px;font-size: 26px;}
    section.sec01 div.self_wrap .cont_wrap > form > ul,
    section.sec01 div.consult_wrap .cont_wrap > form > ul {padding: 60px 40px;border-radius: 30px;}
    section.sec01 div.self_wrap .cont_wrap > form > ul > li {margin-bottom: 30px;} 
    section.sec01 div.self_wrap .cont_wrap > form > ul > li > input {font-size: 18px;}
    section.sec01 div.consult_wrap .cont_wrap > form > ul > li {margin-bottom: 30px;}
    section.sec01 div.consult_wrap .cont_wrap > form > ul > li > label {font-size: 20px;}
    
    section.sec03 div.recovery_wrap > ul > li {width: 50%;padding: 70px 0;}
    section.sec03 div.recovery_wrap > ul > li > .tit {font-size: 36px;}
    section.sec03 div.recovery_wrap > ul > li > .txt {font-size: 20px;}

    div.form_wrap div.form_visi_wrap > div.frm_phone { width: 20%; }
    div.form_wrap div.form_visi_wrap > div.frm_phone > input { font-size: 16px; }
    div.form_wrap div.form_visi_wrap > div.frm_phone > input::placeholder { font-size: 16px; }
}

@media screen and (max-width: 970px){
    section.visual div.visual_con > div.title_wrap > p.sub_title { font-size: 28px; }
    section.visual div.visual_con > div.title_wrap > h2 { font-size: 74px; }
    section.visual div.visual_con > div.title_wrap > p.eng_name { font-size: 20px; }
    section.visual div.visual_con > div.desc_wrap > p { font-size: 20px; }

}

@media screen and (max-width: 960px){
    
    section.sec01 div.left_flex > div.text_wrap { margin-top: 50px; }
    section.sec01 div.left_flex div.text_wrap > p { font-size: 20px; }

    section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box > div.desc_wrap > p.title { font-size: 24px; }
    

    div.form_wrap div.form_visi_wrap > div.form_title_wrap > p.form_title { font-size: 22px; }
    div.form_wrap div.form_visi_wrap > div.form_title_wrap > p.form_title02 { font-size: 20px; }
}

@media screen and (max-width: 940px){
    
}

@media screen and (max-width: 920px){
    div.form_wrap div.form_visi_wrap > div.frm_phone { width: 20%; }
    div.form_wrap div.form_visi_wrap > div.frm_btnBox > button { font-size: 20px }
}

@media screen and (max-width: 910px){
    div.form_wrap { height: auto; padding-top: 15px; padding-bottom: 15px; }
    div.form_wrap div.form_visi_wrap { flex-wrap: wrap; row-gap: 15px; justify-content: flex-start; }
    div.form_wrap div.form_visi_wrap > div.form_title_wrap { width: 100%; justify-content: flex-start; }
    div.form_wrap div.form_visi_wrap > div.frm_phone { width: 30%; }
    div.form_wrap div.form_visi_wrap > div.frm_btnBox { width: 30%; }
}

@media screen and (max-width: 900px){
    section.visual div.visual_con > div.title_wrap > p.sub_title { font-size: 24px; }
    section.visual div.visual_con > div.title_wrap > h2 { font-size: 60px; }
    section.visual div.visual_con > div.desc_wrap > p { font-size: 18px; }

}

@media screen and (max-width: 885px){
    
    
}

@media screen and (max-width: 880px){
    section.visual div.visual_con > div.title_wrap > p.sub_title { font-size: 24px; }
    section.visual div.visual_con > div.title_wrap > h2 { font-size: 60px; }

    section.visual div.visual_con > div.desc_wrap > p { font-size: 18px; }

    section.sec01 div.left_flex { width: 50%; }
    section.sec01 div.left_flex div.text_wrap > p > br { display: none; }
    section.sec01 div.right_flex > div.img_wrap > img { width: 70%; }
    
    section.sec02 > div.procedure_wrap div.flex_wrap::before { width: 90%; top: 33.3333%; }
    section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box { width: 50%; }
    section.sec02 > div.procedure_wrap div.flex_wrap::after {content: ''; display: block; position: absolute; left: 50%; top: 66.6666%; transform: translate(-50%, -50%); width: 90%; max-width: 1393px; height: 1px; background-color: #d9d9d9;}

    section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box:nth-of-type(2)::before { display: none !important; }
    section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box:nth-of-type(4)::before { right: revert !important; left: -1px; height: 100% !important; }
    
    
}

@media screen and (max-width: 810px){
    footer div.ico_wrap { position: fixed; right: 15px; display: flex; justify-content: center; align-items: center; flex-direction: column; row-gap: 10px; bottom: 34%; z-index: 10; } 
    footer div.ico_wrap > button { display: block; width: 51px; height: 51px; }
    #top_btn { bottom: 25% !important; right: 15px !important; }
    div.form_wrap div.form_visi_wrap { flex-wrap: wrap; width: 100%; }
    div.form_wrap div.form_visi_wrap > div.frm_phone { width: 52.5%; margin-right: auto; }
    div.form_wrap div.form_visi_wrap > div.frm_check { margin-top: 0; margin: 10px 0; order: 3; margin-right: auto; }
    div.form_wrap div.form_visi_wrap > div.frm_btnBox { width: 40%; order: 2; }
    div.form_wrap div.form_visi_wrap > div.ico_wrap { display: none; }
}

@media screen and (max-width: 784px){

    section.com_sec { padding-top: 100px; padding-bottom: 100px; overflow: hidden; }

    section.sec01 {padding-bottom: 0;}

    
    section.sec01 .cont_wrap > form > .agree-box input[type="checkbox"] + label:before {width: 22px;height: 22px;}
    section.sec01 .cont_wrap > form > .agree-box input[type="checkbox"] + label:after {width: 14px;height: 8px;border-width: 3px;left: 5px;top: -5px !important;!i;!;}
    section.sec01 .cont_wrap > form > .agree-box input[type="checkbox"] + label {padding-left: 34px;font-size: 22px;}
    section.sec01 .cont_wrap > form > .agree-box [class*=privacy_btn] {font-size: 22px;}

    section.sec01 .cont_wrap > form > .btn {max-width: 500px;padding: 18px 0;font-size: 22px;}
    section.sec01 div.self_wrap .title,
    section.sec01 div.consult_wrap .tit {font-size: 40px;}
    section.sec01 div.self_wrap .cate {margin-bottom: 32px;}

    section.sec02 {padding-top: 0;}
    section.sec02 > div.promise_wrap > p.title { font-size: 36px; }
    section.sec02 > div.slide_wrap > p.title { font-size: 36px; }
    section.sec02 div.swiper_slide_wrap > div.swiper_wrap { width: 70%; }
    section.sec02 div.swiper_slide_wrap div.swiper-slide > img { width: 80%; margin-inline: auto; }
    section.sec02 div.slide_pagination > button.swiper-button-prev { left: 10%; }
    section.sec02 div.slide_pagination > button.swiper-button-next { right: 10%; }

    section.sec02 > div.procedure_wrap > div > p.title { font-size: 36px; }

    section.sec03 div.recovery_wrap > .title {margin-bottom: 5px;font-size: 40px;}
    section.sec03 div.recovery_wrap > .txt {font-size: 18px;}
    section.sec03 div.recovery_wrap > ul > li {padding: 60px 0;}
    section.sec03 div.recovery_wrap > ul > li > .tit {margin-bottom: 10px;font-size: 28px;}
    section.sec03 div.recovery_wrap > ul > li > .txt {font-size: 18px;}
    section.sec03 div.history_wrap > div.flex_wrap > div.flex_box > p.year { font-size: 20px; }
    section.sec03 div.history_wrap > div.flex_wrap > div.flex_box > p.desc { font-size: 16px; }
    section.sec03 div.location_wrap > div.map_wrap { border-radius: 0; }
    section.sec03 div.location_wrap > div.flex_wrap > div.flex_box > p.title { font-size: 28px; }

    footer.ft_wrap div.ft_top { flex-direction: column; justify-content: center; row-gap: 25px; }
    footer.ft_wrap div.ft_top div.ft_info_wrap > div.ft_company > p { text-align: center; }
    footer.ft_wrap div.ft_top div.ft_info_wrap > div.ft_info_box { justify-content: center; }

    footer.ft_wrap div.ft_bot { flex-direction: column; justify-content: center; row-gap: 16px; }

    section.sec02 div.slide_pagination button > img { width: 70%; }


}

@media screen and (max-width: 740px){
    section.visual div.visual_con > div.title_wrap > p.sub_title { font-size: 20px; }
    section.visual div.visual_con > div.title_wrap > h2 { font-size: 54px; }

    section.sec01 .cont_wrap > form > ul > li > label {font-size: 18px;}
    section.sec01 .cont_wrap > form > ul > li > .chks_wrap > label,
    section.sec01 div.consult_wrap .cont_wrap > form > ul > li > input {font-size: 16px;}
    section.sec01 div.self_wrap .cont_wrap > form > ul,
    section.sec01 div.consult_wrap .cont_wrap > form > ul {padding: 60px 40px;}
    section.sec01 div.self_wrap .cont_wrap > form > ul > li {/* width: calc(50% - 10px); */}
    section.sec01 div.self_wrap .cont_wrap > form > ul > li > input {font-size: 16px;}
    section.sec01 div.consult_wrap .cont_wrap > form > ul > li > label {font-size: 18px;}

    section.sec02 > div.slide_wrap { margin-top: 100px; }
    section.sec02 > div.procedure_wrap { padding-top: 100px; }

    section.sec03 div.history_wrap { margin-top: 100px; }
    section.sec03 div.location_wrap { margin-top: 100px; }
}

@media screen and (max-width: 670px){

    section.visual { height: 80vh; }
    section.visual div.visual_con > div.title_wrap > p.sub_title { font-size: 18px; }
    section.visual div.visual_con > div.title_wrap > h2 { font-size: 48px; }
    section.visual div.visual_con > div.title_wrap > p.eng_name { font-size: 18px; }

    section.visual div.visual_con > div.desc_wrap { margin-top: 50px; }
    section.visual div.visual_con > div.desc_wrap > p { font-size: 16px; }
    section.visual div.visual_con > div.desc_wrap > p:last-child > br { display: none; }

    section.sec01 > div > div.flex_wrap { flex-direction: column; row-gap: 40px; }

    section.sec01 div.left_flex { width: 100%; }
    section.sec01 > div > div.flex_wrap > div.left_flex img { width: 70%; margin-inline: auto; }
    section.sec01 div.left_flex div.text_wrap > p { font-size: 18px; text-align: center; }

    section.sec01 div.right_flex { width: 100%; }
    section.sec01 div.right_flex > div.img_wrap { margin-inline: auto; }
    section.sec01 div.right_flex > div.img_wrap > img { width: 80%; margin-inline: auto; }

    section.sec01 div.self_wrap .title,
    section.sec01 div.consult_wrap .tit {font-size: 36px;}
    section.sec01 .cont_wrap > form div.chks_wrap > label,
    section.sec01 div.consult_wrap .cont_wrap > form > ul > li > input{font-size: 18px;}
    section.sec01 div.self_wrap .cont_wrap > form > ul > li > input {max-width: 100%;}

    section.sec02 > div.promise_wrap > p.title { font-size: 32px; }
    section.sec02 > div.slide_wrap > p.title { font-size: 32px; }
    section.sec02 > div.procedure_wrap > div > p.title { font-size: 32px; }

    section.sec02 div.swiper_slide_wrap div.swiper-slide > img { width: 100%; }
    
    section.sec03 div.recovery_wrap > .title {font-size: 36px;}

    section.sec01::before { left: -55%; }

}

@media screen and (max-width: 630px){
    section.sec01 div.self_wrap .cont_wrap > form > ul,
    section.sec01 div.consult_wrap .cont_wrap > form > ul {padding: 30px;border-radius: 10px;}
    section.sec01 div.self_wrap .cont_wrap > form > ul > li,
    section.sec01 div.consult_wrap .cont_wrap > form > ul > li {width: 100%;}
    section.sec01 div.self_wrap .cont_wrap > form > ul > li > .chks_wrap > label {/* width: calc(50% - 10px); */}
    section.sec01 div.consult_wrap .cont_wrap > form > ul > li > .chks_wrap > label {width: 100%;}
    section.sec01 div.consult_wrap .cont_wrap > form > .agree-box {margin: 30px 0 50px;}
    section.sec01 .cont_wrap > form > .agree-box input[type="checkbox"] + label {padding-left: 28px;font-size: 18px;}
    section.sec01 .cont_wrap > form > .agree-box input[type="checkbox"] + label:before {width: 18px;height: 18px;}
    section.sec01 .cont_wrap > form > .agree-box input[type="checkbox"] + label:after {width: 10px;height: 6px;border-width: 2px;}
    section.sec01 .cont_wrap > form > .agree-box [class*=privacy_btn] {font-size: 18px;}

    section.sec02 div.slide_pagination button > img { width: 50%; }

    section.sec03 div.recovery_wrap > ul > li {width: 100%;padding: 50px 0;}
    section.sec03 div.recovery_wrap > ul > li > .tit {margin-bottom: 10px;font-size: 26px;}
    section.sec03 div.recovery_wrap > ul > li > .txt {font-size: 16px;}

    section.sec03 div.location_wrap > div.flex_wrap > div.flex_box  { flex-direction: column; justify-content: flex-start; align-items: flex-start; gap: 5px; }

    div.form_wrap div.form_visi_wrap > div.frm_phone > input { font-size: 16px; padding-left: 1em; }

    section.sec02 div.slide_pagination > button.swiper-button-prev { left: 5%; }
    section.sec02 div.slide_pagination > button.swiper-button-next { right: 5%; }
    

}

@media screen and (max-width: 570px){
    section.sec03 div.history_wrap > div.flex_wrap { flex-direction: column; justify-content: flex-start; align-items: flex-start; gap: 15px; }
    section.sec03 div.history_wrap > div.flex_wrap > div.flex_box { display: flex; justify-content: flex-start; align-items: center; gap: 15px; }

    section.sec03 div.history_wrap > div.flex_wrap > div.flex_box > div.circle_wrap { order: 1; width: auto; margin-top: 0; }
    section.sec03 div.history_wrap > div.flex_wrap > div.flex_box > div.circle_wrap > img { max-width: revert; }
    section.sec03 div.history_wrap > div.flex_wrap > div.flex_box:last-child > div.circle_wrap > img.pc_img { display: none; }
    section.sec03 div.history_wrap > div.flex_wrap > div.flex_box:last-child > div.circle_wrap > img.m_img { display: block; }
    section.sec03 div.history_wrap > div.flex_wrap > div.flex_box > p.desc { order: 2; margin-top: 0; }
    section.sec03 div.history_wrap > div.flex_wrap > div.flex_box > p.desc br { display: none; }
    section.sec03 div.history_wrap > div.flex_wrap > div.flex_box > p.year { order: 3; }

    section.sec03 div.history_wrap::after { position: absolute; width: 16px; height: 100%; left: 0; bottom: 0; background: url('../img/img_index_sec01_timeline_m.png') no-repeat center center; background-size: cover; }
}

@media screen and (max-width: 550px){
    
}

@media screen and (max-width: 540px){
   
    section.sec01 div.right_flex > div.img_wrap > img { width: 100%; }

    section.sec02 > div.procedure_wrap div.flex_wrap { flex-direction: column; }
    section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box { padding-left: 15px; padding-right: 15px; width: 100%; height: auto; padding-top: 30px; padding-bottom: 30px; }
    section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box:nth-of-type(4)::before { height: 1px !important; }
    section.sec02 > div.procedure_wrap div.flex_wrap > div.flex_box:not(:nth-of-type(6))::before { content: ''; display: block !important; width: 90% !important; height: 1px !important; position: absolute; left: 50% !important; top: revert !important; bottom: 0; right: revert !important; background-color: #d9d9d9; transform: translateX(-50%); }

    section.sec02 > div.procedure_wrap div.flex_wrap::before { display: none; }
    section.sec02 > div.procedure_wrap div.flex_wrap::after { display: none; }

    section.sec03 div.history_wrap::-webkit-scrollbar { height: 5px; }
    section.sec03 div.history_wrap::-webkit-scrollbar-thumb { background-color: var(--acc-color); }
    section.sec03 div.history_wrap::-webkit-scrollbar-track { background-color: #f9f9f9; }

    section.sec01::before { width: 753px; height: 512px; left: -40%;}
}

@media screen and (max-width: 490px){
    section.visual div.visual_con > div.title_wrap > h2 { font-size: 36px; }
    section.visual div.visual_con > div.desc_wrap > p:last-child { margin-top: 20px; }

    section.visual div.visual_con > div.title_wrap > p.sub_title > span.space { display: block; }

    section.sec01 div.self_wrap .cont_wrap > form > ul > li > .chks_wrap > label {width: 100%;}


}

@media screen and (max-width: 475px){
    
}

@media screen and (max-width: 425px){

    section.visual { padding-top: 5vh; }
    section.visual div.visual_con > div.title_wrap > p.sub_title { font-size: 16px; }
    section.visual div.visual_con > div.title_wrap > h2 { font-size: 32px; margin-top: 10px; }

    section.sec01 div.self_wrap .title {font-size: 30px;}
    
    section.sec02 > div.promise_wrap > p.title { font-size: 30px; }
    section.sec02 > div.slide_wrap > p.title { font-size: 30px; }
    section.sec02 > div.procedure_wrap > div > p.title { font-size: 30px; }

    section.sec03 div.recovery_wrap > .title {font-size: 30px;}
    
    footer div.ico_wrap { bottom: 37.5%; }
    #top_btn { bottom: 30% !important; }
    div.form_wrap div.form_visi_wrap { row-gap: 5px; }
    div.form_wrap div.form_visi_wrap > div.frm_check { margin-top: 0; margin-bottom: 0; }

    footer div.ico_wrap > button { width: fit-content; height: fit-content; }
    footer div.ico_wrap > button > img { display: block; width: 70%; margin-left: auto; }
    #top_btn { display: flex; justify-content: center; align-items: center; width: 36px !important; height: 36px !important; }


}

@media screen and (max-width: 420px){
    section.sec03 div.history_wrap > div.flex_wrap { gap: 10px; }
    section.sec03 div.history_wrap > div.flex_wrap > div.flex_box > p.desc { font-size: 14px; }
    section.sec03 div.history_wrap > div.flex_wrap > div.flex_box > p.year { font-size: 18px; }
    section.sec03 div.history_wrap > div.flex_wrap > div.flex_box > div.circle_wrap > img { width: 90%; }
    section.sec03 div.history_wrap::after { width: 14px; }
}

@media screen and (max-width: 400px){
    
}

@media screen and (max-width: 375px){
    section.sec03 div.history_wrap > div.flex_wrap > div.flex_box { gap: 10px; }
}



/* 개인정보처리방침 */
[class*=privacy_con] {display: none;position: fixed;top: 50%;left: 50%;transform: translate(-50%, -50%);width: calc(100% - 40px);max-width: 1200px;height: calc(100% - 40px);max-height: 600px;z-index: 999999;background: #fff;border: 1px solid var(--color-main);box-sizing: border-box;}
[class*=privacy_con] .top{height: 70px;width: 100%;background: var(--sky-color);text-align: center;position: relative;top: 0;left: 0;}
[class*=privacy_con] .top p{line-height: 70px;color: #fff;font-family: var(--font-pretendard);font-size:20px;font-weight: bold;}
[class*=privacy_con] .top span{position: absolute;top: 0;right: 0;height: 100%;width: auto;aspect-ratio: auto 1 / 1;cursor: pointer;}
[class*=privacy_con] .top span::after{width: 2px;height:50%;content:"";display: block;background: #fff;transform: translate(-50%, -50%) rotate(45deg);top: 50%;left: 50%;position: absolute;}
[class*=privacy_con] .top span::before{width: 2px;height:50%;content:"";display: block;background: #fff;transform: translate(-50%, -50%) rotate(-45deg);top: 50%;left: 50%;position: absolute;}
[class*=privacy_con] #privacy{border: 1px solid #eeeeee; width: calc(100% - 140px); height: calc(100% - 210px); overflow-y: auto; margin: 70px auto 0; padding: 20px;}
[class*=privacy_con] #privacy>b{display: block; margin-bottom: 20px; word-break: keep-all; font-size:17px; color: #000000;}
[class*=privacy_con] #privacy>.list{}
[class*=privacy_con] #privacy>.list li{display: flex; align-items: flex-start; line-height: 22px;margin-bottom: 10px;}
[class*=privacy_con] #privacy>.list li span{display: block;word-break: keep-all;margin-right: 10px; color: #666666;font-size:17px;}
[class*=privacy_con] #privacy>.list li p{display: block;word-break: keep-all; color: #666666;font-size:17px;}
[class*=privacy_con] #privacy>.list_con{margin-top: 30px;}
[class*=privacy_con] #privacy>.list_con li{margin-bottom: 30px;}
[class*=privacy_con] #privacy>.list_con li:last-child{margin-bottom:0px;}
[class*=privacy_con] #privacy>.list_con li>b{word-break: keep-all;display: flex;align-items: flex-start;line-height: 22px;margin-bottom: 10px;font-family: var(--font-pretendard);font-size:20px;}
[class*=privacy_con] #privacy>.list_con li>b span{display: block;word-break: keep-all;margin-right: 10px;}
[class*=privacy_con] #privacy>.list_con li p{display: block;word-break: keep-all;color: #000;font-family: var(--font-pretendard);font-weight: 500;font-size:17px;margin-bottom: 10px;line-height: 20px;}
[class*=privacy_con] #privacy>.list_con li>span{display: block;word-break: keep-all; color: #666666; font-size:15px;margin-bottom: 10px;}
[class*=privacy_con] #privacy .date_wrap{margin-top: 100px;}
[class*=privacy_con] #privacy .date_wrap p{display: block;word-break: keep-all;font-size: 15px;font-weight: 500;color: #000;}

@media screen and (max-width:1200px){
    [class*=privacy_con] #privacy{ width: calc(100% - 70px); height: calc(100% - 140px); margin: 35px auto 0;}
}
@media screen and (max-width:900px){
    [class*=privacy_con] .top{height: 50px;}
    [class*=privacy_con] .top p{line-height: 50px;}
}
@media screen and (max-width:600px){
    [class*=privacy_con] #privacy{width: 100%; height: calc(100% - 40px); margin: 0 auto; border: unset;}
}