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

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

.sub_top{width: 100%; height: 80vh; 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;}
}

.sub1_1 .sub_top{background: url(../images/sub1.jpg) center / cover no-repeat;}
.sub1_2 .sub_top{background: url(../images/sub1_22.jpg) center / cover no-repeat;}
.sub2_1 .sub_top{background: url(../images/sub2.jpg) center / cover no-repeat;}
.sub2_2 .sub_top{background: url(../images/sub6_1.jpg) center / cover no-repeat;}
.sub2_3 .sub_top{background: url(../images/sub2_6.jpg) center / cover no-repeat;}
.sub2_6 .sub_top{background: url(../images/sub2_6.jpg) center / cover no-repeat;}
.sub3_1 .sub_top{background: url(../images/sub3_1.jpg) center / cover no-repeat;}
.sub3_2 .sub_top{background: url(../images/sub3_2.jpg) center / cover no-repeat;}
.sub3_3 .sub_top{background: url(../images/sub2_6.jpg) center / cover no-repeat;}
.sub4_1 .sub_top{background: url(../images/sub4_1.jpg) center / cover no-repeat;}
.sub4_2 .sub_top{background: url(../images/sub4_2.jpg) 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/sub6_1.jpg) 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/sub6_1.jpg) center / cover no-repeat;}
.sub2_7 .sub_top{background: url(../images/sub2.jpg) center / cover no-repeat;}
.sub2_8 .sub_top{background: url(../images/sub2.jpg) 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;}


/* =========================================== */
/* ========== 브랜드 스토리 전용(sub1_1) ====== */
/* =========================================== */

