.lead { font-size:16px; font-weight:500, line-height:1.75; letter-spacing:-0.02em; color:#555;  word-break:keep-all}


@media screen and (max-width: 640px) {
input {
   -webkit-appearance: none;
   -webkit-border-radius: 10px;
}
}



/*헤드메뉴*/
#header {position:absolute;left:0;top:40px; max-width: 1400px; width:100%; left: 50%; transform:translateX(-50%) ;z-index:6;height:80px;-webkit-transition:all .3s ease;-moz-transition: all .3s ease;-ms-transition: all .3s ease;-o-transition: all .3s ease;transition: all .3s ease;background-color: #34322C;}
#header .header-inner {width:100%; height:100%;background-color: rgba(52, 50, 44); }
#header .gnb { list-style:none; height:100%; position:absolute; right:0px}
#header .gnb > li { float:left; position:relative; display:inline-block; width:100px;  vertical-align:middle; text-align:center;}
#header .gnb > li > a {display:inline-block; line-height:1em; width:100%; color:#fff;font-size:1.5em; letter-spacing:-0.5px; font-weight:500; text-decoration:none;}
#header .gnb > li > a:hover {color: #2253b8}
#header .gnb > li.active {background-color: #b0905e}
#header .gnb > li.active > a {color: #fff}
#header .gnb .login { background-color:#2253b8; font-size:15px; color:#fff}
#header .gnb .join { background-color:#343434; font-size:15px; color:#fff; margin-left:20px}
#header .gnb .login a { color:#ddd; font-size:14px}
#header .gnb .login a:hover { color:#fff}
#header .gnb .join a { color:#ddd; font-size:14px}
#header .gnb .join a:hover { color:#fff}
#header .header-inner .menu {cursor:pointer;text-indent:-9999px; position:absolute;top:29px; left:50%;width:25px;height:20px; background-image:url(../img/cate_more.gif); margin-left:200px; border:0; display:none; }
#header .header-inner .menu.on {background-image: url(../img/cate_close.gif)}
#header .gnb > li, #header #right-side-open {height:80px;line-height:80px; -webkit-transition: all .3s ease;-moz-transition: all .3s ease;-ms-transition: all .3s ease;-o-transition: all .3s ease;transition: all .3s ease;}
#header #right-side-open { position:absolute; right:0; width:100px; cursor:pointer; border-left:1px solid rgba(255,255,255,0.3); text-align:center; display: inline-block; }
#header #right-side-open span{display:inline-block;width:20px; height:20px;font-size:20px;line-height:1em;margin-top:-10px; margin-left:-10px; position:absolute; top:50%;left:50%; color:#fff;}
#header .gnb .snb {list-style:none; display:none;}
#header #logo { margin-left:25px; padding:0}
#header #logo a { display:block; width:200px; height:80px; line-height:80px}
#header #logo img { width:100%}
#header .gnb .snb,.device-md #header .gnb .snb{display: none;position: absolute;right: -82px;width: 200px; top:80px; border-top: 0;background-color: #000; z-index:2}
#header .gnb .snb li { font-size:14px; line-height:3.1; text-align:left; border-top:1px solid #414141;}
#header .gnb .snb li a { color:#FFF; display:block; padding-left:20px}
#header .gnb .snb li a:hover {color:#fff;  display:block; background-color:#2253b8; text-decoration:none; line-height:3.1}
#header .gnb .snb li:first-child { border-top:0}

@media screen and (max-width: 960px) {
    #header { display:block; background-color:transparent; top:0; border-bottom:1px solid rgba(255,255,255,0.4); position:fixed !important; /* 모바일에서는 항상 fixed */ }
	#header #logo { width:200px; display:block}
	#header .gnb { display:none !important; } /* 확실히 숨김 */
    /* 모바일에서 fixed 헤더로 인해 내용 가려짐 방지 */
    
}

/* === 추가될 CSS 코드 (데스크탑 스크롤 시 헤더 고정) === */
@media screen and (min-width: 960.02px) { /* 961px 이상 화면에만 적용 */
    body.scrolled #header {
        position: fixed !important; /* 화면 기준으로 위치 고정 */
        top: 0 !important;         /* 화면 상단으로 이동 */
        /* left, transform, max-width, width는 기존 #header 스타일을 따름 */
        /* 예: left: 50%; transform: translateX(-50%); max-width: 1400px; width: 100%; */
        /* background-color: #fff; /* 이미 설정됨 */
        z-index: 1000; /* 다른 요소들보다 위에 오도록 (기존 z-index:6 보다 높게) */
        box-shadow: 0 2px 5px rgba(0,0,0,0.1); /* 고정 시 하단 그림자 (선택 사항) */
        /* height: 80px; /* 헤더 높이는 유지 */
    }
    /* 데스크탑에서 헤더 고정 시 body에 padding-top 추가 (JS가 제어) */
    /* body.scrolled { padding-top: 80px; } */
}
/* === 추가될 CSS 코드 끝 === */



/*헤드메뉴*/


