.index_wrap .slider_1 { background-image: url("../img/main_visual_1.jpg"); } 

@keyframes zoom_in { 
 0% { transform: scale(1.2); } 

 100% { transform: scale(1) rotate(0.003deg); } 
 }

.index_wrap .mySwiper .swiper-slide.swiper-slide-active .slide_bg { animation: 5000ms ease 0s 1 normal none running zoom_in; transition: transform 5000ms ease-in-out, opacity 1000ms; } 

.section1 .main_more_btn { color: rgb(255, 255, 255); font-size: 1.7rem; font-weight: 400; } 

.main_more_btn { display: inline-block; border: 1px solid rgba(255, 255, 255, 0.52); transition: 0.4s; color: rgb(255, 255, 255); font-size: 1.7rem; font-weight: 400; } 

.swiper-slide-active .main_more_btn { animation: 1.5s cubic-bezier(0.4, 0, 0.2, 1) 0.5s 1 normal both running text-up; } 

.main_more_btn a { color: rgb(255, 255, 255); font-size: 1.7rem; font-weight: 400; padding: 2rem 4rem; } 

.main_more_btn span { display: flex; flex-direction: row; align-items: center; } 

.main_more_btn span b { font-weight: inherit; margin-right: 1.5rem; } 

.main_more_btn span i { width: 4rem; height: auto; transition: 0.4s; position: relative; left: 0px; } 

.main_more_btn:hover { background: rgba(249, 249, 249, 0.08); backdrop-filter: blur(9px); border: 1px solid rgb(255, 255, 255); } 

.main_more_btn:hover i { position: relative; left: 1rem; } 

.line_box { position: relative; margin-top: 0rem; padding-bottom: 3rem; } 

.swiper-slide.swiper-slide-active .main_line { display: block; position: absolute; left: 0px; bottom: 3rem; --width: 100%; height: 2px; background: rgb(255, 255, 255); animation: 2s ease 0s 1 normal forwards running line_left; } 

.index_wrap { line-height: 1; overflow: hidden; } 

.index_wrap .section.section1 { margin: 0px auto 11rem; height: 100vh; } 

.index_wrap .section1 .swiper { width: 100%; height: calc(-10rem + 98vh); border-radius: 20px; overflow: hidden; position: absolute; top: 10rem; left: 50%; transform: translateX(-50%); } 

.index_wrap .section { position: relative; margin-bottom: 20rem; } 

.index_wrap .section h2 { font-weight: 700; } 

.index_wrap .section_wrap { width: 90%; margin: 0px auto; } 

.section1 .mySwiper .swiper-slide .slide_bg { height: 100vh; overflow: hidden; background-repeat: no-repeat; background-size: cover; background-position: 50% 50%; } 

.section1 .mySwiper .swiper-slide .visual_wrap { position: absolute; top: 51%; left: 3%; transform: translateY(-50%); width: 94%; color: rgb(255, 255, 255); } 

.section1 .mySwiper .swiper-slide .visual_wrap .img_box { margin-top: 4rem; } 

.section1 .mySwiper .swiper-slide .visual_wrap .visual_txt_box .title_box { margin-top: 3.6rem; } 

.section1 .mySwiper .swiper-slide .visual_wrap .visual_txt_box .title_box h2 { } 

.section1 .mySwiper .swiper-slide .visual_wrap .visual_txt_box .visual_info h3 { font-weight: 700; line-height: 1.2; letter-spacing: -0.5px; } 

.index_wrap .section1 .swiper-wrapper { transition-timing-function: linear; } 

.index_wrap .mySwiper .swiper-slide.swiper-slide-active .title_box, .index_wrap .mySwiper .swiper-slide.swiper-slide-active .visual_info { overflow: hidden; } 

.index_wrap .mySwiper .swiper-slide.swiper-slide-active .title_box h2 { animation: 2s cubic-bezier(0.4, 0, 0.2, 1) 0.6s 1 normal both running text-up; } 

.index_wrap .mySwiper .swiper-slide.swiper-slide-active .visual_info h3 { animation: 1.5s cubic-bezier(0.4, 0, 0.2, 1) 0s 1 normal both running text-up; margin-right: 4px; } 

@-webkit-keyframes cursor_circle { 
 0% { transform: rotate(0deg); } 

 100% { transform: rotate(360deg); } 
 }

.index_wrap .title_box .p_wrap p { font-weight: 700; line-height: 1.5; } 

