a:link {color:#383838;}
a:visited {color:#383838;}

/* 전역 a 색 지정 뒤에 붙이기 */
.footer .call-link {
    color: #fff !important;
    text-decoration: none;
}

.sub_top{width: 100%; height: 50vh; display: flex; align-items: center; justify-content: center; background: #999; color: #fff; font-size: 2.5rem; font-weight: 500; letter-spacing: -.05rem;}
.sub_top>div{width: 100%; height: 100%; position: absolute; top: 0; background: #160a04; transition: .5s; animation: sub_top 1s both;}
@keyframes sub_top{
    0%{width: 0%; opacity: 0;}
    50%{opacity: .2;}
    100%{width: 100%; opacity: .2;}
}

.sub2_3 .sub_top{background: url(../images/sub1.png) center / cover no-repeat;}
.sub2_4 .sub_top{background: url(../images/sub2.png) center / cover no-repeat;}
.sub3_1 .sub_top{background: url(../images/sub3.png) center / cover no-repeat;}
.sub4_1 .sub_top{background: url(../images/sub4.png) center / cover no-repeat;}
.sub4_5 .sub_top{background: url(../images/sub5.png) center / cover no-repeat;}
.sub4_3 .sub_top{background: url(../images/sub4_3.jpg) center / cover no-repeat;}
.sub5_1 .sub_top{background: url(../images/sub5_1.jpg) center / cover no-repeat;}
.sub5_2 .sub_top{background: url(../images/sub5_2.jpg) center / cover no-repeat;}
.sub6_1 .sub_top{background: url(../images/sub6_1.jpg) center / cover no-repeat;}
.sub6_2 .sub_top{background: url(../images/sub6_2.jpg) center / cover no-repeat;}
.sub6_3 .sub_top{background: url(../images/sub6_3.jpg) center / cover no-repeat;}
.sub7_1 .sub_top{background: url(../images/sub7_1.jpg) center / cover no-repeat;}
.sub7_2 .sub_top{background: url(../images/sub7_2.jpg) center / cover no-repeat;}
.overview-table-section .sub_top{background: url(../images/sub1.png) center / cover no-repeat;}
.rates-section .sub_top{background: url(../images/sub2_6.jpg) center / cover no-repeat;}
.floor-section .sub_top{background: url(../images/sub2_6.jpg) center / cover no-repeat;}
.location-section .sub_top{background: url(../images/sub6_1.jpg) center / cover no-repeat;}
.map-section .sub_top{background: url(../images/sub1.png) center / cover no-repeat;}
.sub2_7 .sub_top{background: url(../images/sub1.png) center / cover no-repeat;}
.sub2_8 .sub_top{background: url(../images/sub2.jpg) center / cover no-repeat;}
.infra-section .sub_top {background: url(../images/sub1.png) center / cover no-repeat;}

.login_p .inner > p, .join_p .inner > p, .join_e .inner > p{text-align: center; font-size: 2.5rem; font-weight: 300; letter-spacing: -.05rem; word-spacing: -.2rem; margin-bottom: 50px;}
.login_p .sub_top, .join_p .sub_top, .join_e .sub_top{height: 120px; background: #1e1e1e;}
.login_p .inner, .join_p .inner, .join_e .inner{width: 700px;}
.login_p .input_s{display: block;}
.login_p .input_s > div{display: flex; align-items: center; flex-direction: column; width: 100%;}
.login_p .input_s .contact .contact_btn_mo{display: none;}
.join_e .input_s > div{display: flex; flex-direction: column; width: 100%;}
.join_e .input_s .contact .checkbox label{line-height: 2; font-size: 1.1rem;}
.join_e .input_s .contact .checkbox input + label:before{top: 0;}
.join_e .input_s .contact .checkbox input + label:after{top: 6px;}
/* .login_p .input_s > div > p{width: 20%; padding-left: 20px;} */
.login_p .input_s > div > input{width: 100%;}
.login_p .input_s > div > p::after{position: absolute;}
.login_p .input_s .contact .contact_btn{margin-bottom: 0; margin-top: 30px;}
.login_p .input_s>div>div{width: 350px; height: 60px; border-radius: 20px; margin: 0 auto; margin-bottom: 20px; font-weight: 500; font-size: 1.2rem; display: flex; align-items: center; justify-content: center;}
.login_p .input_s .contact .kakao_lo{background: #fae100; color: #371c1d; margin-top: 20px;}
.login_p .input_s .contact .naver_lo{background: #41a82c; color: #fff;}
.login_p .input_s .contact img{position: absolute; left: 20px; top: 50%; transform: translateY(-50%);}
.login_p .input_s .contact a{position: absolute; display: block; top: 0; left: 0; width: 100%; height: 100%;}

.login_p .inner > div:nth-of-type(2){display: flex; justify-content: center; margin-top: 50px;}
.login_p .inner > div:nth-of-type(2) span{color: #999; display: block;}
.login_p .inner > div:nth-of-type(2) span{margin: 0 25px;}
.login_p .inner > div:nth-of-type(2) span:after{position: absolute; content: ""; top: 2px; left: 89px; width: 1px; height: 14px; background: #999;}
.login_p .inner > div:nth-of-type(2) span:nth-of-type(2):after{left: 95px;}
.login_p .inner > div:nth-of-type(2) span:last-child:after{display: none;}
.login_p .inner > div:nth-of-type(2) span a{position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block;}

.contact_btn2{width: 150px; height: 50px; background: #cfcfcf; border-radius: 20px; line-height: 48px; text-align: center; margin: 0 auto;}

.join_p .inner>div>div{width: 100%; height: 80px; border-radius: 20px; margin-bottom: 20px; font-weight: 500; font-size: 1.2rem; display: flex; align-items: center; justify-content: center;}
.join_p .inner>div>div:nth-of-type(1){background: #fae100; color: #371c1d;}
.join_p .inner>div>div:nth-of-type(2){background: #41a82c; color: #fff;}
.join_p .inner>div>div:nth-of-type(3){background: #4d4d4d; color: #fff;}
.join_p .inner>div>div img{position: absolute; left: 20px; top: 50%; transform: translateY(-50%);}
.join_p .inner>div>div a{position: absolute; display: block; top: 0; left: 0; width: 100%; height: 100%;}

.sub_menu ul{width: 100%; display: flex; justify-content: center; font-size: 1.1rem; font-weight: 300; background: #C9BCA9;}
.sub_menu ul li{width: 15%; height: 60px;  cursor: pointer; }

.sub_menu ul li.active{background: #5C5445;}
.sub_menu ul li.active a{color: #fff; font-weight: 500;}
.sub_menu ul li a{position: absolute; width: 100%; height: 100%; top: 0; color: #000;display: flex; align-items: center; justify-content: center;}

.sub_title b{display: block; font-size: 4rem; font-weight: 500; color: #885E45; margin-bottom: 100px;}
.sub_title p{font-size: 1.4rem; font-weight: 400; color: #5C5445; text-align: center;}
.sub_title_1 {margin-top:100px;}
.floor_subtitle {margin-top:100px;}



/* 섹션 기본 스타일 */
.rates-section {
  box-sizing: border-box;
  /* 배경색 필요 없으면 아래 줄 삭제 */
  /* background-color: #f3ece2; */
  font-family: "Noto Serif KR", serif;
  color: #5c5445;
}

/* 상단 타이틀 영역 */
.rates-header {
  max-width: 960px;
  margin: 0 auto 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  font-size: 14px;
}

.rates-title {
  display: flex;
  align-items: center;
  font-weight:600;
  gap: 6px;
}

.rates-bullet {
  display: inline-block;
  width: 8px;
  height: 8px;
  background: #5c5445;
}

.rates-unit {
  font-size: 13px;
  font-weight:600;
}

/* 표 래퍼(반응형: 가로 스크롤) */
.rates-table-wrapper {
  max-width: 960px;
  margin: 0 auto;
  overflow-x: auto;
}

/* 실제 표 스타일 */
.rates-table {
  width: 100%;
  min-width: 520px; /* 너무 좁아지지 않게 */
  border-collapse: collapse;
  text-align: center;
  font-size: 14px;
}

/* 헤더 행 */
.rates-table thead th {
  background-color: #5c5445; /* 맨 위 열 색 */
  color: #ffffff;
  padding: 12px 8px;
  font-weight: 500;
}

/* 데이터 행 */
.rates-table tbody td {
  background-color: #d5cec2; /* 아래 열 색 */
  padding: 10px 8px;
}

/* 행 사이 구분선 */
.rates-table tbody tr + tr td {
  border-top: 2px solid #f3ece2;
}

/* 하단 안내문 */
.rates-notice {
  max-width: 960px;
  margin: 30px auto 100px;
  font-size: 12px;
  text-align: center;
}



/* 섹션 전체 */
.floor-section {
  background-color: #E5DFD7;
  box-sizing: border-box;
  font-family: "Noto Serif KR", serif;
  color: #5c5445;
  padding: 0; /* 여백 없음 */
}

/* ✅ 내용 부분만 가운데 정렬 */
.floor-inner {
  max-width: 960px;
  margin: 60px auto 80px; /* 위아래 여백 + 가운데 정렬 */
  padding: 0 16px;
  box-sizing: border-box;
}

/* 타이틀 */
.floor-title-wrap {
  text-align: center;
  margin-bottom: 32px;
}

.floor-subtitle {
  font-size: 14px;
  margin-bottom: 6px;
}

.floor-title {
  font-size: 28px;
  letter-spacing: 0.05em;
  font-weight: 600;
}

/* 탭 버튼 영역 */
.floor-tabs {
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: 0;
  border: 1px solid #d5cec2;
  background-color: #d5cec2;
  margin-bottom: 32px;
  overflow-x: auto;          /* 모바일에서 좌우 스크롤 */
  white-space: nowrap;
}

/* 실제 탭 버튼 */
.floor-tab {
  flex: 1 1 auto;
  min-width: 80px;
  padding: 12px 16px;
  border: none;
  background: transparent;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
  color: #5c5445;
  transition: background-color 0.2s ease, color 0.2s ease;
}

/* 구분선 */
.floor-tab + .floor-tab {
  border-left: 1px solid #c4b9aa;
}

/* hover 상태 */
.floor-tab:hover {
  background-color: #c8c0b1;
}

/* 활성 탭 */
.floor-tab.active {
  background-color: #5c5445; /* 어두운 컬러 */
  color: #ffffff;
}

/* 패널 영역 */
.floor-panels {
  background-color: #E5DFD7;
  padding: 32px 24px 28px;
}

/* 각 패널 */
.floor-panel {
  display: none;
}

.floor-panel.active {
  display: block;
}

/* 설명 텍스트 */
.floor-desc {
  text-align: center;
  font-size: 20px;
  margin-bottom: 0;
  font-weight:600;
}

/* 이미지 박스 */
.floor-img-wrap {
  background-color: #ffffff;
  padding: 16px;
  text-align: center;
}

.floor-img-wrap img {
  max-width: 100%;
  height: auto;
  display: inline-block;
}

/* 하단 안내 */
.floor-notice {
  margin-top: 16px;
  font-size: 12px;
  text-align: center;
}

/* 도면 이미지와 동일한 가로폭 적용 */
.floor-subimg-wrap {
    width: 100%;          /* .floor-img-wrap 과 동일한 width */
    max-width: inherit;   /* 부모의 max-width를 그대로 물려받음 */
    margin: 20px auto 0;  /* 위쪽 공간 20px */
    
    display: grid;
    grid-template-columns: repeat(2, 1fr);   /* PC 2×2 */
    gap: 16px;
}

/* 각 썸네일 */
.floor-subimg img {
    width: 100%;          /* 가로폭 100% */
    height: auto;         /* 세로 자동 — 너가 원한 부분 */
    object-fit: cover;    /* 이미지 잘리는 걸 방지하거나 스타일 맞춤 */
    display: block;
}



.sub2_6 .inner ul{width: 90%; margin: 0 auto;}
.sub2_6 .inner ul li{display: flex; width: 100%; justify-content: space-around; align-items: center; margin-bottom: 100px;}
.sub2_6 .inner ul li .sub2_1_tx{width: 31%; opacity: 0; transition: .5s .3s; top: 20px;}
.sub2_6 .inner ul li>span{display: block; width: 3px; height: 0px; background: #5C5445; transition: .5s .5s;}
.sub2_6 .inner ul li img{width: 650px; height: 400px;  object-fit: cover; opacity: 0; transition: .5s; top: 20px;}
.sub2_6 .inner ul li b{left: -5px; top: 0; color:#885E45; font-size: 5rem; font-weight: 900; letter-spacing: -.1rem; margin-top: -40px; display: block;}
.sub2_6.on1 .inner ul li:nth-of-type(1) span{height: 70px;}
.sub2_6.on1 .inner ul li:nth-of-type(1) div{opacity: 1; top: 0;}
.sub2_6.on1 .inner ul li:nth-of-type(1) img{opacity: 1; top: 0;}
.sub2_6.on2 .inner ul li:nth-of-type(2) span{height: 70px;}
.sub2_6.on2 .inner ul li:nth-of-type(2) div{opacity: 1; top: 0;}
.sub2_6.on2 .inner ul li:nth-of-type(2) img{opacity: 1; top: 0;}
.sub2_6.on3 .inner ul li:nth-of-type(3) span{height: 70px;}
.sub2_6.on3 .inner ul li:nth-of-type(3) div{opacity: 1; top: 0;}
.sub2_6.on3 .inner ul li:nth-of-type(3) img{opacity: 1; top: 0;}
.sub2_6.on4 .inner ul li:nth-of-type(4) span{height: 70px;}
.sub2_6.on4 .inner ul li:nth-of-type(4) div{opacity: 1; top: 0;}
.sub2_6.on4 .inner ul li:nth-of-type(4) img{opacity: 1; top: 0;}
.sub2_6.on5 .inner ul li:nth-of-type(5) span{height: 70px;}
.sub2_6.on5 .inner ul li:nth-of-type(5) div{opacity: 1; top: 0;}
.sub2_6.on5 .inner ul li:nth-of-type(5) img{opacity: 1; top: 0;}
.sub2_6.on6 .inner ul li:nth-of-type(6) span{height: 70px;}
.sub2_6.on6 .inner ul li:nth-of-type(6) div{opacity: 1; top: 0;}
.sub2_6.on6 .inner ul li:nth-of-type(6) img{opacity: 1; top: 0;}
.sub2_6.on7 .inner ul li:nth-of-type(7) span{height: 70px;}
.sub2_6.on7 .inner ul li:nth-of-type(7) div{opacity: 1; top: 0;}
.sub2_6.on7 .inner ul li:nth-of-type(7) img{opacity: 1; top: 0;}
.sub2_6.on8 .inner ul li:nth-of-type(8) span{height: 70px;}
.sub2_6.on8 .inner ul li:nth-of-type(8) div{opacity: 1; top: 0;}
.sub2_6.on8 .inner ul li:nth-of-type(8) img{opacity: 1; top: 0;}
.sub2_6.on9 .inner ul li:nth-of-type(9) span{height: 70px;}
.sub2_6.on9 .inner ul li:nth-of-type(9) div{opacity: 1; top: 0;}
.sub2_6.on9 .inner ul li:nth-of-type(9) img{opacity: 1; top: 0;}

.sub2_6 .inner ul li > div > p{font-size: 1.3rem; font-weight: 300; color: #2E2D2B; line-height: 1.3;}
.sub2_6 .inner ul li > div > p:nth-of-type(1){font-size: 30px; font-weight: 800; letter-spacing: -.05rem; word-spacing: -.1rem; color: #5C5445; margin-bottom: 20px;}



/* 멤버십 혜택 상단 영역 */
.membership_benefit {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto 60px;
    text-align: center;
}

.membership_benefit_tit .ko {
    font-size: 1.6rem;
    letter-spacing: .1em;
    margin-bottom: 5px;
    color: #b08a63; /* 살짝 브라운톤 포인트 */
}

.membership_benefit_tit .en {
    font-size: 2.4rem;
    font-weight: 600;
    letter-spacing: .06em;
    margin-bottom: 15px;
    color: #3a2f2b;
}

.membership_benefit_tit .sub {
    font-size: 1.4rem;
    color: #7c6b5f;
    line-height: 1.6;
}

.membership_benefit_list {
    display: flex;
    justify-content: center;
    gap: 30px;
    margin: 45px auto 25px;
    padding: 0;
    list-style: none;
    flex-wrap: wrap;
}

.membership_benefit_list li {
    width: 18%; /* 5개 기준 */
    min-width: 150px;
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 1.3rem;
    color: #6a5a4c;
    line-height: 1.5;
}

.membership_benefit_list .icon {
    width: 60px;
    height: 60px;
    margin-bottom: 12px;
}

.membership_benefit_list .icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.membership_benefit_list .txt_ko {
    word-break: keep-all;
}

.membership_notice {
    font-size: 1.2rem;
    color: #9a8a7d;
    margin-top: 50px;
}

/* 폼 상단 설명 문구 */
.membership_desc {
    text-align: center;
    font-size: 1.5rem;
    color: #5a4b3e;
    margin: 40px 0 50px;
    line-height: 1.6;
}


/* membership_desc 모든 공통 여백 통일 */
.membership_desc {
    text-align: center;
    font-size: 1.5rem;
    color: #5a4b3e;
    margin: 0 0 100px !important; /* ← 원하는 만큼 조정 */
    line-height: 1.6;
}


.overview-table-section{
  background:#EFF2F7;
}

/* ===============================
   SUB TAB (introduce.html 방식)
================================ */

/* 탭바 배경은 화면 전체로 */
.overview-table-section .sub_menu{
  width:100%;
  background:#171717;
}

/* 탭들은 가운데로 모아서(고정 폭) */
.overview-table-section .sub_menu > ul{
  max-width:980px;     /* ← introduce 페이지 탭 폭에 맞춰 조절 가능 */
  margin:0 auto;
  display:flex;
  justify-content:space-between;

  background:transparent; /* ✅ 전역 #C9BCA9 덮기 */
}

/* 탭 5개든 4개든 페이지 안에서 동일 크기 */
.overview-table-section .sub_menu > ul > li{
  flex:1;
  height:56px;
  border-right:1px solid rgba(255,255,255,0.15);
}
.overview-table-section .sub_menu > ul > li:last-child{border-right:none;}

/* 전역 a가 position:absolute라서(레이아웃 꼬임 방지) 무조건 덮기 */
.overview-table-section .sub_menu > ul > li > a{
  position:static;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  color:#fff;
  font-size:14px;
  font-weight:400;
}

/* active */
.overview-table-section .sub_menu > ul > li.active{background:#091F5B;}
.overview-table-section .sub_menu > ul > li.active > a{font-weight:500;}


/* 내용 폭 */
.overview-inner{
  max-width:980px;
  margin:0 auto;
  padding:0 16px 90px;
  box-sizing:border-box;
}

/* ✅ 공통 타이틀(다른 페이지도 그대로 재사용) */
.subpage-title{
  text-align:center;
  padding:100px 0 35px;
}

.subpage-kicker{
  font-size:14px;
  letter-spacing:0.08em;
  color:#171717;
  margin-bottom:10px;
}

.subpage-headline{
  font-family: "Nanum Myeongjo", "나눔명조", serif;  /* ✅ 추가 */
  font-size:30px;
  line-height:1.2;
  font-weight:600;
  margin:0;
  color:#091F5B;
}

.subpage-headline span{
  font-weight:500;
}

/* 사업개요 이미지 영역 (img용) */
.overview-media{
  width:100%;
  margin:0 auto 26px;
  overflow:hidden;
}

.overview-media img{
  width:100%;
  height:100%;
  object-fit:cover;       /* ✅ 박스 꽉 채우기 */
  display:block;
}

/* 스펙 테이블 */
.overview-spec{
  background:transparent;
}

/* ===============================
   OVERVIEW: 타이틀 아래 컨텐츠 아래→위 등장
=============================== */
.overview-reveal{
  opacity: 0;
  transform: translateY(60px);
  transition: opacity .9s ease, transform .9s ease;
}

.overview-reveal.is-visible{
  opacity: 1;
  transform: translateY(0);
}

/* ===============================
   사업개요 표 스타일 커스텀
================================ */

/* 표 기본 */
.overview-spec-table{
  width:100%;
  border-collapse:collapse;
  table-layout:fixed;
  background:transparent;

  border-top:none;                /* ✅ 맨 윗 가로줄 제거 */
}

/* 기본 가로 구분선 */
.overview-spec-table tr{
  border-bottom:1px solid #B9B9B9; /* ✅ 기본 가로선 */
}

/* 마지막 줄은 유지 (원하면 제거도 가능) */
.overview-spec-table tr:last-child{
  border-bottom:1px solid #B9B9B9;
}

/* 셀 공통 */
.overview-spec-table th,
.overview-spec-table td{
  padding:16px 14px;
  font-size:14px;
  line-height:1.6;
  vertical-align:middle;
  background:transparent;
}

/* 왼쪽 타이틀(th) */
.overview-spec-table th{
  width:210px;
  color:#091F5B;                  /* 타이틀 글자색 */
  font-weight:600;

  /* 🔥 타이틀 아래 강조 밑줄 */
  border-bottom:3px solid #091F5B; /* 글자색과 동일 + 굵게 */
}

/* 오른쪽 내용(td) */
.overview-spec-table td{
  color:#111;
  opacity:0.85;

  /* th 아래 굵은 밑줄과 겹치지 않게 */
  border-bottom:1px solid #B9B9B9;
}

.overview-note{
  margin-top:18px;
  font-size:12px;
  color:#111;
  opacity:0.55;
  line-height:1.6;
  text-align:left;
}

/* ===============================
   서브 공통: 탭(overview 기준) + 배경 고정
================================ */
.subpage-tabs{
  background:#EFF2F7; /* ✅ 페이지 배경 무조건 이 색 */
}

/* 탭바 배경은 풀로 */
.subpage-tabs .sub_menu{
  width:100%;
  background:#171717;
}

/* 탭은 가운데 정렬 */
.subpage-tabs .sub_menu > ul{
  max-width:980px;
  margin:0 auto;
  display:flex;
  background:transparent;
}

/* 탭 동일 크기(4개/5개 자동) */
.subpage-tabs .sub_menu > ul > li{
  flex:1;
  height:56px;
  border-right:1px solid rgba(255,255,255,0.15);
}
.subpage-tabs .sub_menu > ul > li:last-child{border-right:none;}

.subpage-tabs .sub_menu > ul > li > a{
  position:static;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  color:#fff;
  font-size:14px;
  font-weight:400;
  text-align:center;
  line-height:1.2;
}

.subpage-tabs .sub_menu > ul > li.active{
  background:#091F5B;
}
.subpage-tabs .sub_menu > ul > li.active > a{
  font-weight:500;
}

/* ===============================
   브랜드소개 페이지 본문
================================ */
.introduce-inner{
  max-width:980px;
  margin:0 auto;
  padding:0 16px 120px;
  box-sizing:border-box;
}

.brand-hero{
  text-align:center;
  margin-top:10px;
}

.brand-lead{
   font-family: "Nanum Myeongjo", "나눔명조", serif;  /* ✅ 추가 */
  font-size:22px;
  line-height:1.5;
  font-weight:600;
  color:#091F5B;
  margin:0 0 6px;
}

.brand-name{
   font-family: "Nanum Myeongjo", "나눔명조", serif;  /* ✅ 추가 */
  font-size:28px;
  line-height:1.2;
  font-weight:900;
  color:#091F5B;
  margin:0;
}

.brand-logo{
  width:100%;
  display:flex;
  justify-content:center;
  margin:55px 0 55px;
}

.brand-logo img{
  width:260px;
  height:auto;
  display:block;
}

.brand-copy{
  text-align:center;
  color:#111;
   font-size:14px;
  line-height:1.9;
}

.brand-copy p{
  margin:18px 0;
}


/* ===============================
   INFRA (입지환경)
================================ */
.infra-inner{
  max-width:980px;
  margin:0 auto;
  padding:0 16px 120px;
  box-sizing:border-box;
}

/* 지도 */
.infra-map{
  margin:0 0 40px;
}
.infra-map img{
  width:100%;
  height:auto;
  display:block;
}

/* 리스트 */
.infra-list{
  display:flex;
  flex-direction:column;
  gap:36px;
}

/* 한 줄(이미지+텍스트) */
.infra-row{
  display:flex;
  align-items:flex-start;
  gap:26px;
}

/* reverse: 텍스트 왼쪽/이미지 오른쪽 */
.infra-row.reverse{
  flex-direction:row-reverse;
}

.infra-media{
  width:48%;
}

/* INFRA 이미지 영역 (img용) */
.infra-media-box{
  width:100%;
  overflow:hidden;
}

.infra-media-box img{
  width:100%;
  height:100%;
  object-fit:cover;   /* ✅ 박스 꽉 채움 */
  display:block;
}

/* 텍스트 */
.infra-text{
  width:52%;
  padding-top:20px;
  box-sizing:border-box;
}

.infra-no{
  font-size:50px;
  font-family: "Abhaya Libre", serif !important;
  font-weight:700;
  letter-spacing:0.06em;
  color:#091F5B;
  margin:0 0 8px;
  opacity:0.9;
}

.infra-title{
  font-family: "Nanum Myeongjo", "나눔명조", serif;  
  font-size:25px;
  font-weight:900;
  color:#091F5B;
  margin:0 0 10px;
}

.infra-bullets{
  margin:0;
  padding-left:0;              /* ✅ 기본 들여쓰기 제거 */
  list-style:none;             /* ✅ 기본 점 제거 */
  color:#171717;
  font-size:15px;
  line-height:1.4;             /* ✅ 줄 간격은 이게 더 좋아 */
}

.infra-bullets li{
  position:relative;
  padding-left:14px;           /* ✅ 도트 자리 */
  margin:8px 0;
}

/* ✅ 커스텀 도트 */
.infra-bullets li::before{
  content:"•";
  position:absolute;
  left:0;
  top:0;
  color:#091F5B;               /* 타이틀과 같은 네이비 */
  font-size:14px;
  line-height:1.6;
}

.infra-note{
  margin-top:60px;
}


/* ===============================
   INFRA 등장 애니메이션
=============================== */

/* 1) 큰 지도: 아래→위 */
.infra-map{
  opacity: 0;
  transform: translateY(60px);
  transition: opacity .9s ease, transform .9s ease;
}
.infra-map.is-visible{
  opacity: 1;
  transform: translateY(0);
}

/* 2) infra 1~4: 홀수(기본) 왼→오, 짝수(reverse) 오→왼 */
.infra-row{
  opacity: 0;
  transform: translateX(-80px);
  transition: opacity .8s ease, transform .8s ease;
}
.infra-row.reverse{
  transform: translateX(80px);
}
.infra-row.is-visible{
  opacity: 1;
  transform: translateX(0);
}

/* infra 페이지에서만 "마지막 등장" 효과 */
.infra-note{
  opacity: 0;
  transform: translateY(40px);
  transition: opacity .8s ease, transform .8s ease;
  will-change: opacity, transform;
}

.infra-note.is-visible{
  opacity: 0.55;
  transform: translateY(0);
}

/* ==================================================
   PREMIUM (seven.html) : seven(re).html 구조용
   ================================================== */

.premium-inner{
  max-width:980px;
  margin:0 auto;
  padding:0 16px 90px;
  box-sizing:border-box;
}

/* ✅ 공통 타이틀: subpage-headline은 나눔명조 */
.subpage-headline{
  font-family:"Nanum Myeongjo","나눔명조",serif;
  color:#091F5B;
}

/* 프리미엄 타이틀과 01 컨텐츠 사이 여백 */
.premium-page .premium-list{
  margin-top: 0;   
}

/* 리스트 */
.premium-list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:58px;
}

/* 한 줄 */
.premium-item{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:34px;
}

/* 짝수줄 reverse */
.premium-item.reverse{
  flex-direction:row-reverse;
}

.premium-txt{
  width:44%;
  padding-top:10px;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  gap:10px;
}

/* 01/02… */
.premium-no{
  font-family: "Abhaya Libre", serif !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important; 
  font-size:45px;
  letter-spacing:0.02em;
  color:#091F5B;
  line-height:1;
}

/* 타이틀 */
.premium-title{
  margin:0;
  font-size:25px;
  font-weight:800;
  color:#091F5B;
  font-family:"Nanum Myeongjo","나눔명조",serif;
  line-height:1.35;
}

/* 불릿 */
.premium-bullets{
  margin:0;
  padding-left:0;
  list-style:none; 
  color:#171717;
  font-size:15px;
  line-height:1.4;
}
.premium-bullets li{
  position:relative;
  padding-left:14px;  
  margin:8px 0;
}

/* ✅ 커스텀 도트 */
.premium-bullets li::before{
  content:"•";
  position:absolute;
  left:0;
  top:0;
  color:#091F5B;               /* 타이틀과 같은 네이비 */
  font-size:14px;
  line-height:1.6;
}


/* 이미지 */
.premium-media{width:56%;}
.premium-img{
  margin:0;
  position:relative;
  background:#171717;
  overflow:hidden;
  height:220px; /* 필요하면 200~260 사이로 조절 */
}
.premium-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* 이미지컷 라벨 */
.premium-img .img_tx{
  position:absolute;
  right:10px;
  bottom:10px;
  font-size:12px;
  color:rgba(255,255,255,0.95);
  text-shadow:0 0 3px rgba(0,0,0,0.55);
  line-height:1;
}

/* 프리미엄 텍스트 영역 기준선 정렬 */
.premium-page .premium-txt{
  position:relative;
  padding-left:18px;   /* ← 이 값이 전체 시작 기준 */
}

.premium-page .premium-txt::before{
  content:"";
  position:absolute;
  left:0;
  top:6px;
  width:2px;
  height:0;          /* 필요하면 40~60 조절 */
  background:#091F5B;   /* 네이비 */
  
    animation: lineReveal .6s ease-out forwards;
}

@keyframes lineReveal{
  from{
    height:0;
    opacity:0;
  }
  to{
    height:100px;               /* 기존에 쓰던 선 높이 */
   }
}

/* 프리미엄 하단 이미지 ↔ 주의문 간격 */
.premium-page .overview-note{
  margin-top: 48px;   /* 40~72px 사이로 취향 조절 */
}

/* ===============================
   PREMIUM 등장 애니메이션
=============================== */

/* 기본 상태: 안 보이게 */
.premium-item {
  opacity: 0;
  transform: translateX(-80px); /* 기본: 왼쪽에서 */
  transition: opacity .8s ease, transform .8s ease;
}

/* 짝수: 오른쪽에서 */
.premium-item.reverse {
  transform: translateX(80px);
}

/* 화면에 들어왔을 때 */
.premium-item.is-visible {
  opacity: 1;
  transform: translateX(0);
}


/* 프리미엄 페이지 주의문구: 입지환경과 동일 방식 */
.premium-note{
  opacity: 0;
  transform: translateY(40px);
  transition: opacity .8s ease, transform .8s ease;
  will-change: opacity, transform;
}

.premium-note.is-visible{
  opacity: 0.55; /* ✅ overview-note 톤과 동일하게(너가 맞춰둔 값) */
  transform: translateY(0);
}


/* ===============================
   MAP (오시는 길)
================================ */
.map-page{
  background:#EFF2F7;
}

/* ✅ overview와 동일한 폭/정렬 */
.map-inner{
  max-width:980px;
  margin:0 auto;
  padding:0 16px 120px;
  box-sizing:border-box;
}

/* 2분할 그리드 */
.map-grid{
  margin-top:10px;
  display:flex;
  gap:32px;
  align-items:flex-start;
}

.map-col{
  flex:1;
  min-width:0;
  text-align:center;
}

/* 상단 아이콘/타이틀 */
.map-card-head{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  margin-bottom:18px;
}

.pin-ico{
  width:34px;
  height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.pin-ico svg{
  width:34px;
  height:34px;
  fill:#091F5B;
  opacity:.95;
}

.map-card-title{
  font-size:18px;
  font-weight:600;
  color:#091F5B;
  margin:0;
}

.map-box {
  position: relative;
  width: 100%;
  height: 360px;
}

.root_daum_roughmap {
  width: 100% !important;
  height: 100% !important;
}

/* 카카오 지도 */
.kakao-map{
  width:100%;
  height:300px;
  background:#171717;
}

/* 우측 이미지 자리 */
.promo-slot{
  margin:0;
  width:100%;
  height:300px;
  background:#171717;
  overflow:hidden;
}
.promo-slot img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* 주소/미정 텍스트 */
.map-caption{
  margin-top:16px;
  font-size:13px;
  color:#171717;
}

/* 버튼 */
.map-btns{
  margin-top:14px;
  display:flex;
  gap:12px;
  justify-content:center;
  flex-wrap:wrap;
}

.btn-map{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  height:42px;
  padding:0 18px;
  min-width:160px;
  font-size:12px;
  font-weight:600;
  letter-spacing:0.02em;
  border:1px solid rgba(0,0,0,0.08);
  box-sizing:border-box;
}

.btn-map .arr{
  font-size:18px;
  line-height:1;
  opacity:.9;
}

.btn-map.naver{
  background:#19CE60;
  color:#fff;
}
.btn-map.kakao{
  background:#FEE500;
  color:#171717;
}

.pin-ico {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 35px;   /* 필요시 조절 */
  height: 35px;
}

.pin-ico img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}


/* ===============================
   REVEAL UP (아래→위 등장)
================================ */
.reveal-up{
  opacity: 0;
  transform: translateY(40px);
  transition: opacity .7s ease, transform .7s ease;
  will-change: opacity, transform;
}

.reveal-up.is-show{
  opacity: 1;
  transform: translateY(0);
}

/* (선택) 모션 줄이기 설정한 사용자 배려 */
@media (prefers-reduced-motion: reduce){
  .reveal-up{
    transition: none;
    opacity: 1;
    transform: none;
  }
}



.sub3_2 .inner > div{margin-top: 0;}
.sub3_2 .inner > div ul li > b{font-size: 1.3rem; line-height: 2; margin-bottom: 20px; width: 49px; height: 43px; padding-top: 7px; padding-right: 1px; background: #023b18; color: #fff; border-radius: 100px; text-align: center;}

.sub3_3 .inner > div{margin-top: 0;}
.sub3_3 .inner > div ul li{width: 49%;}
.sub3_3 .inner > div ul li{height: 565px;}


.sub4_2 .inner{text-align: center;}
.sub4_2 .inner > div > b{display: block; font-size: 2.5rem; font-weight: 300; margin-bottom: 50px;}
.sub4_2 .inner > div > ul{display: flex; justify-content: space-between; margin: 30px 0;}
.sub4_2 .inner > div > ul li{width: calc(100%/3); display: flex; flex-direction: column; align-items: center;}
.sub4_2 .inner > div > ul li img{width: 100%;}
.sub4_2 .inner > div > ul li>b{font-size: 1.5rem; font-weight: 500; margin: 10px;}
.sub4_2 .inner > div > ul li>p{font-size: 1.2rem; font-weight: 300; color: #555;}
.sub4_2 .inner > div > ul li>p span{font-size: 1rem; opacity: .7;}

.sub4_3 .inner{text-align: center; font-size: 1.4rem; font-weight: 300; color: #555;}
.sub4_3 .inner > div > b{display: block; font-size: 2.5rem; font-weight: 300; color: #000; margin-bottom: 30px;}
.sub4_3 .inner .sub4_3_slider{width: 100%; height: 600px; margin-top: 50px;}
.sub4_3 .inner .sub4_3_slider .swiper-slide{width: 100%; height: 100%;}
.sub4_3 .inner .sub4_3_slider .sub4_3_slider1{background: url(../images/sub4_3_img1.jpg) center / cover no-repeat;}
.sub4_3 .inner .sub4_3_slider .sub4_3_slider2{background: url(../images/sub4_3_img2.jpg) center / cover no-repeat;}
.sub4_3 .inner .sub4_3_slider .sub4_3_slider3{background: url(../images/sub4_3_img3.jpg) center / cover no-repeat;}

/*멤버십 혜택*/
.sub5_1 .inner{margin-bottom: 150px;}
.sub5_1 .inner > div{width: 600px; height: 600px; border-radius: 100%; border: 1px solid rgb(235, 235, 235); margin: 50px auto;}
.sub5_1 .inner > div > ul{width: 100%; height: 100%;}
.sub5_1 .inner > div > ul li{position: absolute; width: 150px; height: 150px; background: #fff; border-radius: 100%; box-shadow: rgba(73, 73, 73, 0.1) 0px 10px 20px 0px;
transition: 1s; opacity: 0;}
.sub5_1 .inner > div > ul li:nth-of-type(1){left: 50%; transform: translateX(-50%); top: -65px; transition-delay: .1s;}
.sub5_1 .inner > div > ul li:nth-of-type(2){left: -55px; top: 160px; transition-delay: .3s;}
.sub5_1 .inner > div > ul li:nth-of-type(3){right: -55px; top: 160px; transition-delay: .9s;}
.sub5_1 .inner > div > ul li:nth-of-type(4){left: 60px; bottom: -30px; transition-delay: .5s;}
.sub5_1 .inner > div > ul li:nth-of-type(5){right: 60px; bottom: -30px; transition-delay: .7s;}
.sub5_1 .inner > div > ul li > div{width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;}
.sub5_1 .inner > div > ul li p{text-align: center; font-size: 1.2rem; font-weight: 400; top: 15px;}
.sub5_1 .inner > div > p{position: absolute; left: 50%; top: 51%; transform: translate(-50%, -50%); display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center;
    width: 300px; height: 290px; background: rgb(218, 60, 33);
    border-radius: 100%; color: #fff; font-size: 2rem; font-weight: 400;
    letter-spacing: -.03rem; word-spacing: -.25rem; padding-top: 10px; line-height: 1.3; box-shadow: rgba(73, 73, 73, 0.1) 0px 10px 20px 0px; transition: 1s 1.4s; opacity: 0;}
.sub5_1 .inner > div > p span{font-size: 2.3rem; font-weight: 700; word-spacing: -.25rem;}
.sub5_1 .inner > div > span{display: block; text-align: center; color: #999; font-size: 1.2rem; margin-top: 130px; margin-bottom: 50px;}

.sub5_1.on .inner > div > ul li{opacity: 1;}
.sub5_1.on .inner > div > p{opacity: 1;}

.input_s *{box-sizing: border-box;}
.input_s{display: flex; justify-content: space-between; flex-wrap: wrap; width: 70%; margin: 0 auto;}
.input_s.pwd{display: flex; justify-content: center; flex-wrap: wrap; width: 70%; margin: 0 auto;flex-direction: column;}
.input_s > div{width: 49%; margin-bottom: 10px;}
.input_s > .agree{width: 100%;}
.input_s > div > p{font-size: 1.5rem; font-weight: 500; margin-bottom: 10px;}
.input_s > div > p::after{position: relative; left: 2px; top: -2px; content: "*"; color: rgb(218, 60, 33); font-size: 1.2rem;}
.input_s > div > .pn::after{content: "";}
.input_s input{width: 100%; height: 80px; background: transparent; border: solid 1px #0000001a; border-radius: 5px; font-size: 1.2rem; padding: 20px; font-family: 'suit'; font-weight: 300; margin-bottom: 20px;}
.input_s input::placeholder, .input_s textarea::placeholder{color: #d1d1d1;}
.input_s .contact .checkbox label{text-align: center; padding-left: 25px; left: 20px; top: 5px; font-size: 1.2rem; color: #999; line-height: 1.1;}
.input_s .contact .checkbox input{display: none;}
.input_s .contact .checkbox input:checked + label:before{border: 2px solid rgb(218, 60, 33);}
.input_s .contact .checkbox input:checked + label:after{background: rgb(218, 60, 33);}
.input_s .contact .checkbox input + label:before{content: ""; display: block; width: 15px; height: 15px; position: absolute; left: 0; border: 2px solid #ddd; border-radius: 50%;}
.input_s .contact .checkbox input + label:after{content: ""; display: block; width: 7px; height: 7px; position: absolute; left: 6px; top: 8px; background: #fff; border-radius: 50%;}
.input_s .agree{border: solid 1px #0000001a; border-radius: 5px; padding: 20px; padding-right: 15px;}
.input_s .agree_txt{width: 100%;  color: #a5a5a5; font-weight: 300; font-size: 1rem; overflow-y: scroll;}
.input_s .agree_txt b{font-weight: 400; font-size: 1.1rem; color: #5a5a5a;}
.input_s .agree_txt b::before{position: relative; content: "·";  margin-right: 2px;}
.input_s .contact{width: 100%;}
.contact_btn{width: 350px; height: 60px; line-height: 58px; background: rgb(136, 94, 69); border-radius: 20px; color: #fff; font-weight: 500; font-size: 1.2rem; text-align: center; cursor:pointer; margin: 30px auto;}
.contact_btn a{position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
.chk_alert {display:none;padding:5px 0;font-size:1.3rem;color:#0000FF}
.chk_alert.red {color:#FF0000;}
.input_s textarea{width: 100% !important; height: 150px; background: transparent; border: solid 1px #0000001a; border-radius: 5px; font-size: 1.2rem; padding: 20px; font-family: 'suit'; font-weight: 300; margin-bottom: 20px;}
.board textarea{width: 100% !important; height: 150px; background: transparent; border: solid 1px #0000001a; border-radius: 5px; font-size: 1.2rem; padding: 20px; font-family: 'suit'; font-weight: 300; margin-bottom: 20px; box-sizing: border-box;}
.readonly {border:0 !important;outline:none;}
.sub6_1 .input_s{align-items: flex-end;}
.sub6_1 .input_s.pwd{align-items: center;}
.sub6_1 .input_s > div{width: 100%;}
.sub6_1 .input_s > div:nth-child(-n+3){width: calc(100%/3.1);}
.sub6_1 .input_s textarea{height: 250px;}
.sub6_1 .input_s .contact_btn{width: 350px;}

.board ul{width: 100%; margin-bottom: 50px; border-top: 1px solid #555; font-size: 1.3rem; font-weight: 300; color: #383838;}
.board ul li{width: 100%; height: 70px; display: flex; align-items: center; justify-content: space-around; border-bottom: 1px solid #f1f1f1;}
.board ul li::after{position: relative; content: ""; width: 50px; color: #134124; font-size: 1rem; font-weight: 400;}
.board ul li.on::after{content: "답변완료";}
.board ul li > div{margin: 0 40px;}
.board ul li .b_tit{width: 40%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;}
.board ul li .b_num{font-size: 2rem; font-weight: 700; color: #dbdbdb; margin: 0 20px; width: 5%; text-align: center;}
.board ul li .b_name{width: 10%;}
.board ul li .b_icon{width: 3%; text-align: center;}
.board > p{ font-size: 1.3rem; font-weight: 300; color: #383838; padding: 50px 0 100px 0; border-bottom: 1px solid #f1f1f1;}
.paginate{display: flex; justify-content: center; align-items: center; margin-bottom: 100px;}
.paginate .b_pre{width: 35px; height: 35px; background: url(/images/icon_prev.png) center no-repeat; background-size: 15px 15px; overflow: hidden; margin-right: 20px;}
.paginate .b_next{width: 35px; height: 35px; background: url(/images/icon_next.png) center no-repeat; background-size: 15px 15px; overflow: hidden; margin-left: 20px;}
.paginate .b_paginate{width: 30px; height: 30px; color: #555; text-align: center; line-height: 30px;}
.paginate .b_paginate.on{border-radius: 100px; background: #555; color: #fff;}

.sub_qa{overflow: hidden; width: 80%; margin: 0 auto;}
.sub_qa *{box-sizing: border-box;}
.sub_qa>div:nth-of-type(1){margin: 0;}
.sub_qa .sub_q{width: 100%; height: 80px; display: flex; align-items: center; font-size: 1.5rem; font-weight: 300; color: #000; cursor: pointer; background: #f5f3f1; padding-left: 30px; border-radius: 20px; margin-top: 20px; z-index: 1;}
.sub_qa .sub_q:before{content: "▼"; position: relative; color: #000; font-size: 1rem; margin-right: 10px;}
.sub_qa .sub_a{width: 100%; display: none; padding: 80px 0 30px 30px; border: 1px solid #e7e3de; border-radius: 20px; margin-top: -50px;}
.sub_qa .sub_a p{width: 100%; background: #ffffff; font-size: 1.3rem; color:#6b6b6b;}

/*케어서비스 예약*/
.sub7_1 .inner>p{text-align: center; font-size: 2.5rem; font-weight: 300; letter-spacing: -.05rem; word-spacing: -.2rem; margin-bottom: 50px;}
.sub7_1 .inner>span{text-align: center; font-size: 1.2rem; color: #999; display: block;}
.sub7_1 .input_s select{width: 100%; height: 80px; background: transparent; border: solid 1px #0000001a; color: #7a7a7a; border-radius: 5px; font-size: 1.2rem; padding: 20px; font-family: 'suit'; font-weight: 300; margin-bottom: 20px;}
.sub7_1 .input_s select option{font-size: 1.4rem;}
.sub7_1 .input_s .contact .checkbox>div:nth-of-type(1),
.sub7_2 .input_s .contact .checkbox>div:nth-of-type(1){display: flex;}
.sub7_1 .input_s .contact .checkbox label{margin-right: 20px;}
.sub7_1 .input_s .contact .checkbox input + label:after,
.sub7_2 .input_s .contact .checkbox input + label:after{top: 6px;}

.sub7_2 .input_s{display: block; width: 100%;}
.sub7_2 .input_s > div{width: 100%;}
.sub7_2 .inner > div{display: flex; justify-content: space-between;}
.sub7_2 .inner > div > div{width: 45%;}
.sub7_2 .inner > div > div > p{text-align: center; font-size: 2.5rem; font-weight: 300; letter-spacing: -.05rem; word-spacing: -.2rem; margin-bottom: 20px;}
.sub7_2 .inner > div > div > span{position: absolute; left: 50%; transform: translateX(-50%); color: #999; font-size: 1.2rem; font-weight: 300; top: -20px;}
.sub7_2 .input_s .contact .checkbox label{margin-right: 10px; font-size: 1.1rem;}
.sub7_2 .input_s .agree_txt{height: 180px;}
.scrollb ::-webkit-scrollbar{width: 6px;}
.scrollb ::-webkit-scrollbar-track {background-color:#ffffff; border-radius: 5px;}
.scrollb ::-webkit-scrollbar-thumb {background-color: #dfdfdf; border-radius: 5px;}

.my{padding: 30px 0;}
.my > div{font-size: 1.6rem; color: #7c7c7c; font-weight: 300; text-align: center; line-height: 1.5;}
.my > ul{display: flex; width: 100%; margin: 50px 0 0 0; justify-content: space-between;}
.my > ul li{width: calc(100% / 3); height: 140px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center;font-size: 1.2rem; font-weight: 500; border-right: 1px solid #e2e2e2;}
.my > ul li:last-child{border: 0;}
.my > ul li a{position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
.my > ul li img{margin-bottom: 15px;}
.my > a{display: block; margin-top: 50px; text-align: center; color: #555; text-decoration: underline;}

.my_a{display: flex; justify-content: space-between; flex-wrap: wrap;}
.my_a *{box-sizing: border-box;}
.my_a > div{width: 49%; margin-bottom: 10px;}
.my_a > div > p{font-size: 1.5rem; font-weight: 500; margin-bottom: 10px;}
.my_a > .op input{border: solid 1px #00000013; color: #999;}
.my_a > div > input{width: 100%; background: transparent; border: solid 1px #0000003a; border-radius: 5px; font-size: 1.2rem; padding: 30px; font-family: 'suit'; font-weight: 300; margin-bottom: 20px; color: #000;}

.mypage_b{width: 1400px !important;}

.modify .inner{width: 800px;}

.myboard ul li:first-child{border-top: 1px solid #000; font-size: 1.1rem; font-weight: 600;}
.myboard ul li::after{display: none;}
.myboard ul li>div{width: calc(100% / 6); text-align: center;}
.myboard ul li.on{color: #c7c7c7;}

.hide {display:none;}
.find_id_result {font-size:1.5rem;padding:0 0 50px 0;}
.find_id_result  > div > span{font-weight:bold;}

.content_title {font-size: 1.5rem; font-weight: 500; margin-bottom: 10px;}
.content_memo {font-size:1.5rem;font-family:'suit';font-weight:300;padding:20px;box-sizing:border-box;min-height:100px;}

.pc-br {
    /* 이 요소가 PC에서 <br>처럼 작동하게 합니다. */
    display: block; 
}

/* ✅ GNB 전화번호는 항상 흰색 유지 (서브페이지 회색으로 변하는 문제 방지) */
.header-phone {
  color:#fff !important;
}

.header-phone .phone-txt{
  color:#fff !important;
}

/* ==================================================
   SUB TAB (공통: 사업개요/브랜드/입지/프리미엄/오시는길)
   - section에 .subpage-common 붙이면 동일 스타일 적용
   ================================================== */

.subpage-common{
  background:#EFF2F7;
}

/* 탭바 배경은 풀로 */
.subpage-common .sub_menu{
  width:100%;
  background:#171717;
}

/* 탭은 가운데 고정폭 */
.subpage-common .sub_menu > ul{
  max-width:980px;
  margin:0 auto;
  display:flex;
  justify-content:space-between;
  background:transparent;
}

/* 탭 개수 달라도 “각각 동일 너비” */
.subpage-common .sub_menu > ul > li{
  flex:1;
  height:56px;
  border-right:1px solid rgba(255,255,255,0.15);
}
.subpage-common .sub_menu > ul > li:last-child{border-right:none;}

/* 전역 a의 absolute 영향 제거 */
.subpage-common .sub_menu > ul > li > a{
  position:static;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  color:#fff;
  font-size:14px;
  font-weight:400;
}

/* active */
.subpage-common .sub_menu > ul > li.active{background:#091F5B;}
.subpage-common .sub_menu > ul > li.active > a{font-weight:500;}

/* 프리미엄 설명 들여쓰기 제거 */
.premium-page .premium-bullets,
.premium-page .premium-bullets li{
  padding-left:14px;
  margin-left:0;
  list-style:none;
}

/* 오시는길 컨텐츠 전체 폭(overview처럼) */
.map-inner{
  max-width: 980px;
  margin: 0 auto;
  padding: 0 16px 120px;
  box-sizing: border-box;
}


/* =========================================
   단지배치도 페이지 (siteplan-page)
   ========================================= */
.site-inner{
  max-width: 980px;
  margin: 0 auto;
  padding: 0px 20px 140px;  /* 아래 여백 크게(푸터와 간격) */
  box-sizing: border-box;
}

/* 소탭 */
.sub-tabs{
  margin: 30px 0 55px;
}

.sub-tabs ul{
  display: flex;
  width: 100%;
  border: 1px solid rgba(0,0,0,.15);
  background: #171717;          /* 이미지처럼 어두운 바 */
}

.sub-tabs li{
  flex: 1;
  border-right: 1px solid rgba(255,255,255,.15);
}

.sub-tabs li:last-child{
  border-right: 0;
}

.sub-tabs a{
  display: flex;
  align-items: center;
  justify-content: center;
  height: 54px;
  color: #fff;
  font-size: 14px;
  letter-spacing: -.02rem;
}

.sub-tabs li.active{
  background: #091F5B;          /* 활성 컬러(네이비) */
}

.sub-tabs li.active a{
  font-weight: 600;
}

/* 이미지 영역 */
.site-content{
  text-align: center;
}

.siteplan-figure{
  width: 100%;
  margin: 0 auto;
  border: 1px solid rgba(0,0,0,.08);
}

.siteplan-figure img{
  display: block;
  width: 100%;
  height: auto;
}

/* 주의문구 + 여백 */
.siteplan-note{
  margin-top: 22px;
  font-size: 12px;
  line-height: 1.6;
  color: rgba(0,0,0,.55);
  text-align: left;             /* 이미지 아래 왼쪽 정렬 */
}

/* =========================
   COMMUNITY (commu.html) - PC 레이아웃 복구
   - 왼쪽 이미지(고정폭) + 오른쪽 텍스트
   - 우측 하단 prev/next 버튼
========================= */
.community-page .community-inner{
  max-width: 1100px;      /* 다른 페이지 inner와 동일 기준 */
  margin: 0 auto;
}

.community-page .community-slider{
  position: relative;

}

/* ✅ 슬라이드 2분할 핵심 */
.community-page .community-slider .swiper-slide{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 70px;
}

/* 왼쪽 이미지 박스 */
.community-page .community-slider .swiper-slide > div:first-child{
  width: 650px;
  height: 390px;
  background: #2f2f2f;   /* 이미지 없을 때 검정 박스처럼 */
  position: relative;
  overflow: hidden;
}

/* 이미지 크기 */
.community-page .community-slider .swiper-slide > div:first-child img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* 이미지컷 라벨 */
.community-page .community-slider .img_tx{
  position: absolute;
  right: 14px;
  bottom: 12px;
  font-size: 12px;
  color: rgba(255,255,255,.6);
}

/* 오른쪽 텍스트 영역 */
.community-page .community-slider .sub2_2_tx{
  width: 320px;
}

.community-page .community-slider .sub2_2_tx b{
  display: block;
  font-size: 58px;
  line-height: 1;
  font-weight: 700;
  color: #091F5B;
  margin-bottom: 10px;
}

.community-page .community-slider .sub2_2_tx p:nth-of-type(1){
  font-size: 25px;
  font-weight: 700;
  color: #091F5B;
  margin-bottom: 10px;
}

.community-page .community-slider .sub2_2_tx p:nth-of-type(2){
  font-size: 15px;
  line-height: 1.6;
  color: #171717;
}

/* ✅ 우측 하단 버튼(스크린샷처럼) */
.community-page .community-slider .prev_next{
  position: absolute;
  left: 740px;
  bottom: 30px;
  display: flex;
  gap: 10px;
  z-index: 5;
}

.community-page .community-slider .prev_next img{
  width: 34px;
  height: 34px;
  cursor: pointer;
  display: block;
}


/* =========================
   커뮤니티(=sub2_2 슬라이드) 이미지컷 뱃지 수정
========================= */

/* 이미지+뱃지 묶는 div를 기준점으로 */
.sub2_2 .sub2_slider .swiper-slide > div:first-child{
  position: relative;
}

/* 뱃지 자체 */
.sub2_2 .sub2_slider .img_tx{
  position: absolute;
  right: 18px;
  bottom: 12px;                 /* 더 아래로 내리고 싶으면 6px~0px 쪽으로 줄이면 됨 */
  background: transparent !important;   /* ✅ 배경색 제거 */
  padding: 0 !important;        /* 배경처럼 보이던 패딩도 제거 */
  border-radius: 0 !important;
  color: #fff;                  /* 이미지 위라서 흰색 추천 */
  font-size: 14px;
  line-height: 1;
  text-shadow: 0 2px 8px rgba(0,0,0,.45); /* 배경 없이도 안 묻히게 */
}

/* [FIX] 커뮤니티 - 이미지컷 라벨 배경/여백 제거 + 위치 조절 */
.community-page .sub2_slider .swiper-slide > div:first-child{
  position: relative; /* img_tx absolute 기준 */
}

.community-page .sub2_slider .img_tx{
  background: transparent !important; /* 배경 제거 */
  padding: 0 !important;              /* 여백 제거 */
  margin: 0 !important;
  border: 0 !important;
  line-height: 1 !important;

  position: absolute !important;
  right: 18px;   /* 여기 숫자로 위치 조절 */
  bottom: 14px;  /* 여기 숫자로 위치 조절 */
  display: inline-block;
  color: rgba(255,255,255,0.85); /* 필요하면 색만 살짝 */
  font-size: 12px;
}

.sub2_2 .prev_next{ z-index: 9999 !important; }
.sub2_2 .prev_next img{ pointer-events: auto !important; }





/* 커뮤니티 타이틀 아래 간격 줄이기(슬라이더 위 여백이 원인) */
.community-page.sub2_2 .inner .sub2_slider{
  margin: 20px auto 50px !important; /* 위만 20으로 줄임(원래 50) */
}


/* =========================
   COMMUNITY (commu.html) 폰트 지정
========================= */

/* 1) 숫자: Abhaya Libre ExtraBold */
.community-page .community-slider .sub2_2_tx > b{
  font-family: "Abhaya Libre", serif !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
}

/* 2) 제목: 나눔명조 */
.community-page .community-slider .sub2_2_tx p:nth-of-type(1){
  font-family: "Nanum Myeongjo", serif !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em;
}

/* 3) 설명: Pretendard */
.community-page .community-slider .sub2_2_tx p:nth-of-type(2){
  font-family: "Pretendard", sans-serif !important;
  font-weight: 400;
}

/* ==============================
   UNIT PLAN (세대안내 > 평면안내)
============================== */
.unitplan-page{
  background:#EFF2F7;
}

.unitplan-inner{
  padding: 0px 20px 140px;
  box-sizing: border-box;
}

.unitplan-page .subpage-headline .en{
  letter-spacing: 0;
}

/* 내부 타입 탭 */
.unit-type-tabs{
  width: 100%;
  max-width: 1100px;
  margin: 34px auto 40px;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0;
  background: #C4D0E2;
  border-radius: 0;
  overflow: hidden;
}

.unit-type-tabs .type-tab{
  appearance: none;
  border: 0;
  background: transparent;
  height: 44px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  color: #0b1a33;
}

.unit-type-tabs .type-tab.active{
  background: #091F5B;
  color: #fff;
}

/* 패널 표시 */
.type-panel{ display:none; }
.type-panel.active{ display:block; }

/* 메인 2분할 */
.unit-wrap{
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 520px;
  gap: 34px;
  align-items: start;
}

/* 좌측 아이소 */
.unit-iso{
  width: 95%;
  overflow: hidden;
}
.unit-iso img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display:block;
}

/* 우측 정보패널 */
.unit-info{
  position: relative;
  background: #091F5B;
  color: #fff;
  overflow: hidden;
}


/* 헤더(타입/세대) */
.unit-info-head{
  padding: 18px 22px 14px;
}

/* 타입 + 세대 헤더 */
.unit-info-head{
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 18px 22px 14px;
}

/* 타입명 */
.unit-info-head .unit-name{
  font-size: 18px;
  font-weight: 600;
  white-space: nowrap;
}


/* 세대수 */
.unit-info-head .unit-count{
  font-size: 14px;
  opacity: 0.85;
  white-space: nowrap;
}

.unit-title .unit-name{
  display:block;
  font-size: 22px;
  font-weight: 700;
  color: #E4BB35; /* 포인트 */
}
.unit-title .unit-sub{
  display:block;
  margin-top: 6px;
  font-size: 14px;
  opacity: .9;
}

/* 스펙 리스트 */
.unit-info-body{
  padding: 20px 5px 0;
}

.unit-spec{
  margin: 0;
}
.unit-spec > div{
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 10px;
  padding: 14px 0;
  position: relative;
  border-bottom: 1px solid rgba(9,31,91,0.18);
}



.unit-spec dt{
  font-size: 16px;
  color: rgba(228,187,53,.95);
  font-weight: 700;
}

/* =========================
   평면안내(UNIT PLAN) 밑줄 방식 교체
   - 얇은선: 행(>div) bottom:0
   - 두꺼운선: 행(>div) bottom:0 위에 겹쳐서
   ========================= */

/* 행(한 줄) */
.unitplan-page .unit-spec > div{
  position: relative;
  border-bottom: 1px solid rgba(9,31,91,.22); /* 얇은선 */
}

/* ✅ 두꺼운 네이비 선: "행" 기준 bottom:0에 깔아서 얇은선과 정확히 겹치게 */
.unitplan-page .unit-spec > div::before{
  content:"";
  position:absolute;
  left: 0;
  bottom: 0;                /* 핵심: 행의 바닥선 */
  width: 120px;             /* ✅ 왼쪽 항목 칼럼 폭과 맞추기 (grid-template-columns 값에 맞춤) */
  height: 3px;
  background:#091F5B;
  z-index: 2;
}

/* ✅ 기존 dt 밑줄(떠 보이게 만드는 원인) 완전 제거 */
.unitplan-page .unit-spec dt{
  border-bottom: 0 !important;
}
.unitplan-page .unit-spec dt::after{
  content: none !important;
}



.unit-spec dd{
  margin: 0;
  font-size: 16px;
  color: rgba(255,255,255,.92);
}

/* 주의문구 */
.unit-note{
  max-width: 1100px;
  margin: 18px auto 0;
  font-size: 11px;
  line-height: 1.6;
  color: rgba(0,0,0,.55);
}

/* 우측 정보패널 전체는 화이트 */
.unit-info{
  position: relative;
  background: #EFF2F7;              
  color: #111;
  overflow: hidden;
}

/* 헤더만 네이비 */
.unit-info-head{
  position: relative;
  padding: 18px 22px 14px;
  background: #091F5B;              /* ✅ 헤더만 네이비 */
  border-bottom: 0;
}


/* 헤더 텍스트 (타입명 노란 포인트, 세대수는 흰색) */
.unit-title .unit-name{
  color: #E4BB35;
  font-size: 28px;
  font-weight: 800;
}
.unit-title .unit-sub{
  color: rgba(255,255,255,.9);
  font-size: 16px;
  margin-top: 6px;
}



/* 표 스타일: 좌측 항목은 네이비 / 우측 값은 딥그레이 */
.unit-spec > div{
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 10px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(9,31,91,.18);
}
.unit-spec dt{
  font-size: 16px;
  color: #091F5B;          /* ✅ 좌측 항목 네이비 */
  font-weight: 700;
}
.unit-spec dd{
  margin: 0;
  font-size: 16px;
  color: rgba(0,0,0,.75);   /* ✅ 우측 값은 어두운 회색 */
}


/* ✅ 평면안내(유닛) - 흰색 배경 제거 + 헤더(74타입/48세대)만 네이비 유지 + R 로고 워터마크 고정 */

/* 우측 패널 전체 배경은 페이지 BG와 동일 */
.unit-info{
  background:#EFF2F7 !important;
  color:#111 !important;
}

/* 74타입 / 48세대 부분(헤더)만 네이비 */
.unit-info-head{
  background:#091F5B !important;
  border-bottom:0 !important;
  position: relative !important;
}


/* ✅ R 로고 워터마크: "헤더(네이비 영역)" 안에만 나오게 */
.unit-info-head::after{
  content:"" !important;
  position:absolute !important;
  top: 12px !important;
  right: 10px !important;
  width: 60px !important;
  height: 95px !important;
  background-image: var(--wm) !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
  pointer-events:none !important;
}

/* 본문(면적표) 배경 흰색 제거 -> BG색 그대로 */
.unit-info-body{
  background: transparent !important; /* 또는 #EFF2F7 */
}

/* (선택) 혹시 .unit-info::after 가 남아있어서 겹치면 제거 */
.unit-info::after{
  content:none !important;
}

/* =========================
   평면안내(UNIT PLAN) 여백 조정
   ========================= */

/* kicker(평면안내)와 headline 사이 간격도 조금 줄이기 */
.unitplan-page .subpage-kicker{
  margin-bottom: 8px !important;
}
.unitplan-page .subpage-headline{
  margin-bottom: 0 !important;
}

/* 2) 내부탭 ↔ 컨텐츠(2분할) 사이 여백 줄이기 */
.unitplan-page .unit-type-tabs{
  margin: 0 auto 22px !important;  /* ✅ (위,좌우,아래) */
}

/* 3) 컨텐츠(2분할) 아래 ↔ 주의문구 간격 줄이기 */
.unitplan-page .unit-note{
  margin-top: 20px !important;     /* ✅ 기존 18~30px 정도면 줄어듦 */
}

/* =========================
   E-모델하우스
========================= */
.emodel-page .emodel-inner{
  max-width: 1100px;   /* 평면안내 느낌으로 가운데 모으기 */
  margin: 0 auto;
  padding: 0px 20px 140px;
}

.emodel-media{
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.emodel-media img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.emodel-placeholder{
  font-size: 22px;
  letter-spacing: -0.02em;
  color: #091F5B;
  font-weight: 600;
}


.emodel-page .unit-note{
  margin-top: 20px !important;
}

/* 이미지가 위에서 추가로 밀지 않게 */
.emodel-page .emodel-media{
  margin-top: 0 !important;
}

/* =========================
   QNA - 4분할 탭 (균등 + 중앙정렬)
========================= */
.sub_menu.sub_menu--four ul{
  display:flex;
}

.sub_menu.sub_menu--four ul li{
  flex:1;          /* 4개 균등 */
  float:none;      /* 기존 float 무력화 */
  position: relative;
}

/* ✅ 4분할 탭에서만 a를 정확히 중앙으로 */
.sub_menu.sub_menu--four ul li a{
  position: absolute;      /* 기존 구조 유지 */
  inset: 0;                /* top/right/bottom/left:0 */
  display: flex;           /* 중앙정렬 */
  align-items: center;     /* 세로 중앙 */
  justify-content: center; /* 가로 중앙 */
  width: 100%;
  height: 100%;
  text-align: center;
  line-height: 1.2;        /* 줄간격 리셋 (위로 뜨는 느낌 방지) */
  padding: 0 10px;         /* 긴 문구 양쪽 여백 */
  box-sizing: border-box;
  white-space: nowrap;     /* 한 줄 유지 (원하면 제거) */
}
/* =========================
   QNA - 본문
========================= */
.qna-wrap{
  max-width: 1100px;       /* ✅ 박스가 페이지 전체가 아니라 컨텐츠 폭 안에서만 */
  margin: 0 auto;
}

.qna-item{
  margin-bottom: 18px;    /* 다른 페이지 톤에 맞춘 간격 */
}

.qna-q{
  position: relative;
  background: #091F5B;
  color: #fff;
  padding: 18px 22px;
  font-family: "Nanum Myeongjo", serif;
  font-size: 24px;
  line-height: 1.4;
  letter-spacing: -0.02em;
  overflow: hidden;       /* R 워터마크 잘림 처리 */
}

/* 우측 R 워터마크 (원하면 삭제 가능) */
.qna-q::after{
  content:"";
  position:absolute;
  top: 50%;
  right: 18px;
  transform: translateY(-50%);
  width: 68px;
  height: 68px;
  background: url('/images/logo_mark_R.png') no-repeat center / contain;
  pointer-events:none;
}

.qna-a{
  padding: 12px 4px 0;
  font-size: 15px;
  line-height: 1.65;
  color: #333;
}

.qna-a .accent{
  color:#D54432; /* 기존 포인트 컬러 쓰고 있으면 거기에 맞춰 변경 */
  font-weight: 600;
}


/* 이미지가 위에서 추가로 밀지 않게 */
.qna-page .qna-wrap{
  margin-top: 0 !important;
}

.qna-page .inner{
padding: 70px 20px 140px;
}

/* =========================
   QNA ICON PART 1 (STEP) - FIX
   - 원(halo) 안에 아이콘은 작게
   - 화살표는 아이콘 중앙 라인에 고정
========================= */
.qna-icons1{
  max-width: 1100px;
  margin: 70px auto 0;
}

.qna-step{
  display:flex;
  align-items:flex-start;
  justify-content: space-between;
  gap: 0;                 /* 화살표는 absolute로 처리해서 gap 제거 */
  position: relative;
}

.qna-step > li{
  flex: 1;
  text-align: center;
  position: relative;
}

/* 아이콘 영역(원 + 아이콘) */
.step-circle{
  width: 140px;
  height: 140px;
  margin: 0 auto 14px;
  position: relative;
  display:flex;
  align-items:center;
  justify-content:center;
}

/* ✅ 연한 원(halo)은 배경으로 */
.step-circle::before{
  content:"";
  position:absolute;
  inset: 0;
  border-radius: 50%;
  background: #C4D0E2;    /* 스샷 느낌 연블루그레이 */
  z-index: 0;
}

/* ✅ 아이콘 이미지는 반드시 작게 고정 */
.step-circle img{
  position: relative;
  width: 50px !important;          /* ← 여기서 크기 조절 (56~70 추천) */
  height: auto !important;
  display:block;
}

/* 타이틀/설명 */
.step-title{
  font-size: 20px;
  font-weight: 700;
  color: #091F5B;
  margin-bottom: 10px;
}

.step-desc{
  font-size: 15px;
  line-height: 1.55;
  color: #171717;
  text-align: left;
  display: inline-block;
}

/* =========================
   화살표(>) : 아이콘 중앙 라인에 고정
   - HTML의 step-arrow li는 그대로 두되 숨기고
   - 각 항목에 ::after로 화살표를 찍음
========================= */
.qna-step .step-arrow{ display:none; }

/* 마지막 제외하고 화살표 표시 */
.qna-step > li:not(.step-arrow):not(:last-child)::after{
  content:"";
  position:absolute;
  top: 60px;
  right: -28px;
  width: 24px;
  height: 24px;
  background: url('/images/arrow_step.png') no-repeat center / contain;
  transform: translateY(-50%);
}

/* =========================
   QNA ICON PART 1 - 이미지가 바닥으로 떨어지는 현상 방지
   (전역: .sub3_1 .inner > div ul li img { position:absolute; bottom:0; } 때문)
========================= */
.qna-page .qna-icons1 .step-circle img{
  position: relative !important;
  bottom: auto !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 50px !important;   /* 원하는 크기 */
  height: auto !important;
  display: block !important;
}

/* 혹시 li에 걸린 absolute 영향까지 같이 끊고 싶으면(더 강력) */
.qna-page .qna-icons1 .qna-step > li img{
  position: relative !important;
  bottom: auto !important;
}


/* =========================
   QNA ICON PART 2 (메인 프리미엄 아이콘 느낌으로)
========================= */
.qna-page .qna-icons2{
  max-width: 1100px;
  margin: 0 auto;
}

/* ✅ 원 안 아이콘은 작게 */
.qna-page .benefit-ico img{
  width: 30%;
  height: auto;
  display: block;
}

.qna-page .benefit-title{
  font-size: 13px;
  font-weight: 700;
  color: #091F5B;
  margin: 0 0 6px 0;
}

.qna-page .benefit-desc{
  font-size: 11px;
  line-height: 1.45;
  color: #171717;
  margin: 0;
}

/* =========================
   QNA ICON PART 2 - PC(기본)
    - 다른 전역 ul/li 폭 규칙(50% 등) 무력화
========================= */
.qna-icons2 .qna-benefit{
  display: flex;
  flex-wrap: wrap;
  gap: 56px 60px;           /* 세로 / 가로 간격 */
  justify-content: center;
}

.qna-icons2 .qna-benefit li{
  flex: 0 0 calc(33.333% - 40px);  /* ✅ 3개 */
  max-width: calc(33.333% - 40px);
  text-align: center;
}

/* 메인 프리미엄 아이콘 느낌(네이비 원형 + 아이콘 작게) */
.qna-icons2 .benefit-ico{
  width: 140px;                 /* ✅ 140px 고정 */
  height: 140px;   
  border-radius: 999px;
  margin: 0 auto clamp(.8rem, 1.2vw, 1rem);
  display: grid;
  place-items: center;
  background: #091F5B;
  box-shadow: rgba(0,0,0,0.06) 0 6px 18px;
}

.qna-icons2 .benefit-ico img{
  width: 30%;                        /* ✅ 원 안 아이콘 작게 */
  height: auto;
  display: block;
}

.qna-icons2 .benefit-title{
  font-size: 20px;
  font-weight: 700;
  color: #091F5B;
  margin: 0 0 6px 0;
}

.qna-icons2 .benefit-desc{
  font-size: 15px;
  line-height: 1.45;
  color: #171717;
  margin: 0;
}


/* =========================
   QNA 비교표 섹션
========================= */
.qna-compare{
  margin: 20px auto 0;
}

.compare-head{
  text-align: center;
  margin-bottom: 18px;
}

.compare-title{
  font-family: "Nanum Myeongjo", "나눔명조", serif;
  font-size: 30px;
  font-weight: 800;
  color: #091F5B; /* 네이비 */
  line-height: 1.25;
  margin: 0 0 8px;
}

.compare-sub{
  font-family: "Pretendard", "프리텐다드", sans-serif;
  font-size: 20px;
  color: #171717;
  margin: 0;
}

/* 표 중앙 + 모바일 가로스크롤 */
.compare-table-wrap{
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding-top:20px;
  padding-bottom: 6px;
}

.compare-table{
  width: 100%;
  min-width: 980px; /* 모바일에서 표 유지(스크롤) */
  border-collapse: collapse;
  background: #fff;
}

.compare-table th,
.compare-table td{
  border: 1px solid rgba(0,0,0,0.12);
  padding: 12px 12px;
  vertical-align: middle;
  font-family: "Pretendard", "프리텐다드", sans-serif;
  font-size: 14px;
  color: #171717;
  line-height: 1.4;
  text-align: center;
  vertical-align: middle;
}

.compare-table thead th{
  background: #C4D0E2;
  color: #171717;
  font-weight: 700;
  text-align: center;
}

.compare-table .row-head{
  background: #C4D0E2;
  font-weight: 700;
  text-align: center;
  width: 140px;
  white-space: nowrap;
}

/* =========================
   비교표 - 기업형 민간임대 강조
========================= */

/* thead: 기업형 민간임대 열 (3번째 열) */
.compare-table thead th:nth-child(3){
  background: #091F5B;   /* 네이비 */
  color: #fff;
}

/* tbody: 기업형 민간임대 열 전체 */
.compare-table tbody td:nth-child(3){
  background: #091F5B;
  color: #fff;
}

/* 가독성 보정 */
.compare-table tbody td:nth-child(3) strong,
.compare-table tbody td:nth-child(3) b{
  color: #fff;
}

/* =========================
   서브페이지 콘텐츠 폭 통일: 1100
========================= */
.subpage-common .inner{
  max-width: 1100px;
  margin: 0 auto;
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
  box-sizing: border-box;
}

/* QNA 섹션들도 inner 폭(1100)을 그대로 따라가게 */
.qna-icons1,
.qna-icons2,
.qna-compare .compare-table-wrap{
  max-width: none;   /* ✅ 따로 폭 제한하지 않음 */
  width: 100%;
}

/* =========================
   공급일정 (calender)
========================= */
.calender-media{
  max-width: 1100px;   /* 필요하면 inner 기준값과 동일하게 */
  margin: 0px auto 100px;
  text-align: center;
}

.calender-media img{
  width: 100%;
  height: auto;
  display: block;
}

/* =========================
   공급안내/모집공고 - 준비중 이미지 공통
========================= */
.information-media,
.notice-media{
  max-width: 1100px;   /* 너가 맞추려는 기준 폭 */
  margin: 0px auto 100px;
  text-align: center;
}

.information-media img,
.notice-media img{
  width: 100%;
  height: auto;
  display: block;
}

/* =========================
   언론보도(new.html) 전용
   ========================= */

.press-page{
  background:#EFF2F7; /* subpage-tabs와 동일 톤 유지 :contentReference[oaicite:6]{index=6} */
}

/* floor.html의 unitplan-inner 느낌으로 하단 여백 확보 */
.press-page .press-inner{
  padding: 0px 20px 140px;
  box-sizing: border-box;
}

/* 게시판 영역 상단 여백만 살짝 정리(원하면 0으로) */
.press-page .press-board{
  margin-top: 10px;
}

/* ✅ 홍보센터 3탭 레이아웃 */
.sub_menu.sub_menu--three ul{
  display:flex;
}
.sub_menu.sub_menu--three ul li{
  flex: 1 1 33.333%;
}

/* ✅ 홍보영상 컨텐츠 영역(iframe 반응형) */
.promo-video-media{
  position: relative;
  width: 100%;
  margin-bottom:100px;
  overflow: hidden;
  border-radius: 12px; /* 필요없으면 삭제 */
  padding-top: 56.25%; /* 16:9 비율 */
}

.promo-video-media iframe,
.promo-video-media img{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  object-fit: cover;
}

/* ✅ Sub pages fade up */
.fade{
  opacity:0;
  transform: translateY(40px);
  transition: opacity .8s ease, transform .8s ease;
}
.fade.show{
  opacity:1;
  transform: translateY(0);
}
.delay-1{ transition-delay:.1s }
.delay-2{ transition-delay:.3s }

/* ===== floating register rotate FIX ===== */

@keyframes spin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

.floating-register{
  position: fixed;
}

.floating-register .rotate-text{
  position:absolute;
  inset:0;
  pointer-events:none;
  animation: spin 6s linear infinite;
  transform-origin: 50% 50%;
  will-change: transform;
}

.floating-register .rotate-text span{
  font-size:11px;
  line-height:1;
  letter-spacing:0.12em;
  white-space:pre;
  color:#fff;
}

/* =========================
   UNIT PLAN 헤더: "타입 - 선 - 세대수" (로고 없이 선만)
   ========================= */

/* 헤더 기본 */
.unitplan-page .unit-info-head{
  background:#091F5B;
  padding:18px 22px 14px;
  border-bottom:0 !important;  /* 기존 border-bottom 쓰던 것 있으면 무력화 */
}

/* 텍스트 블록이 가로폭을 꽉 쓰게 (선이 짧아지는 원인 차단) */
.unitplan-page .unit-title{
  width:100%;
}

/* 타입명 / 세대수 */
.unitplan-page .unit-title .unit-name{
  display:block;
  color:#E4BB35;
  font-size:28px;
  font-weight:800;
}
.unitplan-page .unit-title .unit-sub{
  display:block;
  color:rgba(255,255,255,0.9); /* ✅ 알파값 정상 */
  font-size:16px;
  margin-top:6px;
}

/* ✅ 핵심: 사이 선 */
.unitplan-page .unit-title .unit-sep{
  display:block;
  height:1px;
  width:100%;                       /* ✅ “항상” 헤더 폭만큼 */
  background:rgba(255,255,255,0.35);/* ✅ 알파값 정상 */
  margin:10px 0 10px;
}