/*오른쪽 퀵메뉴*/
.right_quick { position: absolute; right: 0; top: -60px; z-index: 2}
.right_quick.fixed {position: fixed; right: 0; top: 50% !important; margin-bottom:50px; z-index: 100; top: 189px}
.right_quick.fixed .material-icons { color:#fff; float:right}
.right_quick ul.quick_info { position: relative; height: 240px}
.right_quick ul.quick_info li { position: absolute; height: 60px; right:0}
.right_quick ul.quick_info li:nth-child(1) {top: 0}
.right_quick ul.quick_info li:nth-child(2) {top: 60px}
.right_quick ul.quick_info li:nth-child(3) {top: 120px}
.right_quick ul.quick_info li:nth-child(4) {top: 180px}
.right_quick ul.quick_info li:nth-child(5) {top: 240px}

.right_quick ul.quick_info li a{width:60px; height:60px; text-align:center; background: rgba(52, 52, 52, 0.5); overflow:hidden; display:block}
.right_quick ul.quick_info li i { color:#fff; font-size:24px;}
.right_quick ul.quick_info li i.ico{position:absolute;right:20px;top:15px; z-index:2}
.right_quick ul.quick_info li:nth-child(1) i {right: 17px}
.right_quick ul.quick_info li:nth-child(2) i {right: 17px}
.right_quick ul.quick_info li:nth-child(3) i {right: 17px}
.right_quick ul.quick_info li:nth-child(4) i {right: 17px}
.right_quick ul.quick_info li:nth-child(5) i {right: 17px}
.right_quick ul.quick_info li a span{height:60px; line-height:60px; color:#fff; position:absolute; text-align:left; opacity:0; left:30px; font-size:14px; font-weight:500; z-index:2}
.right_quick ul.quick_info li a.kakao span { color:#000}

@media screen and (max-width: 640px) {
    .right_quick.fixed { display:none}
}
/*오른쪽 퀵메뉴*/





/* 모바일 오른쪽 메뉴 */
#right-side {
    background-color: rgba(0, 0, 0, 0.3); /* 검정 + 50% 투명도 */
    position: fixed;
    z-index: 10;
    top: 0;
    right: -400px;
    max-width: 400px;
    width: 100%;
    height: 100%;
    color: #FFF;
    padding: 30px;
    -webkit-transition: right .3s ease;
    -moz-transition: right .3s ease;
    -ms-transition: right .3s ease;
    -o-transition: right .3s ease;
    transition: right .3s ease;
    box-sizing: border-box;
    overflow: auto;

    /* ★ 추가된 3가지 효과 */
    border-left: 1px solid rgba(255,255,255,0.4); /* 1) 흰색 테두리 */
    backdrop-filter: blur(10px);                  /* 2) 배경 블러 유리효과 */
    box-shadow: -5px 0 20px rgba(0,0,0,0.4);      /* 3) 부드러운 그림자 */
}

#right-side .side_gnb .call a {
    text-align: center;
    display: block;
    position: relative;
    background: #222222;
    color: #fff;
    font-weight: bold;
    font-size: large;
    height: 3.0em;
    line-height: 3em;
    border-radius: 3px;
    margin-top: 10px;
    padding: 2px 0 4px 0;
}

#right-side #btn-close-right-side {
    position: absolute;
    top: 20px;
    right: 0;
    color: #fff;
    width: 60px;
    text-align: center;
    line-height: 40px;
    font-size: 16px;
    cursor: pointer;
}

#right-side #btn-close-right-side .fa.fa-times {
    font-size: 18px;
    padding-top: 20px;
}

.right-side-on #right-side { right: 0; }
.right-side-on #wrapper { left: -300px; }
.right-side-on #header { left: -300px; }
.right-side-on #rs-overlay { display: block; }