.index_wrap .title_box .plus_icon { position: relative; padding-left: 4rem; margin-bottom: 2rem; } 

.index_wrap .title_box .plus_icon::before { content: ""; position: absolute; left: 0px; top: 0px; width: 3rem; height: 0.6rem; background: var(--sub-color); } 

.index_wrap .title_box .plus_icon::after { content: ""; position: absolute; left: 0px; top: 0px; width: 3rem; height: 0.6rem; background: var(--sub-color); transform: rotate(90deg); } 

.index_wrap .section2 { margin-bottom: 10rem; } 

.index_wrap .section2 .grid_wrap { display: grid; gap: 3rem; grid-template-columns: 1fr 1fr 1fr 1fr; grid-template-rows: 1fr 1fr; height: 60vh; } 

.index_wrap .section2 .grid_wrap .box1 { grid-area: 1 / 1 / 3 / 3; } 

.index_wrap .section2 .grid_wrap .box2 { grid-column: 3 / 4; } 

.index_wrap .section2 .grid_wrap .box3 { grid-column: 4 / 5; } 

.index_wrap .section2 .grid_wrap .box4 { grid-column: 3 / 5; } 

.index_wrap .section2 .grid_wrap > div { position: relative; overflow: hidden; border-radius: 15px; } 
.index_wrap .section2 .grid_wrap > div .img_box { width: 100%; height: 100%; } 
.index_wrap .section2 .grid_wrap > div .img_box img { max-width: unset; width: 100%; height: 100%; object-fit: cover; } 
.index_wrap .section2 .grid_wrap > div:hover .img_box img { transform: scale(1.2); } 

.index_wrap .section2 .grid_wrap > div .info_box { position: absolute; width: 100%; height: 100%; top: 0px; left: 0px; color: rgb(255, 255, 255); font-weight: 700; display: flex; flex-direction: column; justify-content: space-between; padding: 4rem; } 

.index_wrap .section2 .grid_wrap > div .info_box h3 { font-weight: 600; display: flex; align-items: center; } 

.index_wrap .section2 .grid_wrap > div:hover .info_box h3 i { left: 2rem; } 

.index_wrap .section2 .grid_wrap > div .info_box h3 i { font-size: 0.7em; position: relative; left: 1.2rem; transition: 0.3s; } 

.index_wrap .section2 .grid_wrap > div .info_box p { } 

.index_wrap .section3 { overflow: hidden; } 
.index_wrap .section3 .title_box .plus_icon { position: relative; padding-left: 4rem; margin-bottom: 4rem; } 

.index_wrap .section3 { padding: clamp(5rem, 7vw, 10rem) 0px; overflow: hidden; height: auto; margin-bottom: 0px; } 
.index_wrap .section3 

.index_wrap .section3 .box1 { flex: 1 1 0%; margin-right: 4%; } 

.index_wrap .section3 .box1 .busi_list { max-width: 350px; } 

.index_wrap .section3 .box1 .busi_list li { display: flex; justify-content: space-between; font-size: 2.4rem; padding: 3rem 4rem; border-radius: 50px; transition: 0.3s; align-items: center; } 

.index_wrap .section3 .box1 .busi_list li i { color: var(--sub-color); transform: rotate(45deg); opacity: 0; transition: 0.3s; font-size: 3rem; } 

.index_wrap .section3 .box1 .busi_list li.on { background: rgb(229, 243, 254); } 

.index_wrap .section3 .box1 .busi_list li.on i { opacity: 1; } 

.index_wrap .section3 .box1 .busi_list li b { font-weight: 600; white-space: nowrap; } 

.index_wrap .section3 .box2 { max-width: 783px; width: 56%; position: relative; height: 561px; height: clamp(320px, 80vh, 561px); } 

.index_wrap .section3 .box2 .img_box { position: absolute; left: 0px; width: 100%; } 

.index_wrap .section3 .box2 .img_box .info_box { color: rgb(255, 255, 255); position: absolute; bottom: 0px; font-weight: 600; padding: 4rem 4rem 5rem; } 

.index_wrap .section3 .box2 .img_box .info_box h4 { margin-bottom: 4rem; font-weight: 600; } 

.index_wrap .section3 .img_box { opacity: 0; transform: scale(1); transition: opacity 0.6s, transform 0.6s; } 

.index_wrap .section3 .img_box.on { opacity: 1; transform: scale(1); } 