.sub1_1 {background-color: #E5DFD7;}
.sub1_1 .inner{padding: 180px 0; background-color: #E5DFD7;}
.sub1_1 .inner > div{display: flex; justify-content: center; align-items: center;}

/* 메인 제목 */
.sub1_1 .inner > div > div:nth-of-type(1) > p{
    font-size: 3.5rem; font-weight: 700; color: #5C5445; word-spacing: -.1rem;
}

/* 왼쪽 이미지 (브랜드 첫 섹션) */
.sub1_1 .section-paradise > div:nth-of-type(1){
    width: 600px;
    height: 600px;
    background: url(../images/sub1_img1.jpg) center/cover no-repeat;
    display: flex; align-items: center; justify-content: center;
}

/* 왼쪽 이미지 (브랜드 두 번째 섹션) */
.sub1_1 .section-stay > div:nth-of-type(1){
    width: 600px;
    height: 600px;
    background: url(../images/sub1_img2.jpg) center/cover no-repeat;
    display: flex; align-items: center; justify-content: center;
}

/* 텍스트 공통 */
.sub1_1 .section-paradise > div:nth-of-type(2),
.sub1_1 .section-stay       > div:nth-of-type(2){
    width: 600px;
    margin-left: 80px;
}

.sub1_1 .section-paradise .bold{
    display: inline;   /* block → inline으로 되돌림 */
    margin: 0;         /* 여백 제거 */
    font-weight: 800;  /* 굵게 유지 */
}


.sub1_1 .section-paradise > div:nth-of-type(2) > p:nth-of-type(2){
    font-size: 2.5rem; font-weight: 800; color: #5C5445; margin-top: 10px; line-height: 1.2;
}

.sub1_1 .section-paradise > div:nth-of-type(2) > p:nth-of-type(2) span{
    font-weight: 500; font-size: 1.8rem;
}

/* 상세 본문 – 두 섹션 동일한 스타일 */
.sub1_1 .section-paradise > div:nth-of-type(2) > p:nth-of-type(3),
.sub1_1 .section-stay       > div:nth-of-type(2) > p:nth-of-type(3){
    font-size: 1.4rem;
    color: #2E2D2B;
    line-height: 1.6;
    font-weight: 400;
}

/* stay 제목 */
/* 라펫 스테이 타이틀 (첫 줄) → 파라다이스 타이틀 첫 줄과 동일 느낌 */

/* 타이틀 앞 카피 문장 – 두 섹션 동일 스타일 */
.sub1_1 .section-paradise > div:nth-of-type(2) > p:nth-of-type(1),
.sub1_1 .section-stay       > div:nth-of-type(2) > p:nth-of-type(1){
    font-size: 1.5rem;
    font-weight: 400;
    color: #5C5445;
    letter-spacing: -.03rem;
}

.sub1_1 .section-stay .stay-title{
    font-size: 2.5rem;    /* Total Luxury Pet Life City 와 동일 크기 */
    font-weight: 400;    
    color: #5C5445;
    margin-top: 0;
    line-height: 1.2;
}

.sub1_1 .section-stay .stay-title span{
    font-weight: 800;
}

/* 라펫 스테이 – 카피와 타이틀 사이 여백 줄이기 */
.sub1_1 .section-stay > div:nth-of-type(2) > p:nth-of-type(1){
    margin-bottom: 10px;   /* 기본보다 훨씬 타이트하게 (원하면 0으로도 가능) */
}

/* b 텍스트 위아래 여백 완전 통일 */
.sub1_1 .section-paradise p b,
.sub1_1 .section-stay p b {
    display: block;
    margin: 40px 0;   /* paradise 의 br과 동일한 정도 */
}


.sub1_1 .section-stay > div:nth-of-type(2){
    width: 600px;
    margin-left: 80px;
    margin-top: -30px;   /* 전체 텍스트 위로 이동 */
}


/* ====== 털로덮인친구들 상단 레이아웃 ====== */
.sub2_1 {
    background-color: #E5DFD7;
}
.sub2_1 .inner {
    padding: 160px 0;
    background-color: #E5DFD7;
}

/* 로고 + 텍스트 영역을 가로 2단으로 */
.sub2_1 .section-paradise {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    margin-top: 60px;
}

/* 왼쪽 로고 박스 */
.sub2_1 .section-paradise > div:nth-of-type(1) {
    width: 520px;
    height: 520px;
    background: url(../images/part_img1.jpg) center / cover no-repeat; /* 실제 파일명으로 수정 */
}

/* 오른쪽 텍스트 박스 */
.sub2_1 .section-paradise > div:nth-of-type(2) {
    width: 520px;
    margin-left: 80px;
}

/* 첫 번째 짧은 단락 */
.sub2_1 .section-paradise > div:nth-of-type(2) > p:nth-of-type(1) {
    font-size: 1.4rem;
    line-height: 1.6;
    color: #2E2D2B;
    font-weight:600;
    margin-bottom: 20px;
}

/* 두 번째 본문 단락 */
.sub2_1 .section-paradise > div:nth-of-type(2) > p:nth-of-type(2) {
    font-size: 1.3rem;
    line-height: 1.7;
    color: #2E2D2B;
}


/* 소개 영역 아래 여백 조금 띄우고 */
.sub2_1 .section-paradise {
    margin-top: 60px;
    margin-bottom: 80px;  /* ✨ 추가 */
}

/* 소개와 첫 번째 박스 사이 구분선 */
.sub2_1 .section-blocks.blocks-top {
    padding-top: 70px;                 /* 선과 제목 사이 여백 */
    border-top: 1px solid #C9BCA9;     /* 구분선 색상 */
}

/* ======================================= */
/* 파트너십 핵심 정보 섹션 스타일 (.section-blocks) */
/* ======================================= */

/* 상단, 하단 블록 컨테이너 공통 스타일 */
/*.sub2_1 .section-blocks {
    margin-top: 100px; /* 섹션 간 간격 */

/* 섹션 제목 스타일 + 아이콘 배치 */
.sub2_1 .block-title {
    display: inline-flex;          /* 글자 + 아이콘 한 줄로 */
    align-items: center;
    justify-content: center;
    gap: 10px;                     /* 아이콘과 글자 사이 여백 */
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    padding: 20px 0 30px;          /* 위·아래 여백 */
    margin-bottom: 40px;
    color: #5C5445;
}

/* block-title를 감싸는 컨테이너에서 가운데 정렬 */
.sub2_1 .section-blocks {
    display: flex;
    flex-direction: column;
    align-items: center;           /* 제목 중앙 정렬 */
    margin-top: 100px;
    margin-bottom: 50px;
}

/* 공통 아이콘 모양 */
.sub2_1 .block-title::before {
    content: "";
    display: inline-block;
    width: 32px;
    height: 32px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;      /* 로고 안 잘리게 */
}

/* 위쪽 타이틀 아이콘 */
.sub2_1 .top-title::before {
    background-image: url('../images/icon_title_top.png');
}

/* 아래쪽 타이틀 아이콘 */
.sub2_1 .bottom-title::before {
    background-image: url('../images/icon_title_bottom.png');
}

/* 섹션 제목 스타일 */
.sub2_1 .block-title {
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    padding-bottom: 30px;
    margin-bottom: 40px;
}
/* 이미지에서 위쪽 제목 배경색 적용 */
.sub2_1 .blocks-top .block-title {
    color:#5C5445;
    padding: 20px 0;
}
/* 이미지에서 아래쪽 제목 배경색 적용 */
.sub2_1 .blocks-bottom .block-title {
    color:#5C5445;
    
}


/* 박스들을 담는 컨테이너: Flexbox 적용 */
.sub2_1 .blocks-container {
    display: flex;
    gap: 20px; /* 박스들 사이의 간격 */
    justify-content: space-between; /* 박스들을 균등하게 배치 */
}

/* 공통 박스 스타일 */
.sub2_1 .block-item {
    padding: 30px;
    border: 1px solid #e0e0e0;
    height: auto;
    box-sizing: border-box;
}

/* 상단 3개 박스 스타일 */
.sub2_1 .blocks-top .block-item {
    width: calc(100% / 3 - 20px); /* 3개 박스를 꽉 채우도록 너비 계산 */
    background-color: #5C5445; /* 이미지 박스 배경색 */
    color: #fff;
    font-weight: 300;
    padding: 40px 30px;
}
.sub2_1 .blocks-top h3 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 15px;
    line-height: 1.6;
}
.sub2_1 .blocks-top p {
    font-size: 1rem;
    line-height: 1.6;
}

/* 하단 4개 박스 스타일 */
.sub2_1 .blocks-bottom .block-item {
    width: calc(25% - 15px); /* 4개 박스를 꽉 채우도록 너비 계산 */
    background-color: #885E45; /* 이미지 박스 배경색 */
    border: 1px solid #ddd;
    padding: 40px 30px;
    color: #fff;
}
.sub2_1 .blocks-bottom h3 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 15px;
    line-height: 1.5;
    color: #fff;
}
.sub2_1 .blocks-bottom ul {
    list-style: none;
    padding-left: 0;
}
.sub2_1 .blocks-bottom ul li {
    font-size: 1rem;
    line-height: 1.6;
    margin-top: 10px;
    position: relative;
    padding-left: 15px;
    font-weight: 300;
}
/* 리스트 항목 앞 작은 점/사각형 추가 */
.sub2_1 .blocks-bottom ul li::before {
    content: "•"; /* 리스트 마커 */
    color: #fff;
    font-weight: 700;
    position: absolute;
    left: 0;
}

