@charset "utf-8";


/* root */
:root{
	--c-01:#1c2d63;
}

/* common */
.container_title {position:relative; text-align:center;font-size:40rem;line-height:1;letter-spacing:-1.5px;font-weight:600;padding-bottom:30rem;margin:5rem 0 60rem 0;color:#262626;}

.tit01 { position: relative; padding-top:20rem; margin: 0 0 40rem;font-size:30rem;font-weight: 600;color: #222;line-height: 1; text-align:center; } 
.tit01:before {content: ""; display:block; margin:10rem auto; width:40rem; height:39rem; background:url("../img/sub/symbol.png") center top no-repeat; background-size:100%;}
.tit02 { display:inline-block; position: relative;margin: 0rem 0 20rem; padding:10rem 40rem; font-size:18rem; background:#29803a; border-radius:50rem;  font-weight: 600;color:#fff;line-height: 1;} 

.subtable { width:100%; margin:20rem 0;border-top:1px solid #333; }
.subtable thead th{word-break: keep-all; background:#fbfbfb; padding:15rem 5rem; border:1rem solid #ddd; color:#000; }
.subtable tbody th {text-align:center; background:#f5f5f5; color:#333;  font-weight:500; padding:15rem 0; width:20%; border:1px solid #ddd;}
.subtable tbody td {word-break: keep-all; font-size:16rem; border-bottom:1px solid #f7f7f7; padding:15rem 5rem; background:#fff; line-height:1.5; color:#35363a; text-align:center; font-weight:400; letter-spacing:-0.03em; border:1px solid #ddd;}
.subtable tbody td.t_left{text-align:left;}

.subtable_p {word-break: keep-all; width:100%; margin:20rem 0;}
.subtable_p thead th{font-size:18rem;background:#4e4e4e; padding:15rem 5rem; border-left:1rem solid #ddd; border-bottom:1rem solid #ddd; color:#fff; }
.subtable_p thead th span {float:right; padding-right:10rem; font-size:16rem; }
.subtable_p tbody th {font-size:15rem;text-align:center; background:#f5f5f5; color:#333;  font-weight:500; padding:15rem 5rem; border:1px solid #ddd;}
.subtable_p tbody td {word-break: keep-all; font-size:15rem; border-bottom:1px solid #f7f7f7; padding:15rem 5rem; background:#fff; line-height:1.5; color:#35363a; text-align:center; font-weight:400; letter-spacing:-0.03em; border:1px solid #ddd;}
.subtable_p tbody td.t_left{text-align:left;}

#contents {overflow: hidden;position:relative;}
#contents p {word-break:keep-all;}

/* 서브비주얼 */
#sub_visual{margin-top:100rem; position:relative;height:400rem;background-color:#000;background-size:cover;background-position:60%;text-align:center;}
#sub_visual h2{font-weight:800; font-size:40rem; color:#fff; animation:up .5s .2s forwards; padding-top:200rem; padding-bottom:30rem; }
#sub_visual p{color:#fff; font-weight:300; position:relative;line-height:1.5;padding: 10rem 0 15rem 0;font-size:20rem;letter-spacing:-.5px;}

#sub_visual_pgae{margin-top:100rem; position:relative;height:500rem;background-color:#000;background-size:cover;background-position:60%;text-align:left;display: flex;align-items: center;}
#sub_visual_pgae h2{font-weight:800; font-size:50rem; color:#fff; animation:up .5s .2s forwards;}
#sub_visual_pgae p{color:#fff; font-weight:300; position:relative;line-height:1.5;padding: 10rem 0 15rem 0;font-size:20rem;letter-spacing:-.1px;}


/* 서브 상단 이미지 */
#sub_visual.sub10{background-image:url(../img/sub/sub01_top.jpg) }
#sub_visual.sub20{background-image:url(../img/sub/sub02_top.jpg) }
#sub_visual.sub30{background-image:url(../img/sub/sub03_top.jpg) }
#sub_visual.sub40{background-image:url(../img/sub/sub04_top.jpg) }
#sub_visual.sub50{background-image:url(../img/sub/sub05_top.jpg) }
.cont-top{margin-bottom:50rem;}
.cont-top > img{width:100%;}
/* snb */
#left_area{float:none; width:100%; margin-top:0px;}
#snb {}

.left_snb{display: flex; align-items: center;  justify-content: space-between; padding:18rem 50rem 20rem; width:1400rem; margin:0 auto; }
.left_snb h3 {float:left; font-size:40rem; font-weight:600; color:#000; letter-spacing:-.5px; }
.left_snb ul {background:#fff; padding:0 60rem; }
.left_snb li {display:inline-block; letter-spacing:-.5px; }
.left_snb li:first-child a:after{display:none;}
.left_snb li a{padding:16rem 15rem;font-size:20rem;color:#000;font-weight:600;text-align:center;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;position:relative;}
.left_snb li.on a {border-bottom:3rem solid #e9bc2e; color:#000; }

.sub .menubox {width:100%; margin:0 0 50px 0;}
.sub .menubox .lnbInner {max-width:1540px; width:100%; margin:0 auto; padding:0 20px;}
.sub .menubox .lnb_ul {display:flex; justify-content:center;}
.sub .menubox .lnb_ul > .lnb_li > a.lnb-link {display:none;}

.sub .mobile_lnb { display: none;}

.sub .web_lnb .menubox .lnbInner {padding: 0;}
.sub .web_lnb .menubox .lnb_ul{justify-content: flex-start; }
.sub .web_lnb .menubox{ margin:60px 0 0 0;}

/* home */
.sub .menubox .lnb .lnb_ul > .home_li {display:none;}

/* title */
.sub .menubox .lnb .lnb_ul > .title_li {display:none;}


.sub .menubox .lnb_ul > .lnb_li ul {display:flex; justify-content:center; gap:0px; padding:10px 20px;}
.sub .menubox .lnb_ul > .lnb_li ul li:last-child {margin:0;}
.sub .menubox .lnb_ul > .lnb_li ul li a {display:inline-flex; justify-content:center; align-items:center; color:#000;padding:15px 30px;  font-size:18px;font-weight:600; line-height:1; letter-spacing:-0.8px;}
.sub .menubox .lnb_ul > .lnb_li ul li.on a {color:#ffffff; font-size:18px; letter-spacing:0; border-radius:30px; background:#245347; padding:15px 40px;}
.sub .menubox .lnb_ul .sub_li{ background:rgba(255,255,255,0.7);  border-radius: 60px;}

@media all and (max-width: 1024px){
    .sub .menubox .lnb_ul > .lnb_li ul li a {width:120px;  font-size:13px; height:40px; }
	.sub .menubox .lnb_ul > .lnb_li ul li.active a {font-size:13px; }
}

/* 
* discription: 사이트 복사시 지우고 사용하는 custom 영역
*/


@media (max-width:860px) {
	#sub_visual{height:250rem; margin-top:80rem;}
	#sub_visual h2{font-size:25rem; padding-top:120rem;}
	#sub_visual p{font-size:16rem}

	#sub_visual_pgae{height:250rem; margin-top:80rem;}
	#sub_visual_pgae h2{font-size:22rem; }
	#sub_visual_pgae p{font-size:16rem}

	.container_title {font-size:25rem; padding-bottom:0rem;}

}

@media (max-width:540px) {
	body {font-size:14rem}

	#sub_visual{height:180rem}
	#sub_visual h2{font-size:22rem; padding-top:80rem;}
	#sub_visual p{font-size:14rem}

	#sub_visual_pgae{height:180rem}
	#sub_visual_pgae h2{font-size:25rem}
	#sub_visual_pgae p{font-size:14rem}

	.tit01{margin:0 0 15rem; font-size:20rem;}
	.tit01:before {width:35rem; height:35rem;}
	.tit01::after {left: 51%;} 
	.tit02{margin:20rem 0 10rem; font-size:17rem}
	.add{margin:-5rem 0 10rem;}
	.cont-box{margin-bottom:30rem}
	
	.subtable thead th,
	.subtable tbody td,
	.subtable tbody th{line-height:1.5; padding:5rem; font-size:12rem;}
	.subtable tbody th{width:20%;}

	.subtable_p thead th,
	.subtable_p tbody td,
	.subtable_p tbody th{line-height:1.5; padding:5rem 1rem; font-size:10rem;}
	.subtable_p thead th span {font-size:10rem; }

}

/*end 사이트 복사시 지우고 사용하는 custom 영역 */

.sec01{padding:50rem 0 50rem; word-break: keep-all;}
.sec01 .item{display:flex;align-items:center; justify-content: space-between;}
.sec01 .item:nth-child(odd){flex-direction:row-reverse;}
.sec01 .item + .item{padding-top:100px;}
.sec01 .item .txt{width:calc(50% - 0px);padding-right:5vw;}
.sec01 .item:nth-child(odd) .txt{padding-left:5vw;padding-right:0;}
.sec01 .item .txt .tt{}
.sec01 .item .txt .tt h3 {font-size:22rem; font-weight:800; padding-bottom:30rem; letter-spacing:-.5px; color:#ee9400; }
.sec01 .item .txt .tt p {font-size:17rem; font-weight:500; color:#000; letter-spacing:-.5px; line-height:1.8;}
.sec01 .item .pic{width:calc(50% + 0px);height:641rem; overflow:hidden;}
.sec01 .item .pic img{display:block;width:100%;height:100%;object-fit:cover;border-radius: 0 30rem 30rem 0;}

@media all and (max-width: 1800px) {
    .sec01 .item .pic{height:620rem;}
	.sec01 .item .pic img{object-fit:cover;}
}

@media all and (max-width: 1600px) {
    .sec01 .item .pic{height:550rem;}
}

@media all and (max-width: 1023px) {
    .sec01 .sub_tit i { font-size:50rem; bottom:40rem;}
	.sec01 .item{display:block;}
    .sec01 .item + .item{padding-top:50px;}
    .sec01 .item .txt{width:100%;padding:0 0 20px;}
	.sec01 .item .txt .tt h3 {font-size:18rem;}
	.sec01 .item .txt .tt p {font-size:15rem;}
    .sec01 .item .pic{width:100%;height:auto;}
    .sec01 .item .pic img{max-width:100%;margin:0 auto;height:auto;object-fit:unset;}
}



.interior_con01{padding:50rem 0rem 50rem;}
.interior_con01 .img_box {overflow:hidden; position:relative; }
.interior_con01 .img_box li {padding:0; }
.interior_con01 .img_box span.arrow {position:absolute; z-index:2; cursor:pointer; }
.interior_con01 .img_box span.arrow.prev {left:3%; top:50%; }
.interior_con01 .img_box span.arrow.next {right:3%; top:50%; }
.interior_con01 .img_box img{width:100%;}
.interior_con01 .thumb_box {overflow:hidden; margin-top:10rem; }
.interior_con01 .thumb_box li {background-color:#000; cursor:pointer; margin-right:10rem; }
.interior_con01 .thumb_box li:last-child {margin-right:0rem; }
.interior_con01 .thumb_box img {width:100%; opacity:0.4; }
.interior_con01 .thumb_box li.swiper-slide-thumb-active img {opacity:1; }

@media all and (max-width:1000px){
	.interior_con01 .img_box span.arrow {padding:0 20rem;}
	.interior_con01 .img_box span.arrow img {width:auto; max-height:30rem; }
	.interior_con01 .img_box span.arrow.prev {left:0; top:40%; }
	.interior_con01 .img_box span.arrow.next {right:0; top:40%; }
	.interior_con01 .thumb_box {overflow:hidden; margin-top:10px; }
}




.location {padding:50rem 0;}
.location .location_content {display:flex; flex-direction: row-reverse;justify-content: space-between;}
.location .location_content .left_cont {width:31.34%; margin:0  0 0 5.33%;display:flex; align-items:center; }
.location .location_content .left_cont .txtDiv .location_info_wrap .addressBox {margin:0 0 102px 0;}
.location .location_content .left_cont .txtDiv .location_info_wrap .addressBox > div {display:flex; align-items:center; margin:0 0 30px 0; width:400px; }
.location .location_content .left_cont .txtDiv .location_info_wrap .addressBox > div .circleBox {display:flex; justify-content:center; align-items:center; width:70px; height:70px; margin:0 12px 0 0; border-radius:50%; background:#f0f0f0;}
.location .location_content .left_cont .txtDiv .location_info_wrap .addressBox > div h5 {color:#1a1a1a; font-size:24px; font-weight:600; line-height:1; letter-spacing:-0.6px;}
.location .location_content .left_cont .txtDiv .location_info_wrap .addressBox > h6 {color:#555555;  font-size:18px; font-weight:400; line-height:1.5; letter-spacing:-0.9px;}

.location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area {display:flex;}
.location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox {width:70%; margin:0 7.38% 0 0;}
.location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox:last-child {margin:0;}
.location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox > div {display:flex; align-items:center; margin:0 0 28px 0;}
.location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox > div .circleBox {display:flex; justify-content:center; align-items:center; width:70px; height:70px; margin:0 12px 0 0; border-radius:50%; background:#f0f0f0;}
.location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox > div h5 {color:#1a1a1a; font-size:24px; font-weight:600; line-height:1; letter-spacing:-0.6px;}
.location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox h6 {color:#555555; font-size:18px; font-weight:400; line-height:1; }

.location .location_content .right_cont {width:63.33%;}
.location .location_content .right_cont .mapDiv {width:100%; height:580px;}
.location .location_content .right_cont .mapDiv .root_daum_roughmap .wrap_map {width:100%; height:100%;}

@media all and (max-width:1500px){
    .location .location_content .left_cont .txtDiv .location_info_wrap .addressBox > h6 {line-height:1.5;}
}

@media all and (max-width:1024px){
    /* location 오시는길 */
    .location .location_content {display:flex;}
    .location .location_content .left_cont {width:31.34%; margin:0 0 0 5.33% ;}
    .location .location_content .left_cont .txtDiv .office_nameBox {margin:0 0 35px 0;}
    .location .location_content .left_cont .txtDiv .office_nameBox h3 {margin:0 0 12px 0; font-size:32px; letter-spacing:-0.96px;}
    .location .location_content .left_cont .txtDiv .office_nameBox h6 {font-size:15px;}

    .location .location_content .left_cont .txtDiv .location_info_wrap .addressBox {margin:0 0 35px 0;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .addressBox > div {margin:0 0 17px 0;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .addressBox > div .circleBox {width:60px; height:60px; margin:0 10px 0 0;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .addressBox > div .circleBox figure {max-width:28px;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .addressBox > div h5 {font-size:20px; letter-spacing:-0.5px;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .addressBox > h6 {font-size:16px; letter-spacing:-0.8px;}

    .location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area {display:block;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox {width:100%; margin:0 0 35px 0;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox > div {margin:0 0 17px 0;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox > div .circleBox {width:60px; height:60px; margin:0 10px 0 0;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox > div .circleBox figure {max-width:28px;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox > div h5 {font-size:20px; letter-spacing:-0.5px;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox h6 {font-size:18px;}

    .location .location_content .right_cont {width:63.33%;}
    .location .location_content .right_cont .mapDiv {height:480px;}
}

@media all and (max-width:768px){
    /* location 오시는길 */
    .location .location_content {display:flex; flex-direction:column-reverse;}
    .location .location_content .left_cont {width:100%; margin:5vw 0 0 0;}
    .location .location_content .left_cont .txtDiv .office_nameBox {margin:0 0 4vw 0;}
    .location .location_content .left_cont .txtDiv .office_nameBox h3 {margin:0 0 2vw 0; font-size:5.2vw;}
    .location .location_content .left_cont .txtDiv .office_nameBox h6 {font-size:3.2vw;}

    .location .location_content .left_cont .txtDiv .location_info_wrap .addressBox {margin:0 0 5vw 0;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .addressBox > div {margin:0 0 2.6vw 0;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .addressBox > div .circleBox {width:12vw; height:12vw; margin:0 2vw 0 0;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .addressBox > div .circleBox figure {max-width:5vw;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .addressBox > div h5 {font-size:3.8vw;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .addressBox > h6 {font-size:3.4vw;}

    .location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox {margin:0 0 5vw 0;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox > div {margin:0 0 2.6vw 0;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox > div .circleBox {width:12vw; height:12vw; margin:0 2vw 0 0;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox > div .circleBox figure {max-width:5vw;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox > div h5 {font-size:3.8vw;}
    .location .location_content .left_cont .txtDiv .location_info_wrap .telFax_area .telFaxBox h6 {font-size:3.6vw;}

    .location .location_content .right_cont {width:100%;}
    .location .location_content .right_cont .mapDiv {height:80vw; min-height:180px;}
}

.sec_sleep01 {padding:50rem 0;}
.sec_sleep01 .tt p {text-align:center;}
.list02 ul {display:grid;grid-template-columns: repeat(2, 1fr);}
.list03 ul {display:grid;grid-template-columns: repeat(3, 1fr);}
.list04 ul {display:grid;grid-template-columns: repeat(4, 1fr);}
.sec_sleep01 .bn_top { overflow: hidden; } 
.sec_sleep01 .bn_top h4 { font-size: 1.8em; font-weight: 600; margin-bottom: 40px; } 
.sec_sleep01 .bn_top p { font-size: 17rem; letter-spacing:-.5px; } 
.sec_sleep01 .bn_top ul { gap: 30px 40px; margin-top: 40px; } 
.sec_sleep01 .bn_top ul li {background: #fff; border-radius: 20px; padding: 40px; display: flex; gap: 40px; border: 4px solid #f6d8a6;} 
.sec_sleep01 .bn_top ul li > div { display: flex; flex-direction: column; flex: none; } 
.sec_sleep01 .bn_top ul li > div span { font-size: 0.8em; color: var(--light); font-weight: 600; } 
.sec_sleep01 .bn_top ul li > div b { font-size: 22rem; font-weight:600; } 
.sec_sleep01 .bn_top ul li > div b span {display:block; font-size:13px;}
.sec_sleep01 .bn_top ul li p span { display: block; width: 100%; font-size: inherit; color: #000; font-size:17rem; font-weight:400; } 
.sec_sleep01 .bn_top ul li dl dd {word-break: keep-all; letter-spacing:-.5px; font-size:17rem; font-weight:400; margin-bottom:10rem; }
.sec_sleep01 .bn_top ul li dl dd:before {content: ""; position:absolute; width:3px; height:3px; background:#f39700; text-align:left; margin-left:-10px; border-radius:5px; margin-top:10px;}

@media all and (max-width: 1280px){
 .sec_sleep01 .bn_top ul { flex-direction: column; } 
 .sec_sleep01 .bn_top ul li { width: 100%; } 
 }
@media all and (max-width: 1023px){
 .sec_sleep01 .tt p {font-size:15rem;}
 .list02 ul {display:grid;grid-template-columns: repeat(1, 1fr);}
 .list03 ul {display:grid;grid-template-columns: repeat(1, 1fr);}
 .list04 ul {display:grid;grid-template-columns: repeat(1, 1fr);}

 .sec_sleep01 .bn_top h4 { font-size: 1.5em; margin-bottom: 20px; } 
 .sec_sleep01 .bn_top p { font-size: 15rem; } 
 .sec_sleep01 .bn_top ul { gap: 20px; } 
 .sec_sleep01 .bn_top ul li { border-radius: 10px; padding: 20px; flex-direction: column; gap: 10px; } 
 .sec_sleep01 .bn_top ul li > div { flex-direction: row; align-items: center; gap: 10px; } 
 .sec_sleep01 .bn_top ul li > div span { font-size: 14rem; } 
 .sec_sleep01 .bn_top ul li > div b { font-size: 18rem; } 
 .sec_sleep01 .bn_top ul li p span { font-size:15rem; } 
 .sec_sleep01 .bn_top ul li dl dd {font-size:15rem;}
 }

 
.sec_box { } 
.sec_box h4 { font-size: 1.8em; font-weight: 600; margin-bottom: 40px; } 
.sec_box p { font-size: 17rem; letter-spacing:-.5px; } 
.sec_box ul { display: flex; flex-wrap: wrap; gap: 30px 40px; margin-top: 40px; } 
.sec_box ul li {word-break: keep-all; width: calc(50% - 20px); background: #fff; border-radius: 20px; padding: 40px; display: flex; gap: 40px; } 
.sec_box ul li:nth-child(1),
.sec_box ul li:nth-child(2) { border: 4px solid #f6d8a6; } 
.sec_box ul li > div { display: flex; flex-direction: column; flex: none; } 
.sec_box ul li > div span { font-size: 0.8em; font-weight: 600; } 
.sec_box ul li > div b { font-size: 22rem; font-weight:600; } 
.sec_box ul li p span { display: block; width: 100%; font-size: inherit; color: #000; font-size:17rem; font-weight:400; }
.sec_box ul li dl {padding-top:5rem;}
.sec_box ul li dl dd {letter-spacing:-.5px; font-size:17rem; font-weight:400; margin-bottom:10rem; }
.sec_box ul li dl dd:before {content: ""; position:absolute; width:3px; height:3px; background:#f39700; text-align:left; margin-left:-10px; border-radius:5px; margin-top:10px;}

@media all and (max-width: 680px){
 .sec_box ul li {flex-direction: column; width: 100%; gap: 10px; } 
 .sec_box ul { flex-direction: column; } 
 .sec_box ul li > div b { font-size: 18rem;} 
 .sec_box ul li dl dd { font-size:15rem;}
 }


.sec_box02 { } 
.sec_box02 ul { display: flex; flex-wrap: wrap; gap: 30px 40px; margin-top: 40px; } 
.sec_box02 ul li {word-break: keep-all; width:100%; background: #fff; border-radius: 20px; padding: 50px 70px; display: flex; gap: 40px; } 
.sec_box02 ul li:nth-child(1),
.sec_box02 ul li:nth-child(2) { border: 4px solid #f6d8a6; } 
.sec_box02 ul li > div { display: flex; flex-direction: column; flex: none; } 
.sec_box02 ul li > div span { font-size: 0.8em; color: var(--light); font-weight: 600; } 
.sec_box02 ul li > div b { font-size: 22rem; font-weight:600; } 
.sec_box02 ul li p span { display: block; width: 100%; font-size: inherit; color: #000; font-size:17rem; font-weight:400; } 
.sec_box02 ul li dl dd {letter-spacing:-.5px; font-size:17rem; font-weight:400; margin-bottom:10rem; }
.sec_box02 ul li dl dd:before {content: ""; position:absolute; width:3px; height:3px; background:#f39700; text-align:left; margin-left:-10px; border-radius:5px; margin-top:10px;}

@media all and (max-width: 680px){
 .sec_box02 ul li {flex-direction: column; width: 100%; padding: 40px 30px; gap: 20px;} 
 .sec_box02 ul { flex-direction: column; } 
 .sec_box02 ul li > div b { font-size: 18rem;}
 .sec_box02 ul li dl dd { font-size:15rem;}
 }

.sec04{background:#f8f2e8; padding:80rem 0;}
.sec04 .txt, .sec05 .txt{max-width:1400px; margin:0 auto;}
.sec04 h5 {text-align:center; font-size:27rem; font-weight:600; margin-bottom:30rem; }
.sec04 .tt > p{font-size:1.0em;color:#fff;text-align: center; line-height:1.7;    font-weight: 300;margin-bottom:50px;}
.sec04 .card{gap:20px; }
.sec04 .two {display:grid;grid-template-columns: repeat(2, 1fr);}
.sec04 .three {display:grid;grid-template-columns: repeat(3, 1fr);}
.sec04 .four {display:grid;grid-template-columns: repeat(4, 1fr);}
.sec04 .card > div{word-break: keep-all; background: #fff;border-radius: 40px;width: 100%;text-align: center;    padding: 50px 10px;}
.sec04 .card > div p{padding: 4px 20px;font-size: 15px;border: 1px solid #9c9c9c;display: inline;border-radius: 18px;    font-weight: 500;}
.sec04 .card > div h3{font-size: 20rem;font-weight: 700; letter-spacing:-.5px; margin-top: 20px; line-height: 1.5;}
.sec04 .card > div span {display:block; font-size: 17rem;font-weight: 500; letter-spacing:-.5px; margin-top: 20px; line-height: 1.5;}
.sec04 .card > div span.small {font-size: 15rem;}

@media all and (max-width: 1023px) {
    .sec04{padding:80rem 10rem;}
	.sec04 .three {display:grid;grid-template-columns: repeat(2, 1fr);}
	.sec04 .four {display:grid;grid-template-columns: repeat(2, 1fr);}
}

@media all and (max-width: 768px) {
    .sec04{padding:30rem 0;}
	.sec04 .two {display:grid;grid-template-columns: repeat(1, 1fr);}
	.sec04 .three {display:grid;grid-template-columns: repeat(1, 1fr);}
    .sec04 .four {display:grid;grid-template-columns: repeat(1, 1fr);}
	.sec04 .card > div h3{font-size: 18rem;}
    .sec04 .card > div p{font-size: 13px;}
	.sec04 .card > div span { font-size: 15rem;}
    
}


.sec02{display:flex;align-items:center;background: url(../img/sub/subtop_bg.jpg) no-repeat;background-size:cover; justify-content: center; height: 300px;position: relative;}
.sec02:before {
    content: '';
    position: absolute;
    z-index: 1;
    top: 100%;
    margin-top: -60px;
    left: 50%;
    margin-left: -1px;
    width: 2px;
    height: 100px;
    animation: lineAni 1.2s ease infinite;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.00) 0%, rgba(252, 211, 188, 0.19) 18.75%, rgba(15, 65, 48, 0.61) 60.58%, #0f4130 100%);
}
.sec02 .txt{text-align:center; padding:20px;}
.sec02 .txt .tt{padding-bottom:0;}
.sec02 .txt h3{font-size: 30rem;letter-spacing: -0.02em; color:#fff;font-weight:700; margin-bottom:20rem; }
.sec02 .txt h4{word-break: keep-all;font-size:18rem;font-weight:400;line-height:1.5;text-align: center; color:#fff;}

@media all and (max-width: 768px) {
    .sec02{height: 250px;}
	.sec02 .txt h3{font-size: 22rem;}
	.sec02 .txt h4{font-size:15rem;}
    
}


#p41 .step_con{padding-top:30rem;text-align:center}
#p41 .step_con .light_txt{font-size:35px;line-height:1.3;font-weight:300;color:#111}
#p41 .step_con .line{display:block;width:1px;height:85px;margin:43px auto 50px;background-color:#e1e1e1}
#p41 .step_con .cost_list{display:flex;justify-content:center;gap:20px; margin-bottom:73px}
#p41 .step_con .cost_list li{width:200px;height:300px;padding-top:86px;border:2px solid #ffba13;border-radius:500px;background-color:rgba(243,151,0,.05)}
#p41 .step_con .cost_list li+li{margin-left:0px}
#p41 .step_con .cost_list li .icon{display:block; background:#ffba13; border-radius:50rem; font-size:16rem;letter-spacing:-.5px; font-weight:400;color:#fff; width:150rem; padding:5rem 0; margin:20rem auto 0;  line-height:1.5;  }
#p41 .step_con .cost_list li .txt{margin-top:20px;font-size:18rem;letter-spacing:-.5px; font-weight:600;color:#111; word-break: keep-all; line-height:1.5; }

@media (max-width:1460px){
#p41 .step_con .light_txt{font-size:30px}
#p41 .step_con .cost_list li{width:270px;height:270px;padding-top:78px}
#p41 .step_con .cost_list li .txt{margin-top:15px;font-size:20px}
}

@media (max-width:1230px){
#p41 .step_con{padding-top:92px}
#p41 .step_con .cost_list li{width:235px;height:235px;padding-top:40rem}
#p41 .step_con .cost_list li+li{margin-left:-15px}
#p41 .step_con .cost_list li .txt{font-size:18px}
#p41 .step_con .line{height:65px;margin:33px auto 30px}
}

@media (max-width:1024px){
#p41 .step_con{padding-top:80px}
#p41 .step_con .light_txt{font-size:25px}
#p41 .step_con .line{height:50px;margin:28px auto 25px}
#p41 .step_con .cost_list{margin-bottom:55px}
#p41 .step_con .cost_list li{width:190px;height:190px;}
#p41 .step_con .cost_list li+li{margin-left:-10px}
#p41 .step_con .cost_list li .txt{font-size:15rem}
#p41 .step_con .cost_list li .icon img{height:45px}
}

@media (max-width:768px){
#p41 .step_con{padding-top:65px}
#p41 .step_con .light_txt{font-size:23px}
#p41 .step_con .line{height:40px;margin:28px auto 20px}
#p41 .step_con .cost_list{flex-wrap:wrap;width:400px;margin:0 auto 55px}
#p41 .step_con .cost_list li{width:200rem;height:200rem;}
#p41 .step_con .cost_list li:nth-child(3){margin-left:0}
#p41 .step_con .cost_list li:nth-child(n + 3){margin-top:-10px}
#p41 .step_con .cost_list li .icon{font-size:13rem;width:100rem;  }
}

@media (max-width:480px){
#p41 .step_con{padding-top:60px}
#p41 .step_con .light_txt{font-size:20px}
#p41 .step_con .line{height:35px;margin:25px auto 15px}
#p41 .step_con .cost_list{width:100%;margin-bottom:40px}
#p41 .step_con .cost_list li{width:165px;height:165px;padding-top:20rem}
#p41 .step_con .cost_list li .txt{margin-top:10px;font-size:13rem}
}

@media (max-width:380px){
#p41 .step_con .cost_list li{width:145px;height:145px;}
}


.dots-text {	display: flex;	align-items: flex-start;	gap: 0 10px;	position: relative; margin-top:20rem; font-size:20rem; font-weight:600; }
.dots-text::before {	content: "";	display: inline-block;	min-width: 3px;	height: 3px;	border-radius: 50%;	background-color: #f39700;	transform: translateY(10px);}

@media (max-width: 1024px) {
	.dots-text {	 font-size:18rem; }
	.dots-text::before {		transform: translateY(8px);	}
}

.sec_img {text-align:center; padding:50rem 0;}
.sec_img p {font-size:20rem; font-weight:600;}

@media (max-width: 1024px) {
	.sec_img p {font-size:16rem;}
}



  .sec_map .map_box {    margin: 80px 0;    width: 100%;    height: 640px;    border-radius: 20px;    overflow: hidden;  }
  .sec_map .map_box .root_daum_roughmap,
  .sec_map .root_daum_roughmap .wrap_map {    width: 100% !important;    height: 100% !important;  }
  .sec_map .map_box .wrap_controllers {    display: none;  }
  .sec_map .adr {    display: flex;    justify-content: space-between;    align-items: center;  }
  .sec_map .adr dl dt {    font-size: 25rem;    font-weight: 700;  color:#104231; }
  .sec_map .adr dl dd {    font-size: 18rem;    font-weight: 500;   margin-top: 18px;  }
  .sec_map .adr a {    border: 1px solid #333;    padding: 22px 40px;    border-radius: 35px;    text-decoration: none;    display: flex;    align-items: center;    gap: 95px;    font-weight: 600;    font-size: 1.1em;  }
  .sec_map .pt {background:#f8f2e8; padding:50rem 0; margin-top:70rem;}
  .sec_map .pt li { word-break: keep-all; margin-bottom:30rem;   display: flex;     gap: 50px;  }
  .sec_map .pt li .icon_box {    display: flex;    align-items: center;    justify-content: center;    flex-direction: column;    gap: 20px;    width: 140px;    height: 140px;    background: #fff;    border-radius: 20px;  }
  .sec_map .pt li .icon_box i {    font-size:30rem;  }
  .sec_map .pt li .icon_box em {    font-size:17rem; letter-spacing:-.5px; font-weight:600;  }
  .sec_map .pt li div > b {  display:block;  margin-bottom: 20px;    align-items: center;    padding: 10px 10px;    background: #f3af00;   color:#fff; text-align:center; width: 220px;    font-weight: 600;    border-radius: 125px}
  .sec_map .pt li div p {  letter-spacing:-.5px;  font-weight: 400;    line-height: 150%;  }
  .sec_map .pt li div dl dd {margin-bottom:7rem; letter-spacing:-.5px;  font-weight: 500;    line-height: 150%;  margin-left:10px; }
  .sec_map .pt li div dl dd:before {content: ""; position:absolute; width:3px; height:3px; background:#333; text-align:left; margin-left:-10px; border-radius:5px; margin-top:10px;}
.noe {margin-top:25rem;}

  @media all and (max-width: 1360px) {
    .sec_map .pt {      flex-direction: column;      gap: 28px;    }
  }
  @media all and (max-width: 1024px) {
    .sec_map .txt {      text-align: center;    }
    .sec_map .map_box {      margin: 28px 0;      height: 208px;      border-radius: 7px;    }
    .sec_map .adr {      flex-direction: column;      align-items: flex-start;      gap: 18px;    }
    .sec_map .adr dl dt {      font-size: 16rem;    }
    .sec_map .adr dl dd {      font-size: 14rem;      margin-top: 8px;    }
    .sec_map .adr a {      padding: 10px 17px;      border-radius: 18px;      width: 178px;      justify-content: space-between;      gap: 0px;      font-size: 0.9em;    }

    .sec_map .pt li {  flex-direction:column;  align-items: flex-start;  }
    .sec_map .pt li .icon_box {  margin:0 auto;    gap: 10px;      width: 130px;      height: 130px;      border-radius: 700px;      flex: none;    }
	  .sec_map .pt li .icon_box em {    font-size:15rem;}
    .sec_map .pt li div > b {      margin-bottom: 4px;      padding: 4px;      width: 122px;      border-radius: 14px;      height: 28px;    }
    .sec_map .pt li div p,
    .sec_map .pt li div p b {      font-size: 0.9em;    }
	.noe {margin-top:0rem;}
  }

/* =====================================================
   IL YOUNG SILVER CARE / Official baseline v1.0.0
   신규 스타일은 기존 공통 스타일과 분리한다.
===================================================== */
:root {
    --ilyoung-primary: #173f38;
    --ilyoung-primary-soft: #2f6658;
    --ilyoung-sage: #91a999;
    --ilyoung-gold: #caa35b;
    --ilyoung-ivory: #f6f3eb;
    --ilyoung-text: #22302c;
}
.ilyoung-main .side_nav span { display:flex; align-items:center; gap:10px; font-size:12px; color:#fff; }
.ilyoung-main .side_nav em { width:0; overflow:hidden; opacity:0; white-space:nowrap; transition:.35s; }
.ilyoung-main .side_nav li.act em { width:90px; opacity:1; }
.ilyoung-main .side_nav.black span { color:var(--ilyoung-primary); }
.ilyoung-visual-progress { position:absolute; left:50%; bottom:42px; z-index:80; width:220px; height:2px; background:rgba(255,255,255,.35); transform:translateX(-50%); }
.ilyoung-visual-progress span { display:block; width:0; height:100%; background:var(--ilyoung-gold); }

.ilyoung-about { min-height:850px; display:flex; align-items:center; background:var(--ilyoung-ivory); }
.ilyoung-about__inner { width:min(1500px,90%); margin:0 auto; display:grid; grid-template-columns:56% 44%; align-items:center; }
.ilyoung-about__visual { position:relative; min-height:650px; }
.ilyoung-about__main { position:absolute; inset:0 16% 0 0; overflow:hidden; border-radius:0 70px 0 0; }
.ilyoung-about__main img,.ilyoung-about__sub img { width:100%; height:100%; object-fit:cover; transition:transform 1.2s ease; }
.ilyoung-about__sub { position:absolute; right:0; bottom:-5%; width:40%; height:42%; overflow:hidden; border:12px solid var(--ilyoung-ivory); }
.ilyoung-about__copy { padding-left:8vw; }
.ilyoung-about .eyebrow,.ilyoung-daily .eyebrow,.ilyoung-intro-page .eyebrow { margin-bottom:20px; color:var(--ilyoung-gold); font-size:16px; font-weight:800; letter-spacing:.18em; }
.ilyoung-about h2,.ilyoung-daily h2 { color:var(--ilyoung-primary); font-size:50px; line-height:1.25; font-weight:800; }
.ilyoung-about .desc { margin:35px 0; color:#4d5a56; font-size:18px; line-height:1.9; }
.ilyoung-about .more_btn { display:inline-flex; align-items:center; justify-content:center; min-width:190px; height:56px; color:#fff; background:var(--ilyoung-primary); }

.ilyoung-main .index_service { background:var(--ilyoung-primary); }
.ilyoung-main .index_features .features_intro { background:var(--ilyoung-primary); }
.ilyoung-main .index_features .features_box .box:nth-child(2) { background:#ab6e3e; }
.ilyoung-main .index_features .features_box .box:nth-child(3) { background:var(--ilyoung-gold); }
.ilyoung-main .index_features .features_box .box:nth-child(4) { background:var(--ilyoung-primary-soft); }
.ilyoung-main .features_box .box:hover .img { transform:scale(1.06); }
.ilyoung-main .features_box .img { transition:transform 1s ease; }

.ilyoung-daily { min-height:900px; display:flex; align-items:center; background:#fff; }
.ilyoung-daily__inner { width:min(1500px,90%); margin:0 auto; }
.ilyoung-daily__head { margin-bottom:45px; }
.ilyoung-daily__body { display:grid; grid-template-columns:60% 40%; align-items:stretch; }
.ilyoung-daily__media { min-height:540px; overflow:hidden; }
.ilyoung-daily__media img { width:100%; height:100%; object-fit:cover; transition:opacity .45s ease,transform .9s ease; }
.ilyoung-daily__timeline { padding:30px 0 30px 70px; }
.ilyoung-daily__timeline ol { position:relative; }
.ilyoung-daily__timeline ol:before { content:""; position:absolute; left:20px; top:20px; bottom:20px; width:1px; background:#d8ddd9; }
.ilyoung-daily__timeline li { position:relative; margin-bottom:12px; }
.ilyoung-daily__timeline button { width:100%; padding:14px 10px 14px 65px; text-align:left; background:none; border:0; cursor:pointer; }
.ilyoung-daily__timeline em { position:absolute; left:0; top:13px; z-index:1; display:grid; place-items:center; width:42px; height:42px; border-radius:50%; color:var(--ilyoung-primary); background:#fff; border:1px solid #cfd7d2; font-weight:800; transition:.35s; }
.ilyoung-daily__timeline strong { display:block; color:var(--ilyoung-primary); font-size:24px; }
.ilyoung-daily__timeline span { display:block; max-height:0; margin-top:0; overflow:hidden; color:#65706c; font-size:16px; line-height:1.7; opacity:0; transition:.4s; }
.ilyoung-daily__timeline li.is-active em { color:#fff; background:var(--ilyoung-gold); border-color:var(--ilyoung-gold); }
.ilyoung-daily__timeline li.is-active span { max-height:90px; margin-top:10px; opacity:1; }

.ilyoung-main .index_review .facility-no { display:block; margin-top:15px; color:var(--ilyoung-primary); font-weight:800; letter-spacing:.12em; }
.ilyoung-main .esti_box { background-image:linear-gradient(rgba(16,52,45,.76),rgba(16,52,45,.76)),url(../img/main/customer_bg.jpg); }
.ilyoung-main .esti_box .r { display:block; }

.ilyoung-intro-page { padding:100px 0 0; }
.ilyoung-intro-lead { display:grid; grid-template-columns:46% 54%; align-items:center; gap:70px; }
.ilyoung-intro-copy .sub_tit h3 { padding-bottom:28px; color:var(--ilyoung-primary); font-size:45px; line-height:1.35; }
.ilyoung-intro-text p { margin-bottom:18px; color:#4a5551; font-size:17px; line-height:1.85; }
.ilyoung-intro-collage { position:relative; min-height:620px; }
.ilyoung-intro-collage .main { position:absolute; inset:0 12% 8% 0; overflow:hidden; border-radius:0 55px 0 0; }
.ilyoung-intro-collage .sub { position:absolute; right:0; bottom:0; width:42%; height:40%; border:10px solid #fff; overflow:hidden; }
.ilyoung-intro-collage img { width:100%; height:100%; object-fit:cover; }
.ilyoung-values { padding:120px 0; }
.ilyoung-values__head { margin-bottom:45px; text-align:center; }
.ilyoung-values__head h3 { color:var(--ilyoung-primary); font-size:36px; }
.ilyoung-values__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.ilyoung-values__grid article { min-height:260px; padding:45px 38px; background:var(--ilyoung-ivory); border-top:4px solid var(--ilyoung-primary); }
.ilyoung-values__grid em { color:var(--ilyoung-gold); font-size:16px; font-weight:800; }
.ilyoung-values__grid h4 { margin:28px 0 18px; color:var(--ilyoung-primary); font-size:27px; }
.ilyoung-values__grid p { color:#596460; font-size:16px; line-height:1.75; }
.ilyoung-intro-promise { position:relative; height:650px; overflow:hidden; }
.ilyoung-intro-promise__image { position:absolute; inset:-5%; background:url(../img/sub/intro_bottom.jpg) center/cover no-repeat; animation:ilyoungZoom 12s ease-out infinite alternate; }
.ilyoung-intro-promise:after { content:""; position:absolute; inset:0; background:rgba(17,58,50,.58); }
.ilyoung-intro-promise__copy { position:relative; z-index:1; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; color:#fff; text-align:center; }
.ilyoung-intro-promise__copy span { width:75px; height:2px; margin-bottom:30px; background:var(--ilyoung-gold); }
.ilyoung-intro-promise__copy p { font-size:38px; line-height:1.5; font-weight:700; }
#sub_visual.sub10 { background-image:linear-gradient(rgba(13,48,41,.42),rgba(13,48,41,.42)),url(../img/sub/sub01_top.jpg); }
@keyframes ilyoungZoom { from{transform:scale(1.08)} to{transform:scale(1)} }

@media (max-width:1200px) {
    .ilyoung-about__inner,.ilyoung-daily__body,.ilyoung-intro-lead { grid-template-columns:1fr; }
    .ilyoung-about { padding:100px 0; }
    .ilyoung-about__visual { min-height:560px; }
    .ilyoung-about__copy { padding:70px 0 0; }
    .ilyoung-daily { padding:100px 0; }
    .ilyoung-daily__timeline { padding:35px 0 0; }
    .ilyoung-intro-lead { gap:45px; }
}
@media (max-width:768px) {
    .ilyoung-main .side_nav { display:none; }
    .ilyoung-about,.ilyoung-daily { min-height:auto; padding:75px 0; }
    .ilyoung-about__visual { min-height:420px; }
    .ilyoung-about__main { inset:0; border-radius:0 35px 0 0; }
    .ilyoung-about__sub { display:none; }
    .ilyoung-about h2,.ilyoung-daily h2 { font-size:34px; }
    .ilyoung-daily__body { display:block; }
    .ilyoung-daily__media { min-height:320px; }
    .ilyoung-daily__timeline ol:before { display:none; }
    .ilyoung-daily__timeline button { padding-left:56px; }
    .ilyoung-intro-page { padding-top:60px; }
    .ilyoung-intro-copy .sub_tit h3 { font-size:32px; }
    .ilyoung-intro-collage { min-height:420px; }
    .ilyoung-intro-collage .main { inset:0; border-radius:0 35px 0 0; }
    .ilyoung-intro-collage .sub { display:none; }
    .ilyoung-values { padding:75px 0; }
    .ilyoung-values__head h3 { font-size:29px; }
    .ilyoung-values__grid { grid-template-columns:1fr; }
    .ilyoung-intro-promise { height:430px; }
    .ilyoung-intro-promise__copy p { padding:0 25px; font-size:27px; }
}


/* =========================================================
   IL YOUNG SILVER CARE - SUBPAGES v1.1.0
   기존 콘텐츠와 그누보드 구조를 유지한 공통 시각 체계
========================================================= */
:root {
    --ilyoung-green: #174d3b;
    --ilyoung-green-dark: #0d3029;
    --ilyoung-sage: #8da595;
    --ilyoung-gold: #b79a52;
    --ilyoung-ivory: #f7f5ee;
    --ilyoung-line: #dedbd1;
    --ilyoung-text: #2b302e;
}
#sub_visual { position:relative; overflow:hidden; background-position:center; background-size:cover; }
#sub_visual:before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(13,48,41,.58),rgba(13,48,41,.18)); }
#sub_visual > * { position:relative; z-index:1; }
.ilyoung-subpage { color:var(--ilyoung-text); overflow:hidden; }
.ilyoung-subpage .tit01, .ilyoung-subpage .sub_tit h3 { color:var(--ilyoung-green) !important; }
.ilyoung-subpage .tit01:after { background:var(--ilyoung-gold) !important; }
.ilyoung-subpage .sec04 .box, .ilyoung-subpage .sec04 .in, .ilyoung-subpage .sec04 > div > div { border-color:var(--ilyoung-line); }
.ilyoung-subpage .sec04 .box > div, .ilyoung-subpage .sec04 .in > div, .ilyoung-subpage .sec04 .wrap > div { transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease; }
.ilyoung-subpage .sec04 .box > div:hover, .ilyoung-subpage .sec04 .in > div:hover, .ilyoung-subpage .sec04 .wrap > div:hover { transform:translateY(-8px); box-shadow:0 18px 40px rgba(13,48,41,.12); border-color:rgba(183,154,82,.7); }
.ilyoung-subpage table th { background:var(--ilyoung-green) !important; color:#fff !important; }
.ilyoung-subpage table td { border-color:var(--ilyoung-line) !important; }
.ilyoung-layout--cards .sec04 .box, .ilyoung-layout--cards .sec04 .in { gap:18px; }
.ilyoung-layout--process .sec04 .box > div p:first-child, .ilyoung-layout--cards .sec04 .box > div p:first-child { color:var(--ilyoung-gold) !important; font-weight:700; }
.ilyoung-layout--split .sec02 + .sec04 { position:relative; }
.ilyoung-layout--split .sec02 + .sec04:before { content:""; display:block; width:min(1200px,92%); height:320px; margin:0 auto 60px; border-radius:24px; background:url(../img/sub/ilyoung/service_emotion.jpg) center/cover no-repeat; }
.ilyoung-sub-cta { margin-top:100px; padding:78px 20px; background:linear-gradient(rgba(13,48,41,.82),rgba(13,48,41,.82)),url(../img/sub/ilyoung/consultation_bg.jpg) center/cover no-repeat; color:#fff; }
.ilyoung-sub-cta__inner { width:min(1280px,100%); margin:0 auto; display:flex; justify-content:space-between; align-items:center; gap:40px; }
.ilyoung-sub-cta__copy span { color:#d8c38a; letter-spacing:.18em; font-size:13px; }
.ilyoung-sub-cta__copy h3 { margin:12px 0 8px; color:#fff; font-size:34px; font-weight:700; }
.ilyoung-sub-cta__copy p { color:rgba(255,255,255,.75); }
.ilyoung-sub-cta__links { display:flex; gap:10px; flex-wrap:wrap; }
.ilyoung-sub-cta__links a { min-width:130px; padding:15px 20px; border:1px solid rgba(255,255,255,.55); color:#fff; text-align:center; transition:.3s; }
.ilyoung-sub-cta__links a:hover { border-color:var(--ilyoung-gold); background:var(--ilyoung-gold); color:#102d26; }
/* 게시판 공통 */
#bo_list, #bo_v, #bo_w, #bo_gall, #bo_list_total { --board-accent:var(--ilyoung-green); }
#bo_list .btn_b01, #bo_list .btn_b02, #bo_w .btn_submit, #bo_v .btn_b01 { border-color:var(--ilyoung-green) !important; background:var(--ilyoung-green) !important; color:#fff !important; }
#bo_list thead th, .tbl_head01 thead th { background:var(--ilyoung-green) !important; color:#fff !important; }
.bo_fx, .bo_sch { border-color:var(--ilyoung-line) !important; }
@media (max-width:1000px) {
    .ilyoung-sub-cta { margin-top:70px; padding:58px 24px; }
    .ilyoung-sub-cta__inner { display:block; }
    .ilyoung-sub-cta__links { margin-top:28px; }
    .ilyoung-layout--split .sec02 + .sec04:before { height:240px; margin-bottom:36px; }
}
@media (max-width:640px) {
    .ilyoung-sub-cta__copy h3 { font-size:25px; }
    .ilyoung-sub-cta__links a { flex:1 1 100%; }
    .ilyoung-subpage table { min-width:680px; }
    .ilyoung-subpage .tbl_wrap, .ilyoung-subpage .table_wrap { overflow-x:auto; -webkit-overflow-scrolling:touch; }
}

.ilyoung-map-placeholder { display:flex; align-items:center; justify-content:center; min-height:440px; background:var(--ilyoung-ivory); border:1px solid var(--ilyoung-line); }
.ilyoung-map-placeholder__inner { padding:40px; text-align:center; }
.ilyoung-map-placeholder__inner img { width:72px; margin-bottom:18px; }
.ilyoung-map-placeholder__inner strong { display:block; color:var(--ilyoung-green); font-size:24px; }
.ilyoung-map-placeholder__inner p { margin-top:10px; color:#6f7773; }
.ilyoung-map-link.is-disabled { display:inline-block; margin-top:20px; padding:13px 20px; background:#a7aca9; color:#fff; }

/* IL YOUNG v1.1.1 - sub navigation differentiation */
.left_snb {
    width: min(1480px, calc(100% - 80px));
}

.left_snb li.on a {
    color: #245347;
    border-bottom-color: #b99a52;
}

.sub .menubox .lnb_ul > .lnb_li ul li.on a {
    color: #fff;
    background: #245347;
    box-shadow: 0 10px 24px rgba(36, 83, 71, .18);
}

.sub .menubox .lnb_ul > .lnb_li ul li a {
    transition: color .25s ease, background .25s ease, transform .25s ease;
}

.sub .menubox .lnb_ul > .lnb_li ul li:not(.on) a:hover {
    color: #245347;
    background: rgba(215, 228, 220, .86);
    border-radius: 30px;
    transform: translateY(-2px);
}

/* IL YOUNG v1.1.2 - mobile sub navigation and actual map link */
.sub .menubox .lnb_ul > .lnb_li ul li.on a,
.sub .menubox .lnb_ul > .lnb_li ul li.active a {
    color: #fff !important;
    background: #245347 !important;
    border-color: #b99a52 !important;
}

.ilyoung-map-link {
    display: inline-block;
    margin-top: 20px;
    padding: 13px 20px;
    color: #fff;
    background: #245347;
    border-radius: 4px;
}

.ilyoung-map-link:hover {
    color: #fff;
    background: #1b4037;
}

@media all and (max-width: 767px) {
    .sub .menubox .lnb_ul > .lnb_li ul li.on a,
    .sub .menubox .lnb_ul > .lnb_li ul li.active a {
        color: #fff !important;
        background: #245347 !important;
        box-shadow: 0 8px 18px rgba(36, 83, 71, .2);
    }
}

/* =========================================================
   IL YOUNG SILVER CARE - SUBPAGE LAYOUT BASELINE v1.1.6
   원본 DOM 계층 복원 / 전체 폭 배경 / 브랜드 모바일 메뉴
========================================================= */

/* 서브 상단 이미지는 원본 사진을 살리면서 제목 가독성만 유지한다. */
#sub_visual {
    position: relative;
    overflow: hidden;
    background-position: center center;
    background-size: cover;
}

#sub_visual::before {
    content: "";
    position: absolute;
    z-index: 0;
    inset: 0;
    background: rgba(13, 48, 41, .16);
    pointer-events: none;
}

#sub_visual > * {
    position: relative;
    z-index: 1;
}

/* 원본 구조: 배경 섹션은 #contents 바로 아래에서 화면 전체 폭을 사용한다. */
#contents > .ilyoung-full-intro,
#contents > .ilyoung-full-content {
    width: 100%;
    max-width: none;
    margin-right: 0;
    margin-left: 0;
    box-sizing: border-box;
}

/* 소개 영역의 녹색 배경과 흰색 문구를 복원한다. */
#contents > .ilyoung-full-intro {
    display: flex;
    min-height: 300px;
    align-items: center;
    justify-content: center;
    background:
        linear-gradient(rgba(6, 66, 51, .08), rgba(6, 66, 51, .08)),
        url(../img/sub/subtop_bg.jpg) center center / cover no-repeat;
}

#contents > .ilyoung-full-intro > .txt,
#contents > .ilyoung-full-content > .txt,
#contents > .ilyoung-full-content > .wrap {
    width: calc(100% - 40px);
    max-width: 1400px;
    margin-right: auto;
    margin-left: auto;
    box-sizing: border-box;
}

#contents > .ilyoung-full-intro .txt h3,
#contents > .ilyoung-full-intro .txt h4 {
    color: #fff;
    text-shadow: 0 2px 8px rgba(0, 0, 0, .12);
}

/* 본문 배경은 전체 폭, 카드와 실제 내용만 1400px로 제한한다. */
#contents > .ilyoung-full-content {
    padding-top: 80px;
    padding-bottom: 100px;
    background: #f8f2e8;
}

#contents > .ilyoung-full-content .card {
    display: grid;
    gap: 20px;
}

#contents > .ilyoung-full-content .card.three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

#contents > .ilyoung-full-content .card > div {
    min-width: 0;
    box-sizing: border-box;
}

#contents > .ilyoung-full-content .card > div span {
    display: block;
    max-width: 410px;
    margin-right: auto;
    margin-left: auto;
}

/* 모바일 서브 메뉴의 기존 주황색을 모든 상태에서 차단한다. */
@media all and (max-width: 767px) {
    .m_ver .mobile_snb .dropdown [data-toggle="dropdown"],
    .m_ver .mobile_snb .dropdown [data-toggle="dropdown"]:hover,
    .m_ver .mobile_snb .dropdown input[type="checkbox"]:checked + [data-toggle="dropdown"] {
        color: #fff !important;
        background: #245347 !important;
    }

    .m_ver .mobile_snb .dropdown input[type="checkbox"]:checked + [data-toggle="dropdown"],
    .m_ver .mobile_snb .dropdown [data-toggle="dropdown"]:hover {
        background: #183f36 !important;
    }

    .m_ver .mobile_snb .dropdown [data-toggle="dropdown"]::before {
        color: #fff !important;
    }

    .m_ver .mobile_snb .dropdown-menu {
        background: #f3f7f5;
    }

    .m_ver .mobile_snb .dropdown-menu li a {
        color: #243630;
        background: #f3f7f5;
        border-bottom-color: #dce6e1;
    }

    .m_ver .mobile_snb .dropdown-menu li.on a,
    .m_ver .mobile_snb .dropdown-menu li.active a {
        color: #fff;
        background: #245347;
    }

    #contents > .ilyoung-full-intro {
        min-height: 250px;
    }

    #contents > .ilyoung-full-intro > .txt,
    #contents > .ilyoung-full-content > .txt,
    #contents > .ilyoung-full-content > .wrap {
        width: calc(100% - 28px);
    }

    #contents > .ilyoung-full-content {
        padding-top: 45px;
        padding-bottom: 60px;
    }

    #contents > .ilyoung-full-content .card.three {
        grid-template-columns: 1fr;
    }
}

@media all and (min-width: 768px) and (max-width: 1199px) {
    #contents > .ilyoung-full-intro > .txt,
    #contents > .ilyoung-full-content > .txt,
    #contents > .ilyoung-full-content > .wrap {
        width: calc(100% - 48px);
    }

    #contents > .ilyoung-full-content .card.three {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* =========================================================
   IL YOUNG SILVER CARE - FULL WIDTH PROCESS & MAP v1.1.8
   sub02.php의 전체 폭 DOM 구조를 기준으로 한 페이지 전용 보완
========================================================= */

/* 공통 전체 폭 내부 컨테이너 */
#contents > .ilyoung-process-purpose > .txt,
#contents > .ilyoung-process-steps > .txt,
#contents > .ilyoung-process-grade > .txt,
#contents > .ilyoung-process-contact > .txt,
#contents > .ilyoung-map-main > .txt,
#contents > .ilyoung-map-guide > .txt {
    width: calc(100% - 40px);
    max-width: 1400px;
    margin-right: auto;
    margin-left: auto;
    box-sizing: border-box;
}

/* 노인장기요양보험 - 목적 */
#contents > .ilyoung-process-purpose {
    padding-top: 80px;
    padding-bottom: 90px;
    background: #fff;
}

.ilyoung-process-purpose .bn_top {
    overflow: visible;
}

.ilyoung-process-purpose .bn_top h4 {
    margin-bottom: 28px;
    color: var(--ilyoung-green);
    font-size: 34px;
    line-height: 1.35;
    text-align: center;
}

.ilyoung-process-purpose .ilyoung-process-summary {
    max-width: 1220px;
    margin-right: auto;
    margin-left: auto;
    color: #4d5854;
    font-size: 18px;
    line-height: 1.9;
    text-align: center;
}

.ilyoung-process-purpose .ilyoung-process-info {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    margin-top: 45px;
}

.ilyoung-process-purpose .ilyoung-process-info > li {
    display: block;
    min-width: 0;
    padding: 38px 36px;
    border: 1px solid rgba(23, 77, 59, .12);
    border-top: 4px solid var(--ilyoung-gold);
    border-radius: 22px;
    background: var(--ilyoung-ivory);
    box-sizing: border-box;
}

.ilyoung-process-purpose .ilyoung-process-info__title {
    display: block;
    margin-bottom: 20px;
}

.ilyoung-process-purpose .ilyoung-process-info__title b {
    color: var(--ilyoung-green);
    font-size: 24px;
    line-height: 1.3;
}

.ilyoung-process-purpose .ilyoung-process-info p,
.ilyoung-process-purpose .ilyoung-process-info p span {
    color: #46524d;
    font-size: 17px;
    line-height: 1.85;
}

/* 노인장기요양보험 - 4단계 */
#contents > .ilyoung-process-steps {
    padding-top: 80px;
    padding-bottom: 100px;
    background: #f8f2e8;
}

.ilyoung-process-steps .ilyoung-process-step-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}

.ilyoung-process-steps .ilyoung-process-step-grid > div {
    display: flex;
    min-width: 0;
    min-height: 300px;
    flex-direction: column;
    padding: 46px 24px 38px;
    border: 1px solid rgba(23, 77, 59, .1);
    border-radius: 32px;
    box-sizing: border-box;
}

.ilyoung-process-steps .ilyoung-process-step-grid > div h3 {
    display: flex;
    min-height: 96px;
    flex: 1;
    align-items: center;
    justify-content: center;
    margin-top: 24px;
}

.ilyoung-process-steps .ilyoung-process-step-grid > div span {
    margin-top: auto;
}

/* 노인장기요양보험 - 등급판정 */
#contents > .ilyoung-process-grade {
    padding-top: 80px;
    padding-bottom: 90px;
    background: #fff;
}

.ilyoung-process-grade .ilyoung-process-image {
    padding: 32px;
    overflow: hidden;
    border: 1px solid rgba(23, 77, 59, .12);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 18px 45px rgba(13, 48, 41, .07);
    box-sizing: border-box;
}

.ilyoung-process-grade .ilyoung-process-image img {
    display: block;
    width: 100%;
    max-width: 1400px;
    height: auto;
    margin-right: auto;
    margin-left: auto;
}

/* 노인장기요양보험 - 문의 */
#contents > .ilyoung-process-contact {
    padding-top: 70px;
    padding-bottom: 70px;
    background: #eef4f0;
}

.ilyoung-process-contact .ilyoung-process-contact__card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 40px;
    padding: 42px 50px;
    border-radius: 24px;
    color: #fff;
    background: var(--ilyoung-green);
    box-sizing: border-box;
}

.ilyoung-process-contact__card > div > span {
    color: #d8c38a;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .14em;
}

.ilyoung-process-contact__card h3 {
    margin: 10px 0 8px;
    color: #fff;
    font-size: 31px;
}

.ilyoung-process-contact__card p {
    color: rgba(255, 255, 255, .78);
    font-size: 16px;
}

.ilyoung-process-contact__card > a {
    display: flex;
    min-width: 260px;
    min-height: 86px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 14px 24px;
    border: 1px solid rgba(255, 255, 255, .55);
    border-radius: 50px;
    color: #fff;
    box-sizing: border-box;
}

.ilyoung-process-contact__card > a small {
    margin-bottom: 4px;
    font-size: 13px;
}

.ilyoung-process-contact__card > a strong {
    font-size: 24px;
}

/* 오시는길 - 지도 */
#contents > .ilyoung-map-main {
    padding-top: 70px;
    padding-bottom: 75px;
    background: #fff;
}

.ilyoung-map-main .map_box {
    width: 100%;
    height: clamp(480px, 38vw, 620px);
    margin: 0 0 30px;
    overflow: hidden;
    border-radius: 24px;
    box-shadow: 0 18px 45px rgba(13, 48, 41, .09);
}

.ilyoung-map-main .map_box .root_daum_roughmap,
.ilyoung-map-main .map_box .root_daum_roughmap_landing,
.ilyoung-map-main .map_box .wrap_map,
.ilyoung-map-main .map_box .map,
.ilyoung-map-main .map_box iframe {
    width: 100% !important;
    height: 100% !important;
}

.ilyoung-map-main .map_box .wrap_controllers {
    display: none;
}

.ilyoung-map-main .ilyoung-map-address {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 32px;
    padding: 30px 34px;
    border: 1px solid rgba(23, 77, 59, .12);
    border-radius: 20px;
    background: var(--ilyoung-ivory);
    box-sizing: border-box;
}

.ilyoung-map-main .ilyoung-map-address dl {
    min-width: 0;
}

.ilyoung-map-main .ilyoung-map-address dt {
    color: var(--ilyoung-green);
    font-size: 25px;
    font-weight: 700;
    line-height: 1.45;
}

.ilyoung-map-main .ilyoung-map-address dd {
    margin-top: 12px;
    color: #4a5551;
    font-size: 17px;
    line-height: 1.6;
}

.ilyoung-map-main .ilyoung-map-address dd a {
    color: var(--ilyoung-green);
    font-weight: 700;
}

.ilyoung-map-main .ilyoung-map-link {
    display: inline-flex;
    min-width: 220px;
    min-height: 54px;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 12px 24px;
    border: 0;
    border-radius: 30px;
    color: #fff;
    background: #245347;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
    box-sizing: border-box;
}

/* 오시는길 - 교통 안내 */
#contents > .ilyoung-map-guide {
    padding-top: 70px;
    padding-bottom: 90px;
    background: #f8f2e8;
}

.ilyoung-map-guide .ilyoung-map-guide__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.ilyoung-map-guide__grid > li {
    display: flex;
    min-width: 0;
    min-height: 280px;
    flex-direction: column;
    gap: 24px;
    margin: 0;
    padding: 34px 30px;
    border: 1px solid rgba(23, 77, 59, .1);
    border-radius: 22px;
    background: #fff;
    box-sizing: border-box;
}

.ilyoung-map-guide__grid .icon_box {
    display: flex;
    width: 92px;
    height: 92px;
    flex: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border-radius: 50%;
    color: #fff;
    background: var(--ilyoung-green);
}

.ilyoung-map-guide__grid .icon_box i {
    font-size: 27px;
}

.ilyoung-map-guide__grid .icon_box em {
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    text-align: center;
}

.ilyoung-map-guide__content {
    display: flex;
    flex: 1;
    flex-direction: column;
}

.ilyoung-map-guide__content > b {
    display: inline-flex;
    width: fit-content;
    margin-bottom: 18px;
    padding: 8px 16px;
    border-radius: 20px;
    color: #fff;
    background: var(--ilyoung-gold);
    font-size: 14px;
}

.ilyoung-map-guide__content dl {
    margin-top: auto;
}

.ilyoung-map-guide__content dd {
    position: relative;
    padding-left: 12px;
    color: #4d5854;
    font-size: 16px;
    line-height: 1.75;
}

.ilyoung-map-guide__content dd::before {
    content: "";
    position: absolute;
    top: .75em;
    left: 0;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--ilyoung-gold);
}

@media all and (max-width: 1200px) {
    #contents > .ilyoung-process-purpose > .txt,
    #contents > .ilyoung-process-steps > .txt,
    #contents > .ilyoung-process-grade > .txt,
    #contents > .ilyoung-process-contact > .txt,
    #contents > .ilyoung-map-main > .txt,
    #contents > .ilyoung-map-guide > .txt {
        width: calc(100% - 48px);
    }

    .ilyoung-process-purpose .ilyoung-process-info {
        grid-template-columns: 1fr;
    }

    .ilyoung-process-steps .ilyoung-process-step-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ilyoung-map-guide .ilyoung-map-guide__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ilyoung-map-guide__grid > li:last-child {
        grid-column: 1 / -1;
    }
}

@media all and (max-width: 767px) {
    #contents > .ilyoung-process-purpose > .txt,
    #contents > .ilyoung-process-steps > .txt,
    #contents > .ilyoung-process-grade > .txt,
    #contents > .ilyoung-process-contact > .txt,
    #contents > .ilyoung-map-main > .txt,
    #contents > .ilyoung-map-guide > .txt {
        width: calc(100% - 28px);
    }

    #contents > .ilyoung-process-purpose,
    #contents > .ilyoung-process-steps,
    #contents > .ilyoung-process-grade,
    #contents > .ilyoung-map-main,
    #contents > .ilyoung-map-guide {
        padding-top: 45px;
        padding-bottom: 60px;
    }

    .ilyoung-process-purpose .bn_top h4 {
        margin-bottom: 20px;
        font-size: 25px;
    }

    .ilyoung-process-purpose .ilyoung-process-summary {
        font-size: 15px;
        line-height: 1.8;
        text-align: left;
    }

    .ilyoung-process-purpose .ilyoung-process-info {
        gap: 16px;
        margin-top: 30px;
    }

    .ilyoung-process-purpose .ilyoung-process-info > li {
        padding: 26px 22px;
        border-radius: 16px;
    }

    .ilyoung-process-purpose .ilyoung-process-info__title b {
        font-size: 20px;
    }

    .ilyoung-process-purpose .ilyoung-process-info p,
    .ilyoung-process-purpose .ilyoung-process-info p span {
        font-size: 15px;
        line-height: 1.75;
    }

    .ilyoung-process-steps .ilyoung-process-step-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .ilyoung-process-steps .ilyoung-process-step-grid > div {
        min-height: 245px;
        padding: 36px 20px 30px;
        border-radius: 22px;
    }

    .ilyoung-process-grade .ilyoung-process-image {
        padding: 16px;
        overflow-x: auto;
        border-radius: 16px;
        -webkit-overflow-scrolling: touch;
    }

    .ilyoung-process-grade .ilyoung-process-image img {
        width: auto;
        min-width: 760px;
        max-width: none;
    }

    #contents > .ilyoung-process-contact {
        padding-top: 45px;
        padding-bottom: 45px;
    }

    .ilyoung-process-contact .ilyoung-process-contact__card {
        grid-template-columns: 1fr;
        gap: 24px;
        padding: 30px 24px;
        border-radius: 18px;
        text-align: center;
    }

    .ilyoung-process-contact__card h3 {
        font-size: 25px;
    }

    .ilyoung-process-contact__card > a {
        width: 100%;
        min-width: 0;
    }

    .ilyoung-map-main .map_box {
        height: 320px;
        margin-bottom: 20px;
        border-radius: 14px;
    }

    .ilyoung-map-main .ilyoung-map-address {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 24px 20px;
        border-radius: 16px;
    }

    .ilyoung-map-main .ilyoung-map-address dt {
        font-size: 19px;
    }

    .ilyoung-map-main .ilyoung-map-address dd {
        font-size: 14px;
    }

    .ilyoung-map-main .ilyoung-map-link {
        width: 100%;
        min-width: 0;
    }

    .ilyoung-map-guide .ilyoung-map-guide__grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .ilyoung-map-guide__grid > li,
    .ilyoung-map-guide__grid > li:last-child {
        display: grid;
        min-height: 0;
        grid-column: auto;
        grid-template-columns: 72px minmax(0, 1fr);
        align-items: center;
        gap: 16px;
        padding: 20px 18px;
        border-radius: 16px;
    }

    .ilyoung-map-guide__grid .icon_box {
        width: 72px;
        height: 72px;
        gap: 6px;
    }

    .ilyoung-map-guide__grid .icon_box i {
        font-size: 22px;
    }

    .ilyoung-map-guide__grid .icon_box em {
        font-size: 11px;
    }

    .ilyoung-map-guide__content > b {
        margin-bottom: 10px;
        padding: 6px 12px;
        font-size: 12px;
    }

    .ilyoung-map-guide__content dd {
        font-size: 14px;
        line-height: 1.65;
    }
}

/* =========================================================
   IL YOUNG SILVER CARE - SUB03 CTA FULL WIDTH + FADE-UP HOTFIX v1.1.13
   비용안내·대상 및 절차 본문은 유지하고 CTA 배경 확장과 내부 fade-up만 적용한다.
========================================================= */
.ilyoung-sub03-cta {
    position: relative;
    isolation: isolate;
}

.ilyoung-sub03-cta .ilyoung-sub-cta {
    position: relative;
    z-index: 1;
    margin-top: 0;
    background: transparent;
}

.ilyoung-sub03-cta .ilyoung-sub-cta::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    right: -100vmax;
    bottom: 0;
    left: -100vmax;
    background:
        linear-gradient(
            rgba(13, 48, 41, .82),
            rgba(13, 48, 41, .82)
        ),
        url("../img/sub/ilyoung/consultation_bg.jpg")
        center center / cover no-repeat;
    pointer-events: none;
}

.ilyoung-sub03-cta .ilyoung-sub-cta__inner {
    width: calc(100% - 80px);
    max-width: 1400px;
    margin-right: auto;
    margin-left: auto;
}

.ilyoung-sub03-cta--fee {
    margin-top: 70px;
}

.ilyoung-sub03-cta--process {
    margin-top: 60px;
}

.ilyoung-sub03-cta .ilyoung-sub-cta__inner[data-aos] {
    will-change: opacity, transform;
}

@media all and (max-width: 1199px) {
    .ilyoung-sub03-cta .ilyoung-sub-cta__inner {
        width: calc(100% - 48px);
    }
}

@media all and (max-width: 767px) {
    .ilyoung-sub03-cta--fee,
    .ilyoung-sub03-cta--process {
        margin-top: 40px;
    }

    .ilyoung-sub03-cta .ilyoung-sub-cta__inner {
        width: calc(100% - 28px);
    }
}


/* =========================================================
   IL YOUNG SILVER CARE - MAP UI SYNC HOTFIX v1.1.15
   최신 sub04.php 마크업과 누적 sub.css를 재동기화한다.
   적용 범위는 오시는길 전용 클래스에 한정한다.
========================================================= */

/* 주소 및 전화 안내 */
.ilyoung-map-main .ilyoung-map-address__info {
    min-width: 0;
}

.ilyoung-map-main .ilyoung-map-address__phone {
    margin-top: 14px;
}

.ilyoung-map-main .ilyoung-map-address__phone > span {
    display: block;
    color: #59635f;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.5;
}

.ilyoung-map-main .ilyoung-map-address .ilyoung-map-address__phone > a {
    display: inline-flex !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    align-items: center;
    justify-content: flex-start;
    gap: 8px !important;
    margin: 7px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: var(--ilyoung-green) !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.35;
}

.ilyoung-map-main .ilyoung-map-address__phone > a i {
    font-size: 18px;
}

.ilyoung-map-main .ilyoung-map-address__phone > small {
    display: block;
    margin-top: 5px;
    color: #6b7470;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.6;
}

.ilyoung-map-main .ilyoung-map-address > .ilyoung-map-link {
    display: inline-flex !important;
    width: auto !important;
    min-width: 250px;
    min-height: 70px;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    gap: 0 !important;
    margin: 0 !important;
    padding: 18px 32px !important;
    border: 0 !important;
    border-radius: 999px !important;
    color: #fff !important;
    background: #245b4f !important;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
    box-shadow: none;
}

.ilyoung-map-main .ilyoung-map-address > .ilyoung-map-link:hover {
    color: #fff !important;
    background: #193f36 !important;
}

/* 교통 안내 카드 */
.ilyoung-map-guide .ilyoung-map-guide__grid > li {
    min-height: 290px;
    padding: 34px 30px 32px;
}

.ilyoung-map-guide .ilyoung-map-guide__head {
    text-align: center;
}

.ilyoung-map-guide .ilyoung-map-guide__grid .icon_box {
    width: 82px;
    height: 82px;
    margin: 0 auto;
    gap: 0;
    border-radius: 50%;
}

.ilyoung-map-guide .ilyoung-map-guide__grid .icon_box i {
    font-size: 31px;
}

.ilyoung-map-guide .ilyoung-map-guide__head h3 {
    margin: 18px 0 0;
    color: var(--ilyoung-green);
    font-size: 21px;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
    word-break: keep-all;
}

.ilyoung-map-guide .ilyoung-map-guide__content {
    width: 100%;
    margin-top: 0;
}

.ilyoung-map-guide .ilyoung-map-guide__content > b {
    display: inline-flex;
    width: auto;
    margin-bottom: 18px;
    padding: 8px 15px;
    border-radius: 999px;
    color: #fff;
    background: var(--ilyoung-gold);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
}

.ilyoung-map-guide .ilyoung-map-guide__content p {
    position: relative;
    margin: auto 0 0;
    padding-left: 14px;
    color: #4d5854;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
    word-break: keep-all;
}

.ilyoung-map-guide .ilyoung-map-guide__content p::before {
    content: "";
    position: absolute;
    top: .75em;
    left: 0;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--ilyoung-gold);
}

@media all and (max-width: 1200px) {
    .ilyoung-map-main .ilyoung-map-address {
        gap: 24px;
    }

    .ilyoung-map-main .ilyoung-map-address > .ilyoung-map-link {
        min-width: 220px;
    }
}

@media all and (max-width: 767px) {
    .ilyoung-map-main .ilyoung-map-address__phone > span {
        font-size: 14px;
    }

    .ilyoung-map-main .ilyoung-map-address .ilyoung-map-address__phone > a {
        font-size: 20px;
    }

    .ilyoung-map-main .ilyoung-map-address__phone > small {
        font-size: 13px;
    }

    .ilyoung-map-main .ilyoung-map-address > .ilyoung-map-link {
        width: 100% !important;
        min-width: 0;
        min-height: 56px;
        padding: 14px 20px !important;
    }

    .ilyoung-map-guide .ilyoung-map-guide__grid > li,
    .ilyoung-map-guide .ilyoung-map-guide__grid > li:last-child {
        display: flex;
        min-height: 0;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        padding: 24px 20px;
    }

    .ilyoung-map-guide .ilyoung-map-guide__grid .icon_box {
        width: 64px;
        height: 64px;
    }

    .ilyoung-map-guide .ilyoung-map-guide__grid .icon_box i {
        font-size: 24px;
    }

    .ilyoung-map-guide .ilyoung-map-guide__head h3 {
        margin-top: 12px;
        font-size: 18px;
    }

    .ilyoung-map-guide .ilyoung-map-guide__content {
        margin-top: 18px;
    }

    .ilyoung-map-guide .ilyoung-map-guide__content > b {
        margin-bottom: 12px;
        padding: 6px 12px;
        font-size: 12px;
    }

    .ilyoung-map-guide .ilyoung-map-guide__content p {
        font-size: 14px;
        line-height: 1.7;
    }
}

/* =========================================================
   IL YOUNG SILVER CARE - FACILITY CTA FULL WIDTH + FIXED v1.1.18
   시설안내 슬라이드는 그대로 보존하고 CTA만 전체 폭·상시 노출한다.
========================================================= */
.ilyoung-gallery-cta {
    position: relative;
    isolation: isolate;
    margin-top: 65px;
    opacity: 1;
    visibility: visible;
}

.ilyoung-gallery-cta .ilyoung-sub-cta {
    position: relative;
    z-index: 1;
    margin-top: 0;
    background: transparent;
    opacity: 1;
    visibility: visible;
}

.ilyoung-gallery-cta .ilyoung-sub-cta::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    right: -100vmax;
    bottom: 0;
    left: -100vmax;
    background:
        linear-gradient(
            rgba(13, 48, 41, .82),
            rgba(13, 48, 41, .82)
        ),
        url("../img/sub/ilyoung/consultation_bg.jpg")
        center center / cover no-repeat;
    pointer-events: none;
}

.ilyoung-gallery-cta .ilyoung-sub-cta__inner {
    width: calc(100% - 80px);
    max-width: 1400px;
    margin-right: auto;
    margin-left: auto;
    opacity: 1;
    visibility: visible;
}

.ilyoung-gallery-cta [data-aos],
.ilyoung-gallery-cta [data-aos].aos-init,
.ilyoung-gallery-cta [data-aos].aos-animate {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    transition: none !important;
}

@media all and (max-width: 1199px) {
    .ilyoung-gallery-cta {
        margin-top: 50px;
    }

    .ilyoung-gallery-cta .ilyoung-sub-cta__inner {
        width: calc(100% - 48px);
    }
}

@media all and (max-width: 767px) {
    .ilyoung-gallery-cta {
        margin-top: 40px;
    }

    .ilyoung-gallery-cta .ilyoung-sub-cta__inner {
        width: calc(100% - 28px);
    }
}

/* ========================================================================== 
   HERITAGE SILVER CARE PAJU - SUB GOLD BRAND v1.0.0 (2026-08-27)
   Keep the original sub visual filename/CSS-loading convention and shared CTA include.
   ========================================================================== */
:root {
    --heritage-gold: #c89a32;
    --heritage-gold-deep: #9c7222;
    --heritage-dark: #342b20;
    --heritage-ivory: #faf7f0;
    --heritage-text: #332f29;
}
.ilyoung-sub,
.ilyoung-sub-page,
#sub_wrap,
.sub_wrap {
    --ilyoung-primary: #3a3022;
    --ilyoung-primary-soft: #6f5730;
    --ilyoung-sage: #cbb98f;
    --ilyoung-gold: #c89a32;
    --ilyoung-ivory: #faf7f0;
    --ilyoung-text: #332f29;
}
#sub_visual {
    background-position: center center;
}
#sub_visual::before {
    background: linear-gradient(90deg, rgba(43, 33, 21, .48), rgba(43, 33, 21, .15));
}
#sub_visual h2 {
    color: #fff;
    font-weight: 800;
    text-shadow: 0 2px 10px rgba(0,0,0,.30);
}
#sub_visual p {
    color: rgba(255,255,255,.90);
    font-weight: 500;
    text-shadow: 0 1px 5px rgba(0,0,0,.22);
}
#snb a:hover,
#snb a:focus,
#snb .on > a,
#snb li.on > a {
    color: #9c7222;
}
.ilyoung-sub-cta,
.ilyoung-gallery-cta .ilyoung-sub-cta {
    background-color: #342b20;
}
.ilyoung-gallery-cta .ilyoung-sub-cta::before {
    background:
        linear-gradient(rgba(47, 36, 22, .84), rgba(47, 36, 22, .84)),
        url("../img/sub/ilyoung/consultation_bg.jpg") center center / cover no-repeat;
}
.ilyoung-sub-cta a:hover,
.ilyoung-sub-cta a:focus {
    border-color: #d5ad58;
}

@media all and (max-width: 767px) {
    #sub_visual::before {
        background: linear-gradient(180deg, rgba(43, 33, 21, .22), rgba(43, 33, 21, .52));
    }
    #sub_visual h2 {
        font-size: 24rem;
        line-height: 1.3;
    }
    #sub_visual p {
        font-size: 15rem;
        line-height: 1.55;
    }
}


/* ========================================================================== 
   HERITAGE SILVER CARE PAJU - SUB DESIGN QA POLISH v1.0.1 (2026-08-27)
   Remove remaining green/teal accents from active components while preserving
   the original sub-page structure, background-image convention and CTA include.
   ========================================================================== */
.ilyoung-subpage {
    --ilyoung-green: #6f5730;
    --ilyoung-primary: #3a3022;
    --ilyoung-primary-soft: #6f5730;
    --ilyoung-gold: #c89a32;
    --ilyoung-line: #e6ddcd;
    --ilyoung-ivory: #faf7f0;
    --ilyoung-text: #332f29;
}
.left_snb li.on a,
.left_snb li a:hover,
.left_snb li a:focus {
    color: #9c7222;
    border-bottom-color: #c89a32;
}
.sub .menubox .lnb_ul > .lnb_li ul li.on a,
.sub .menubox .lnb_ul > .lnb_li ul li.active a {
    color: #fff !important;
    background: #9c7222 !important;
    border-color: #d7b668 !important;
    box-shadow: 0 10px 24px rgba(111, 82, 28, .16);
}
.sub .menubox .lnb_ul > .lnb_li ul li:not(.on) a:hover,
.sub .menubox .lnb_ul > .lnb_li ul li:not(.on) a:focus {
    color: #7f5b1a;
    background: #faf5ea;
}
.ilyoung-map-link,
.ilyoung-map-main .ilyoung-map-link {
    background: #9c7222;
}
.ilyoung-map-link:hover,
.ilyoung-map-link:focus,
.ilyoung-map-main .ilyoung-map-link:hover,
.ilyoung-map-main .ilyoung-map-link:focus {
    color: #fff;
    background: #7f5b1a;
}
.ilyoung-process-contact .ilyoung-process-contact__card,
.ilyoung-map-guide__grid .icon_box {
    background: #6f5730;
}
.ilyoung-map-main .ilyoung-map-address dt,
.ilyoung-map-main .ilyoung-map-address dd a,
.ilyoung-process-purpose .ilyoung-process-info__title b,
.ilyoung-map-placeholder__inner strong {
    color: #6f5730;
}
#contents > .ilyoung-process-contact {
    background: #f8f2e8;
}
#contents > .ilyoung-full-intro {
    background: linear-gradient(rgba(76, 58, 31, .10), rgba(76, 58, 31, .10)), url(../img/sub/subtop_bg.jpg) center center / cover no-repeat;
}
#bo_list thead th,
.tbl_head01 thead th {
    background: #6f5730 !important;
}
.tit02,
.sec_map .adr dl dt {
    color: #6f5730;
}
.tit02 {
    background: #f3e7c9;
}
.ilyoung-subpage p,
.ilyoung-subpage li,
.ilyoung-subpage dd,
.ilyoung-subpage td {
    line-height: 1.72;
}

@media all and (max-width: 767px) {
    .m_ver .mobile_snb .dropdown [data-toggle="dropdown"],
    .m_ver .mobile_snb .dropdown [data-toggle="dropdown"]:hover,
    .m_ver .mobile_snb .dropdown input[type="checkbox"]:checked + [data-toggle="dropdown"] {
        color: #fff !important;
        background: #9c7222 !important;
    }
    .m_ver .mobile_snb .dropdown input[type="checkbox"]:checked + [data-toggle="dropdown"],
    .m_ver .mobile_snb .dropdown [data-toggle="dropdown"]:hover {
        background: #7f5b1a !important;
    }
    .m_ver .mobile_snb .dropdown-menu {
        background: #fbf8f2;
    }
    .m_ver .mobile_snb .dropdown-menu li a {
        color: #3d352b;
        background: #fbf8f2;
        border-bottom-color: #eadfca;
    }
    .m_ver .mobile_snb .dropdown-menu li.on a,
    .m_ver .mobile_snb .dropdown-menu li.active a {
        color: #fff;
        background: #9c7222;
    }
    .ilyoung-subpage p,
    .ilyoung-subpage li,
    .ilyoung-subpage dd,
    .ilyoung-subpage td,
    .ilyoung-map-guide .ilyoung-map-guide__content p {
        font-size: 15.5px;
        line-height: 1.72;
    }
}

/* =========================================================
   HERITAGE SILVER CARE PAJU - SUB NAV POLISH v1.0.2
   기존 DOM/DB/JS 유지, PC·Tablet 밑줄형 / Mobile dropdown 정돈
========================================================= */

/* PC / Tablet : 기존 가로 메뉴 구조는 유지하고 pill형 활성배경만 제거 */
@media all and (min-width: 768px) {
    .sub .menubox {
        margin-top: 0;
        border-bottom: 1px solid #e8dfcf;
        background: #fff;
    }

    .sub .menubox .lnbInner {
        padding-right: 24px;
        padding-left: 24px;
    }

    .sub .menubox .lnb_ul {
        justify-content: center;
    }

    .sub .menubox .lnb_ul .sub_li {
        width: 100%;
        background: transparent;
        border-radius: 0;
    }

    .sub .menubox .lnb_ul > .lnb_li ul {
        display: flex;
        justify-content: center;
        align-items: stretch;
        gap: 34px;
        padding: 0;
    }

    .sub .menubox .lnb_ul > .lnb_li ul li {
        position: relative;
        margin: 0;
    }

    .sub .menubox .lnb_ul > .lnb_li ul li a,
    .sub .menubox .lnb_ul > .lnb_li ul li.on a,
    .sub .menubox .lnb_ul > .lnb_li ul li.active a {
        position: relative;
        display: flex;
        min-width: 0;
        width: auto;
        height: auto;
        padding: 20px 4px 18px;
        align-items: center;
        justify-content: center;
        color: #3b352d !important;
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        font-size: 17px;
        font-weight: 600;
        line-height: 1.35;
        letter-spacing: -.45px;
        transform: none !important;
        transition: color .22s ease;
    }

    .sub .menubox .lnb_ul > .lnb_li ul li a::after {
        content: "";
        position: absolute;
        right: 50%;
        bottom: -1px;
        left: 50%;
        height: 3px;
        background: #c89a32;
        transition: right .22s ease, left .22s ease;
    }

    .sub .menubox .lnb_ul > .lnb_li ul li.on a,
    .sub .menubox .lnb_ul > .lnb_li ul li.active a {
        color: #9c7222 !important;
        font-weight: 700;
    }

    .sub .menubox .lnb_ul > .lnb_li ul li.on a::after,
    .sub .menubox .lnb_ul > .lnb_li ul li.active a::after,
    .sub .menubox .lnb_ul > .lnb_li ul li a:hover::after,
    .sub .menubox .lnb_ul > .lnb_li ul li a:focus::after {
        right: 4px;
        left: 4px;
    }

    .sub .menubox .lnb_ul > .lnb_li ul li:not(.on) a:hover,
    .sub .menubox .lnb_ul > .lnb_li ul li:not(.active) a:hover,
    .sub .menubox .lnb_ul > .lnb_li ul li a:focus {
        color: #9c7222 !important;
        background: transparent !important;
        border-radius: 0 !important;
        transform: none !important;
    }
}

/* Tablet : 메뉴 수가 많아도 한 줄 유지가 우선, 필요 시 안전한 가로 스크롤 */
@media all and (min-width: 768px) and (max-width: 1199px) {
    .sub .menubox .lnbInner {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .sub .menubox .lnbInner::-webkit-scrollbar {
        display: none;
    }

    .sub .menubox .lnb_ul > .lnb_li ul {
        width: max-content;
        min-width: 100%;
        gap: 24px;
    }

    .sub .menubox .lnb_ul > .lnb_li ul li a,
    .sub .menubox .lnb_ul > .lnb_li ul li.on a,
    .sub .menubox .lnb_ul > .lnb_li ul li.active a {
        padding-top: 18px;
        padding-bottom: 16px;
        font-size: 16px;
        white-space: nowrap;
    }
}

/* Mobile : 기존 dropdown 프로그램을 그대로 쓰고 Heritage 컬러/터치영역만 정돈 */
@media all and (max-width: 767px) {
    .m_ver .mobile_snb {
        padding: 12px 14px;
        background: #fff;
        border-bottom: 1px solid #eee5d6;
    }

    .m_ver .mobile_snb .dropdown [data-toggle="dropdown"],
    .m_ver .mobile_snb .dropdown [data-toggle="dropdown"]:hover,
    .m_ver .mobile_snb .dropdown input[type="checkbox"]:checked + [data-toggle="dropdown"] {
        min-height: 48px;
        padding: 13px 46px 13px 17px;
        color: #8c6724 !important;
        background: #fffaf0 !important;
        border: 1px solid #d8b76d !important;
        border-radius: 5px;
        box-shadow: none !important;
        font-size: 16px;
        font-weight: 700;
        line-height: 1.35;
    }

    .m_ver .mobile_snb .dropdown [data-toggle="dropdown"]::before {
        color: #9c7222 !important;
    }

    .m_ver .mobile_snb .dropdown-menu {
        margin-top: 6px;
        overflow: hidden;
        background: #fff;
        border: 1px solid #e7d7b5;
        border-radius: 5px;
        box-shadow: 0 10px 25px rgba(83, 61, 24, .10);
    }

    .m_ver .mobile_snb .dropdown-menu li a {
        min-height: 46px;
        padding: 13px 16px;
        color: #433c33;
        background: #fff;
        border-bottom: 1px solid #eee6d8;
        font-size: 15.5px;
        font-weight: 600;
        line-height: 1.35;
    }

    .m_ver .mobile_snb .dropdown-menu li:last-child a {
        border-bottom: 0;
    }

    .m_ver .mobile_snb .dropdown-menu li.on a,
    .m_ver .mobile_snb .dropdown-menu li.active a {
        color: #8f6820 !important;
        background: #fbf4e6 !important;
        font-weight: 700;
    }
}

/* ========================================================================== */
/* HERITAGE SILVER CARE PAJU - Greeting & Facility v1.0.3                    */
/* PHP/JS structure untouched / brand design layer only                       */
/* ========================================================================== */

.heritage-kicker {
    margin: 0 0 15px;
    color: #a47724;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: .16em;
}

.heritage-gold-line {
    display: block;
    width: 64px;
    height: 2px;
    margin-top: 22px;
    background: #c89a32;
}

.heritage-greeting {
    padding: 92px 0 0;
    background: #fff;
}

.heritage-greeting > .txt,
.heritage-closing > .txt {
    width: calc(100% - 40px);
    max-width: 1200px;
    margin: 0 auto;
}

.heritage-greeting__head {
    margin-bottom: 42px;
}

.heritage-greeting__head h3 {
    margin: 0;
    color: #2d2924;
    font-size: 42px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -.035em;
}

.heritage-greeting-hero {
    position: relative;
    min-height: 590px;
    overflow: hidden;
    background: #2d2924;
    border-radius: 4px 48px 4px 4px;
}

.heritage-greeting-hero__image {
    position: absolute;
    inset: 0;
    margin: 0;
}

.heritage-greeting-hero__image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(39,31,21,.76) 0%, rgba(39,31,21,.52) 34%, rgba(39,31,21,.10) 68%, rgba(39,31,21,0) 100%);
}

.heritage-greeting-hero__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 54%;
}

.heritage-greeting-hero__copy {
    position: relative;
    z-index: 2;
    display: flex;
    min-height: 590px;
    width: 54%;
    padding: 70px 72px;
    flex-direction: column;
    justify-content: flex-end;
    color: #fff;
}

.heritage-greeting-hero__eyebrow {
    margin: 0 0 18px;
    color: #ead09a;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .14em;
}

.heritage-greeting-hero__copy h4 {
    margin: 0 0 23px;
    color: #fff;
    font-size: 43px;
    font-weight: 700;
    line-height: 1.34;
    letter-spacing: -.045em;
}

.heritage-greeting-hero__copy > p:last-child {
    margin: 0;
    color: rgba(255,255,255,.92);
    font-size: 18px;
    font-weight: 500;
    line-height: 1.8;
}

.heritage-philosophy {
    display: grid;
    grid-template-columns: 38% 1fr;
    gap: 84px;
    padding: 112px 0;
    border-bottom: 1px solid #ece5d8;
}

.heritage-philosophy__title h3 {
    margin: 0;
    color: #302b24;
    font-size: 34px;
    font-weight: 700;
    line-height: 1.45;
    letter-spacing: -.035em;
}

.heritage-philosophy__body {
    padding-top: 3px;
}

.heritage-philosophy__body > p {
    margin: 0 0 17px;
    color: #514b43;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.9;
    word-break: keep-all;
}

.heritage-philosophy__signature {
    margin-top: 34px;
    padding-top: 22px;
    border-top: 1px solid #ded5c5;
    text-align: right;
}

.heritage-philosophy__signature span {
    color: #9c7222;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .14em;
}

.heritage-values {
    padding: 108px 0 118px;
}

.heritage-values__head {
    margin-bottom: 44px;
    text-align: center;
}

.heritage-values__head h3 {
    margin: 0;
    color: #302b24;
    font-size: 34px;
    font-weight: 700;
    line-height: 1.42;
    letter-spacing: -.035em;
}

.heritage-values__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.heritage-values__grid article {
    position: relative;
    min-height: 300px;
    padding: 44px 36px 40px;
    background: #fbf8f2;
    border: 1px solid #ece3d3;
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}

.heritage-values__grid article:hover {
    transform: translateY(-5px);
    border-color: #d5b56f;
    box-shadow: 0 16px 34px rgba(73,54,23,.08);
}

.heritage-values__grid em {
    display: block;
    color: #b28229;
    font-size: 46px;
    font-style: normal;
    font-weight: 300;
    line-height: 1;
    letter-spacing: -.04em;
}

.heritage-values__line {
    display: block;
    width: 34px;
    height: 2px;
    margin: 27px 0 25px;
    background: #c89a32;
}

.heritage-values__grid h4 {
    margin: 0 0 16px;
    color: #332e27;
    font-size: 23px;
    font-weight: 700;
    line-height: 1.4;
}

.heritage-values__grid p {
    margin: 0;
    color: #625b52;
    font-size: 16.5px;
    line-height: 1.8;
    word-break: keep-all;
}

.heritage-photo-story {
    padding: 110px 0 120px;
    background: #fff;
    border-top: 1px solid #ece5d8;
}

.heritage-photo-story__head {
    margin-bottom: 42px;
}

.heritage-photo-story__head h3 {
    margin: 0;
    color: #302b24;
    font-size: 35px;
    font-weight: 700;
    line-height: 1.45;
    letter-spacing: -.035em;
}

.heritage-photo-story__grid {
    display: grid;
    grid-template-columns: 1.65fr 1fr;
    gap: 18px;
    min-height: 610px;
}

.heritage-photo-story figure {
    position: relative;
    overflow: hidden;
    margin: 0;
    background: #eee9df;
}

.heritage-photo-story__main {
    min-height: 610px;
    border-radius: 4px 0 0 4px;
}

.heritage-photo-story__side {
    display: grid;
    grid-template-rows: 1fr 1fr;
    gap: 18px;
}

.heritage-photo-story__side figure:last-child {
    border-radius: 0 4px 4px 0;
}

.heritage-photo-story img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .6s ease;
}

.heritage-photo-story figure:hover img {
    transform: scale(1.025);
}

.heritage-photo-story figcaption {
    position: absolute;
    left: 20px;
    bottom: 18px;
    padding: 9px 13px;
    color: #fff;
    background: rgba(45,37,28,.72);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
    backdrop-filter: blur(3px);
}

.heritage-closing {
    padding: 104px 0;
    background: #faf6ee;
    border-top: 1px solid #eee3d1;
}

.heritage-closing__inner {
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
}

.heritage-closing__inner .heritage-gold-line {
    margin: 18px auto 30px;
}

.heritage-closing__inner h3 {
    margin: 0 0 28px;
    color: #302b24;
    font-size: 31px;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: -.03em;
}

.heritage-closing__text {
    max-width: 760px;
    margin: 0 auto;
    color: #5e574e;
    font-size: 17.5px;
    line-height: 1.9;
    word-break: keep-all;
}

.heritage-closing__brand {
    margin: 32px 0 0;
    color: #9c7222;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .16em;
}

/* Facility tour */
.heritage-facility {
    padding-top: 84px;
    padding-bottom: 40px;
}

.heritage-facility__intro {
    width: calc(100% - 40px);
    max-width: 1200px;
    margin: 0 auto 38px;
    text-align: center;
}

.heritage-facility__intro .heritage-gold-line {
    margin: 22px auto 23px;
}

.heritage-facility__intro h3 {
    margin: 0;
    color: #302b24;
    font-size: 39px;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: -.04em;
}

.heritage-facility__intro > p:last-child {
    margin: 0;
    color: #625b52;
    font-size: 17.5px;
    line-height: 1.8;
}

.heritage-facility-tour.interior_con01 {
    padding: 0 0 60px;
}

.heritage-facility-tour .wrap {
    width: calc(100% - 40px);
    max-width: 1200px;
    margin: 0 auto;
}

.heritage-facility-tour .img_box {
    overflow: hidden;
    background: #eee9df;
    border-radius: 4px 36px 4px 4px;
    box-shadow: 0 18px 50px rgba(57,43,22,.09);
}

.heritage-facility-tour .img_box .swiper-slide {
    position: relative;
    height: 710px;
    overflow: hidden;
}

.heritage-facility-tour .img_box .swiper-slide > img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.heritage-facility-tour .img_box .swiper-slide::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 30%;
    background: linear-gradient(to top, rgba(39,31,22,.62), rgba(39,31,22,0));
    pointer-events: none;
}

.heritage-facility-caption {
    position: absolute;
    z-index: 3;
    left: 34px;
    bottom: 29px;
    display: flex;
    align-items: center;
    gap: 17px;
    color: #fff;
}

.heritage-facility-caption em {
    color: #ead09a;
    font-size: 13px;
    font-style: normal;
    font-weight: 800;
    letter-spacing: .08em;
}

.heritage-facility-caption strong {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
}

.heritage-facility-tour .img_box span.arrow {
    top: 50%;
    display: flex;
    width: 54px;
    height: 54px;
    margin-top: -27px;
    padding: 0;
    align-items: center;
    justify-content: center;
    background: rgba(36,30,22,.48);
    border: 1px solid rgba(255,255,255,.42);
    border-radius: 50%;
    transform: none;
    transition: background .25s ease;
}

.heritage-facility-tour .img_box span.arrow:hover {
    background: rgba(156,114,34,.88);
}

.heritage-facility-tour .img_box span.arrow.prev {
    left: 24px;
}

.heritage-facility-tour .img_box span.arrow.next {
    right: 24px;
}

.heritage-facility-tour .img_box span.arrow img {
    width: auto;
    max-width: 12px;
    max-height: 22px;
}

.heritage-facility-tour .thumb_box {
    margin-top: 14px;
}

.heritage-facility-tour .thumb_box li {
    position: relative;
    height: 150px;
    margin-right: 12px;
    overflow: hidden;
    background: #2f2922;
    border: 2px solid transparent;
    transition: border-color .25s ease;
}

.heritage-facility-tour .thumb_box li.swiper-slide-thumb-active {
    border-color: #c89a32;
}

.heritage-facility-tour .thumb_box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .5;
    transition: opacity .25s ease;
}

.heritage-facility-tour .thumb_box li.swiper-slide-thumb-active img {
    opacity: 1;
}

.heritage-facility-tour .thumb_box .heritage-facility-caption {
    display: none;
}

.heritage-facility__closing {
    padding: 12px 20px 72px;
    text-align: center;
}

.heritage-facility__closing p {
    margin: 0;
    color: #3c352d;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.65;
    letter-spacing: -.025em;
}

@media all and (max-width: 1199px) {
    .heritage-greeting {
        padding-top: 76px;
    }

    .heritage-greeting__head h3 {
        font-size: 37px;
    }

    .heritage-greeting-hero,
    .heritage-greeting-hero__copy {
        min-height: 530px;
    }

    .heritage-greeting-hero__copy {
        width: 60%;
        padding: 58px 54px;
    }

    .heritage-greeting-hero__copy h4 {
        font-size: 38px;
    }

    .heritage-philosophy {
        gap: 54px;
        padding: 88px 0;
    }

    .heritage-values {
        padding: 88px 0 96px;
    }

    .heritage-values__grid article {
        padding: 38px 29px 34px;
    }

    .heritage-photo-story {
        padding: 88px 0 98px;
    }

    .heritage-photo-story__grid,
    .heritage-photo-story__main {
        min-height: 520px;
    }

    .heritage-facility-tour .img_box .swiper-slide {
        height: 590px;
    }

    .heritage-facility-tour .thumb_box li {
        height: 125px;
    }
}

@media all and (max-width: 767px) {
    .heritage-greeting {
        padding-top: 56px;
    }

    .heritage-greeting > .txt,
    .heritage-closing > .txt,
    .heritage-facility__intro,
    .heritage-facility-tour .wrap {
        width: calc(100% - 32px);
    }

    .heritage-kicker {
        margin-bottom: 11px;
        font-size: 12px;
        letter-spacing: .12em;
    }

    .heritage-gold-line {
        width: 48px;
        margin-top: 16px;
    }

    .heritage-greeting__head {
        margin-bottom: 28px;
    }

    .heritage-greeting__head h3 {
        font-size: 29px;
    }

    .heritage-greeting-hero {
        min-height: 480px;
        border-radius: 3px 26px 3px 3px;
    }

    .heritage-greeting-hero__image::after {
        background: linear-gradient(to top, rgba(39,31,21,.82) 0%, rgba(39,31,21,.48) 48%, rgba(39,31,21,.05) 78%, rgba(39,31,21,0) 100%);
    }

    .heritage-greeting-hero__image img {
        object-position: 54% center;
    }

    .heritage-greeting-hero__copy {
        width: 100%;
        min-height: 480px;
        padding: 38px 26px;
        justify-content: flex-end;
    }

    .heritage-greeting-hero__eyebrow {
        margin-bottom: 13px;
        font-size: 11px;
        letter-spacing: .1em;
    }

    .heritage-greeting-hero__copy h4 {
        margin-bottom: 16px;
        font-size: 30px;
        line-height: 1.4;
    }

    .heritage-greeting-hero__copy > p:last-child {
        font-size: 16px;
        line-height: 1.7;
    }

    .heritage-philosophy {
        grid-template-columns: 1fr;
        gap: 29px;
        padding: 64px 0;
    }

    .heritage-philosophy__title h3 {
        font-size: 27px;
        line-height: 1.5;
    }

    .heritage-philosophy__body > p {
        margin-bottom: 14px;
        font-size: 16px;
        line-height: 1.82;
    }

    .heritage-philosophy__signature {
        margin-top: 25px;
        padding-top: 18px;
        text-align: left;
    }

    .heritage-philosophy__signature span {
        font-size: 11px;
        letter-spacing: .1em;
    }

    .heritage-values {
        padding: 64px 0 70px;
    }

    .heritage-values__head {
        margin-bottom: 30px;
        text-align: left;
    }

    .heritage-values__head h3 {
        font-size: 27px;
        line-height: 1.48;
    }

    .heritage-values__grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .heritage-values__grid article {
        min-height: 0;
        padding: 30px 25px 29px;
    }

    .heritage-values__grid em {
        font-size: 37px;
    }

    .heritage-values__line {
        margin: 20px 0 19px;
    }

    .heritage-values__grid h4 {
        margin-bottom: 12px;
        font-size: 21px;
    }

    .heritage-values__grid p {
        font-size: 16px;
        line-height: 1.75;
    }

    .heritage-photo-story {
        padding: 64px 0 70px;
    }

    .heritage-photo-story__head {
        margin-bottom: 28px;
    }

    .heritage-photo-story__head h3 {
        font-size: 27px;
    }

    .heritage-photo-story__grid {
        display: block;
        min-height: 0;
    }

    .heritage-photo-story__main {
        min-height: 0;
        height: 330px;
        margin-bottom: 12px !important;
        border-radius: 3px 20px 3px 3px;
    }

    .heritage-photo-story__side {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: none;
        gap: 12px;
    }

    .heritage-photo-story__side figure {
        height: 210px;
    }

    .heritage-photo-story__side figure:last-child {
        border-radius: 0 0 3px 3px;
    }

    .heritage-photo-story figcaption {
        left: 10px;
        bottom: 10px;
        padding: 7px 9px;
        font-size: 12px;
    }

    .heritage-closing {
        padding: 68px 0;
    }

    .heritage-closing__inner .heritage-gold-line {
        margin: 14px auto 24px;
    }

    .heritage-closing__inner h3 {
        margin-bottom: 22px;
        font-size: 25px;
        line-height: 1.55;
    }

    .heritage-closing__text {
        font-size: 16px;
        line-height: 1.82;
    }

    .heritage-closing__brand {
        margin-top: 25px;
        font-size: 11px;
        letter-spacing: .11em;
    }

    .heritage-facility {
        padding-top: 56px;
        padding-bottom: 20px;
    }

    .heritage-facility__intro {
        margin-bottom: 28px;
    }

    .heritage-facility__intro h3 {
        font-size: 29px;
    }

    .heritage-facility__intro .heritage-gold-line {
        margin: 16px auto 18px;
    }

    .heritage-facility__intro > p:last-child {
        font-size: 16px;
        line-height: 1.7;
    }

    .heritage-facility-tour.interior_con01 {
        padding-bottom: 40px;
    }

    .heritage-facility-tour .img_box {
        border-radius: 3px 24px 3px 3px;
        box-shadow: 0 12px 30px rgba(57,43,22,.08);
    }

    .heritage-facility-tour .img_box .swiper-slide {
        height: 390px;
    }

    .heritage-facility-caption {
        left: 18px;
        bottom: 18px;
        display: block;
    }

    .heritage-facility-caption em,
    .heritage-facility-caption strong {
        display: block;
    }

    .heritage-facility-caption em {
        margin-bottom: 5px;
        font-size: 11px;
    }

    .heritage-facility-caption strong {
        font-size: 17px;
    }

    .heritage-facility-tour .img_box span.arrow {
        width: 44px;
        height: 44px;
        margin-top: -22px;
    }

    .heritage-facility-tour .img_box span.arrow.prev {
        left: 10px;
        top: 44%;
    }

    .heritage-facility-tour .img_box span.arrow.next {
        right: 10px;
        top: 44%;
    }

    .heritage-facility-tour .thumb_box {
        margin-top: 9px;
    }

    .heritage-facility-tour .thumb_box li {
        height: 82px;
        margin-right: 8px;
    }

    .heritage-facility__closing {
        padding: 4px 16px 54px;
    }

    .heritage-facility__closing p {
        font-size: 21px;
        line-height: 1.6;
    }
}

@media all and (max-width: 420px) {
    .heritage-greeting-hero,
    .heritage-greeting-hero__copy {
        min-height: 435px;
    }

    .heritage-greeting-hero__copy {
        padding: 31px 21px;
    }

    .heritage-greeting-hero__copy h4 {
        font-size: 27px;
    }

    .heritage-photo-story__main {
        height: 290px;
    }

    .heritage-photo-story__side figure {
        height: 175px;
    }

    .heritage-photo-story figcaption {
        display: none;
    }

    .heritage-facility-tour .img_box .swiper-slide {
        height: 330px;
    }
}


/* ==========================================================================
   HERITAGE SILVER CARE PAJU - SUB VISUAL / NAV / COMMON CTA FINAL v1.0.15
   2026-08-27
   - PC sub navigation is placed immediately below the visual, never over it.
   - Shorter sub visual for a cleaner page header.
   - One Heritage CTA include is shared by normal and board-style sub pages.
   ========================================================================== */

/* Sub visual: preserve the original background-image filename convention. */
#sub_visual {
    height: 315px;
    margin-top: 100rem;
    background-position: center center;
}

#sub_visual h2 {
    padding-top: 139px;
    padding-bottom: 0;
    font-size: 36px;
    line-height: 1.3;
}

/* PC sub navigation sits flush below the visual instead of overlapping it. */
.heritage-subnav-wrap {
    position: relative;
    z-index: 5;
    width: 100%;
    margin: 0;
    background: #fff;
    border-bottom: 1px solid #ede5d7;
    box-shadow: 0 7px 18px rgba(52, 43, 32, .045);
}

.heritage-subnav-wrap > .sub,
.heritage-subnav-wrap .menubox {
    margin: 0;
}

.heritage-subnav-wrap .sub .menubox .lnbInner,
.heritage-subnav-wrap .sub .menubox .lnb_ul {
    margin-top: 0;
}

.heritage-subnav-wrap .sub .menubox .lnb_ul {
    min-height: 60px;
    align-items: center;
}

.heritage-subnav-wrap .sub .menubox .lnb_ul > .lnb_li ul {
    padding: 0 20px;
}

/* Heritage shared consultation CTA. Keep legacy class names for old wrapper compatibility. */
.ilyoung-sub-cta.heritage-sub-cta,
.ilyoung-gallery-cta .ilyoung-sub-cta.heritage-sub-cta,
.ilyoung-sub03-cta .ilyoung-sub-cta.heritage-sub-cta {
    position: relative;
    isolation: isolate;
    margin-top: 80px;
    padding: 60px 24px;
    overflow: hidden;
    color: #fff;
    background:
        linear-gradient(rgba(48, 37, 25, .80), rgba(48, 37, 25, .80)),
        url("../img/sub/heritage/consultation_bg.jpg") center 53% / cover no-repeat;
}

.ilyoung-sub03-cta .ilyoung-sub-cta.heritage-sub-cta,
.ilyoung-gallery-cta .ilyoung-sub-cta.heritage-sub-cta {
    margin-top: 0;
}

.ilyoung-sub03-cta .ilyoung-sub-cta.heritage-sub-cta::before,
.ilyoung-gallery-cta .ilyoung-sub-cta.heritage-sub-cta::before {
    background:
        linear-gradient(rgba(48, 37, 25, .80), rgba(48, 37, 25, .80)),
        url("../img/sub/heritage/consultation_bg.jpg") center 53% / cover no-repeat;
}

.heritage-sub-cta__inner {
    width: min(1280px, 100%);
}

.heritage-sub-cta__copy span {
    color: #e4c678;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .16em;
}

.heritage-sub-cta__copy h3 {
    margin: 10px 0 10px;
    color: #fff;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.3;
}

.heritage-sub-cta__lead {
    margin: 0;
    color: rgba(255, 255, 255, .94) !important;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.7;
}

.heritage-sub-cta__info {
    margin-top: 7px;
    color: rgba(255, 255, 255, .72) !important;
    font-size: 15px;
    line-height: 1.65;
}

.heritage-sub-cta__links a {
    min-width: 128px;
    padding: 14px 19px;
    border-color: rgba(255, 255, 255, .50);
    background: rgba(38, 29, 19, .16);
    font-weight: 600;
}

.heritage-sub-cta__links a:hover,
.heritage-sub-cta__links a:focus {
    border-color: #d7ae54;
    background: #c89a32;
    color: #2f2519;
}

@media all and (max-width: 1024px) {
    #sub_visual {
        height: 230px;
        margin-top: 80rem;
    }

    #sub_visual h2 {
        padding-top: 99px;
        font-size: 30px;
    }

    .heritage-subnav-wrap .sub .menubox .lnb_ul {
        min-height: 56px;
        overflow-x: auto;
        overflow-y: hidden;
        justify-content: flex-start;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .heritage-subnav-wrap .sub .menubox .lnb_ul::-webkit-scrollbar {
        display: none;
    }

    .ilyoung-sub-cta.heritage-sub-cta {
        margin-top: 65px;
        padding: 52px 24px;
    }
}

@media all and (max-width: 860px) {
    #sub_visual {
        height: 205px;
        margin-top: 80rem;
    }

    #sub_visual h2 {
        padding-top: 85px;
        font-size: 27px;
    }

    .heritage-subnav-mobile-wrap {
        margin: 0;
        background: #fff;
        border-bottom: 1px solid #ede5d7;
    }
}

@media all and (max-width: 767px) {
    #sub_visual {
        height: 175px;
    }

    #sub_visual h2 {
        padding-top: 72px;
        font-size: 24px;
    }

    .ilyoung-sub-cta.heritage-sub-cta {
        margin-top: 48px;
        padding: 42px 18px;
    }

    .heritage-sub-cta__copy h3 {
        font-size: 27px;
    }

    .heritage-sub-cta__lead {
        font-size: 16px;
    }

    .heritage-sub-cta__info {
        font-size: 14px;
    }

    .heritage-sub-cta__links {
        margin-top: 24px;
    }

    .heritage-sub-cta__links a {
        min-height: 47px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex: 1 1 100%;
    }
}

@media all and (max-width: 540px) {
    #sub_visual {
        height: 160px;
    }

    #sub_visual h2 {
        padding-top: 65px;
        font-size: 22px;
    }
}

/* ========================================================================== 
   HERITAGE SILVER CARE PAJU - SUB CTA BRAND DIFFERENTIATION v1.0.16
   2026-08-27
   - Heritage-only garden background and warm bronze/deep-brown overlay.
   - Compact, premium CTA without the former Il Young visual impression.
   ========================================================================== */
.ilyoung-sub-cta.heritage-sub-cta,
.ilyoung-gallery-cta .ilyoung-sub-cta.heritage-sub-cta,
.ilyoung-sub03-cta .ilyoung-sub-cta.heritage-sub-cta {
    margin-top: 72px;
    padding: 50px 24px;
    background:
        linear-gradient(105deg, rgba(39, 29, 20, .92) 0%, rgba(57, 42, 27, .84) 48%, rgba(91, 66, 36, .72) 100%),
        url("../img/sub/heritage/consultation_bg.jpg") center 55% / cover no-repeat;
    border-top: 1px solid rgba(213, 173, 88, .38);
}

.ilyoung-sub-cta.heritage-sub-cta::after {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;
    width: 32%;
    height: 100%;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(200, 154, 50, 0), rgba(200, 154, 50, .10));
}

.ilyoung-sub03-cta .ilyoung-sub-cta.heritage-sub-cta,
.ilyoung-gallery-cta .ilyoung-sub-cta.heritage-sub-cta {
    margin-top: 0;
}

.ilyoung-sub03-cta .ilyoung-sub-cta.heritage-sub-cta::before,
.ilyoung-gallery-cta .ilyoung-sub-cta.heritage-sub-cta::before {
    background:
        linear-gradient(105deg, rgba(39, 29, 20, .92) 0%, rgba(57, 42, 27, .84) 48%, rgba(91, 66, 36, .72) 100%),
        url("../img/sub/heritage/consultation_bg.jpg") center 55% / cover no-repeat;
}

.heritage-sub-cta__inner {
    position: relative;
    z-index: 1;
    gap: 48px;
}

.heritage-sub-cta__copy {
    position: relative;
    padding-left: 22px;
}

.heritage-sub-cta__copy::before {
    content: "";
    position: absolute;
    left: 0;
    top: 4px;
    width: 2px;
    height: 54px;
    background: linear-gradient(#e0bb61, #9c7222);
}

.heritage-sub-cta__copy span {
    color: #e8cc84;
}

.heritage-sub-cta__copy h3 {
    margin: 7px 0 7px;
    font-size: 30px;
}

.heritage-sub-cta__lead {
    font-size: 16.5px;
}

.heritage-sub-cta__info {
    margin-top: 5px;
    color: rgba(255, 255, 255, .68) !important;
    font-size: 14.5px;
}

.heritage-sub-cta__links {
    gap: 9px;
}

.heritage-sub-cta__links a {
    min-width: 122px;
    padding: 13px 17px;
    border: 1px solid rgba(230, 199, 129, .48);
    background: rgba(28, 21, 15, .28);
    backdrop-filter: blur(1px);
}

.heritage-sub-cta__links a:first-child {
    border-color: #c89a32;
    background: rgba(200, 154, 50, .18);
}

@media all and (max-width: 1024px) {
    .ilyoung-sub-cta.heritage-sub-cta {
        margin-top: 60px;
        padding: 44px 24px;
    }
}

@media all and (max-width: 767px) {
    .ilyoung-sub-cta.heritage-sub-cta {
        margin-top: 44px;
        padding: 36px 18px;
        background-position: 58% center;
    }

    .heritage-sub-cta__copy {
        padding-left: 17px;
    }

    .heritage-sub-cta__copy::before {
        height: 46px;
    }

    .heritage-sub-cta__copy h3 {
        font-size: 26px;
    }
}


/* ==========================================================================
   HERITAGE COMMON CTA SINGLE TAIL OUTPUT FINAL v1.0.17
   2026-08-27
   - CTA is rendered only from tail.php, outside page content wrappers.
   - Prevents #contents/.ilyoung-subpage overflow from clipping the CTA.
   - Keeps one consistent responsive spacing rule across every sub page.
   ========================================================================== */
.ilyoung-sub-cta.heritage-sub-cta {
    display: block;
    clear: both;
    width: 100%;
    max-width: none;
    margin: 72px 0 0;
    box-sizing: border-box;
}

@media all and (max-width: 1024px) {
    .ilyoung-sub-cta.heritage-sub-cta {
        margin-top: 60px;
    }
}

@media all and (max-width: 767px) {
    .ilyoung-sub-cta.heritage-sub-cta {
        margin-top: 44px;
    }
}

/* ==========================================================================
   HERITAGE PAJU v1.0.18 - SUB02 BRAND COLOR + SUB03 CTA WIDTH QA FINAL
   2026-08-27
   ========================================================================== */

#sub_visual.sub20::before {
    background: linear-gradient(90deg, rgba(58, 43, 28, .42), rgba(58, 43, 28, .12));
}

#contents.sub20 {
    --ilyoung-green: #6f5730;
    --ilyoung-green-dark: #46351f;
    --ilyoung-sage: #b7a989;
    --ilyoung-gold: #c89a32;
    --ilyoung-ivory: #faf7f0;
    --ilyoung-line: #e6ddcc;
    --ilyoung-text: #332f29;
}

#contents.sub20 > .ilyoung-full-intro {
    background:
        linear-gradient(rgba(71, 52, 30, .22), rgba(71, 52, 30, .22)),
        url(../img/sub/subtop_bg.jpg) center center / cover no-repeat;
}

#contents.sub20 > .ilyoung-full-intro .txt h3,
#contents.sub20 > .ilyoung-full-intro .txt h4 {
    color: #fff !important;
    text-shadow: 0 2px 10px rgba(43, 31, 18, .24);
}

#contents.sub20 .tit01,
#contents.sub20 .sub_tit h3,
#contents.sub20 .ilyoung-process-purpose .bn_top h4,
#contents.sub20 .ilyoung-process-info__title b {
    color: #6f5730 !important;
}

#contents.sub20 .tit01::after,
#contents.sub20 .tit01:after {
    background: #c89a32 !important;
}

#contents.sub20 .ilyoung-full-content,
#contents.sub20 > .ilyoung-full-content {
    border-color: #e6ddcc;
}

#contents.sub20 .card > div,
#contents.sub20 .ilyoung-process-info > li {
    border-color: #e4d8c2;
}

#contents.sub20 .ilyoung-process-contact__card {
    background: #6f5730;
    border-color: #8d7345;
}

#contents.sub20 .ilyoung-process-step-grid > div p:first-child,
#contents.sub20 .cost_list .icon {
    color: #c89a32 !important;
}

#contents.sub30,
#contents.sub30 #con_area,
#contents.sub30 .ilyoung-subpage--sub03 {
    box-sizing: border-box;
}

#contents.sub30 .ilyoung-subpage--sub03 {
    overflow: visible;
}

.ilyoung-sub-cta.heritage-sub-cta {
    position: relative;
    left: auto;
    right: auto;
    float: none;
    clear: both;
    width: 100%;
    max-width: none;
    margin-right: 0;
    margin-left: 0;
    transform: none;
}

.ilyoung-sub-cta.heritage-sub-cta .heritage-sub-cta__inner {
    width: min(1280px, calc(100% - 48px));
    max-width: 1280px;
    margin-right: auto;
    margin-left: auto;
    box-sizing: border-box;
}

@media all and (max-width: 767px) {
    #sub_visual.sub20::before {
        background: rgba(58, 43, 28, .28);
    }

    .ilyoung-sub-cta.heritage-sub-cta .heritage-sub-cta__inner {
        width: calc(100% - 28px);
    }
}

/* ========================================================================== 
   HERITAGE COMMON CTA MAIN + SUB FINAL v1.0.19
   2026-08-27
   - One visual/component for index.php and every sub page.
   - Full-width background, centered content, always-visible action buttons.
   - Final override protects the main page from legacy contact/button rules.
   ========================================================================== */
.heritage-common-cta.ilyoung-sub-cta.heritage-sub-cta {
    position: relative;
    z-index: 2;
    display: block !important;
    float: none;
    clear: both;
    width: 100%;
    max-width: none;
    height: auto !important;
    min-height: 0 !important;
    margin: 72px 0 0;
    padding: 50px 24px;
    overflow: hidden;
    box-sizing: border-box;
    background:
        linear-gradient(105deg, rgba(39, 29, 20, .92) 0%, rgba(57, 42, 27, .84) 48%, rgba(91, 66, 36, .72) 100%),
        url("../img/sub/heritage/consultation_bg.jpg") center 55% / cover no-repeat;
    border-top: 1px solid rgba(213, 173, 88, .38);
    transform: none;
}

.heritage-main .heritage-common-cta.ilyoung-sub-cta.heritage-sub-cta {
    margin-top: 72px;
}

.heritage-common-cta::after {
    content: "";
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    width: 34%;
    height: 100%;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(200, 154, 50, 0), rgba(200, 154, 50, .10));
}

.heritage-common-cta .heritage-common-cta__inner {
    position: relative;
    z-index: 1;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    width: min(1280px, calc(100% - 48px));
    max-width: 1280px;
    margin: 0 auto;
    gap: 48px;
    box-sizing: border-box;
}

.heritage-common-cta .heritage-common-cta__copy {
    position: relative;
    min-width: 0;
    padding-left: 22px;
}

.heritage-common-cta .heritage-common-cta__copy::before {
    content: "";
    position: absolute;
    left: 0;
    top: 4px;
    width: 2px;
    height: 54px;
    background: linear-gradient(#e0bb61, #9c7222);
}

.heritage-common-cta .heritage-common-cta__copy > span {
    display: block;
    color: #e8cc84;
    font-size: 13px;
    line-height: 1.4;
    letter-spacing: .16em;
}

.heritage-common-cta .heritage-common-cta__copy h3 {
    margin: 7px 0;
    color: #fff;
    font-size: 30px;
    line-height: 1.28;
    font-weight: 700;
}

.heritage-common-cta .heritage-common-cta__lead {
    margin: 0;
    color: rgba(255,255,255,.90) !important;
    font-size: 16.5px;
    line-height: 1.65;
}

.heritage-common-cta .heritage-common-cta__info {
    margin: 5px 0 0;
    color: rgba(255,255,255,.68) !important;
    font-size: 14.5px;
    line-height: 1.55;
}

.heritage-common-cta .heritage-common-cta__links {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    flex: 0 0 auto;
    gap: 9px;
    margin: 0;
    transform: none !important;
}

.heritage-common-cta .heritage-common-cta__links a {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    align-items: center;
    justify-content: center;
    min-width: 122px;
    min-height: 46px;
    padding: 12px 17px;
    box-sizing: border-box;
    border: 1px solid rgba(230, 199, 129, .52);
    background: rgba(28, 21, 15, .30);
    color: #fff !important;
    font-size: 15px;
    line-height: 1.35;
    text-decoration: none !important;
    transition: border-color .25s ease, background-color .25s ease, color .25s ease;
}

.heritage-common-cta .heritage-common-cta__links a:first-child {
    border-color: #c89a32;
    background: rgba(200, 154, 50, .20);
}

.heritage-common-cta .heritage-common-cta__links a:hover,
.heritage-common-cta .heritage-common-cta__links a:focus {
    border-color: #d8b45b;
    background: #c89a32;
    color: #2f261e !important;
}

@media all and (max-width: 1024px) {
    .heritage-common-cta.ilyoung-sub-cta.heritage-sub-cta,
    .heritage-main .heritage-common-cta.ilyoung-sub-cta.heritage-sub-cta {
        margin-top: 60px;
        padding: 44px 24px;
    }

    .heritage-common-cta .heritage-common-cta__inner {
        gap: 34px;
    }

    .heritage-common-cta .heritage-common-cta__links {
        flex-wrap: wrap;
        justify-content: flex-end;
        max-width: 390px;
    }
}

@media all and (max-width: 767px) {
    .heritage-common-cta.ilyoung-sub-cta.heritage-sub-cta,
    .heritage-main .heritage-common-cta.ilyoung-sub-cta.heritage-sub-cta {
        margin-top: 44px;
        padding: 36px 18px;
        background-position: 58% center;
    }

    .heritage-common-cta .heritage-common-cta__inner {
        display: block !important;
        width: calc(100% - 28px);
    }

    .heritage-common-cta .heritage-common-cta__copy {
        padding-left: 17px;
    }

    .heritage-common-cta .heritage-common-cta__copy::before {
        height: 46px;
    }

    .heritage-common-cta .heritage-common-cta__copy h3 {
        font-size: 26px;
    }

    .heritage-common-cta .heritage-common-cta__links {
        display: grid !important;
        grid-template-columns: 1fr;
        width: 100%;
        max-width: none;
        margin-top: 24px;
        gap: 8px;
    }

    .heritage-common-cta .heritage-common-cta__links a {
        width: 100%;
        min-width: 0;
        min-height: 48px;
    }
}

/* =========================================================
   HERITAGE v1.0.20 - LOCATION / KAKAO STATIC MAP FINAL
   ========================================================= */
#contents > .heritage-location {
    padding-top: 68px;
    padding-bottom: 76px;
    background: #fff;
}

.heritage-location .heritage-location__map {
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 0 28px;
    overflow: hidden;
    border: 1px solid rgba(156, 114, 34, .18);
    border-radius: 22px;
    background: #f4f0e8;
    box-shadow: 0 20px 48px rgba(51, 43, 32, .10);
}

.heritage-location__map-link {
    display: block;
    width: 100%;
    line-height: 0;
}

.heritage-location__map-link img {
    display: block;
    width: 100%;
    height: auto;
    min-height: 420px;
    object-fit: cover;
    border: 0 !important;
}

.heritage-location .heritage-location__info {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 34px;
    padding: 31px 34px 31px 39px;
    overflow: hidden;
    border: 1px solid #e6ddcc;
    border-radius: 18px;
    background: #faf7f0;
    box-sizing: border-box;
}

.heritage-location .heritage-location__info:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 5px;
    background: #c89a32;
    content: "";
}

.heritage-location__eyebrow {
    display: block;
    margin-bottom: 8px;
    color: #9c7222;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .16em;
}

.heritage-location .ilyoung-map-address dt {
    color: #332b20;
    font-size: 25px;
    font-weight: 700;
    line-height: 1.45;
}

.heritage-location .ilyoung-map-address dd {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px 14px;
    margin-top: 12px;
    color: #666159;
    font-size: 16px;
    line-height: 1.55;
}

.heritage-location .ilyoung-map-address dd > span {
    color: #746b5f;
    font-size: 14px;
    font-weight: 600;
}

.heritage-location .ilyoung-map-address dd a {
    color: #9c7222;
    font-size: 20px;
    font-weight: 700;
}

.heritage-location .ilyoung-map-address dd small {
    width: 100%;
    color: #8a8277;
    font-size: 13px;
}

.heritage-location .heritage-location__button {
    display: inline-flex !important;
    min-width: 224px;
    min-height: 52px;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    margin: 0;
    padding: 12px 20px 12px 23px;
    border: 1px solid #c89a32;
    border-radius: 9px;
    color: #fff;
    background: #332b20;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;
    box-sizing: border-box;
    transition: background .25s ease, color .25s ease, transform .25s ease;
}

.heritage-location .heritage-location__button:hover,
.heritage-location .heritage-location__button:focus {
    color: #332b20;
    background: #c89a32;
    transform: translateY(-2px);
}

.heritage-location__button-arrow {
    font-size: 18px;
    font-weight: 400;
}

#contents > .heritage-location-guide {
    padding-top: 66px;
    padding-bottom: 82px;
    background: #faf7f0;
}

.heritage-location-guide__heading {
    margin-bottom: 30px;
    text-align: center;
}

.heritage-location-guide__heading span {
    display: block;
    margin-bottom: 8px;
    color: #9c7222;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .16em;
}

.heritage-location-guide__heading h2 {
    margin: 0;
    color: #332b20;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.35;
}

.heritage-location-guide .heritage-location-guide__grid {
    gap: 22px;
}

.heritage-location-guide .heritage-location-guide__grid > li {
    min-height: 252px;
    gap: 0;
    padding: 31px 30px;
    border: 1px solid #e6ddcc;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(51, 43, 32, .045);
}

.heritage-location-guide__number {
    color: #c89a32;
    font-size: 26px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .04em;
}

.heritage-location-guide__line {
    width: 36px;
    height: 2px;
    margin: 17px 0 22px;
    background: #c89a32;
}

.heritage-location-guide .ilyoung-map-guide__content h3 {
    margin: 0 0 14px;
    color: #332b20;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
}

.heritage-location-guide .ilyoung-map-guide__content p {
    margin: 0;
    color: #666159;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
    word-break: keep-all;
}

.heritage-location-guide .ilyoung-map-guide__content strong {
    color: #51483d;
    font-weight: 700;
}

@media (max-width: 1024px) {
    #contents > .heritage-location {
        padding-top: 54px;
        padding-bottom: 62px;
    }

    .heritage-location__map-link img {
        min-height: 360px;
    }

    .heritage-location .heritage-location__info {
        gap: 24px;
        padding: 27px 28px 27px 33px;
    }

    .heritage-location .ilyoung-map-address dt {
        font-size: 22px;
    }

    .heritage-location .heritage-location__button {
        min-width: 210px;
    }

    #contents > .heritage-location-guide {
        padding-top: 56px;
        padding-bottom: 68px;
    }

    .heritage-location-guide__heading h2 {
        font-size: 27px;
    }
}

@media (max-width: 767px) {
    #contents > .heritage-location {
        padding-top: 38px;
        padding-bottom: 48px;
    }

    .heritage-location .heritage-location__map {
        margin-bottom: 20px;
        border-radius: 14px;
    }

    .heritage-location__map-link img {
        min-height: 0;
        aspect-ratio: 504 / 310;
        object-fit: cover;
    }

    .heritage-location .heritage-location__info {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 25px 22px 24px 27px;
        border-radius: 13px;
    }

    .heritage-location .ilyoung-map-address dt {
        font-size: 19px;
    }

    .heritage-location .ilyoung-map-address dd {
        gap: 5px 10px;
        font-size: 15px;
    }

    .heritage-location .ilyoung-map-address dd a {
        font-size: 19px;
    }

    .heritage-location .heritage-location__button {
        width: 100%;
        min-width: 0;
        min-height: 48px;
    }

    #contents > .heritage-location-guide {
        padding-top: 44px;
        padding-bottom: 52px;
    }

    .heritage-location-guide__heading {
        margin-bottom: 24px;
        text-align: left;
    }

    .heritage-location-guide__heading h2 {
        font-size: 24px;
    }

    .heritage-location-guide .heritage-location-guide__grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .heritage-location-guide .heritage-location-guide__grid > li {
        min-height: 0;
        padding: 25px 23px;
        border-radius: 13px;
    }

    .heritage-location-guide__number {
        font-size: 23px;
    }

    .heritage-location-guide__line {
        margin: 14px 0 18px;
    }

    .heritage-location-guide .ilyoung-map-guide__content h3 {
        margin-bottom: 10px;
        font-size: 19px;
    }

    .heritage-location-guide .ilyoung-map-guide__content p {
        font-size: 15.5px;
        line-height: 1.7;
    }
}

/* ==========================================================================
   HERITAGE PAJU v1.0.24 - SUB02 INTRO CSS-ONLY BRAND BACKGROUND FINAL
   2026-08-27
   ========================================================================== */

/*
 * sub02/sub02.php ~ sub08.php의 상단 서비스 인트로 전용.
 * 기존 subtop_bg.jpg의 녹색 원본을 완전히 차단하고 이미지 파일 없이
 * Heritage Deep Brown / Warm Bronze / Gold 계열 CSS 배경만 사용한다.
 */
.sec02.ilyoung-full-intro.heritage-sub02-intro {
    background-color: #332b20 !important;
    background-image:
        radial-gradient(
            circle at 78% 24%,
            rgba(231, 207, 150, .18) 0%,
            rgba(200, 154, 50, .08) 23%,
            rgba(200, 154, 50, 0) 46%
        ),
        linear-gradient(
            135deg,
            #2f261e 0%,
            #493722 48%,
            #6a4d23 76%,
            #8b6728 100%
        ) !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: cover !important;
}

.sec02.ilyoung-full-intro.heritage-sub02-intro::before {
    background: linear-gradient(
        180deg,
        rgba(255, 255, 255, 0) 0%,
        rgba(231, 207, 150, .24) 22%,
        rgba(200, 154, 50, .72) 64%,
        #9c7222 100%
    );
}

.sec02.ilyoung-full-intro.heritage-sub02-intro .txt {
    position: relative;
    z-index: 2;
}

.sec02.ilyoung-full-intro.heritage-sub02-intro .txt h3,
.sec02.ilyoung-full-intro.heritage-sub02-intro .txt h4 {
    color: #fff !important;
    text-shadow: 0 2px 10px rgba(43, 31, 18, .34);
}

@media all and (max-width: 768px) {
    .sec02.ilyoung-full-intro.heritage-sub02-intro {
        background-image:
            radial-gradient(
                circle at 82% 20%,
                rgba(231, 207, 150, .15) 0%,
                rgba(200, 154, 50, 0) 42%
            ),
            linear-gradient(
                145deg,
                #2f261e 0%,
                #493722 58%,
                #795a27 100%
            ) !important;
    }
}
