

.pc_on{display: block;}
.mo_on{display: none;}

.row{margin-left:0; margin-right:0;}

.mo_menu{text-align: center;  display:none; background:#fef8f1; border-top:1px solid #dfa96a;}
.mo_menu ul{display: grid;  grid-template-columns: repeat(3, 1fr); }
.mo_menu li{padding:10px 0;  }
.mo_menu a{font-size: 15px; padding: 0px; color:#000;}


/* 상단 헤더 전체 영역 */
    .namoo_header {
        position: relative;
        width: 100%;
        background-color: #fef8f1; /* 메인/서브와 통일된 배경색 */
        border-bottom: 0px solid rgba(0,0,0,0.05); /* 필요시 제거 가능 */
        z-index: 1000;
    }

    .namoo_header .hd_inner {
        max-width: 1465px;
        margin: 0 auto;
        height: 100px; /* 헤더 높이 */
        padding: 0 0px;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    /* 1. 좌측 로고 */
    .namoo_header .logo {
        margin: 0;
        display: flex;
        align-items: center;
    }
    
    .namoo_header .logo img {
        height: 60px; /* 시안에 맞게 로고 크기 조절 */
        width: auto;
    }

    /* 2. 중앙 GNB (PC 메뉴) */
    .namoo_header .gnb_wrap {
        flex: 1;
        display: flex;
        justify-content: center; /* 메뉴 중앙 정렬 */
    }

    .namoo_header .gnb_list {
        display: flex;
        gap: 60px; /* 1차 메뉴 사이 간격 */
        list-style: none;
        margin: 0 0 0 -65px;
        padding: 0;
    }

    .namoo_header .gnb_1depth {
        position: relative;
    }

    .namoo_header .gnb_1depth_link {
        display: block;
        font-size: 18px;
        color: #333;
        font-weight: 500;
        text-decoration: none;
        line-height: 100px; /* 헤더 높이와 맞춰서 수직 중앙 정렬 */
        transition: color 0.3s;
    }

    .namoo_header .gnb_1depth_link:hover {
        color: #d4a469; /* 마우스 오버 시 포인트 컬러 */
    }

    /* 2차 서브 메뉴 (필요할 경우를 대비한 기본 스타일) */
    .namoo_header .gnb_2depth {
        display: none;
        position: absolute;
        top: 80px;
        left: 50%;
        transform: translateX(-50%);
        background: #fff;
        border: 1px solid #eee;
        border-radius: 10px;
        padding: 15px 0;
        min-width: 160px;
        text-align: center;
        box-shadow: 0 10px 20px rgba(0,0,0,0.05);
        list-style: none;
    }

    .namoo_header .gnb_1depth:hover .gnb_2depth {
        display: block;
    }

    .namoo_header .gnb_2depth li a {
        display: block;
        padding: 10px 20px;
        color: #555;
        font-size: 15px;
        text-decoration: none;
    }

    .namoo_header .gnb_2depth li a:hover {
        background-color: #fef8f1;
        color: #d4a469;
    }

    /* 3. 우측 버튼 영역 */
    .namoo_header .hd_btn_wrap .btn_booknow {
        display: inline-block;
        background-color: #dfa96a; /* 시안 버튼 컬러 */
        color: #fff;
        padding: 12px 35px;
        border-radius: 30px;
        font-size: 16px;
        font-weight: 500;
        text-decoration: none; 
        transition: opacity 0.3s;
    }

    .namoo_header .hd_btn_wrap .btn_booknow:hover {
        opacity: 0.8;
    }

/* 첫 번째 메인 영역 스타일 */
    .main_sec_01 {
        position: relative;
        width: 100%;
        height: 100vh; /* 화면에 꽉 차게 설정 */
        overflow: hidden;
    }
    
    .main_sec_01 .bg_wrap {
        position: absolute;
        top: 0; left: 0;
        width: 100%; height: 100%;
        z-index: 1;
    }
    
    .main_sec_01 .bg_wrap img {
        width: 100%; height: 100%;
        object-fit: cover; /* 이미지가 비율 유지하며 꽉 차게 */
    }
    
    .main_sec_01 .txt_wrap {
        position: absolute;
        top: 50%; left: 50%;
        transform: translate(-50%, -50%);
        text-align: center;
        width: 100%;
        padding: 0 20px;
        box-sizing: border-box;
        z-index: 2;
    }
    
    .main_sec_01 .txt_wrap h2 {
        font-size: 70px;
        color: #fdecd7; /* 이미지에 맞춘 베이지톤 */
        font-weight: 300;
        margin-bottom: 30px;
        letter-spacing: -0.02em;
    }
    
    .main_sec_01 .txt_wrap p {
        font-size: 25px;
        color: #fdecd7;
        line-height: 1.8;
        font-weight: 300; 
        word-break: keep-all;
    }

    /* 두 번째 메인 영역 스타일 */
    .main_sec_02 {
        position: relative;
        width: 100%;
        padding: 130px 0;
        overflow: hidden;
    }

    /* 배경 이미지 */
    .main_sec_02 .bg_wrap {
        position: absolute;
        top: 0; left: 0;
        width: 100%; height: 100%;
        z-index: -1;
    }
    .main_sec_02 .bg_wrap img {
        width: 100%; height: 100%;
        object-fit: cover;
    }

    .main_sec_02 .inner { 
        margin: 0 auto;
        padding: 0 20px;
    }

    /* 텍스트 영역 (PC: 양쪽 정렬) */
    .main_sec_02 .txt_area {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
           margin: 0 auto 80px;
        max-width:1455px;
    }

    .main_sec_02 .txt_area h2 {
        font-size: 50px;
        color: #204f4b; /* 짙은 녹색 */
        line-height: 1.3;
        font-weight: 300;
        letter-spacing: -0.02em;
    }

    .main_sec_02 .txt_area p {
        font-size: 20px;
        color: #204f4b;
        line-height: 1.6;
        text-align: left;
        word-break: keep-all;
    }

    /* 아이콘 리스트 영역 */
    .main_sec_02 .list_wrap {
        display: flex;
        justify-content: space-between;
        gap: 20px;
            max-width: 1700px;
    margin: auto;
    }

    .main_sec_02 .item {
        text-align: center;
        flex: 1;
    }

    .main_sec_02 .item .img_box {
            width: 274px;
    height: 274px;
        margin: 0 auto 20px;
        border-radius: 50%;
        overflow: hidden;
        box-shadow: 0 5px 15px rgba(0,0,0,0.1);
    }

    .main_sec_02 .item .img_box img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.3s;
    }
    
    .main_sec_02 .item:hover .img_box img {
        transform: scale(1.05); /* 마우스 오버 시 살짝 확대 효과 */
    }

    .main_sec_02 .item .tag {
        font-size: 20px;
        color: #204f4b;
        font-weight: 500;
    }

    /* 3번째 메인 영역 스타일 */
    .main_sec_03 {
        position: relative;
        width: 100%;
        padding: 100px 0 120px;
        background-color: #fef8f1; /* 하단 바탕색 */
        text-align: center;
        z-index: 1;
    }
    
    /* 상단 배경 이미지 */
    .main_sec_03 .bg_wrap {
        position: absolute;
        top: 0; left: 0;
        width: 100%; height: 42%; /* 이미지 영역 높이 조절 */
        background-image: url('../img/main3bg.jpg');
        background-size: cover;
        background-position: center;
        z-index: -1;
    }

.main_sec_03 .top_title {
        position: relative;
        font-size:40px;
        color: #fdecd7; /* 시안에 맞춘 골드/베이지 톤 */
        font-weight: 300;
        margin-bottom: 80px;
        z-index: 2;
        letter-spacing: -0.02em;
    }

    /* 스와이퍼 영역 */
.main_sec_03 .slide_wrap{position: relative; max-width: 1250px; margin:auto;}
    .main_sec_03 .swiper-container {
        max-width: 1060px;
        margin: 0 auto;
        position: relative;
        border-radius: 20px;
        overflow: hidden;
        box-shadow: 0 10px 30px rgba(0,0,0,0.3);
    }
    
    .main_sec_03 .swiper-slide img {
        width: 100%;
        display: block;
        border-radius: 20px;
    }
    
    /* 스와이퍼 네비게이션 버튼 (PC 전용) - 수정됨 */
.main_sec_03 .swiper-button-next,
.main_sec_03 .swiper-button-prev {
    width: 50px;
    height: 50px;
    border: 1px solid rgba(255,255,255,0.8);
    border-radius: 50%;
    background: rgba(0,0,0,0.3);
    cursor: pointer;
    display: flex; /* SVG 아이콘 정중앙 배치 */
    align-items: center;
    justify-content: center;
    transition: background-color 0.3s ease;
}

/* 호버 시 배경색 변경 (선택 사항) */
.main_sec_03 .swiper-button-next:hover,
.main_sec_03 .swiper-button-prev:hover {
    background: rgba(255,255,255,0.1); /* 테두리처럼 흰색 톤으로 살짝 밝게 */
}

/* Swiper 기본 Unicode 화살표 제거 */
.main_sec_03 .swiper-button-next:after,
.main_sec_03 .swiper-button-prev:after {
    content: none;
}

/* 시안 속 얇은 선 SVG 꺽쇠 대신, 더 명확한 화살표 SVG로 변경 */
.main_sec_03 .swiper-button-prev:before {
    content: '';
    display: block;
    width: 24px; /* 아이콘 크기 */
    height: 24px;
    /* Heroicons arrow-left 흰색 */
    background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="white" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M10.5 19.5 3 12m0 0 7.5-7.5M3 12h18" /></svg>');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.main_sec_03 .swiper-button-next:before {
    content: '';
    display: block;
    width: 24px; /* 아이콘 크기 */
    height: 24px;
    /* Heroicons arrow-right 흰색 */
    background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="white" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="m13.5 4.5 7.5 7.5-7.5 7.5M3 12h18" /></svg>');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
    /* 텍스트 영역 */
    .main_sec_03 .txt_wrap {
        margin-top: 120px;
    }
    
    .main_sec_03 .txt_wrap h2 {
        font-size: 45px;
        color: #204f4b;
        font-weight: 300;
        margin-bottom: 30px;
        letter-spacing: -0.02em;
    }
    
    .main_sec_03 .txt_wrap p {
        font-size: 20px;
        color: #204f4b;
        line-height: 1.8;
    }

    /* 버튼 영역 */
    .main_sec_03 .btn_wrap {
        margin-top: 50px;
        display: flex;
        justify-content: center;
        gap: 15px;
    }
    
    .main_sec_03 .btn_wrap a {
        display: inline-block;
        padding: 14px 45px;
        border-radius: 30px;
        font-size: 18px;
        font-weight: 500;
        text-decoration: none;
        color: #fff;
        transition: 0.3s;
    }
    
    .main_sec_03 .btn_wrap a.btn_orange { background-color: #d4a469; }
    .main_sec_03 .btn_wrap a.btn_green { background-color: #204f4b; }


/* 4번째 메인 영역 스타일 */
    .main_sec_04 {
        position: relative;
        width: 100%;
        overflow: hidden;
    }
    
    /* 이미지가 높이를 결정하도록 설정 */
    .main_sec_04 .bg_wrap {
        width: 100%;
        font-size: 0; /* 이미지 하단 여백 제거 */
    }
    
    .main_sec_04 .bg_wrap img {
        width: 100%;
        height: auto;
        display: block;
    }

    /* 텍스트 중앙 배치 */
    .main_sec_04 .txt_wrap {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        text-align: center;
        color: #fff;
        padding: 0 20px;
        box-sizing: border-box;
        z-index: 2;
    }
    
    .main_sec_04 .txt_wrap h2 {
        font-size: 50px;
        font-weight: 300;
        margin-bottom: 30px;
        line-height: 1.3;
        letter-spacing: -0.02em;
    }
    
    .main_sec_04 .txt_wrap p {
        font-size: 18px;
        line-height: 1.6;
        margin-bottom: 60px; 
        word-break: keep-all;
    }
    
    /* 문의하기 버튼 */
    .main_sec_04 .btn_inquiry {
        display: inline-block;
        padding: 12px 40px;
        border: 1px solid #fff;
        border-radius: 30px;
        color: #fff;
        font-size: 18px;
        text-decoration: none;
        transition: background-color 0.3s, color 0.3s;
    }
    
    .main_sec_04 .btn_inquiry:hover {
        background-color: #fff;
        color: #000;
    }
    

/* About 첫 번째 영역 */
    .about_sec_01 {
        position: relative;
        width: 100%;
        overflow: hidden;
    }
    
    /* 이미지 높이에 맞추기 */
    .about_sec_01 .bg_wrap {
        width: 100%;
        font-size: 0; 
    }
    .about_sec_01 .bg_wrap img {
        width: 100%;
        height: auto;
        display: block;
    }

    /* 텍스트 중앙 정렬 */
    .about_sec_01 .txt_wrap {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        text-align: center;
        color: #fff;
        padding: 0 20px;
        box-sizing: border-box;
        z-index: 2;
    }
    
    .about_sec_01 .txt_wrap h2 {
        font-size:50px;
        font-weight: 500;
        letter-spacing: 0.05em;
        margin: 0;
    }
/* About 두 번째 영역 */
    .about_sec_02 {
        background-color: #fef8f1;
        padding: 100px 20px;
        color: #204f4b; /* 요청한 푸터 폰트 컬러 적용 */
    }

    .about_sec_02 .inner {
        max-width: 1465px;
        margin: 0 auto;
    }

    .about_sec_02 h2 {
        font-size: 40px;
        font-weight: 500;
        margin-bottom: 60px;
        letter-spacing: -0.02em;
    }

    /* PC 2단 배열 (Flex 활용) */
    .about_sec_02 .txt_wrap {
        display: flex;
        gap: 40px; /* 좌우 단 간격 */
    }

    .about_sec_02 .col {
        flex: 1;
        display: flex;
        flex-direction: column;
        gap: 40px; /* 상하 문단 간격 */
            padding-left: 0;
    padding-right: 0;
    }

    .about_sec_02 .col p {
        margin: 0;
        font-size: 20px;
        line-height: 1.8;
        word-break: keep-all;
    }

/* About 세 번째 영역 (첫 번째 영역과 동일 사양) */
    .about_sec_03 {
        position: relative;
        width: 100%;
        overflow: hidden;
    }
    
    /* 이미지 높이에 맞추기 */
    .about_sec_03 .bg_wrap {
        width: 100%;
        font-size: 0; 
    }
    .about_sec_03 .bg_wrap img {
        width: 100%;
        height: auto;
        display: block;
    }

    /* 텍스트 중앙 정렬 */
    .about_sec_03 .txt_wrap {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        text-align: center;
        color: #fff;
        padding: 0 20px;
        box-sizing: border-box;
        z-index: 2;
    }
    
    .about_sec_03 .txt_wrap h2 {
        font-size:65px;
        font-weight: 500; 
        text-transform: uppercase; /* 대문자 변환 */
        margin: 0;
        line-height: 1.2;
    }
.about_sec_03 .txt_wrap p {
        font-size: 30px;
        font-weight: 300;
        margin-top: 20px;
        line-height: 1.6;
        word-break: keep-all; 
    }

/* About 4번째 영역 */
    .about_sec_04 {
        position: relative;
        width: 100%;
        padding: 100px 20px 120px;
        background-color: #fef8f1;
        color: #204f4b;
        z-index: 1;
    }

    .about_sec_04::before {
        content: '';
        position: absolute;
        bottom: 0; left: 0;
        width: 100%; height: 33%;
        background-color: #fceddb;
        z-index: -1;
    }

    .about_sec_04 .inner {
        max-width: 1456px;
        margin: 0 auto;
    }

    /* 상단 타이틀 영역 */
    .about_sec_04 .top_header {
        text-align: center;
        margin-bottom: 120px;
    }

    .about_sec_04 .top_header h2 {
        font-size: 42px;
        font-weight: 500;
        margin-bottom: 30px;
        letter-spacing: -0.02em;
    }

    .about_sec_04 .top_header p {
        font-size: 25px;
        color: #1a4a38;
        margin-bottom: 55px;
    }

    /* 링크 버튼 */
    .about_sec_04 .btn_wrap {
        display: flex;
        justify-content: center;
        gap: 15px;
    }
    
    .about_sec_04 .btn_wrap a {
        display: inline-block;
        padding: 12px 35px;
        border-radius: 30px;
        font-size: 18px;
        font-weight: 500;
        text-decoration: none;
        color: #fff;
        transition: 0.3s;
    }
    .about_sec_04 .btn_wrap a.btn_orange { background-color: #d4a469; }
    .about_sec_04 .btn_wrap a.btn_green { background-color: #004d40; }

    /* --- 수정된 그룹 레이아웃 (Flex) --- */
    .about_sec_04 .content_wrap {
        display: flex;
        flex-direction: column;
        gap: 80px; /* 상/하단 그룹 간격 */
    }

    .about_sec_04 .row {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
    }

.about_sec_04 .row_bottom{ flex-direction: column;    gap: 70px;
    margin: -300px 0 0 0;}

    /* 상단 행 (1,2번 + 세로 이미지) */
    .about_sec_04 .row_top .txt_box { width: 62%; display: flex; gap: 40px; }
    .about_sec_04 .row_top .img_box { /*width: 33%;*/ }

    /* 하단 행 (가로 이미지 + 3,4번) */
    .about_sec_04 .row_bottom .img_box { /*width: 45%;*/ }
    .about_sec_04 .row_bottom .txt_box { width: 100%; display: flex; gap: 40px;     max-width: 960px; margin: auto;}

    /* 텍스트 아이템 공통 */
    .about_sec_04 .item {
        flex: 1;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    .about_sec_04 .item .num {
        display: inline-block;
        width: 60px; height: 60px;
        line-height:60px;
        text-align: center;
        background-color: #d4a469;
        color: #fff;
        border-radius: 50%;
        font-weight: 400;
        font-size: 25px;
        margin-bottom: 20px;
    }

    .about_sec_04 .item h3 {
        font-size: 42px;
        font-weight: 500;
        line-height: 1.3;
        margin-bottom: 15px;
        letter-spacing: -0.02em;
    }

    .about_sec_04 .item p {
        font-size: 20px; 
        line-height: 1.6;
        word-break: keep-all;
    }

    /* 이미지 영역 공통 */
    .about_sec_04 .img_box {
        border-radius: 16px;
        overflow: hidden;
        box-shadow: 0 10px 30px rgba(0,0,0,0.08);
    }
    
    .about_sec_04 .img_box img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    .about_sec_04 .img_tall img { /*aspect-ratio: 3/4;*/ }
    .about_sec_04 .img_wide img { /*aspect-ratio: 16/10;*/ }

/* About 5번째 영역 (마지막) */
    .about_sec_05 {
        width: 100%;
        padding: 120px 20px;
        background-color: #fef8f1; /* 공통 배경색 */
        text-align: center;
        color: #204f4b;
    }

    .about_sec_05 h2 {
        font-size: 60px;
        font-weight: 500;
        margin-bottom: 30px;
        letter-spacing: -0.02em;
    }

    .about_sec_05 p {
        font-size: 25px;
        line-height: 1.8;
        word-break: keep-all;
    }
 
    /* 서브 페이지 상단 공통 스타일 (일본/중국 틀 같음) */
    .sub_top_wrap {
        position: relative;
        width: 100%;
        overflow: hidden;
    }
    
    .sub_top_wrap .bg_wrap {
        width: 100%;
        font-size: 0; 
    }
    
    .sub_top_wrap .bg_wrap img {
        width: 100%;
        height: auto;
        display: block;
    }

    .sub_top_wrap .txt_wrap {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        text-align: center;
        color: #fff;
        padding: 0 20px;
        box-sizing: border-box;
        z-index: 2;
    }
    
    /* 서브 타이틀 (일본골프) */
    .sub_top_wrap .txt_wrap h2 {
        font-size: 35px;
        font-weight: 300;
        margin-bottom: 15px;
        letter-spacing: 0.05em;
    }

    /* 메인 타이틀 */
    .sub_top_wrap .txt_wrap h3 {
        font-size: 50px;
        font-weight: 300;
        margin-bottom: 25px;
        line-height: 1.3;
        letter-spacing: -0.02em;
    }
    
    /* 본문 설명 */
    .sub_top_wrap .txt_wrap p {
        font-size:25px;
        font-weight: 300;
        line-height: 1.6;
        opacity: 0.9;
    }

/* 일본골프 두 번째 영역 */
    .sub_sec_japan_02 {
        background-color: #fef8f1; /* 배경색 */
        padding: 100px 20px 120px;
        color: #204f4b;
        position: relative;
        z-index: 10; /* 상단 영역 위로 올라오도록 z-index 설정 */
    }

    .sub_sec_japan_02 .inner {
        max-width: 1460px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 50px;
    }

    /* 좌측 텍스트 영역 */
    .sub_sec_japan_02 .txt_wrap {
        flex: 1; 
    }

    .sub_sec_japan_02 .txt_wrap h2 {
        font-size: 50px;
        font-weight: 400;
        line-height: 1.3;
        margin-bottom: 40px;
        letter-spacing: -0.02em;
    }

    .sub_sec_japan_02 .txt_wrap p {
        font-size: 20px; 
        line-height: 1.8;
        margin-bottom: 30px;
        word-break: keep-all;
    }

    /* 우측 이미지 그룹 영역 */
    .sub_sec_japan_02 .img_group {
        display: flex;
        align-items: flex-start;
        gap: 45px;
        width: 55%; /* 이미지 영역 전체 너비 */
    }

    .sub_sec_japan_02 .img_box {
        border-radius: 16px;
        overflow: hidden;
        box-shadow: 0 15px 30px rgba(0,0,0,0.1);
    }
    
    .sub_sec_japan_02 .img_box img {
        width: 100%;
        display: block;
        object-fit: cover;
    }

    /* 좌측 작은 이미지 */
    .sub_sec_japan_02 .img_box.small {
        max-width:314px; width:100%;margin-top: 105px;
    }
    
    /* 우측 큰 이미지 (위로 올라타는 효과) */
    .sub_sec_japan_02 .img_box.large {
        max-width:471px;
        width: 100%;
        margin-top: -220px; /* 이전 영역 위로 겹치도록 음수 마진 */
    }

/* 서브 페이지 카드 리스트 영역 */
    .sub_sec_card_list {
        background-color: #fef8f1; /* 상단 영역과 이어지는 배경색 */
        padding: 0 20px 120px; /* 상단 여백은 이전 영역에서 주므로 0으로 설정 */
    }

    .sub_sec_card_list .inner {
        max-width: 1460px;
        margin: 0 auto;
    }

    /* 카드 컨테이너 (Flex를 이용한 자동 중앙 정렬) */
    .sub_sec_card_list .card_wrap {
        display: flex;
        flex-wrap: wrap;
        justify-content: center; /* 5개일 때 하단 2개 중앙 정렬을 위한 핵심 속성 */
        gap: 30px; /* 카드 사이 간격 */
    }

    /* 개별 카드 스타일 */
    .sub_sec_card_list .card2 {
        background-color: #fff;
        border-radius: 20px;
        padding: 24px 24px;
        /* PC: 3단 배열 (간격 30px * 2개를 뺀 나머지를 3등분) */
        width: calc((100% - 60px) / 3); 
        box-sizing: border-box;
        box-shadow: 0 10px 30px rgba(0,0,0,0.02);
    }

    .sub_sec_card_list .card2 h4 {
        font-size: 30px;
        font-weight: 500;
        color: #204f4b; /* 포인트 그린 컬러 */
        margin-bottom: 25px;
    }

    .sub_sec_card_list .card2 ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .sub_sec_card_list .card2 li {
        font-size: 15px;
        color: #666;
        line-height: 1.6;
        margin-bottom: 12px;
        word-break: keep-all;
    }

    .sub_sec_card_list .card2 li:last-child {
        margin-bottom: 0;
    }


/* 서브 페이지 마지막 문의 영역 */
    .sub_sec_inquiry {
        background-color: #fef8f1;
        text-align: center;
        padding: 40px 20px 120px;
        color: #204f4b;
    }

.sub_sec_inquiry2 {    padding: 120px 20px 140px;}

    .sub_sec_inquiry h2 {
        font-size: 45px;
        font-weight: 300;
        margin-bottom: 40px;
        letter-spacing: -0.02em;
    }

    .sub_sec_inquiry p {
        font-size: 20px;
        line-height: 1.8;
        margin-bottom: 30px;
        word-break: keep-all;
    }

    .sub_sec_inquiry p:last-of-type {
        margin-bottom: 50px;
    }

    /* 문의하기 버튼 (지정 컬러 적용) */
    .sub_sec_inquiry .btn_inquiry {
        display: inline-block;
        padding: 14px 50px;
        background-color: #d4a469; 
        color: #fff;
        border-radius: 30px;
        font-size: 18px;
        font-weight: 500;
        text-decoration: none;
        transition: opacity 0.3s;
    }

    .sub_sec_inquiry .btn_inquiry:hover {
        opacity: 0.8;
    }


/* 지역별 상세 컨설팅 전체 영역 */
    .sub_sec_region {
        width: 100%;
    }

    /* 각 행 단위 (패딩 조절) */
    .sub_sec_region .region_row {
        padding: 100px 20px;
    }

    /* 배경 컬러 교차 클래스 */
    .sub_sec_region .region_row.bg_dark { background-color: #fceddb; } /* 진한 베이지 */
    .sub_sec_region .region_row.bg_light { background-color: #fef8f1; } /* 연한 베이지 (기존) */

    .sub_sec_region .inner {
        max-width: 1465px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: flex-end; /* 양쪽 수직 중앙 정렬 */
        gap: 60px;
    }

    /* 텍스트 영역 */
    .sub_sec_region .txt_wrap {
        width: 45%;
    }

    /* 태그 (초록색 둥근 버튼 형태) */
    .sub_sec_region .txt_wrap .tag {
        display: inline-block;
        background-color: #004d40;
        color: #fff;
        padding: 8px 24px;
        border-radius: 30px;
        font-size: 22px;
        font-weight: 500;
        margin-bottom: 25px;
    }

    .sub_sec_region .txt_wrap h3 {
        font-size: 35px;
        font-weight: 400;
        color: #204f4b;
        margin-bottom: 35px;
        letter-spacing: -0.02em;
    }

    /* 하얀색 정보 박스 */
    .sub_sec_region .info_box {
        background-color: #fff;
        border-radius: 16px;
        padding: 25px 30px;
        margin-bottom: 15px;
        box-shadow: 0 10px 20px rgba(0,0,0,0.02); /* 은은한 그림자 */
    }

    .sub_sec_region .info_box:last-child {
        margin-bottom: 0;
    }

    .sub_sec_region .info_box p {
        font-size: 16px; 
        line-height: 1.6;
        margin: 0;
        word-break: keep-all;
        color:#004d40;
    }

    /* 이미지 영역 */
    .sub_sec_region .img_wrap {
        width: 50%;
        border-radius: 20px;
        overflow: hidden;
        box-shadow: 0 15px 30px rgba(0,0,0,0.05);
    }

    .sub_sec_region .img_wrap img {
        width: 100%;
        display: block;
        object-fit: cover;
    }


/* 시즌별 골프 영역 */
    .sub_sec_season {
        background-color: #fef8f1;
        padding: 0 0 120px;
        overflow: hidden;
        
    }

.sub_sec_season .inner{max-width:1565px; margin:auto;    overflow: hidden; position: relative;}

    /* 좌측 여백을 컨텐츠 최대 너비(1465px)에 맞추고 우측은 여백만 줌 */
    .sub_sec_season .swiper-container {
        /*width: 100%;
        padding-left: max(20px, calc((100% - 1465px) / 2));
        padding-right: 20px;*/
        
        width: 90%;
    margin: auto;
    overflow: hidden;
    }

    .sub_sec_season .swiper-slide {
        display: flex;
        flex-direction: column;
        height: auto;
    }




.seasonSwiper {
        position: relative; 
    }

    .season-prev, .season-next {
        display: flex !important;
        width: 50px !important;
        height: 50px !important;
        background-color: #d19e66 !important; /* 이미지의 원형 배경색 */
        border-radius: 50%;
        top: 50%;
        transform: translateY(-50%);
        margin-top: 0;
        z-index: 10;
    }

    /* 기본 Swiper 아이콘 제거 */
    .season-prev::after, .season-next::after {
        display: none;
    }

    /* CSS로 화살표(->) 그리기 */
    .season-prev::before, .season-next::before {
        content: '';
        position: absolute;
        width: 12px;
        height: 12px;
        border-top:2px solid #fff;
        border-right: 2px solid #fff;
    }

    /* 왼쪽 화살표 방향 및 직선 */
    .season-prev { left: 0px !important; }
    .season-prev::before {
        transform: rotate(-135deg);
        left: 17px;
    }
    
    /* 오른쪽 화살표 방향 및 직선 */
    .season-next { right: 0px !important; }
    .season-next::before {
        transform: rotate(45deg);
        right: 17px;
    }

    /* 화살표의 몸통 선(줄) 추가 */
    .season-prev::after, .season-next::after {
        display: block !important;
        content: '';
        position: absolute;
        width: 18px;
        height: 2px;
        background-color: #fff;    font-size: 0 !important;
    }




    /* 상단 태그 및 제목 */
    .sub_sec_season .top_info {
        display: flex;
        align-items: flex-start;
          flex-direction: column;
        gap: 15px;
        margin-bottom: 30px;
    }

    .sub_sec_season .top_info .tag {
        background-color: #004d40;
        color: #fff;
        padding: 6px 18px;
        border-radius: 20px;
        font-size: 16px;
        font-weight: 300;
        text-transform: uppercase;
    }

    .sub_sec_season .top_info h3 {
        font-size:30px;
        color: #204f4b;
        font-weight: 500;
        margin: 0;
    }

    /* 이미지 박스 */
    .sub_sec_season .img_box {
        border-radius: 16px;
        overflow: hidden;
        margin-bottom: 10px; /* 텍스트 박스가 위로 올라타게 */
        z-index: 1;
    }

    .sub_sec_season .img_box img {
        width: 100%; 
        object-fit: cover;
        display: block;
    }

    /* 하단 텍스트 박스 */
    .sub_sec_season .txt_box {
        background-color: #fff;
        border-radius: 12px;
        padding: 30px;
        margin: 0 0px; /* 좌우 여백 주면서 이미지 위로 올림 */
        box-shadow: 0 10px 20px rgba(0,0,0,0.05);
        position: relative;
        z-index: 2;
        flex-grow: 1;
    }

    .sub_sec_season .txt_box p {
        font-size: 16px;
        color: #38625e;
        line-height: 1.6;
        margin: 0;
        word-break: keep-all;
    }


/* Contact 상단 (타이틀 영역) */
    .contact_top {
        background-color: #fef8f1;
        padding: 60px 20px;
    }

    .contact_top .inner {
        max-width: 1465px;
        margin: 0 auto;
    }

    .contact_top h2 {
        font-size: 50px;
        color: #1a4a38;
        font-weight: 300;
        margin-bottom: 25px;
        letter-spacing: -0.02em;
        line-height: 1.3;
    }

    .contact_top p {
        font-size: 20px;
         color: #1a4a38;
        line-height: 1.6;
        word-break: keep-all;
    }

    /* Contact 하단 (폼 & SNS 영역) */
    .contact_bottom {
        background-color: #034b3c; /* 시안의 짙은 녹색 */
        padding: 80px 20px 120px;
    }

    .contact_bottom .inner {
        max-width: 1180px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: end;
        gap: 50px;
    }

    /* 폼 삽입 대기 영역 (왼쪽) */
    .contact_bottom .form_area {
        width: 100%;
            max-width: 790px;
        order: 1; /* PC 순서 */
    }

    /* 폼 가이드용 임시 박스 (나중에 이 안에 폼메일 삽입) */
    .contact_bottom .form_placeholder form{width:100%;
         
    }

    /* SNS 영역 (오른쪽) */
    .contact_bottom .sns_area {
        width:100%;
            max-width: 240px;
        order: 2; /* PC 순서 */
        padding-top: 20px;
    }

    .contact_bottom .sns_area h3 {
        color: #fff;
        font-size: 20px;
        font-weight: 500;
        margin-bottom: 20px;
        letter-spacing: 0.05em;
    }

    /* PC: 세로 배열 */
    .contact_bottom .sns_list {
        display: flex;
        flex-direction: column;
        gap: 15px;
    }

    .contact_bottom .sns_btn {
        display: flex;
        align-items: center;
        border: 1px solid #fff;
        padding: 10px 10px;
        color: #fff;
        text-decoration: none;
        font-size: 20px;
        font-weight: 500;
        transition: background-color 0.3s, color 0.3s;
    }

    .contact_bottom .sns_btn:hover {
        background-color: #fff;
        color: #034b3c;
    }

    .contact_bottom .sns_btn img {
        width: 44px;
        height: 44px;
        margin-right: 30px;
        border-radius: 6px; /* 아이콘 모양 보정 */
    }


.inquiry{}
.inquiry .con1{max-width: 500px; margin:65px auto;}
.inquiry .con1 li{padding:10px 0;}
.inquiry .con1 .box_text{width:100%; border:1px solid #424e7d; border-radius: 5px; font-size: 20px; padding:15px;}
.inquiry .con1 .box_text{display: grid;
    flex-wrap: wrap;
    grid-template-columns: 40px 1fr;}
.inquiry .con2{background: #f4f4f4; padding:110px 0;}
.inquiry .con2 .in_form{max-width: 500px; margin:65px auto; border-top:1px solid #424e7d; padding:50px 0 0 0 ; }

/* 푸터 전체 영역 */
 /* 공통 & PC 레이아웃 */
.footer_wrap {
    padding: 50px 20px;
    color: #000; 
    font-size: 14px;
}
.footer_inner {
    max-width: 1465px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.f_info {
    list-style: none;
    padding: 0;
    margin: 0 0 30px 0;
}
.f_info li {
    margin-bottom: 5px;
    line-height: 1.5;
}
.f_info li span {
    display: inline-block;
    margin-right: 15px;
}
.f_copy {
    margin:20px 0 0 0;
}

/* SNS 영역 PC: 세로 정렬 */
.f_sns {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin:15px 0 0 0;
}
.f_sns img{opacity: 0.8;}
.f_sns a {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #333;
    text-decoration: none;
    font-size: 15px;
}
.f_sns a img {
    height: 24px;
    width: auto;
}

.f_sns a img.blog{height:22px;}

/* mobile */
@media (min-width: 1px) and (max-width: 1100px) {
    .mo_on{display: block;}
    .pc_on{display: none;}
    .quick{display: none;}
    .container{padding-left: 20px !important;padding-right: 20px !important;}
    .mo_menu{display: block;}
    .navbar-brand img{    height: 25px;}
    
    .namoo_header{padding:0 15px;}
   
    .namoo_header .hd_inner {
            height: 70px; /* 모바일 헤더 높이 축소 */
        }
        
        .namoo_header .logo img {
            height: 45px;
        }

        /* 모바일에서 동적 메뉴 숨김 */
        .namoo_header .gnb_wrap {
            display: none; 
        }

        .namoo_header .hd_btn_wrap .btn_booknow {
                    padding: 0px 20px;
        font-size: 14px;
        height: 35px;
        line-height: 35px;
        }
    
    
.main_sec_01 {
        height: auto; /* 강제 100vh 해제 */
    }
    .main_sec_01 .bg_wrap {
        position: relative; /* 이미지가 영역 높이를 잡도록 변경 */
        height: auto;
        font-size: 0; /* 이미지 하단 미세 여백 제거 */
    }
    .main_sec_01 .bg_wrap img {
        height: auto; /* 세로 비율 자동 맞춤 */
    }

    .main_sec_01 .txt_wrap h2 {
            font-size: 32px;
            margin-bottom: 20px;
        }
        .main_sec_01 .txt_wrap p {
            font-size: 14px;
            line-height: 1.6;
        }

    .main_sec_02 {
            padding: 50px 0;
        }
    
    .main_sec_02 .inner{padding:0 0 0 20px;}
        
        /* 텍스트 세로 배치 */
        .main_sec_02 .txt_area {
            flex-direction: column;
            align-items: flex-start;
            margin-bottom: 40px;
        }
        
        .main_sec_02 .txt_area h2 {
            font-size: 32px;
            margin-bottom: 20px;
        }
        
        .main_sec_02 .txt_area p {
            font-size: 14px;
        }

        /* 아이콘 리스트 가로 스크롤 (터치 스와이프) */
        .main_sec_02 .list_wrap {
            flex-wrap: nowrap;
            overflow-x: auto;
            padding-bottom: 10px;
            -webkit-overflow-scrolling: touch; /* 부드러운 스크롤 */
            scrollbar-width: none; /* 파이어폭스 스크롤바 숨김 */
        }
        
        /* 크롬, 사파리 스크롤바 숨김 */
        .main_sec_02 .list_wrap::-webkit-scrollbar { 
            display: none; 
        }

        .main_sec_02 .item {
            flex: 0 0 auto; /* 크기 고정 */
        }

        .main_sec_02 .item .img_box {
            width: 140px;
            height: 140px;
            margin-bottom: 15px;
        }
        
        .main_sec_02 .item .tag {
            font-size: 15px;
        }

        .main_sec_03 { padding: 60px 20px 80px; }
        
        /* 모바일 배경으로 변경 */
        .main_sec_03 .bg_wrap {
            background-image: url('../img/main3bgmo.jpg');
            height: 32%;
        }
    
    .main_sec_03 .top_title { display:none; font-size: 22px; margin-bottom: 25px; }
        
        .main_sec_03 .swiper-container { border-radius: 12px; }
        .main_sec_03 .swiper-slide img { border-radius: 12px; }
        
        /* 모바일에서는 화살표 숨김 */
        .main_sec_03 .swiper-button-next,
        .main_sec_03 .swiper-button-prev { display: none; }
        
        .main_sec_03 .txt_wrap { margin-top: 60px; }
        .main_sec_03 .txt_wrap h2 { font-size: 28px; margin-bottom: 20px; }
        .main_sec_03 .txt_wrap p { font-size: 14px; word-break: keep-all; line-height: 1.6; }
        
        .main_sec_03 .btn_wrap a { padding: 12px 35px; font-size: 16px; }

    
    .main_sec_04 .txt_wrap h2 {
            font-size: 22px;
            margin-bottom: 15px;
        }
        .main_sec_04 .txt_wrap p {
            font-size: 14px;
            margin-bottom: 20px;
        }
        .main_sec_04 .btn_inquiry {
            padding: 10px 30px;
            font-size: 14px;
        }
.about_sec_01 .txt_wrap h2 {
            font-size: 24px;
        }
    
    .about_sec_02 {
            padding: 60px 20px;
        }

        .about_sec_02 h2 {
            font-size: 26px;
            margin-bottom: 40px;
        }

        /* 모바일에서는 세로로 1단 정렬 (좌측 단 먼저, 우측 단 나중에) */
        .about_sec_02 .txt_wrap {
            flex-direction: column;
            gap: 30px; 
        }

        .about_sec_02 .col {
            gap: 30px;
        }

        .about_sec_02 .col p {
            font-size: 15px;
            line-height: 1.6;
        }
    
    .about_sec_03 .txt_wrap h2 {
            font-size: 42px; font-weight:600; /* 텍스트가 길어 첫 영역보다 조금 줄임 */
        }
    .about_sec_03 .txt_wrap p {
            font-size: 20px;
            margin-top: 15px;
        }
    
    .about_sec_04 { padding: 60px 20px 80px; }
        .about_sec_04::before { height: 30%; }
        .about_sec_04 .top_header { margin-bottom: 50px; }
        .about_sec_04 .top_header h2 { font-size: 26px;     margin-bottom: 15px;}
        .about_sec_04 .top_header p { font-size: 15px;      margin-bottom: 32px;}
        .about_sec_04 .btn_wrap a { padding: 10px 25px; font-size: 14px; }

        .about_sec_04 .content_wrap { gap: 40px; }
        
        /* 모바일 세로 배치 */
        .about_sec_04 .row { flex-direction: column; gap: 40px; }
        
        /* 상단 행은 세로 이미지가 먼저 오도록 역순 배치 */
        .about_sec_04 .row_top { flex-direction: column-reverse; }
    .about_sec_04 .row_top .txt_box{width:85% !important; margin:auto;}    
    
        .about_sec_04 .row_top .txt_box,
        .about_sec_04 .row_bottom .txt_box { 
            width: 100%; 
            flex-direction: column; /* 모바일에서 텍스트도 세로로 */
            gap: 25px; 
        }
    
    .about_sec_04 .row_bottom{margin:0;}
        
        .about_sec_04 .row_top .img_box{        width: 85%; margin: auto;}
        .about_sec_04 .row_bottom .img_box { width: 100%; }

        .about_sec_04 .item h3 { font-size: 20px; }
        .about_sec_04 .item p { font-size: 14px; }
    
    .about_sec_04 .item .num{width:40px; height:40px; line-height:40px; font-size:16px;}
    
    .about_sec_05 {
            padding: 80px 20px;
        }

        .about_sec_05 h2 {
            font-size: 28px;
            margin-bottom: 20px;
        }

        .about_sec_05 p {
            font-size: 15px;
            line-height: 1.6;
        }
    
    .sub_top_wrap .txt_wrap h2 {
            font-size: 14px;
            margin-bottom: 10px;
        }
        .sub_top_wrap .txt_wrap h3 {
            font-size: 28px;
            margin-bottom: 15px;
        }
        .sub_top_wrap .txt_wrap p {
            font-size: 14px;
        }
    
    
    .sub_sec_japan_02 {
            padding: 60px 20px 80px;
        }

        .sub_sec_japan_02 .inner {
            flex-direction: column; /* 세로 배치 */
            gap: 0px;
        }

        .sub_sec_japan_02 .txt_wrap {
            width: 100%;
            padding-top: 0;
        }

        .sub_sec_japan_02 .txt_wrap h2 {
            font-size: 28px;
            margin-bottom: 30px;
        }

        .sub_sec_japan_02 .txt_wrap p {
            font-size: 15px;
            line-height: 1.6;
        }

        /* 모바일 이미지 배치 (위로 올라타는 효과 해제) */
        .sub_sec_japan_02 .img_group {
            width: 100%;
            margin-top: 20px;
            gap:20px;
        }

        .sub_sec_japan_02 .img_box.large {
            margin-top: 0; /* 모바일에서는 음수 마진 제거 */
        }
    
    .sub_sec_japan_02 .img_box.small{    width: 80%;}
    
    
    .sub_sec_card_list {
            padding: 0 20px 80px;
        }

        .sub_sec_card_list .card_wrap {
            flex-direction: column; /* 세로 1단 정렬 */
            gap: 20px;
        }

        .sub_sec_card_list .card2 {
            width: 100%;
            padding: 20px 20px;
        }

        .sub_sec_card_list .card2 h4 {
            font-size: 20px;
            margin-bottom: 15px;
        }

        .sub_sec_card_list .card2 li {
            font-size: 12px;margin-bottom: 7px;
        }
    
    
    .sub_sec_inquiry {
            padding: 20px 20px 50px;
        }
    
    
    .sub_sec_inquiry2 {
            padding: 50px 20px 50px;
        }
        .sub_sec_inquiry h2 {
            font-size: 26px;
            margin-bottom: 30px;
        }
        .sub_sec_inquiry p {
            font-size: 14px;
            line-height: 1.6;
            margin-bottom: 25px;
        }
        .sub_sec_inquiry p:last-of-type {
            margin-bottom: 40px;
        }
        .sub_sec_inquiry .btn_inquiry {
            padding: 12px 40px;
            font-size: 15px;
        }
    
    .sub_sec_region .region_row {
            padding: 50px 20px;
        }

        .sub_sec_region .inner {
            /* 모바일 핵심: 이미지가 위, 텍스트가 아래로 오도록 순서 반전 */
            flex-direction: column-reverse; 
            gap: 40px;
        }

        .sub_sec_region .txt_wrap,
        .sub_sec_region .img_wrap {
            width: 100%;
        }

        .sub_sec_region .txt_wrap .tag {
            font-size: 14px;
            padding: 6px 20px;
            margin-bottom: 15px;
        }

        .sub_sec_region .txt_wrap h3 {
            font-size: 26px;
            margin-bottom: 25px;
        }

        .sub_sec_region .info_box {
            padding: 20px 25px;
            border-radius: 12px;
        }

        .sub_sec_region .info_box p {
            font-size: 14px;
        }
    
    
    .sub_sec_season { padding: 0 0 80px; }
        .sub_sec_season .swiper-container { padding-left: 20px;         padding-right: 20px; width:100%;}
    
    .season-prev, .season-next {display:none !important;}
        
        .sub_sec_season .top_info { margin-bottom: 15px; }
        .sub_sec_season .top_info .tag { font-size: 12px; padding: 5px 12px; }
        .sub_sec_season .top_info h3 { font-size: 20px; }
        
        .sub_sec_season .txt_box {
            padding: 20px;
            margin: 0 0px;
        }
        .sub_sec_season .txt_box p { font-size: 14px; }
    
    
    
    
    .contact_top { padding: 60px 20px; }
        .contact_top h2 { font-size: 28px; margin-bottom: 20px; }
        .contact_top p { font-size: 15px; }

        .contact_bottom { padding: 50px 20px 80px; }
        
        .contact_bottom .inner {
            flex-direction: column;
            gap: 40px;
        }

        /* 모바일: SNS가 폼 위로 올라가도록 순서(order) 변경 */
        .contact_bottom .sns_area {
            width: 100%;
            order: 1; /* 모바일 순서 1번 */
            padding-top: 0;
                    max-width: 100%;
        }

        .contact_bottom .form_area {
            width: 100%;
            order: 2; /* 모바일 순서 2번 */
        }

        .contact_bottom .form_placeholder {
            min-height: 500px; /* 모바일 폼 최소 높이 축소 */
        }

        /* 모바일: SNS 버튼 가로 나란히 배치 */
        .contact_bottom .sns_list {
            flex-direction: row;
            gap: 10px;
        }

        .contact_bottom .sns_btn {
            flex: 1; /* 반반씩 공간 차지 */
            justify-content: center;
            padding: 10px;
            font-size: 14px;
        }

        .contact_bottom .sns_btn img {
            width: 24px;
            height: 24px;
            margin-right: 8px;
        }
    
    .inquiry .con2 .in_form{width:90%;margin: 0px auto;}
    .inquiry .con1 .box_text{font-size: 12px;line-height: 27px;}
    .inquiry .con1 .box_text img{height: 27px;}
    .inquiry .con1{margin: 45px auto;}
    
    .inquiry .con2{padding:70px 0;}
    
   .footer_inner {
        flex-direction: column;
    }
    
    /* 한 줄로 나오던 정보들을 모바일에서 위아래로 분리하고 싶다면 block 처리 */
    /* .f_info li span { display: block; margin-bottom: 5px; } */

    /* SNS 영역 모바일: 가로 정렬 */
    .f_sns {
        flex-direction: row;
        gap: 20px;
        margin-top: 40px;
    }
    
}
 