.quick_menu {width:100%; margin:auto; padding-top:20px}
.quick_menu ul { text-align:center}
.quick_menu li{display:inline-block; margin-left:-3px; width:80px; border-right:1px solid #555;}
.quick_menu li:last-child { border:0} 
.quick_menu li a{display:block; box-sizing:border-box; color:#f5f5f5; letter-spacing:-0.8px; text-align:center; position:relative;  font-size:12px}
.quick_menu li a:hover{color:#fff;backface-visibility:hidden}
.quick_menu li a.on{color:#fff;border-bottom-color:#FF3300;border-bottom-width:2px;border-bottom-style:solid}
.quick_kakao{text-align:center; height:35px; background-color:#ffd800; display:inline-block; clear:both}
.quick_kakao a{display:block;position:relative;background:#ffd800}
.quick_kakao a img{display:block;margin:0 auto}

.side_gnb{position:relative;width:100%;float:left;padding-top:20px;}
.side_gnb p{color:#fff; text-align:center; padding:20px }
.side_gnb .menu-list > li > a {text-align: center;}
.side_gnb .menu-list{display:block;position:relative;border-bottom:1px solid #555; margin-top:60px}
.side_gnb .menu-list>li>a{display:block;position:relative;color:#fff;font-size:15px;line-height:3.8em;padding:0 1.0em;border-top:1px solid #555; text-decoration:none}
.side_gnb .menu-list>li>a i{display:block;position:absolute;top:50%;transform:translateY(-75%) rotate(135deg);-webkit-transform:translateY(-75%) rotate(135deg);right:1.5em;width:5.31%;max-width:32px;border:1px solid #ddd;border-left-width:0;border-bottom-width:0;transition:transform .3s ease;-webkit-transition:-webkit-transform .3s ease;-ms-transition:transform .3s ease}
.side_gnb .menu-list>li.on>a i{-webkit-transform:translateY(-25%) rotate(315deg);transform:translateY(-25%) rotate(315deg)}
.side_gnb .menu-list>li>a i:before{content:"";display:block;position:relative;padding-top:100%}
.side_gnb .depth-2{display:none;}
.side_gnb .depth-2>li { background-color:#ddd}
.side_gnb .depth-2>li>a{display:block;color:#ddd;font-size:1.2em;line-height:3.0em;padding:0 1.5em 0 2.2em;border-bottom:1px solid #fff; color:#000}

@media screen and (max-width: 640px) {
    .side_gnb .depth-2>li>a { font-size:16px}
}
/*모바일 오른쪽 메뉴*/






/*메인배너*/
.main-carousel{padding:0; display:block}
.main-carousel .li{height:900px; background-size:cover; background-position:center; position:relative}
.main-carousel .li .cover{position:absolute;top:0;left:0;width:100%;height:100%;background:url(../img/main_visual_cover.png) center bottom no-repeat;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover;min-width:300px;opacity:.6;z-index:1}
.main-carousel .jarallax { min-height: 100%;}
.main-carousel .img01 { background-image:url(../img/main_banner_img01.jpg);}
.main-carousel .img02 { background-image:url(../img/main_banner_img02.jpg);}
.main-carousel .img03 { background-image:url(../img/main_banner_img03.jpg);}
.main-carousel .li .copy_area{
    width:100%;
    text-align:center;
    color:#fff;
    position:absolute;
    top:50%;
    -moz-transform:translateY(-50%);
    -ms-transform:translateY(-50%);
    -webkit-transform:translateY(-50%);
    transform:translateY(-50%);
    z-index:2;

    /* ===== 여기서부터 배경 스타일 추가 ===== */
    background-color: rgba(52, 50, 44, 0.8);   /* 검은색 + 80% 투명 */
    padding: 10px ;              /* 안쪽 여백 */
    border-radius: 20px;             /* 둥근 모서리 */
    display: inline-block;           /* 텍스트 크기만큼 적용 */
    width: auto;
	left: 50%;                       /* 중앙정렬 */
    transform: translate(-50%, -50%); /* XY 모두 중앙 정렬 */
}

.main-carousel .li .copy_area h1{font-size:14px;font-weight:300; line-height:1.3; letter-spacing:0.5px; padding-bottom:20px;  color:#fff; text-align:center}
.main-carousel .li .copy_area h2{font-size:80px;font-weight:600; line-height:1.3; letter-spacing:1px;  color:#fff; text-align:center; text-shadow: -2px 0 0 #000, 2px 0 0 #000, 0 -2px 0 #000, 0 2px 0 #000, 3px 3px 6px rgba(0,0,0,0.8);}
.main-carousel .li .copy_area h3{font-size:18px;font-weight:500;text-align:center;margin:10px 0 0; padding:0 20px; word-break:keep-all; color:#fff; opacity:0.9; letter-spacing:-1px}
.main-carousel .owl-dots{position:absolute;width:100%; text-align:center; margin:0 auto; bottom:135px;}
.main-carousel .owl-dots .owl-dot{background:rgba(255, 255, 255, 0.5);width:30px;height:5px;display:inline-block;margin-left:10px}
.main-carousel .owl-dots .owl-dot.active{background:rgba(255, 255, 255, 1)}
.main-carousel .owl-nav{position:absolute;width:100%;bottom:50%}
.main-carousel .owl-nav .owl-prev{width:40px;height:30px;position:absolute;left:50px; font-size:14px; color:#fff; border-top: 1px solid #fff; padding-top:5px; text-align:center; background-color:transparent; cursor:pointer}
.main-carousel .owl-nav .owl-next{width:40px;height:30px;position:absolute;right:50px; font-size:14px; color:#fff; border-top: 1px solid #fff; padding-top:5px; text-align:center; background-color:transparent;  cursor:pointer}

@media screen and (max-width: 640px) {
	.main-carousel .li { height:100vh}
	.main-carousel .jarallax { min-height: 100vh;}
    .main-carousel .img01 { }
	.main-carousel .img02 { }
	.main-carousel .img03 { }
	.main-carousel .li .copy_area h2 {font-size: 36px; letter-spacing:-3px}
	.main-carousel .li .copy_area h3 { max-width:600px; margin:10px auto 0 auto; font-size: 15px; letter-spacing:-0.5px}
	.main-carousel .owl-nav { display:none}
}
/*메인배너*/


/*인삿말*/
.tl_greeting_box_wrap{ width:100%; padding:150px 0px;}
.tl_greeting_box_wrap h2 {text-align:center; font-size:30px; color:#333}
.tl_greeting_box_wrap h2:before{ display:block; content:"💕"; font-size: 40px; margin:0 auto 10px auto; border-radius:10px;}
.tl_greeting_box_wrap h2 span{ display:block; padding:20px 0; color:#555; font-size:16px; font-weight:400}
.tl_greeting_box_wrap ul {margin-top:30px; overflow:hidden}
.tl_greeting_box_wrap ul li{ width:50%; text-align:center; float:left; display:block}
.tl_greeting_box_wrap ul li .icon { display:inline-block; padding:30px}
.tl_greeting_box_wrap ul li .icon i { color:#666}
.tl_greeting_box_wrap ul li img {vertical-align:middle; transition:transform 500ms}
.tl_greeting_box_wrap ul li:hover i{transform:rotateY(180deg); transition:transform 500ms}
.tl_greeting_box_wrap ul li .box {border-right:1px  #eaeaea solid; padding:0 10px; display:block}
.tl_greeting_box_wrap ul li:last-child .box {border-right:0px}
.tl_greeting_box_wrap ul li dl dt {font-weight:bold; padding-bottom:15px; line-height:20px; color:#222; font-size:20px}
.tl_greeting_box_wrap ul li a {display:inline-block; margin-top:20px; border:1px #ddd solid; padding:0 20px; line-height:30px; color:#666;  transition: all .2s}
.tl_greeting_box_wrap ul li:hover a {background:#2253b8; color:#fff; transition: all .3s}
.greeting_content { display: flex; align-items: center; gap: 40px; margin-top: 30px; }
/* === Jarallax 비디오 배경을 위한 greeting_image 스타일 === */
.greeting_image {
    flex: 1;
    max-width: 600px;
    width: 600px;
    height: 337.5px;
    text-align: center;
    position: relative;
    overflow: hidden;
    background-image: url('../img/hoon.jpg'); /* ← 여기에 이미지 경로 */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 8px;
    border: 1px solid #eaeaea;
}
/* 기존 img 태그에 있던 스타일은 .greeting_image로 옮기거나, 필요 없다면 제거합니다. */
/* .greeting_image img { width: 100%; height: auto; vertical-align: middle; border-radius: 8px; border: 1px solid #eaeaea; transition: transform 500ms; } */
/* .greeting_image img:hover { transform: scale(1.05); } */

/* Jarallax가 생성하는 비디오 관련 요소 스타일 */
.greeting_image[data-jarallax] > .jarallax-img,
.greeting_image[data-jarallax] > video,
.greeting_image[data-jarallax] > iframe,
.greeting_image[data-jarallax] > .jarallax-video-native,
.greeting_image[data-jarallax] > .jarallax-video-iframe {
    object-fit: contain !important; /* contain으로 변경 */
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 1;
    /* background-color: #000; */ /* 비디오 주변 여백을 검은색으로 채우고 싶을 경우 추가 */
}
/* === Jarallax 비디오 배경 스타일 끝 === */

.greeting_text { flex: 1; padding: 0 10px; }
.greeting_text h3 { font-size: 20px; font-weight: bold; color: #222; padding-bottom: 15px; line-height: 20px; }
.greeting_text p { font-size: 16px; line-height: 1.6; color: #555; margin-bottom: 15px; }
.greeting_text p strong { color: #333; }

@media screen and (max-width: 1024px) {
    .tl_greeting_box_wrap ul li { width:50%}
}
@media screen and (max-width: 960px) {
	.greeting_content { flex-direction: column; gap: 20px; padding: 0 20px; }
    .greeting_image, .greeting_text { max-width: 100%; padding: 0; }
    .greeting_image {
        width: 100%; /* 모바일에서는 너비 100% */
        /* height: 300px; /* 기존 높이 대신 비율을 유지하도록 합니다. */
        padding-bottom: 56.25%; /* 16:9 비율 (9/16 * 100%) */
        height: 0; /* padding-bottom으로 높이를 제어할 때 height는 0으로 설정 */
    }
    .greeting_text { border-top: 1px solid #ddd; padding-top: 30px; }
}

/*사업영역*/
.tl_company_box_wrap{ width:100%; padding:150px 0px;background:#e7e7e7;}
.tl_company_box_wrap h2 {text-align:center; font-size:30px; color:#333}
.tl_company_box_wrap h2:before{ display:block; content:"💕"; font-size: 40px; margin:0 auto 10px auto; border-radius:10px;}
.tl_company_box_wrap h2 span{ display:block; padding:20px 0; color:#555; font-size:16px; font-weight:500}

/* 전체 박스 */
.tl_warning_title {
    text-align: center;
    color: #333;
	margin: 100px auto 10px auto;
}

/* 아이콘 + 메인 텍스트 줄 */
.tl_warning_title .title_main {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-size: 30px;
    margin-bottom: 15px;
}

/* 아이콘 */
.tl_warning_title .title_main:before {
    content: "🚨";
    font-size: 40px;
    display: inline-block;
}

/* 아래 설명 */
.tl_warning_title span {
    display: block;
    padding: 20px 0 0 0;
    color: #555;
    font-size: 16px;
    font-weight: 500;
}



/* 1. UL에 Flexbox 적용 */
.tl_company_box_wrap ul {
    margin-top:30px;
    display: flex; /* Flexbox 활성화 */
    flex-wrap: wrap; /* 항목이 넘치면 다음 줄로 */
    justify-content: center; /* !!! 핵심: 항목이 부족해도 가운데 정렬 !!! */
    list-style: none; /* 리스트 기본 스타일 제거 */
    padding: 0;
}

/* 2. LI 너비를 25%로 변경 (4열) 및 float 제거 */
.tl_company_box_wrap ul li{
    width: 25%; /* 4열로 변경 */
    text-align:center;
    /* float: left; 제거 */
}

.tl_company_box_wrap ul li .icon { display:inline-block; padding:30px}
.tl_company_box_wrap ul li .icon i { color:#666}
.tl_company_box_wrap ul li img {vertical-align:middle; transition:transform 500ms}
.tl_company_box_wrap ul li:hover i{transform:rotateY(180deg); transition:transform 500ms}
.tl_company_box_wrap ul li .box {border-right:1px #eaeaea solid; padding:0 10px; display:block; height: 100%;} /* height: 100% 추가하여 box를 균일하게 만듦 */
.tl_company_box_wrap ul li:nth-child(4n) .box {border-right:0px} /* 4번째 항목마다 오른쪽 경계선 제거 */
.tl_company_box_wrap ul li:last-child .box {border-right:0px} /* 마지막 항목에도 경계선 제거 유지 */
.tl_company_box_wrap ul li dl dt {font-weight:bold; padding-bottom:15px; line-height:20px; color:#222; font-size:20px}
.tl_company_box_wrap ul li a {display:inline-block; margin-top:20px; border:1px #ddd solid; padding:0 20px; line-height:30px; color:#666; transition: all .2s}
.tl_company_box_wrap ul li:hover a {background:#2253b8; color:#fff; transition: all .3s}

/* --- 반응형 수정 --- */

@media screen and (max-width: 1024px) {
    /* 1024px 이하에서는 2열로 유지 */
    .tl_company_box_wrap ul li { width:50%}
    /* 2번째 항목마다 오른쪽 경계선 제거 */
    .tl_company_box_wrap ul li .box {border-right:1px #eaeaea solid;}
    .tl_company_box_wrap ul li:nth-child(2n) .box {border-right:0px} 
}

@media screen and (max-width: 960px) {
    /* 960px 이하에서는 1열로 변경 */
    .tl_company_box_wrap ul li { width:100%}
    .tl_company_box_wrap ul li .box { 
        border-right:0; 
        border-bottom:1px solid #ddd; 
        padding-bottom:30px
    }
}
/*사업영역*/


/* ======================================
    Panorama (좌→우 이동)
====================================== */
.panorama_wrap {
   width: 100%;
    height: 500px;
    overflow: hidden;
    position: relative;

    border-radius: 14px;
	background: transparent;
	

    /* 3D 인셋 효과 */
    background: #d9d9d9; /* 인셋 효과 강조를 위한 은은한 배경 */
    box-shadow:
        inset 6px 6px 12px rgba(0,0,0,0.35),      /* 안쪽 어두운 그림자 */
        inset -6px -6px 12px rgba(255,255,255,0.9), /* 안쪽 밝은 하이라이트 */
        0 6px 12px rgba(0,0,0,0.25);              /* 바깥 약한 그림자 */

    box-sizing: border-box;
}

.panorama_image {
    position: absolute;
    top: 0;
    left: 0;
    animation: panMove 30s linear infinite;
}

.panorama_image img {
    height: 500px;  /* PC 고정 */
    width: auto;
    display: block;
	opacity: 0.9;
}

/* =============================
  Animation
============================= */
@keyframes panMove {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

/* =============================
    반응형
============================= */

/* 태블릿 */
@media screen and (max-width: 1024px) {
    .panorama_wrap {
        margin: 20px;
        width: calc(100% - 40px);
        max-width: 100%;
        height: 400px;  /* 박스 높이 축소 */
    }

    .panorama_image img {
        height: 400px;  /* 이미지 높이 동일하게 축소 */
    }
}


/* 모바일 */
@media screen and (max-width: 600px) {
    .panorama_wrap {
        margin: 10px;
        width: calc(100% - 20px);
        max-width: 100%;
        height: 400px;  /* 모바일에서는 더 작게 */
    }

    .panorama_image img {
        height: 400px;  /* 이미지 크기도 박스 크기에 맞게 자동 감소 */
    }
}




/*뉴스갤러리*/
.tl_main_gallery_wrap { width:100%;  padding:100px 0; background:url(../img/baedalbg202001.jpg) center  no-repeat; background-size:cover;}
.tl_main_gallery_wrap .inner {max-width:1200px; margin:0 auto; overflow:hidden}
.tl_main_gallery_wrap h2 {text-align:center; font-size:30px; color:#fff}
.tl_main_gallery_wrap h2:before{ display:block; content:"💕"; font-size: 40px; margin:0 auto 10px auto; border-radius:10px;}
.tl_main_gallery_wrap h2 span{ display:block; padding:20px 0; color:#fff; opacity:0.8; font-size:16px; font-weight:400}
.tl_main_gallery_wrap a:hover {color:#2253b8}
.tl_main_gallery_wrap ul {margin-top:30px}
.tl_main_gallery_wrap li {position:relative; float:left; width:48%; margin:1%; overflow:hidden; background-color:#fff; display:block}
.tl_main_gallery_wrap .one_box {display:block; min-height:155px; background:#fff}
.tl_main_gallery_wrap .photo {position:absolute; left:0; top:0; width:100%; max-width:160px; min-height: 155px; height:100%; overflow:hidden; background-repeat:no-repeat; background-size:cover; background-position:center center;
 -webkit-transform: scale(1);transform: scale(1);transition:all 1s ease;-webkit-transition:all 1s ease}
.tl_main_gallery_wrap dl {margin-left:190px; padding-right:10px}
.tl_main_gallery_wrap dt {color:#333; font-size:18px; font-weight:bold; margin-top:30px; letter-spacing:-1px}
.tl_main_gallery_wrap dd {color:#555; font-size:16px; letter-spacing:-0.02em; line-height:1.75; word-break:keep-all; padding:10px 0; }
.tl_main_gallery_wrap li:hover .one_box {background-color:#095ead;cursor: pointer}
.tl_main_gallery_wrap li:hover dt {color:#fff}
.tl_main_gallery_wrap li:hover dd {color:#fff}
.tl_main_gallery_wrap li:hover .more_btn {color:#eee}
.tl_main_gallery_wrap a:hover .photo {-webkit-transform: scale(1.1);transform: scale(1.1)}
@media screen and (max-width: 1024px) {
	.tl_main_gallery_wrap li { width:100%; margin:0 0 4% 0}

}
/*뉴스갤러리*/






/*제품소개*/
.tl_business_now_box_warp { width:100%; padding:100px 0; text-align:center; background-color:#eff1f6; clear:both;}
.tl_business_now_box_warp h2 { font-size:30px; color:#000; line-height:1.6; font-weight:600}
.tl_business_now_box_warp h2:before{ display:block; content:"💕"; font-size: 40px; margin:0 auto 10px auto; border-radius:10px;}
.tl_business_now_box_warp span{ padding:10px 10px 50px 10px; font-size:16px; display:block; color:#555; font-weight:400}
/*제품소개*/






/*TLOG PRODUCTS*/
.tl_product_box_wrap { padding:150px 0; max-width:1200px; margin:0 auto; overflow:hidden}
.tl_product_box_wrap h2 { font-size:30px; text-align:center; color:#000; line-height:1.6; font-weight:600}
.tl_product_box_wrap h2:before{ display:block; content:"💕"; font-size: 40px; margin:0 auto 10px auto; border-radius:10px;}
.tl_product_box_wrap span{ padding:10px 10px 50px 10px; font-size:16px; text-align:center; display:block; color:#555; letter-spacing:-0.02em; font-weight:400}
/*TLOG PRODUCTS*/






/*메인 공지 최신글*/
.tl_latest_box_warp { width:100%; max-width:1200px; margin:0 auto; padding:0px 20px 100px 20px; border-top:1px solid #ddd; clear:both; overflow:hidden}
.tl_latest_box_warp .notice_latest { width:48%; float:left}
.tl_latest_box_warp .counsel_latest {width:48%; float:right}
@media screen and (max-width: 960px) {
	.tl_latest_box_warp .notice_latest { width:100%}
	.tl_latest_box_warp .counsel_latest { width:100%}
}
/*메인 공지 최신글*/






/*하단 상담신청*/
.tl_contact_box_wrap  { width:100%; min-height:550px; padding:100px 0; background:url(../img/main_contact_bg.jpg) center top no-repeat; background-size:cover}
.tl_contact_box_wrap .inner { max-width:1000px; margin:0 auto; } 
.tl_contact_box_wrap h2 {text-align:center;font-size:30px; color:#fff; line-height:1.6; font-weight:600}
.tl_contact_box_wrap h2 span {padding:10px 0 50px 10px; display:block; font-size:16px; color:#fff; opacity:0.8; font-weight:400; letter-spacing:-0.02em}
.tl_contact_box_wrap .input_page #co_name { width:48%; height:60px; font-size:15px; color:#6e6e6e; padding-left:10px; float:left; border:0}
.tl_contact_box_wrap .input_page #co_email { width:48%; height:60px; font-size:15px; color:#6e6e6e; padding-left:10px; float:right; border:0}
.tl_contact_box_wrap .txtarea_page  #co_message { margin-top:20px; width:100%; height:120px;  font-size:15px; color:#6e6e6e; padding:10px 0 0 10px; border:0}
/* 전체 컨테이너 */
.tl_contact_box_wrap .send_page{text-align:center;margin-top:50px;display:flex;flex-direction:row;gap:20px;align-items:center;justify-content:center;}
.tl_contact_box_wrap .send_page a{display:flex;align-items:center;justify-content:center;width:160px;height:48px;border-radius:5px;font-size:16px;font-weight:bold;text-decoration:none;position:relative;}
.tl_contact_box_wrap .send_page a i{font-size:23px;margin-right:10px;position:relative;top:-1px;}
.tl_contact_box_wrap .send_page .btnKakao{background:#fae101;color:#3f231e;box-shadow:inset 0 0 0 rgba(0,0,0,0);}
.tl_contact_box_wrap .send_page .btnNaver{background:#00c73c;color:#fff;}



.tl_contact_box_wrap #x_message{position:absolute;width:300px;border-radius:10px;height:50px;text-align:center;line-height:50px;top:50px;left:50%;margin-left:-150px;background-color:#FDD;border:2px solid #C00;font-weight:700;color:#666;z-index:1000}
.tl_contact_box_wrap #x_loading{position:absolute;display:none;width:200px;height:200px;top:50px;left:50%;margin-left:-100px;z-index:1;font-size:100px;line-height:200px}
.tl_contact_box_wrap #x_message.x-msg1 {background-color: #FDD;}
.tl_contact_box_wrap #x_message.x-msg2 {background-color: #9C6;border:2px solid #096}
/*하단 상담신청*/









/*서브상단*/
.sub_visual{position:relative;max-width:2560px;margin:0 auto;height:472px;overflow:hidden;background-repeat:no-repeat;background-position:center top}
.sub_visual.visual01 .bg{background-image:url(../img/sub_visual01.jpg)}
.sub_visual.visual02 .bg{background-image:url(../img/sub_visual02.jpg)}
.sub_visual.visual03 .bg{background-image:url(../img/sub_visual03.jpg)}
.sub_visual.visual04 .bg{background-image:url(../img/sub_visual04.jpg)}
.sub_visual.visual05 .bg{background-image:url(../img/sub_visual05.jpg)}
.sub_visual:hover .bg{-webkit-transform:scale(1.1);-moz-transform:scale(1.1);-o-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1)}
.sub_visual .title_warp { max-width:1240px; margin:0 auto; display:table; z-index:5}
.sub_visual .title_warp .table-cell { display:table-cell; vertical-align:middle; height:472px;}
.sub_visual h3{position:relative;z-index:5;font-size:45px;font-weight:bold; text-align:center; letter-spacing:-1px; color:#fff}
.sub_visual .sub_title{ position:relative; padding-bottom:10px; font-size:14px; font-weight:500; color:#fff; text-align:center; opacity:.8; z-index:5}
.sub_visual .cover{position:absolute;top:0;left:0;width:100%;height:100%;background:url(../img/sub_visual_cover.png) center bottom no-repeat;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover;min-width:1200px;opacity:.5;z-index:1}
.sub_visual .bg{position:absolute;top:0;left:0;width:100%;height:100%;background-position:center center;background-repeat:no-repeat;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover;z-index:0;-webkit-transition:all .5s ease;-moz-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}
@media screen and (max-width: 640px) {
    .sub_visual .title_warp { max-width:100%;}
	.sub_visual h3 { font-size:35px}
	.sub_visual .sub_title { font-size:13px}
}
/*서브상단*/








.content_wrap { width:100%;}
.content_wrap .txtCon { max-width:1300px; margin:0 auto; padding:60px 20px 50px 20px; font-weight:400; position:relative; clear:both}
.content_wrap .txtCon .sub_title{ margin-bottom:100px}
.content_wrap .txtCon .sub_title h1 {font-size:38px; color:#000; text-align:center}
.content_wrap .txtCon .sub_title h1:before {content:""; display:block; height:40px; width:1px; margin:20px  auto; background-color:#b0b0b0}
.content_wrap .txtCon .sub_title .sub_title {font-size: 16px; color:#555; font-weight:400; text-align:center; padding-top:20px; word-break:keep-all;}
.content_wrap .txtboard { max-width:1200px;  font-size:12px;}
@media screen and (max-width: 640px) {
   .content_wrap .txtCon .sub_title h1 { font-size:32px}
}





/*서브 하단 네비*/
.category-wrap {width:100%; height:70px; background-color:#fff; border-bottom:1px solid #ddd;  clear:both; background-attachment:scroll; position:relative; z-index:3}
.sub_navI_warp { background-color:#fff; max-width:1300px; z-index:3; position:relative; margin: -70px auto;}
.all-wrap{max-width:1300px;  height:69px; margin:0 auto;   transition:all .3s ease;}
.all-wrap .loca-wrap{width:100%;margin:0 auto;height:69px}
.all-wrap .loca-wrap .loca-area i{float:left;display:inline-block;width:60px;height:71px; line-height:65px;  color:#555; border-right:1px solid #ddd; padding:0; margin-top:0; text-align:center}
.all-wrap .loca-wrap .loca-area{height:69px;float:left;}
.all-wrap .loca-wrap .loca-area > a {display:inline-block;width:54px;height:100%; float:left; line-height:100%; text-align:center;}
.all-wrap .loca-wrap .loca-area > a img {margin-top:17px;}
.all-wrap .loca-wrap .loca-area>ul {float: left;margin:0; padding:0;}
.all-wrap .loca-wrap .loca-area>ul>li{float:left;width:220px;height:70px;position:relative; margin-left:-1px}
.all-wrap .loca-wrap .loca-area>ul>li button{height:69px;width:220px;position:relative;text-align:left; background-image:url(../img/loca_arrow_off.png);background-position-y:50%;background-position-x:100%;background-repeat:no-repeat;-webkit-transition:background .3s ease;-moz-transition:background .3s ease;-o-transition:background .3s ease;-ms-transition:background .3s ease;  border:0;  background-color: inherit; box-sizing: border-box;
    border-left: 1px solid #ddd; border-right: 1px solid #ddd;}
.all-wrap .loca-wrap .loca-area>ul>li button.active{background-image:url(../img/loca_arrow_on.png);background-position-y:50%;background-position-x:100%;background-repeat:no-repeat;}
.all-wrap .loca-wrap .loca-area>ul>li button span {padding-left: 19px;background-color: transparent; color:#333; font-size:15px}
.all-wrap .loca-wrap .loca-area>ul>li div{overflow:hidden;height:0;position:relative}
.all-wrap .loca-wrap .loca-area>ul>li div ul{display:block;position:absolute;width:100%;left:0;border:1px solid #ddd; background-color:#fff; padding:0}
.all-wrap .loca-wrap .loca-area>ul>li div ul li a{ border-bottom:1px solid #ddd; background:#fff;height:46px;color:#555;line-height:46px;display:block;-webkit-transition:background .3s ease;-moz-transition:background .3s ease;-o-transition:background .3s ease;-ms-transition:background .3s ease;padding-left:19px; font-size:15px; box-sizing:border-box}
.all-wrap .loca-wrap .loca-area>ul>li div ul li a:hover { color:#000; font-weight:bold}
.all-wrap .loca-wrap .share-area {float: right; display:block; padding-top:16px;box-sizing: border-box;}
.all-wrap .loca-wrap .share-area .hide-wrap{width:151px;height:34px;overflow:hidden;float:left}
.all-wrap .loca-wrap .share-area .hide-wrap .hide-area{width:151px;height:34px;position:relative;left:200px}
.all-wrap .loca-wrap .share-area .hide-wrap .hide-area ul {overflow: hidden; padding:0; margin:0}
.all-wrap .loca-wrap .share-area .hide-wrap .hide-area ul li {float: left;margin-left: 13px; border-bottom: 1px solid #ddd; cursor:pointer}
.all-wrap .loca-wrap .share-area .hide-wrap .hide-area ul li:first-child {margin-left: 0;}
.all-wrap .loca-wrap .share-area .share-btn{width:34px;height:34px;background-image:url(../img/share_open_bt.png);float:right;text-indent:-9999px;padding-left:18px;box-sizing:unset;background-repeat:no-repeat;background-position-x:right;transition:all .5s ease;     background-color: inherit; border:0; margin-right:20px}
.all-wrap .loca-wrap .share-area .share-btn.active {background-image: url(../img/share_close_bt.png);border-left: 1px solid #fff;}

@media screen and (max-width: 640px) {
    .all-wrap .loca-wrap .loca-area {100%; float:none;}
	.all-wrap .loca-wrap .loca-area > a {width:10%;}
	.all-wrap .loca-wrap .share-area { display:none}
	.all-wrap .loca-wrap .loca-area > ul {width:100%;}
	.all-wrap .loca-wrap .loca-area > ul > li { width:50%}
	.all-wrap .loca-wrap .loca-area > ul > li:first-child { border:0}
	.all-wrap .loca-wrap .loca-area > ul > li button {width:100%; border-right:0}
	.all-wrap .loca-wrap .loca-area i { display:none}
}
/*서브 하단 네비*/






/*푸터*/
#footer { padding: 30px 0px; width: 100%;  max-width:2560px;  position:relative; z-index:10; background-color:#0d0d0d; clear:both }
#footer .footer_in { position:relative; z-index:10; max-width:1200px; height:224px; padding:0 10px 0 10px; margin:0 auto; }
#footer .gotop { position:fixed; left:0; bottom:20px; width:100%; min-width:1080px; height:1px; text-align:center; }
#footer .gotop a { position:absolute; right:7px; bottom:0; }
#footer .menu { display:block; padding:7px 0 0;  }
#footer .menu a { display:inline-block; margin-right:28px; font-size:14px; font-weight:bold; color:#bbb; }
#footer .menu a:active { font-size:14px;} 
#footer .menu a strong { color:#f36910; }
#footer address { position:relative; margin:35px 0 0; padding-top:37px; border-top:1px solid #414141; font-size:14px; color:#a9a9a9; } /* font-weight:bold; */
#footer .adr { display:block; margin:0 0 6px; vertical-align:middle; font-style:normal; }
#footer .adr:before { content:""; display:inline-block; width:3px; height:3px; margin:0 8px 0 0; border-radius:3px; background-color:#fff; vertical-align:middle; }
#footer .copyright { display:block; margin:22px 0 0; font-size:11px;font-style:normal;  }
#footer a.wa { position:absolute; right:0; top:37px; }
/*푸터*/



/* 푸터팝업*/
.tl_pop_con{background:#fff;} 
.tl_pop_con h2.f_pop_tit{width:100%;height:80px;line-height:80px;font-size:20px;color:#fff;}
.tl_pop_con h2.f_pop_tit img {display:inline-block;margin-left:50px;margin-right:5px;margin-top:-10px;width:120px;}
.tl_pop_con h2.f_pop_tit span {display:inline-block; padding-left:50px;}
.f_pop_wrap {line-height:23px;text-align:justify;word-break:break-all;font-size:15px;overflow-y:auto;}
.f_pop_wrap strong {color:#00a19a;font-weight:normal;}
.f_pop_wrap p { color:#333; padding:40px 50px; line-height:1.6;}
.mfp-close:after { content: ''; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: url("../img/btn_close.png") no-repeat center center; -webkit-transition: -webkit-transform 300ms; transition: -webkit-transform 300ms; transition: transform 300ms; transition: transform 300ms, -webkit-transform 300ms; border-radius: 50%; }
.mfp-close { width: 40px; height: 40px; text-indent: -999px;opacity: 1; overflow: hidden; background-color:transparent; border:0; }
button.mfp-close:hover:after { -webkit-transform: rotate(270deg); -ms-transform: rotate(270deg); transform: rotate(270deg); }
/* 푸터팝업*/






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

    .scrolled #header  {background-color:#fff; border-bottom:1px solid #ddd;}
	.scrolled #open-button .nl1 { background-color:#333}
	.scrolled #open-button .nl2 { background-color:#333}
	.scrolled #open-button .nl3 { background-color:#333}
	.scrolled #open-button .navicon-line  { background-color:#fff}
    .scrolled #open-button.on .navicon-line { background-color:#fff}
	
	/*버튼*/
	#open-button{position:fixed;z-index:12;right:15px;padding-top:18px;width:75px; height:80px;-webkit-transition:all .3s ease-out;-moz-transition:all .3s ease-out;-o-transition:all .3s ease-out;transition:all .3s ease-out;cursor:pointer;display:block; }
	#open-button .navicon-line{position:absolute;width:20px;height:2px;border-radius:1px;background:#fff;-webkit-transition:all .7s ease-out;-moz-transition:all .7s ease-out;-o-transition:all .7s ease-out;transition:all .7s ease-out}
	#open-button .nl1 {top: 11px;right: 10px; width:30px;}
	#open-button .nl2 {top: 19px;right: 10px; width:24px;}
	#open-button .nl3 {top: 27px;right: 10px; width:30px;}
	#open-button.on>div>div{transform:rotate(225deg);-ms-transform:rotate(225deg);-webkit-transform:rotate(225deg);width:25px;position:absolute;top:15px;right:10px;margin:0;padding:0;background-color:#fff;}
	#open-button.on>div>div:first-child{transform:rotate(135deg);-ms-transform:rotate(135deg);-webkit-transform:rotate(135deg)}
	#open-button.scrolled .navicon-line {background-color: #fff;}
	#open-button.on.scrolled >div>div{background-color:#333;}

	
	/*버튼*/
}

	#quickLinks > a.btnKakao { position:relative; padding:2px 0 0 15px; background-color:#fae101; display:flex; font-family:GmSansM; height:40px; color:#3f231e; font-size:15px; border:0; width:100%; justify-content:center; align-items:center; margin-top:5px; border-radius:5px; }
	#quickLinks > a.btnKakao i { position:absolute; left:10px; top:7px; color:#3c201f; font-size:25px; }


	#quickLinks > a.btnNaver { position:relative; padding:2px 0 0 15px; background-color:#00c73c; display:flex; font-family:GmSansM; height:40px; color:#fff; font-size:15px; border:0; width:100%; justify-content:center; align-items:center; margin-top:5px; border-radius:5px; }
	#quickLinks > a.btnNaver i { position:absolute; left:10px; top:9px; color:#fff; font-size:23px; }

.move-form-wrap { max-width: 1400px; margin: 30px auto; font-family: 'Noto Sans KR', sans-serif; }
.move-table { width: 100%; border-collapse: collapse; border: 2px solid #222; background: #fff; }
.move-table th, .move-table td { border: 1px solid #000; padding: 12px 14px; font-size: 15px; vertical-align: middle; }
.move-table th { background: rgba(52, 50, 44); color: #fff; font-weight: 700; width: 160px; }

.field-row { display: flex; gap: 10px; align-items: center; flex-wrap: nowrap; }
.field-col { flex: 1; }
.addr-col { flex: 1 1 auto; }
.floor-col { flex: 0 0 60px; }
.transport-col { flex: 0 0 160px; }

.move-input { width: 100%; border: 1px solid #b5b5b5; height: 42px; padding: 0 10px; font-size: 15px; box-sizing: border-box; }
/* 날짜 input wrapper */
.date-wrap {
    position: relative;
}

/* 실제 placeholder처럼 보이는 가짜 텍스트 */
.date-placeholder {
    position: absolute;
    left: 12px; 
    top: 50%;
    transform: translateY(-50%);
    color: #aaa;
    pointer-events: none;
    font-size: 14px;
}

/* 날짜 텍스트를 기본적으로 숨김 */
.date-wrap input[type="date"] {
    color: transparent;
}

/* 날짜 입력 시 가짜 placeholder 숨김 */
.date-wrap input[type="date"]:valid + .date-placeholder,
.date-wrap input[type="date"]:focus + .date-placeholder {
    display: none;
}

/* 날짜 선택 후 글자 다시 보이도록 처리 */
.date-wrap input[type="date"]:valid {
    color: #333;
}

.move-input.red { border: 1px solid #b5b5b5 !important; }
.small-input { width: 100%; height: 42px; border: 1px solid #b5b5b5; padding: 0 10px; font-size: 15px; }
.move-select { width: 100%; height: 42px; border: 1px solid #b5b5b5; padding: 0 10px; font-size: 15px; }
.move-textarea { width: 100%; border: 1px solid #b5b5b5; min-height: 160px; padding: 10px; font-size: 15px; box-sizing: border-box; resize: vertical; }

/* 📌 모바일에서도 flex 유지 + 사이즈만 비율대로 축소 */
@media screen and (max-width: 9600px) {
    .move-form-wrap { padding: 0 10px; }

    .field-row { flex-wrap: wrap; }

    .floor-col { flex: 0 0 50px; }
    .transport-col { flex: 0 0 130px; }

    .move-table th { width: 100px; font-size: 14px; }
    .move-table td { font-size: 14px; }
}

.copy-btn {
    width: 100%;
    margin: 20px 0 10px;
    padding: 14px;
    font-size: 17px;
    background: #444;
    color: #fff;
    border: none;
    border-radius: 6px;
    cursor: pointer;
}
.copy-btn:hover {
    background: #222;
}