.sub2_1 .section-blocks {
    display: flex; 
    flex-direction: column; /* 핵심: 제목과 박스 컨테이너를 수직으로 정렬 */
    
    margin-top: 100px; 
    margin-bottom: 50px;
}

/* 블록 내 제목 아래 이미지 공통 스타일 */
.sub2_1 .block-item .block-img {
    margin: 18px 0 22px;     /* h3와 본문 사이 적당한 간격 */
}

.sub2_1 .block-item .block-img img {
    display: block;
    width: 100%;
    height: 170px;           /* 카드 안에 맞는 고정 높이 */
    object-fit: cover;       /* 이미지 비율 유지하면서 잘 채우기 */
}


/* ========= 이미지컷 공통 스타일 ========= */
.block-img {
    position: relative;
}

.block-img .img_tx {
    position: absolute;
    right: 8px;
    bottom: 10px;
    font-size: 0.8rem;
    color: rgba(255,255,255,1);
    text-shadow: 0 0 3px rgba(0,0,0,0.55); /* 배경 없이 선명하게 보이게 */
    padding: 3px 8px;
    border-radius: 4px;
    line-height: 1;
    pointer-events: none;
}

.sub2_1_tx p:nth-of-type(1),
.sub2_1_tx span {
    display: inline-block; /* 한 줄로 */
    vertical-align: baseline; 
}

.sub2_1_tx span {
    margin-left: 6px;
    font-size: 1.1rem;
    color: #5C5445;
    opacity: 0.8;
}


/* ===========================
   중앙애견미용학원 페이지 (sub2_7)
   파트너십(sub2_1)과 동일 스타일
   =========================== */

