/* -------------------------------------------------------------------------- main ------------------------------------------------------------------------------ */
/* 공통 */
[data-anim] { opacity: 0; } 
[data-anim="right-blur"] { opacity: 0; }
#main-fullpage .section {width:100%;height:100vh;overflow:hidden;}
.section-visual {width:100%;height:100vh;position:relative;}
.visual-inner {width:100%;height:100%;position:relative;background-color:#761717;}
.visual-bg {position:absolute;inset:0;background:url('/assets/img/bg_003.jpg') center/cover no-repeat;z-index:1; filter: brightness(1); will-change: filter;}
.visual-text {z-index:5;color:#fff;position:absolute;left:40%;top:32%;transform:translateX(-50%);}
.visual-text h1 {font-size:clamp(18px,6vw,50px);font-weight:200;line-height:1.25;margin-bottom:30px;text-align:left;letter-spacing:-2px;}
.visual-text span {display:inline-block;}
.visual-text .t1, .visual-text .t4 {font-weight:500;}
.visual-text .t0 {font-weight:500; font-size: 30px; line-height: 1.2; margin-bottom: 10px;}
.visual-text .t5 {font-size:clamp(15px,1vw,18px);line-height:1.6;text-align:left;font-weight:400; margin-left: 6px;}
.visual-overlay {position:absolute;inset:0;pointer-events:none;z-index:3;opacity:1;
    background:radial-gradient(ellipse at 30% 45%,rgba(0,0,0,0.85) 0%,rgba(0,0,0,0.55) 32%,rgba(0,0,0,0.28) 55%,rgba(0,0,0,0) 85%);}
.scroll-indicator {position:absolute;right:50px;bottom:50px;display:flex;flex-direction:column;align-items:center;gap:12px;z-index:10;}
.scroll-text {writing-mode:vertical-rl;transform:rotate(0deg);font-size:10px;letter-spacing:0.15em;color:rgba(255,255,255,0.85);font-weight:300;}
@keyframes wheelMove {0%{top:6px;opacity:0;}30%{opacity:1;}100%{top:14px;opacity:0;}}
.scroll-line {width:1px;height:120px;background:rgba(255,255,255,0.3);overflow:hidden;position:relative;}
.scroll-line::after {content:"";position:absolute;top:-40%;left:0;width:100%;height:40%;background:#fff;opacity:1;animation:scrollLine 1.8s linear infinite;}
@keyframes scrollLine {0%{top:-40%;opacity:0;}20%{opacity:1;}100%{top:110%;opacity:0;}}
.circle-text {position:absolute;left:64px;bottom:60px;width:120px;height:120px;display:flex;justify-content:center;align-items:center;pointer-events:none;z-index:10;}
.circle-text img {width:100%;height:100%;display:block;animation:circleSpin 12s linear infinite;transform-origin:center center;}
@keyframes circleSpin {0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}}
.visual-scene2 {position:absolute;top:0;left:0;width:100%;height:100%;z-index:6;pointer-events:none;opacity:0;}
.scene2-box {
    position:absolute;
    right:3%;
    top:50%; 
    transform:translateY(-50%);
    width:600px;
    height: 50vh;
    text-align: center;
    padding:40px 32px;    
    border-top-left-radius: 20px;
    
    pointer-events:none;
}
.scene2-item.item1 {color:#fff;font-size:16px;font-weight:300;margin-bottom:18px;opacity:0;transform:translateY(20px);}
.scene2-item.item2 {color:#fff;font-size:16px;font-weight:300;margin-bottom:18px;opacity:0;transform:translateY(20px);}
.scene2-item.item3 {color:#fff;font-size:20px;font-weight:500;margin-bottom:18px;opacity:0;transform:translateY(20px);}
.scene2-item.item3 span {font-weight:300; font-size:16px;}
.scene2-item.item4 {color:#fff;font-size:16px;font-weight:300;margin-bottom:18px;opacity:0;transform:translateY(20px);}
.scene2-btns {margin-top:25px;display:flex;gap:12px;opacity:0;transform:translateY(20px);}
.scene2-item.line { width:1px; height:100px; background:#fff; display:block; margin:20px auto;  opacity:0; transform:scaleY(0); transform-origin:top center;}
.scene2-btns {margin-top:18px; opacity:0; transform:translateY(20px); display:flex; justify-content:center; }
.scene2-btns ul { display:flex; gap:22px; }
.scene2-btns p { font-size:clamp(20px,5vw,24px); color: #fff;}
.scene2-btns ul li { display:flex; gap:22px; }
.scene2-btns img { width:155px; height:48px; display:block; }
.section-visual-mobile { display: none;}

/* 입지 */
.section-location {width:100%; max-width: 1600px; margin: 0 auto; height:100vh;}
.section-location .tit {text-align: center; font-size:clamp(18px,4vw,30px);font-weight:300;line-height:1.4;margin-bottom:80px;}
.location-list { display: flex; justify-content: space-between; gap: 30px;}
.location-item {width: 28%; text-align: left;}
.loc-img { width: 100%; overflow: hidden; margin-bottom: 28px;}
.loc-img img { width: 100%; display: block;}
.loc-textbox { display: flex; align-items: flex-start;  gap: 14px;}
.loc-line { width: 1px;height:26px; background: #111; flex-shrink: 0; margin-top: 4px;}
.loc-title { font-size: 20px; font-weight: 500; margin-bottom: 20px;}
.loc-desc { font-size: 14px;  color: #444; line-height: 1.8; font-weight: 400;}


/* 프리미엄 */
.section-premium { width: 100%; height:100vh;  display: flex;  justify-content: center;  align-items: center;  background:url('/assets/img/p_bg.jpg') center/cover no-repeat; }
.premium-swiper { width: 100%; color: #fff; position: relative; max-width: 1400px;}   
.premium-swiper .swiper-slide { padding: 80px 30px; font-size: 26px; text-align: center; border-radius: 10px; }
.premium-slide { position: relative; width: 100%; height: 100vh; display: flex; justify-content: center; align-items: center;}
.p-left { width: 400px; position: absolute; left: 5%; top: 56%;  color: #fff;}
.p-title { position: absolute; left: 19%; top: 45%; font-size: 60px; font-weight: 300; line-height: 1.1; font-family: "Lora", serif; text-align: right; z-index: 50; }
.p-desc { margin-top: 20px; font-size: 28px; line-height: 1.6;   text-align: right;}
.p-desc1 { margin-top: 20px; font-size: 13px; line-height: 1.6;  opacity: 0.9; text-align: right; font-weight: 300; margin: 0; padding: 0; margin-top: 20px;}
.p-desc2 { margin-top: 20px; font-size: 12px; line-height: 1.6;  opacity: 0.9; text-align: right; font-weight: 300; margin: 0; padding: 0; margin-top: 5px;}
.p-btn { width: 100px;position: absolute; display: inline-block; margin-top: 60px; color: #fff; font-size: 16px; border-bottom: 1px solid #fff; padding-bottom: 5px; text-decoration: none; margin-left: 100px}
.p-center { width: 32%; max-width: 750px;}
.p-center img { width: 100%; height: auto;  display: block;}
.p-right { position: absolute; right: 4%; bottom: 5%; width: 280px;}
.p-right img { width: 100%; height: auto; display: block;}
.swiper-pagination {display:none;}

/* map */
.section-direction { width: 100%; height:100vh; position: relative; background:url('/assets/img/direc_bg.jpg') center/cover no-repeat;}
.section-direction .dir-wrap { width:100%; margin:0 auto; padding-bottom: 100px;}
.section-direction .dir-flex { display:flex; justify-content:center; align-items:center; gap:60px; }
.section-direction .dir-left img { width:100%; max-width:650px; border: 1px solid #dedede; }
.section-direction .dir-right { max-width:420px; text-align:left; }
.section-direction .dir-call { font-size:clamp(18px,2vw,30px); font-weight:600; margin-bottom:50px; }
.section-direction .dir-address { font-size:clamp(12px,1vw,16px); line-height:1.6; margin-bottom:34px; }
.section-direction .dir-btns { display:flex; gap:14px; }
.section-direction .dir-btn { padding:12px 26px; border:1px solid #222; border-radius:4px; font-size:15px; color:#111; transition:0.25s; }
.section-direction .dir-btn:hover { background:#761717; color:#fff; }

@media (max-width: 768px) {
    .section-visual { display: none;}
    .section-visual-mobile { display: block; width: 100%;  position: relative; overflow: hidden;}
    .section-visual-mobile .m-visual-inner { width: 100%; position: relative; }
    .section-visual-mobile .m-scene1 { width: 100%; height: 100vh; height: 100dvh; min-height: -webkit-fill-available;  position: relative;
        background-image: url('/assets/img/m_visual.jpg'); background-size: cover; background-position: center; background-repeat: no-repeat; text-align: center; color: #fff; }
    .scroll-indicator {left: 24px; right: auto; bottom: 40px;  transform: none; }
    .section-visual-mobile .m-scene1 .txt {width: 100%; position: absolute; top: 16%; margin: 0 auto; text-align: center;}
    .section-visual-mobile .m-scene1 .m-t0 {font-size: 18px; font-weight: 400;}
    .section-visual-mobile .m-scene1 h1 {font-size: 35px; font-weight: 300; margin-top: 20px; line-height: 1.2; letter-spacing: -2px;}
    .section-visual-mobile .m-scene1 h1 span {display: inline-block;  }
    .section-visual-mobile .m-scene1 .m-t1, .section-visual-mobile .m-scene1 .m-t4 {font-weight: 700;}
    .section-visual-mobile .m-scene1 .m-t5 {font-size: 15px; margin-top: 15px;}
    .section-visual-mobile .m-scene2 { background: #761717; padding: 80px 20px;  text-align: center;  color: #fff;}
    .section-visual-mobile .m-scene2-box { max-width: 320px;  margin: 0 auto; }
    .section-visual-mobile .m-s-item1, .section-visual-mobile .m-s-item3, .section-visual-mobile .m-s-item4 { font-size: 14px; line-height: 1.6; margin-bottom: 10px; }
    .section-visual-mobile .m-s-item3 { font-weight: 600; font-size: 16px; }
    .section-visual-mobile .m-s-line { width: 1px;  height: 60px; background: #fff; margin: 18px auto; }
    .section-visual-mobile .m-s-btns img {  width: 130px;  height: auto;  display: block;margin: 0 auto; }
    .section-location {width:100%; margin: 0 auto; position: relative; padding: 50px 15px; height:auto!important;}
    .section-location .tit {margin-bottom:30px;}
    .location-list { flex-direction: column; gap: 50px; }
    .location-item { width: 100%; }
    .section-premium {height:100vh; padding:0 18px; clear: both;}
    .premium-slide {height:auto; min-height:100vh; display:flex; flex-direction:column; justify-content:flex-start; align-items:center; margin-top:50px; }
    .p-right {display:none!important;}
    .p-center {width:78%; max-width:420px; margin:0 auto; order:2;}
    .p-center img {border-radius:6px;}
    .p-title {position:static; order:1; font-size:32px; margin-bottom:18px; text-align:center;}
    .p-left {position:static; width:100%; order:3; margin-top:24px; text-align:center;}
    .p-desc {margin-top:0px; font-size:20px; text-align:center;}
    .p-desc1 {margin-top:6px; font-size:13px; line-height:1.55; text-align:center;}
    .p-desc2 {margin-top:6px; font-size:12px; line-height:1.55; text-align:center;}
    .p-btn {position:static; margin:26px auto 0;}
    .section-premium { width: 100%; height: 680px !important;;}
    .premium-swiper .swiper-slide {padding:80px 0 0 0; }
    .swiper-pagination {top: 670px !important; position:absolute;display:block;}
    .swiper-pagination-bullet { width:9px; height:9px; border:2px solid #fff; background:transparent; opacity:1; margin:0 5px; }
    .swiper-pagination-bullet-active { background:#fff; border-color:#fff; }
    .premium-swiper .swiper-pagination {bottom:18px; position:absolute; display:block;}
    .section-direction { height: auto !important;; }
    .section-direction .location-item {width: 100%; margin-bottom: 0px;}
    .section-direction .dir-wrap { padding-bottom: 0px; padding: 80px 15px 100px 15px;}
    .section-direction .dir-flex { flex-direction:column; gap:26px; }
    .section-direction .dir-right { text-align:center; }
    .section-direction .dir-call { margin-bottom:20px; }
}


/* --------------------------------------------------------------------------- sub ------------------------------------------------------------------------------ */
#subpage .sub {width: 100%; position: relative; clear: both;}
.sub-visual-wrap {width:100%;height:100%;position:absolute;left:0;top:0;overflow:hidden;}
.sub-top-text {position:absolute;left:50%;top:200px;transform:translateX(-50%);color:#fff;}
.sub-top-text h1 {font-size:clamp(18px,6vw,50px);font-weight:700;}
.sub-top-text .char {display:inline-block;}
.sub.top-visual { width:100%; height:380px; position:relative; overflow:hidden;}
.sub-top-bg { position:absolute; left:0; top:0; width:100%; height:100%; background-size:cover; background-position:center; background-repeat:no-repeat; transform-origin:center center; background:url('/assets/img/subtop.jpg') center/cover no-repeat; }/*background-color: #751619;*/
.snav{width:100%;max-width:1140px;position:relative;clear:both;margin:0 auto;margin-top:50px;padding:0 20px;}
.s-top-menu{width:100%;background:#fff;border:1px solid #ddd;}
.st-wrap{display:flex;height:40px;position:relative;}
.zone{height:40px;display:flex;align-items:center;position:relative;}
.zone-home{padding:0 20px;border-right:1px solid #ddd;text-align:center;}
.zone-d1{width:250px;padding:0 15px;border-right:1px solid #ddd;position:relative;}
.zone-d2{width:250px;padding:0 15px;border-right:1px solid #ddd;position:relative;}
.flex-fill{flex:1;}
.zone-home img{width:18px;height:18px;opacity:.5;}
.zone-d1 .arrow-icon{position:absolute;right:15px;width:18px;height:18px;opacity:.5;}
.zone-d2 .menu-icon{position:absolute;right:15px;width:18px;height:18px;opacity:.5;}
.zone-d1 .label a,
.zone-d2 .label span{font-size:clamp(12px,1vw,14px);font-weight:500;color:#333;}
.zone-d1 .label a:hover,
.zone-d2 .label span:hover{color:#a17939;}
.zone-d1 .label,
.zone-d2 .label{width:100%;display:flex;align-items:center;gap:10px;cursor:pointer;}
.dropdown{ position:absolute; top:41px; left:-1px;  width:calc(100% + 2px);  background:#fff; border:1px solid #ddd; border-top:none;  display:none; z-index:100;}
.zone-d1:hover .dropdown, .zone-d2:hover .dropdown{display:block;}
.dropdown li{border-bottom:1px solid #ddd;}
.dropdown li:last-child{border-bottom:none;}
.dropdown a{display:block;padding:12px 15px;font-size:clamp(12px,1vw,13px);color:#444;}
.dropdown li.active a{color:#a17939;font-weight:500;}
.sub.con {width:100%; max-width:1140px; margin:0 auto; padding:0px 20px; margin-bottom: 100px; margin-top: 50px; color:#111;}
.ov-title {text-align:center; margin-bottom:40px;}
.ov-title h2 {font-size:28px; font-weight:400; margin:0 0 30px;}
.ov-title .line {display:block; width:1px; height:40px; background:#d0d0d0; margin:0 auto;}

/*info*/
.ov-table-wrap {margin:0 0 40px;}
.ov-table {width:100%; border-collapse:collapse; table-layout:fixed; border:1px solid #e1e1e1; font-size:clamp(12px,1vw,13px);}
.ov-table th {width:160px; background:#F8F8F8; padding:14px; font-weight:600; border:1px solid #e1e1e1; vertical-align:middle; }
.ov-table td {padding:14px 18px; border:1px solid #e1e1e1; vertical-align:middle; line-height:1.5;}
.ov-notice {margin-top:50px;}
.notice-box {background:#f8f8f8; border:1px solid #ebebeb; padding:25px 30px; font-size:clamp(11px, 1vw, 12px); line-height:1.6; color:#555;}
.notice-box p {margin:0 0 5px;}
.notice-box p:last-child {margin-bottom:0;}
.sub-image {margin-bottom:40px;}
.sub-image img {width:100%; height:auto; object-fit:cover; display:block;}
.sub.con .location-list { display: flex; justify-content: space-between; gap: 60px; flex-wrap: wrap; margin-top: 60px;}
.sub.con .location-item {width: calc(50% - 30px);text-align: left; margin-bottom: 30px;}
.sub.con .loc-img { width: 100%; overflow: hidden; margin-bottom: 28px;}
.sub.con .loc-img img { width: 100%; display: block;}
.sub.con .loc-textbox { display: flex; align-items: flex-start;  gap: 14px;}
.sub.con .loc-line { width: 1px;height:26px; background: #111; flex-shrink: 0; margin-top: 4px;}
.sub.con .loc-title { font-size: clamp(14px,1.1vw,20px); font-weight: 500; margin-bottom: 20px;}
.sub.con .loc-desc { font-size: clamp(12px,1vw,14px);  color: #444; line-height: 1.8; font-weight: 400;}
.sub.con .dir-wrap { width:100%; margin:0 auto; padding-bottom: 50px;}
.sub.con .dir-flex { display:flex; justify-content:center; align-items:center; gap:60px; }
.sub.con .dir-left img { width:100%; max-width:650px; border: 1px solid #dedede; }
.sub.con .dir-right { max-width:420px; text-align:left; }
.sub.con .dir-call { font-size:clamp(18px,2vw,30px); font-weight:600; margin-bottom:50px; }
.sub.con .dir-address { font-size:clamp(12px,1vw,16px); line-height:1.6; margin-bottom:34px; }
.sub.con .dir-btns { display:flex; gap:14px; }
.sub.con .dir-btn { padding:12px 26px; border:1px solid #222; border-radius:4px; font-size:15px; color:#111; transition:0.25s; }
.sub.con .dir-btn:hover { background:#761717; color:#fff; }
.sub.con .premium-wrap { width: 100%; margin: 0 auto; display: grid;  grid-template-columns: repeat(2, 1fr); grid-auto-flow: dense;  gap: 70px 80px; }
.sub.con .premium-item {position: relative;}
.sub.con .pimg { width: 100%; margin: 0 auto; text-align: center; margin-top: 50px; margin-bottom: 100px;}
.sub.con .premium-item:nth-child(odd) { transform: translateY(-40px);}
.sub.con .premium-item:nth-child(even) { transform: translateY(80px);}
.sub.con .premium-img img { width: auto; height: auto; display: block; border-top-right-radius: 60px;}
.sub.con .premium-num {position: absolute; right: 0; font-size: clamp(14px,2vw,26px); font-family: "Lora", serif; color: #999;}
.sub.con .premium-title { font-size: clamp(16px,3vw,26px);  font-weight: 700; margin: 30px 0 10px 0 ;line-height: 1.35; color: #111; letter-spacing: -1px;}
.sub.con .premium-desc {font-size: clamp(12px,1vw,17px);   line-height: 1.5;  color: #333; letter-spacing: -1px;}
.sub.con .premium-desc span {font-size: clamp(11px,1vw,14px); margin-top: 10px; display: block;  }

/*unit*/
.unit-wrap { max-width: 1200px; margin: 0 auto; display: none;}
.unit-wrap.active { display: block; }
.unit-tabs li.active { background:#761717; color:#fff; border-color: #761717;}
.unit-tabs {display: flex; justify-content: space-between; gap: 6px;margin-bottom: 36px;}
.unit-tabs li { flex: 1; padding: 14px 0; text-align: center; border: 1px solid #c8c8c8; cursor: pointer;  font-size: clamp(13px,2vw,20px); color: #761717; font-weight: 600;  transition: .25s;}
.unit-tabs-new { width: 100%; padding: 20px 0; }
.unit-tabs-new li.active {background:#761717; color:#fff; border-color: #761717;}
.unit-tabs-new {display: flex; justify-content: space-between; gap: 6px; margin-bottom: 36px; }
.unit-tabs-new li {position: relative; flex: 1; display: flex; align-items: center; justify-content: center;  padding: 14px 0;  text-align: center; border: 1px solid #c8c8c8; cursor: pointer; font-size: clamp(13px,2vw,20px); color: #761717; font-weight: 600; transition: .25s;}
.unit-tabs-new li .stamp {position:absolute; top: -30px; right:30px; width:76px; height:76px; background:url('/assets/img/unit-icon.png') center/contain no-repeat; pointer-events:none; z-index: 10;}    
.unit-wrap { display: none; opacity: 0; transition: opacity .35s;}
.unit-wrap.active { display: block; opacity: 1;}
.unit-head { color: #fff; padding: 40px 16px; display: flex; justify-content: center;  align-items: center;  gap: 30px;}
.unit-head.a { background: #e2942e;}
.unit-head.b { background: #91a839;}
.unit-head.c { background: #a475ac;} 
.unit-head.d { background: #718dc3;}
.unit-type .num { font-size:  clamp(16px,10vw,70px); font-weight: 700;}
.unit-type .num2 { font-size:  clamp(14px,8vw,40px); font-weight: 400;}
.unit-room { background: rgba(255,255,255,.3); padding: 8px 30px; border-radius: 30px; font-size: 30px; font-weight: 500; margin-top: 10px;}
.unit-info { background: #f7f7f7; padding: 22px 26px; margin: 0;  display: flex; flex-wrap: wrap; gap: 18px 28px;  font-size: clamp(13px,1vw,18px);; color: #111;  margin-bottom: 36px;}
.unit-info li span { color: #111; margin-right: 6px; font-weight: 600;}
.unit-img img { width: 100%; display: block;}
/* .sub.con .img-cut { width:100%; max-width: 1100px; display: flex; justify-content: space-between; align-items: center; gap: 20px;  flex-wrap: wrap; margin: 0 auto ; padding: 50px 0; }
.sub.con .img-cut .cut { flex: 1 1 calc(50%); display: flex; justify-content: center; align-items: center;}
.sub.con .img-cut .cut img {width: 100%; height: auto; object-fit: cover; display: block;}  */
.sub.con .img-cut { max-width: 1100px; margin: 0 auto; margin-bottom: 20px; }
.sub.con .img-cut .cut { display: flex; gap: 20px;}
.sub.con .img-cut .cut img { width: calc(50% - 10px); flex: 0 0 calc(50% - 10px); display: block; object-fit: cover;}
/* 평면안내수정-251205 */
/* .sub.con .img-cut1 { width:100%; max-width: 1100px; display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin: 0 auto ; padding: 50px 0; }
.sub.con .img-cut1 dl { display: flex; gap: 10px; } */

/* 모집공고 new */
.doc-section { width:100%; max-width:1100px; margin:0 auto; background: #fff; position: relative; margin-bottom: 40px;}
.doc-inner { width: 100%; margin: 0 auto; display: flex; align-items: flex-start;  gap: 20px;}
.doc-img { flex: 1.8;}
.doc-img img { width: 100%; height: auto; display: block;}
.info-wrap {flex: 1; display: flex; flex-direction: column; gap: 20px;}
.info-item {  position: relative; padding: 46px 30px; background: #fff; cursor: pointer; overflow: hidden;box-shadow: inset 0 0 0 1px #dcdcdc;}
.info-item h2 { font-size: 28px; font-weight: 400; line-height: 1.35; margin-bottom: 20px;}
.info-item p { color: #666; font-size: 14px; line-height: 1.55;}
.info-item .arrow { position: absolute; width: 45px; height: 40px; right: 40px; bottom: 45px; background: url('/assets/img/arrowpdf.png') center no-repeat; }
.info-item::before,
.info-item::after {
    content: "";
    position: absolute;
    inset: 0;
    border: 1px solid #333;
    opacity: 0;
    clip-path: polygon(0 0, 0 0, 0 0, 0 0);
    transition: opacity .2s;
}
.info-item::after { transform: rotate(180deg);}
.info-item:hover::before,
.info-item:hover::after { opacity: 1; animation: borderSweep .65s cubic-bezier(.32,.1,.24,1) forwards;}
@keyframes borderSweep {
    0% {
        clip-path: polygon(0 0, 0 0, 0 0, 0 0);
    }
    50% {
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    }
    100% {
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    }
}
.img-zoom-btn { display: none; width: 50%; margin: 15px auto 0; padding: 10px; font-size: 14px; background: #761717;  color: #fff;  border: none;  border-radius: 20px;}
.img-viewer { position: fixed; inset: 0; background-color: #fff; display: none; z-index: 99999;}
.img-viewer-inner { width: 100%; height: 100%; overflow-y: auto; overflow-x: hidden; box-sizing: border-box; padding: 0 0 40px;  display: block; }
.img-viewer-inner img { width: 100%;  height: auto; max-width: none; display: block;}
.img-viewer-close { margin: 25px auto 0; display: block; padding: 10px 22px; font-size: 14px; background: #761717; border: none; border-radius: 20px; color: #fff;}


@media (max-width:768px){    
    .sub-top-bg { background:url('/assets/img/subtop_m.jpg') center/cover no-repeat; }   
    .snav{padding:0 10px;}
    .zone-home{display:none;}
    .flex-fill{display:none;}
    .zone-d1,.zone-d2{width:50%;padding:0 12px;border-right:1px solid #ddd; }
    .zone-d2{border-right:0px;}
    .ov-title .line {display:none;}
    .sub.top-visual { width:100%; height:250px;}
    .sub-top-text {top:130px;}
    .sub.con {padding:0 10px; margin-bottom: 80px;}
    .ov-table {border:0px solid #e1e1e1; }
    .ov-table, .ov-table tbody, .ov-table tr, .ov-table th, .ov-table td {display:block; width:100%;}
    .ov-table tr {margin-bottom:15px; border:1px solid #e1e1e1;}
    .ov-table th {width:100%; padding:12px; background:#f9f9f9; border-bottom:1px solid #e1e1e1; vertical-align:middle; text-align: left;}
    .ov-table td {padding:12px; vertical-align:left;}
    .notice-box {padding:18px 20px;}
    .sub.con .location-item {width: 100%; margin-bottom: 0px;}
    .sub.con .dir-wrap { padding-bottom: 0px;}
    .sub.con .dir-flex { flex-direction:column; gap:26px; }
    .sub.con .dir-right { text-align:center; }
    .sub.con .dir-call { margin-bottom:20px; }
    .sub.con .pimg { width: 70%; margin-bottom: 50px;}
    .sub.con .premium-wrap { grid-template-columns: 1fr; gap: 60px; }
    .sub.con .premium-item:nth-child(odd) { transform: translateY(0px);}
    .sub.con .premium-item:nth-child(even) { transform: translateY(0px);}
    /* .sub.con .img-cut { gap: 10px;  flex-wrap: wrap; margin: 0 auto ; padding: 50px 0 0 0; }
    .sub.con .img-cut .cut { flex: 1 1 calc(50% - 20px); } */
    .unit-tabs-new li .stamp { width:42px; height:42px; top: -20px; right: -5px; background:url('/assets/img/unit-icon.png') center/contain no-repeat;}
	/* 평면안내수정-251205 */
	.sub.con .img-cut1 { display: grid; grid-template-columns: repeat(1, 1fr); gap: 20px; }

    .doc-inner {flex-direction: column; gap: 30px; }
    .doc-img, .info-wrap { flex: none; width: 100%; }
    .info-item { padding: 35px 24px; }
    .img-zoom-btn { display: block; } 
}

.popup-bar{position:fixed;top:50%;left:0;transform:translateY(-50%);z-index:99999;pointer-events:none;}
.popup-bg{background:#761717;width:1100px;height:100%;border-radius:0 12px 12px 0;position:absolute;top:0;left:0;flex-shrink:0;z-index:-1;}
.popup-track{display:flex;align-items:stretch;min-width:1100px;background:none;border-radius:0 12px 12px 0;box-shadow:0 0 12px rgba(0,0,0,.18);transition:transform .90s cubic-bezier(.32,.1,.24,1);transform:translateX(calc(-100% + 50px));pointer-events:auto;overflow:visible;}
.popup-items{display:flex;}
.popup-items img{display:block;flex-shrink:0;}
.popup-handle{width:50px;border:none;border-radius:0 12px 12px 0;background:#761717;color:#fff;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:18px 0;pointer-events:auto;}
.popup-handle .arrow{width:14px;height:14px;border-right:1px solid #fff;border-bottom:1px solid #fff;transform:translate(-50%,0) rotate(-45deg);transform-origin:center center;transition:.3s ease;margin-left:5px;display:block;}
.popup-handle .letters{display:flex;flex-direction:column;gap:4px;}
.popup-handle .letters b{font-size:14px;font-weight:600;}
.popup-bar.open .popup-track{transform:translateX(0);}
.popup-bar.open .popup-handle .arrow{transform:translateX(-1px) rotate(135deg);}
.popup-mobile { display:none; }
@media(max-width:768px){
    .popup-bar { display:none; }
    .popup-mobile{ position:fixed; inset:0; z-index:99999; display:block;  pointer-events:none;  opacity:0;  transition:opacity .35s; }
    .popup-mobile.open{ pointer-events:auto; opacity:1; }
    .popup-mobile-overlay{ position:absolute; inset:0; background:rgba(0,0,0,.65); }
    .popup-mobile-card{position:absolute; top:50%;  left:50%;transform:translate(-50%,-50%) translateX(-120%);  width:75vw;  max-width:420px; background:#fff;
        overflow:hidden; transition:transform .55s cubic-bezier(.32,.1,.24,1), opacity .55s; z-index: 99999; }
    .popup-mobile.open .popup-mobile-card{ transform:translate(-50%,-50%) translateX(0); }
    .popup-mobile-item{ display:none; }
    .popup-mobile-item.active{ display:block; }
    .popup-mobile-close{ width:100%; padding:14px 0; background:#fff;  font-size:15px; font-weight:600;  border:none;  cursor:pointer; }
}

@media (min-width:768px){
/* news */
.news_list {width:100%;margin:auto;text-align:left;}
.news_list ul {display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem;}
.news_list ul li {margin-bottom:2.5rem; background:#fff; text-align: left; box-shadow: 8px 13px 15px 0px rgba(0,0,0,0.1); transition: box-shadow .4s;}
.news_list ul li:hover {box-shadow: none;}
.news_list ul li a {display:block; width:100%; height:100%; padding:2.5rem 1.5rem; font-size:1rem; color:#000; box-sizing: border-box;}
.news_list ul li h3 {display: block; color: #761717; font-size: 1rem; margin-bottom: 1rem; font-weight: 400;}
.news_list ul li p {font-size: 1.3rem; font-weight: 400; line-height:26px; height:52px; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}
.news_list ul li span {display: block; color: #761717; font-size: 1rem; margin-top: 1.5rem; font-weight: 400;}

/* page */
.page {margin-top:36px;text-align:center;}
.page .btn {display:inline-block;width:auto;height:16px;vertical-align:top;}
.page .btn img {vertical-align:top;}
.page ul {display:inline-block;vertical-align:top;padding:0 8px;}
.page ul li {display:inline-block;font-size:18px;line-height:20px;text-align:center;margin:0 8px;box-sizing:border-box;vertical-align:top;}
.page ul li a {display:block;color:#727272;}
.page ul li strong {display:block;color:#761717;}
}

@media (max-width:768px){
/* news */
.news_list {text-align:left;}
.news_list ul {}
.news_list ul li {width:90%;margin:5% 5% 0;box-shadow: 4px 10px 12px 0px rgba(0,0,0,0.1); transition: box-shadow .4s;}
.news_list ul li a {display:block;width:100%;height:100%;padding:2.5rem 1.5rem; font-size:1rem; color:#000; box-sizing: border-box;}
.news_list ul li h3 {display: block; color: #761717; font-size: 1rem; margin-bottom: 1rem; font-weight: 400;}
.news_list ul li p {font-size: 1.2rem; font-weight: 400; line-height:30px; height:60px; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}
.news_list ul li span {display: block; color: #761717; font-size: 1rem; margin-top: 1.5rem; font-weight: 400;}

/* page */
.page {margin-top:20px;text-align:center;}
.page .btn {display:inline-block;width:auto;height:18px;vertical-align:top;margin:0 3px;}
.page .btn img {vertical-align:top;}
.page ul {display:inline-block;vertical-align:top;padding:0 5px;}
.page ul li {display:inline-block;font-size:16px;line-height:18px;font-weight:bold;text-align:center;margin:0 4px;box-sizing:border-box;vertical-align:top;}
.page ul li a {display:block;color:#727272;}
.page ul li strong {display:block;color:#222a67;font-weight:bold;}
}

.video-wrap { position: relative; width: 100%; padding-top: 56.25%;}
.video-wrap iframe { position: absolute; inset: 0; width: 100%; height: 100%;}

/* regist */

/********************************************
    관심고객등록
********************************************/
.regist_tit { font-size: 24px; font-weight: 500; margin: 0 0 20px;}
.regist_tit:not(:first-child) { margin: 50px 0 20px;}
/********************************************
    관심고객등록 > 개인정보 수집 및 이용에 관한 안내 (스크롤박스)
********************************************/
.temp_regist .terms_box { background: #fff; border: 1px solid #e5e5e5; font-size: 14px; font-weight: 300; padding: 5px 5px 5px 0;}
.temp_regist .terms_box .terms{ height: 500px; overflow-y:scroll; padding: 38px 35px;}
.temp_regist .terms_box .terms::-webkit-scrollbar{width: 5px;}
.temp_regist .terms_box .terms::-webkit-scrollbar-thumb{background: #d2d2d2; border-radius: 2.5px;}
.temp_regist .terms_box .terms::-webkit-scrollbar-track{background: #fff;}
.temp_regist .terms_box .terms>div:first-child .regist_stit{padding: 0;}
.temp_regist .terms_box p { padding: 0 0 5px;}
.temp_regist .terms_box ul li { text-indent: -12px; padding: 0 0 0 15px;}
.regist_stit { font-size: 16px; font-weight: 600; padding: 20px 0 10px;}
/* 동의버튼 */
.terms_agree { display: flex;  align-items: center;  gap: 30px;  padding-top: 20px;}
.terms_agree p{ font-size: 18px;  color: #666666;  margin-right: 20px;}
.terms_agree p strong{  font-weight: 500;  color: #111111;}
.terms_agree label{ color: #666666;  font-size: 18px;}
/* 버튼 */
.regist_button { padding: 50px 0 0;  text-align: center;}
.regist_button a { display: inline-block; line-height: 30px; padding: 10px 30px;}

@media screen and (max-width: 480px) {
  .regist_button { padding: 10px 0 0; }  
  .regist_button a { padding: 10px 20px; }
}

.regist_button a.btn_regist { color: #fff;  font-size: 18px;  background-color: #761717;  display: inline-flex;  align-items: center;  justify-content: center;  gap: 34px;}
.regist_button a.btn_cancel { color: #000;  background-color: var(--second_color);}
/********************************************
      개인정보 취급 위탁동의
********************************************/
div.privacy_tb table {  width: 100%;}
div.privacy_tb table thead th {  font-size: min(calc(14/480 * 100vw), 14x);  width: 50%;  word-break: keep-all;  color: #fff;  padding: 15px 20px;  background-color: var(--point_color);}
div.privacy_tb table tbody td {  font-size: min(calc(14/480 * 100vw), 14x);  word-break: keep-all;  text-align: center;  padding: 10px 20px;  border-top: 1px solid var(--line_color);  border-bottom: 1px solid var(--line_color);}
div.privacy_tb table tbody td:nth-of-type(2) {   border-left: 1px solid var(--line_color);}
/********************************************
      개인정보입력
********************************************/
.info_table dl {  display: grid;  grid-template-columns: 200px auto;}
.info_table dl dt {  display: flex;  align-items: center;  justify-content: center;  text-align: center;  color: #111111;  background-color: #f8f8f8;  border-bottom: 1px solid #eeefef;    padding: 20px;  font-size: 18px;}
.info_table dl dt:first-of-type{  border-top: 1px solid #001961;  }
.info_table dl dd {  border-bottom: 1px solid #eeefef;    padding: 10px 20px;   display: flex;  align-items: center;  gap: 10px;}
.info_table dl dd:first-of-type{  border-top: 1px solid #001961;  }
.info_table dl dd > label{  display: inline-flex;  align-items: center;    font-size: 16px;  color: #666666;  gap: 10px;  margin-right: 40px;}
.info_table dl dd * { vertical-align: middle;}


#joinNm {   width: min(100%, 400px);}
#pcs {  width: min(100%, 400px);}
#pcs1 {  width: min(32%, 120px);}
#pcs2 {  width: min(32%, 120px);}
#pcs3 {  width: min(32%, 120px);}
#s1 {  width: min(32%, 200px);}
#s2 {  width: min(32%, 200px);  }
#s3 {  width: min(32%, 200px);  }

@media screen and (max-width: 655px){
  .regist_tit{font-size: 16px;}
  .temp_regist .terms_box .terms{height: 300px; padding: 15px;}
  .terms_agree {display: flex; align-items: baseline; gap: 10px; flex-direction: column;}
  .terms_agree p{margin-bottom: 10px;}
  .info_table dl{grid-template-columns: 90px auto;}
  .info_table dl dt{font-size: 14px;}
  .info_table dl dd{flex-direction: column; align-items: baseline;}
  #s1 {    width: 100%;  }
  #s2 {    width: 100%;  }
  #s3 {    width: 100%;  }

  input[type="text"], input[type="password"], input[type="number"], select, .info_table dl dd > label{font-size: 14px;}
} 



@media screen and (max-width: 480px) {
  .info_table dl {    display: grid;    grid-template-columns: 120px auto;  }  
  #pcs1 {    width: 100%;  }
  #pcs2 {    width: 100%;    margin: 5px 0;  }
  #pcs3 {    width: 100%;  }  
  #s1 {    width: 100%;  }
  #s2 {    width: 100%;  }
  #s3 {    width: 100%;  }
}