.section4 .title_box { display: flex; align-items: flex-end; } 

.section4 .v_more { width: fit-content; font-size: 2.2rem; font-weight: 700; display: flex; align-items: flex-start; margin-bottom: 3rem; } 

.section4 .v_more:hover i { position: relative; right: 1rem; } 

.section4 .v_more i { font-size: 2.4rem; padding-left: 2.8rem; transition: 0.3s; position: relative; right: 2rem; } 

.index_wrap .section5 .flex_box { display: flex; align-items: stretch; gap: 2rem; } 

.index_wrap .section5 .box1 { background: var(--sub-color); border-radius: 20px; width: 29%; position: relative; } 

.index_wrap .section5 .box1 .title_box { height: 100%; } 

.index_wrap .section5 .box1 * { color: rgb(255, 255, 255); } 

.index_wrap .section5 .box2 { flex: 1 1 0%; border-radius: 20px; overflow: hidden; } 

.index_wrap .section5 .root_daum_roughmap_landing { width: 100%; } 

.index_wrap .section5 .box1 h2 { width: fit-content; position: relative; left: 48%; top: 17%; transform: translateX(-50%); } 

/* .index_wrap .section5 .title_box .plus_icon::before { content: ""; position: absolute; left: 0px; top: 0px; width: 3.2rem; height: 0.6rem; background: rgb(255, 255, 255); } */
.index_wrap .section5 .title_box .plus_icon::before { background:#fff; } 
.index_wrap .section5 .title_box .plus_icon::after { background:#fff; } 
.index_wrap .section5 .box2 a { width: auto; height: auto; } 

/* .index_wrap .section5 .title_box .plus_icon::after { content: ""; position: absolute; left: 0px; top: 0px; width: 3.2rem; height: 0.6rem; background: rgb(255, 255, 255); transform: rotate(90deg); } 
 */
.contact_btn { position: absolute; bottom: 6rem; left: 50%; transform: translateX(-50%); width: 70%; display: flex; justify-content: space-between; font-size: 2.4rem; border-radius: 50px; transition: 0.3s; background: rgba(255, 255, 255, 0.15); } 

.contact_btn a { display: flex; justify-content: space-between; align-items: center; padding: 3rem 4rem; } 

.contact_btn a i { font-size: 2.8rem; } 

i.rotate { transform: rotate(45deg); } 

.contact_btn { position: absolute; overflow: hidden; } 

.contact_btn::before { content: ""; position: absolute; top: 0px; left: -120%; width: 60%; height: 100%; background: linear-gradient(120deg, transparent, rgba(255, 255, 255, 0.25), transparent); transform: skewX(-20deg); } 

.contact_btn:hover::before { animation: 0.8s ease 0s 1 normal none running shine; } 

@keyframes shine { 100% { left: 120%; } 
 }

@media (max-width: 1279px){
 .index_wrap .section.section1 { margin-bottom: clamp(5rem, 10vw, 20rem); width: 96%; } 

 .index_wrap .section5 .box1 { width: 40%; } 

 .index_wrap .section5 .box2 { flex: 1 1 0%; } 
 }

@media (max-width: 1023px){
 .section1 .mySwiper .swiper-slide .visual_wrap .visual_txt_box .title_box h2 { font-size: 36px; } 

 .section1 .mySwiper .swiper-slide .visual_wrap { top: 43%; } 

 .index_wrap .section { margin-bottom: 10rem; } 

 .index_wrap .title_box .plus_icon { margin-bottom: 3rem; } 

 .index_wrap .title_box .plus_icon::before { width: 2.9rem; height: 0.5rem; } 

 .index_wrap .title_box .plus_icon::after { width: 2.9rem; height: 0.5rem; } 

 .index_wrap .section1 .swiper { height: calc(98.7vh - 75px); top: 75px; } 

 .index_wrap .section2 .grid_wrap { gap: 2rem; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr 1fr; height: 1000px; } 

 .index_wrap .section2 .grid_wrap > div { min-height: 0px; height: 100%; } 

 .index_wrap .section2 .grid_wrap > div .img_box { height: 100%; } 

 .index_wrap .section2 .grid_wrap > div img { height: 100%; object-fit: cover; max-width: unset; object-position: center top; } 

 .index_wrap .section2 .grid_wrap .box1 { grid-area: 1 / 1 / 2 / 3; } 

 .index_wrap .section2 .grid_wrap .box2 { grid-area: 2 / 1 / 3 / 2; } 

 .index_wrap .section2 .grid_wrap .box3 { grid-column: 2 / 3; } 

 .index_wrap .section2 .grid_wrap .box4 { grid-area: 3 / 1 / 4 / 3; } 

 .index_wrap .section2 { margin-bottom: 4rem; } 

 .index_wrap .section3 { height: auto; margin: 4rem 0px; margin-bottom: 6rem; } 

 .index_wrap .section3 .box2 { width: 60%; height: auto; } 

 .index_wrap .section3 .box2 .img_box { } 

 .index_wrap .section3 .box2 .img_box .info_box { padding: 3rem; } 

 .section4 .v_more i { font-size: 2.2rem; padding-left: 2rem; } 

 .index_wrap .section5 .box1 { width: 100%; padding: 5rem; display: flex; } 

 .index_wrap .section5 .box1 .title_box { height: auto; } 

 .contact_btn { position: relative; max-width: 30rem; bottom: 0px; font-size: 2rem; } 

 .contact_btn a { padding: 2rem 3rem; } 

 .index_wrap .section5 .box2 { height: 400px !important; } 

 .index_wrap .section5 .box2 .main_map_wrap { height: 100%; } 

 .index_wrap .section5 .root_daum_roughmap_landing { height: 100% !important; } 

 .index_wrap .section5 .root_daum_roughmap_landing .wrap_map { height: 400px !important; } 
 }

@media (max-width: 768px) { } 

@media (max-width: 480px){
 .index_wrap .section3 .title_box .plus_icon { padding-left: 2rem; margin-bottom: 2rem; } 
 .contact_btn { max-width: 20rem; } 
 .index_wrap .section2 .grid_wrap > div .info_box h3 { font-size: 19px; } 
 .section1 .mySwiper .swiper-slide .visual_wrap .visual_txt_box .title_box h2 { font-size: 22px; line-height: 1.5; text-shadow: 1px 0px 4px #000b1f; } 
 .index_wrap .section2 .grid_wrap > div .info_box { padding: 3rem; } 
 .index_wrap .section2 .grid_wrap { height: 77rem; gap: 1.5rem; } 
 .index_wrap .section2 .grid_wrap > div .info_box p br { display:none } 
.index_wrap .section3 { padding-bottom: 0; margin-bottom: 0; } 
 .index_wrap .section3 .box1 { margin-right: 0px; width: 100%; } 
 .index_wrap .section3 .box2 { width: 100%; height: 30rem; } 
 .index_wrap .section3 .box1 .busi_list { width: 100%; max-width: unset; display: flex; gap: 2%; margin-bottom: 2rem; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; } 
 .index_wrap .section3 .box1 .busi_list li { padding: 1.2rem 2rem; border: 1px solid rgb(237, 237, 237); font-size: 16px; flex: 1 0 16%; margin-bottom: 2%; } 
 .index_wrap .section3 .box1 .busi_list li i { opacity: 1; font-size: 2rem; margin-left: 1rem; } 
 .contact_btn a { padding: 1.4rem 3rem; font-size: 1.6rem; } 
 .contact_btn a i { font-size: 2.2rem; } 
 .index_wrap .title_box .plus_icon::before { width: 1.6rem; height: 0.3rem; } 
 .index_wrap .title_box .plus_icon::after { width: 1.6rem; height: 0.3rem; } 
 .index_wrap .title_box .plus_icon { margin-bottom: 0.5rem; padding-left: 2.2rem; } 
 .section1 .mySwiper .swiper-slide .visual_wrap .visual_txt_box .title_box { margin-top: 2rem; } 
 .section1 .mySwiper .swiper-slide .slide_bg { background-position: 50% 50%; } 
 .section1 .mySwiper .swiper-slide .visual_wrap .visual_txt_box .visual_info h3 { line-height: 1.5; } 
 .section4 .v_more { font-size: 1.6rem; margin-bottom: 1rem; } 
 .section4 .v_more i { font-size: 1.8rem; padding-left: 2.6rem; } 
 .index_wrap .section5 .box1 { padding: 3rem 2rem; display: flex; flex-direction: column; gap: 1rem; border-radius: 15px; } 
 .index_wrap .section5 .flex_box { display: flex; } 
 .index_wrap .section5 .box2 { height: 300px!important; border: 1px solid #dcdcdc; border-radius: 15px; } 
 .index_wrap .section { margin-bottom: 6rem; } 
 }
