@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;}
  }

/* =====================================================
   SEOUL FOREST NURSING HOME / 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; }
}


/* =========================================================
   SEOUL FOREST NURSING HOME - 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; }

/* SEOUL FOREST 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);
}

/* SEOUL FOREST 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);
    }
}

/* =========================================================
   SEOUL FOREST NURSING HOME - 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));
    }
}

/* =========================================================
   SEOUL FOREST NURSING HOME - 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;
    }
}

/* =========================================================
   SEOUL FOREST NURSING HOME - 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);
    }
}


/* =========================================================
   SEOUL FOREST NURSING HOME - 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;
    }
}

/* =========================================================
   SEOUL FOREST NURSING HOME - 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);
    }
}