.sub2_7 {
    background-color: #E5DFD7;
}

.sub2_7 .inner {
    padding: 160px 0;
    background-color: #E5DFD7;
}

/* 위: 로고 + 텍스트 (파트너십 상단과 동일) */
.sub2_7 .section-paradise {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    margin-top: 60px;
}

/* 왼쪽 로고 박스 */
.sub2_7 .section-paradise > div:nth-of-type(1) {
    width: 520px;
    height: 520px;
    background: url(../images/part_img2.jpg) center / cover no-repeat; /* 학원 로고 이미지 */
}

/* 오른쪽 텍스트 박스 */
.sub2_7 .section-paradise > div:nth-of-type(2) {
    width: 520px;
    margin-left: 80px;
}

/* 첫 번째 단락 */
.sub2_7 .section-paradise > div:nth-of-type(2) > p:nth-of-type(1) {
    font-size: 1.4rem;
    line-height: 1.6;
    color: #2E2D2B;
    font-weight: 600;
    margin-bottom: 20px;
}

/* 두 번째 단락 */
.sub2_7 .section-paradise > div:nth-of-type(2) > p:nth-of-type(2) {
    font-size: 1.3rem;
    line-height: 1.7;
    color: #2E2D2B;
}

/* 소개 영역 아래 여백 조금 띄우고 */
.sub2_7 .section-paradise {
    margin-top: 60px;
    margin-bottom: 80px;  /* ✨ 추가 */
}

/* 소개와 첫 번째 박스 사이 구분선 */
.sub2_7 .section-blocks.blocks-top {
    padding-top: 70px;                 /* 선과 제목 사이 여백 */
    border-top: 1px solid #C9BCA9;     /* 구분선 색상 */
}

/* ===========================
   아래 STRATEGY 박스
   디자인은 sub2_1 .blocks-top과 동일
   =========================== */

/* 중앙애견미용학원, 마이뷰티독 – 제목 앞 아이콘(가운데 정렬 + 살짝 간격) */
.sub2_7 .block-title,
.sub2_8 .block-title {
    position: relative;
    padding-left: 0;       /* 왼쪽 여백 초기화 */
    text-align: center;    /* 텍스트 전체를 가운데 정렬 */
}

/* 아이콘을 글자 바로 앞에 inline-block으로 배치 */
.sub2_7 .block-title::before,
.sub2_8 .block-title::before {
    content: "";
    display: inline-block;       /* 아이콘도 글자랑 같이 가운데 정렬되도록 */
    vertical-align: middle;
    width: 40px;
    height: 40px;
    margin-right: 8px;          /* 아이콘과 글자 사이 간격 */
    background: url('../images/icon_title_top.png') no-repeat center / contain;
}


/* 컨테이너 공통 (파트너십과 동일) */
.sub2_7 .section-blocks {
    display: flex;
    flex-direction: column;
    margin-top: 100px;
    margin-bottom: 50px;
}

.sub2_7 .block-title {
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    padding-bottom: 30px;
    margin-bottom: 40px;
    color: #5C5445;
}

.sub2_7 .blocks-container {
    display: flex;
    gap: 20px;
    justify-content: space-between;
}

/* 박스 디자인 – ‘핵심 경쟁력’ 3분할과 완전히 같게 */
.sub2_7 .blocks-top .block-item {
    background-color: #5C5445;
    color: #fff;
    font-weight: 300;
    padding: 40px 30px;
    box-sizing: border-box;

    /* 🔥 여기만 4분할 레이아웃 */
    flex: 1 1 25%;
    max-width: 25%;
}

.sub2_7 .blocks-top h3 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 15px;
    line-height: 1.3;
}

.sub2_7 .blocks-top p {
    font-size: 1rem;
    line-height: 1.6;
}

/* 아카데미 전략(STRATEGY) 이미지 스타일 */
.sub2_7 .block-item .block-img {
    margin: 18px 0 22px;
}

.sub2_7 .block-item .block-img img {
    width: 100%;
    height: 160px;
    object-fit: cover;
    display: block;
}



/* ===========================
   MY BEAUTY DOG 페이지 (sub2_8)
   상단은 털로덮인친구들/중앙애견과 동일
   =========================== */

.sub2_8 {
    background-color: #E5DFD7;
}

.sub2_8 .inner {
    padding: 160px 0;
    background-color: #E5DFD7;
}

/* 위: 로고 + 텍스트 (파트너십 상단과 동일) */
.sub2_8 .section-paradise {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    margin-top: 60px;
}

/* 왼쪽 로고 영역 – MY BEAUTY DOG 로고로 교체 */
.sub2_8 .section-paradise > div:nth-of-type(1) {
    width: 520px;
    height: 520px;
    background: url(../images/part_img3.jpg) center / cover no-repeat;
}

.sub2_8 .section-paradise > div:nth-of-type(2) {
    width: 520px;
    margin-left: 80px;
}

/* 텍스트 스타일 – 파트너십과 동일 */
.sub2_8 .section-paradise > div:nth-of-type(2) > p:nth-of-type(1) {
    font-size: 1.4rem;
    line-height: 1.6;
    color: #2E2D2B;
    font-weight: 600;
    margin-bottom: 20px;
}
.sub2_8 .section-paradise > div:nth-of-type(2) > p:nth-of-type(2),
.sub2_8 .section-paradise > div:nth-of-type(2) > p:nth-of-type(3) {
    font-size: 1.3rem;
    line-height: 1.7;
    color: #2E2D2B;
}

/* 소개 영역 아래 여백 조금 띄우고 */
.sub2_8 .section-paradise {
    margin-top: 60px;
    margin-bottom: 80px;  /* ✨ 추가 */
}

/* 소개와 첫 번째 박스 사이 구분선 */
.sub2_8 .section-blocks.blocks-bottom {
    padding-top: 70px;                 /* 선과 제목 사이 여백 */
    border-top: 1px solid #C9BCA9;     /* 구분선 색상 */
}


/* ===========================
   아래 2×3 박스 – 디자인은 .sub2_1 .blocks-bottom과 동일
   =========================== */


.sub2_8 .section-blocks {
    display: flex;
    flex-direction: column;
    margin-top: 100px;
    margin-bottom: 50px;
}

.sub2_8 .block-title {
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    padding-bottom: 30px;
    margin-bottom: 40px;
    color: #5C5445;
}

.sub2_8 .blocks-container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;          /* 가로/세로 간격 */
    justify-content: space-between;
}

/* 박스 디자인 자체는 ‘왜, 털로덮인친구들…’과 동일 */
.sub2_8 .blocks-bottom .block-item {
    background-color: #885E45;
    border: 1px solid #ddd;
    padding: 25px;
    color: #fff;
    box-sizing: border-box;

    /* 🔥 2개씩 배치 (2×3 레이아웃) */
    flex: 0 0 calc(50% - 10px);
    max-width: calc(50% - 10px);
}

.sub2_8 .blocks-bottom h3 {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 15px;
    line-height: 1.3;
    color: #fff;
}

.sub2_8 .blocks-bottom ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.sub2_8 .blocks-bottom ul li {
    font-size: 1rem;
    line-height: 1.6;
    margin-top: 10px;
    position: relative;
    padding-left: 15px;
    font-weight: 300;
}

/* 리스트 앞 점 */
.sub2_8 .blocks-bottom ul li::before {
    content: "•";
    color: #fff;
    font-weight: 700;
    position: absolute;
    left: 0;
}

/* 마이뷰티독 block-item 이미지 */
.sub2_8 .block-item .block-img {
    margin: 18px 0 0;       /* p 아래 여백 */
}

.sub2_8 .block-item .block-img img {
    width: 100%;
    height: 250px;
    object-fit: cover;
    display: block;
}






.sub2_2 .inner .sub2_slider{width: 100%; margin: 50px auto;}
.sub2_2 .inner .sub2_slider .swiper-slide{display: flex; width: 100%; justify-content: space-around; align-items: center; margin-bottom: 40px; background:#E5DFD7;}
.sub2_2 .inner .sub2_slider .swiper-slide .sub2_2_tx{width: 400px; transition: .5s .3s; top: 20px;}
.sub2_2 .inner .sub2_slider .swiper-slide img{width: 900px; height: 550px; object-fit: cover; transition: .5s; top: 20px;}
.sub2_2 .inner .sub2_slider .swiper-slide b{left: -5px; top: 0; color: #885E45; font-size: 5rem; font-weight: 900; letter-spacing: -.1rem; margin-top: -40px; display: block;}
.sub2_2 .inner .sub2_slider .swiper-slide > div > p{font-size: 1.3rem; font-weight: 300; color: #2E2D2B; line-height: 1.3;}
.sub2_2 .inner .sub2_slider .swiper-slide > div > p:nth-of-type(1){font-size: 2.2rem; font-weight: 600; letter-spacing: -.05rem; word-spacing: -.1rem; color: #5C5445; margin-bottom: 20px;}
.sub2_2 .prev_next{opacity: .3; width: 110px; height: 50px; position: absolute; bottom: 5%; right: 3%; z-index: 1;}
.sub2_2 .prev_next img{cursor: pointer; position: absolute;}
.sub2_2 .prev_next img:nth-child(2){left: 60px;}


.sub2_3 .inner ul{width: 90%; margin: 0 auto;}
.sub2_3 .inner ul li{display: flex; width: 100%; justify-content: space-around; align-items: center; margin-bottom: 100px;}
.sub2_3 .inner ul li .sub2_1_tx{width: 31%; opacity: 0; transition: .5s .3s; top: 20px;}
.sub2_3 .inner ul li>span{display: block; width: 3px; height: 0px; background: #5C5445; transition: .5s .5s;}
.sub2_3 .inner ul li img{width: 650px; height: 400px;  object-fit: cover; opacity: 0; transition: .5s; top: 20px;}
.sub2_3 .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_3.on1 .inner ul li:nth-of-type(1) span{height: 70px;}
.sub2_3.on1 .inner ul li:nth-of-type(1) div{opacity: 1; top: 0;}
.sub2_3.on1 .inner ul li:nth-of-type(1) img{opacity: 1; top: 0;}
.sub2_3.on2 .inner ul li:nth-of-type(2) span{height: 70px;}
.sub2_3.on2 .inner ul li:nth-of-type(2) div{opacity: 1; top: 0;}
.sub2_3.on2 .inner ul li:nth-of-type(2) img{opacity: 1; top: 0;}
.sub2_3.on3 .inner ul li:nth-of-type(3) span{height: 70px;}
.sub2_3.on3 .inner ul li:nth-of-type(3) div{opacity: 1; top: 0;}
.sub2_3.on3 .inner ul li:nth-of-type(3) img{opacity: 1; top: 0;}
.sub2_3.on4 .inner ul li:nth-of-type(4) span{height: 70px;}
.sub2_3.on4 .inner ul li:nth-of-type(4) div{opacity: 1; top: 0;}
.sub2_3.on4 .inner ul li:nth-of-type(4) img{opacity: 1; top: 0;}
.sub2_3.on5 .inner ul li:nth-of-type(5) span{height: 70px;}
.sub2_3.on5 .inner ul li:nth-of-type(5) div{opacity: 1; top: 0;}
.sub2_3.on5 .inner ul li:nth-of-type(5) img{opacity: 1; top: 0;}
.sub2_3.on6 .inner ul li:nth-of-type(6) span{height: 70px;}
.sub2_3.on6 .inner ul li:nth-of-type(6) div{opacity: 1; top: 0;}
.sub2_3.on6 .inner ul li:nth-of-type(6) img{opacity: 1; top: 0;}
.sub2_3.on7 .inner ul li:nth-of-type(7) span{height: 70px;}
.sub2_3.on7 .inner ul li:nth-of-type(7) div{opacity: 1; top: 0;}
.sub2_3.on7 .inner ul li:nth-of-type(7) img{opacity: 1; top: 0;}
.sub2_3.on8 .inner ul li:nth-of-type(8) span{height: 70px;}
.sub2_3.on8 .inner ul li:nth-of-type(8) div{opacity: 1; top: 0;}
.sub2_3.on8 .inner ul li:nth-of-type(8) img{opacity: 1; top: 0;}
.sub2_3.on9 .inner ul li:nth-of-type(9) span{height: 70px;}
.sub2_3.on9 .inner ul li:nth-of-type(9) div{opacity: 1; top: 0;}
.sub2_3.on9 .inner ul li:nth-of-type(9) img{opacity: 1; top: 0;}
.sub2_3.on10 .inner ul li:nth-of-type(10) span{height: 70px;}
.sub2_3.on10 .inner ul li:nth-of-type(10) div{opacity: 1; top: 0;}
.sub2_3.on10 .inner ul li:nth-of-type(10) img{opacity: 1; top: 0;}

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







/* 섹션 기본 스타일 */
.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: 50px;
  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: 2.2rem; font-weight: 600; letter-spacing: -.05rem; word-spacing: -.1rem; color: #5C5445; margin-bottom: 20px;}



/* 멤버십 혜택 상단 영역 */
.membership_benefit {
    width: 100%;
    max-width: 1200px;
    margin: 80px 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: 100px 0 100px !important; /* ← 원하는 만큼 조정 */
    line-height: 1.6;
}


/* 섹션 전체 */
.overview-table-section {
  box-sizing: border-box;
  font-family: "Noto Serif KR", serif;
  color: #5c5445;
}

/* 섹션 전체 여백만 */
.overview-table-section {
  padding: 0 0 80px;  /* 상단 배너/탭이 따로 있어서 좌우만 0, 아래만 여백 */
  box-sizing: border-box;
  font-family: "Noto Serif KR", serif;
  color: #5c5445;
}

/* ✅ 표/타이틀만 가운데 960px */
.overview-inner {
  max-width: 960px;
  margin: 40px auto 0;   /* 위쪽 여백 + 가운데 정렬 */
  padding: 0 16px;        /* 모바일에서 좌우 여백 */
  box-sizing: border-box;
}

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

.overview-subtitle {
  font-size: 14px;
  margin-bottom: 4px;
}

.overview-title {
  font-size: 28px;
  font-weight: 600;
}

/* 표 래퍼 (반응형용 가로 스크롤) */
.overview-table-wrapper {
  overflow-x: auto;
}

/* 실제 표 */
.overview-table {
  width: 100%;
  min-width: 520px; /* 너무 좁아지지 않게 최소 폭 설정 */
  border-collapse: collapse;
  table-layout: fixed;
  text-align: center;
  font-size: 14px;
}

/* 헤더 영역 */
.overview-table thead th {
  background-color: #5c5445;   /* 상단 짙은 브라운 */
  color: #ffffff;
  padding: 12px 8px;
  font-weight: 500;
}

/* 왼쪽 라벨 컬럼 헤더(비어 있는 칸) */
.overview-col-label {
  background-color: #8a806d;   /* 살짝 밝은 톤 */
}

/* 행 라벨(왼쪽 첫 컬럼) */
.overview-table tbody th {
  background-color: #b7aa94;   /* 라벨 컬럼 */
  color: #fff;
  font-weight: 500;
  padding: 10px 8px;
  width: 26%;
}

/* 데이터 셀 */
.overview-table tbody td {
  background-color: #d5cec2;   /* 내용 셀 배경 */
  padding: 10px 12px;
}

/* 행 구분선 */
.overview-table tbody tr + tr th,
.overview-table tbody tr + tr td {
  border-top: 2px solid #eee4d5;
}


/* 표 위 건물 이미지 */
.overview-img {
  margin: 40px 0;  /* 제목과 표 사이 여백 */
}

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



/* ----- Location 공통 ----- */

.location-section {
  /* 섹션은 여백 없이, 전체 폭 사용 */
  padding: 0;
  background-color: #e5dfd7; /* 페이지 배경 */
  color: #5c5445;
  font-family: "Noto Serif KR", serif;
}

/* 내용만 가운데 정렬 */
.location-inner {
  max-width: 1200px;
  margin: 60px auto 80px;  /* 위·아래 여백 + 가운데 정렬 */
  padding: 0 16px;         /* 모바일 대비 좌우 여백 */
  box-sizing: border-box;
}

/* 타이틀 (기존 sub_title 스타일과 자연스럽게 어울리도록) */
.location-inner .sub_title_1 {
  text-align: center;
  margin-bottom: 40px;
}

/* 메인 지도 이미지 */
.location-map {
  text-align: center;
  margin-bottom: 24px;
}

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

/* 한 줄 설명 */
.location-caption {
  text-align: center;
  font-size: 24px;
  margin-bottom: 50px;
  margin-top:80px;
}

/* 3컬럼 카드 영역 */
.location-feature-grid {
  display: flex;
  gap: 24px;
  margin-bottom: 32px;
  flex-wrap: wrap; /* 좁을 때 줄바꿈 */
}

/* 개별 카드 */
.location-feature {
  flex: 1 1 0;
  min-width: 0;
  background-color: #ddcfbf; /* 카드 배경 */
  padding: 24px 20px;
  box-sizing: border-box;
}

.location-feature h3 {
  font-size: 28px;
  margin-bottom: 10px;
  font-weight: 600;
  color: #5c5445;
}

.location-feature p {
  font-size: 16px;
  line-height: 1.7;
}

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



/* 지도 박스 전체 */
.map-wrap {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto 60px;
  position: relative;
}

/* 16:9 비율 박스 */
.map-wrap::before {
  content: "";
  display: block;
  padding-top: 56.25%;   /* 9 / 16 * 100 */
}

/* 실제 kakaoMap div 는 비율 박스 안을 꽉 채움 */
#kakaoMap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* 아래는 기존 주소/버튼 영역 (그대로 사용) */
.map-info-wrap {
  max-width: 1200px;
  margin: 0 auto 80px;
  padding: 0 16px;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
}

.map-info-left { flex: 1; }

.map-place-name {
  font-size: 24px;
  color: #5C5445;
  margin-bottom: 20px;
  font-weight: 600;
}

.map-address {
  font-size: 15px;
  color: #2E2D2B;
}

.map-info-right {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.btn-naver,
.btn-kakao {
  display: block;
  width: 150px;
  text-align: center;
  padding: 12px 0;
  font-size: 14px;
  font-weight: 600;
  border-radius: 2px;
  border: none;
}

.btn-naver {
  background: #00c73c;
  color: #fff;
}

.btn-kakao {
  background: #ffcd00;
  color: #3a2a00;
}



.sub3_1 .inner > ul{width: 100%; height: 300px; display: flex; justify-content: space-between; align-items: center;}
.sub3_1 .inner > ul li{width: 200px; height: 200px; color: #a3a3a3; border-radius: 50%; border: 6px solid #ececec; display: flex; align-items: center; justify-content: center; font-size: 1.3rem; font-weight: 400; transition: .5s;}
.sub3_1 .inner > ul li:after{position: absolute; content: "+"; right: -55px; font-size: 2rem;}
.sub3_1 .inner > ul li:last-child:after{content: "";}
.sub3_1 .inner > div{margin-top: 120px;}
.sub3_1 .inner > div ul{width: 100%; display: flex; flex-wrap: wrap; justify-content: space-between;}
.sub3_1 .inner > div ul li{width: 31.5%; height: 455px; margin-bottom: 100px;}
.sub3_1 .inner > div ul li > b{display: block; width: 20px; height: 3px; background: #885E45; margin-bottom: 15px; left: 5px;}
.sub3_1 .inner > div ul li > p{font-size: 1.2rem; font-weight: 400; color: #2E2D2B; left: 5px;}
.sub3_1 .inner > div ul li > p:nth-of-type(1){font-size: 1.8rem; font-weight: 600; letter-spacing: -.03rem; word-spacing: -.1rem; color: #5C5445; margin-bottom: 10px;}
.sub3_1 .inner > div ul li img{position: absolute; bottom: 0; width: 100%;}

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

/* 산책코스 - 타이틀 아래 설명 문구 */
.walking-desc {
    font-size: 1.4rem;
    color: #5C5445;
    text-align: center;
    font-weight:600;
    margin-top: 30px;     /* 타이틀과 문구 사이 */
    margin-bottom: 100px;  /* 문구와 코스 콘텐츠 사이 */
    line-height: 1.6;
}

/* 산책 코스 – 하단 3분할 갤러리 */
.walking-gallery{
    margin-top: 40px;
}

.walking-gallery-wrap{
    display: grid;
    grid-template-columns: repeat(3, 1fr);  /* PC: 3분할 */
    gap: 18px;
}

.walking-gallery-item img{
    width: 100%;
    height: auto;         /* 비율 유지 */
    display: block;
    object-fit: cover;    /* 필요하면 잘라서 채우기 */
}


.sub4_1 .inner{text-align: center; font-size: 1.4rem; font-weight: 300; color: #555;}
.sub4_1 .inner > div:nth-of-type(1) > b{display: block; font-size: 2.5rem; font-weight: 300; color: #000; margin-bottom: 30px;}
.sub4_1 .inner > div:nth-of-type(2){width: 100%; height: 600px; background: url(../images/sub4_1_img1.jpg) center / cover no-repeat; margin: 50px auto;}

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