@font-face{
    font-family:'GmarketSansMedium';
    src:url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansMedium.woff') format('woff');
    font-weight:normal;
    font-style:normal;
}

.hw-sub-left h2,
.hw-sub-left li a,
.hw-sub-title{
    font-family:'GmarketSansMedium', 'Noto Sans KR', sans-serif;
}
.hw-sub-visual{
    width:100%;
    margin:0;
    padding:0;
    border:0;
    line-height:0;
    text-align:center;
    overflow:hidden;
}

.hw-sub-visual img{
    display:block;
    width:100%;
    max-width:1920px;
    height:auto;
    margin:0 auto;
    border:0;
}

.hw-sub-page{
    width:1200px;
    margin:0 auto;
    padding:35px 0 70px;
    display:flex;
    gap:30px;
    font-family:'Noto Sans KR', sans-serif;
}

.hw-sub-left{
    width:200px;
    flex:0 0 200px;
}

.hw-sub-left h2{
    height:50px;
    line-height:50px;
    margin:0;
    padding-left:10px;
    font-size:20px;
    font-weight:500;
    color:#504f4f;
    border-bottom:1px solid #c4c4c4;
}

.hw-sub-left ul{
    margin:15px 0 0;
    padding:0;
    list-style:none;
}

.hw-sub-left li a{
    display:block;
    height:40px;
    line-height:40px;
    padding-left:10px;
    background:#edebeb;
    border-bottom:1px solid #fff;
    font-size:15px;
    font-weight:300;
    color:#504f4f;
    text-decoration:none;
}

.hw-sub-left li.active a,
.hw-sub-left li a:hover{
    background:#6f910a;
    color:#fff;
}

.hw-sub-content{
    width:970px;
    flex:1;
}

.hw-sub-title{
    height:50px;
    line-height:50px;
    margin:0 0 30px;
    text-align:center;
    font-size:20px;
    font-weight:500;
    color:#504f4f;
    border-bottom:1px solid #c4c4c4;
}

.hw-sub-title.second{
    margin-top:35px;
}

.hw-lineage{
    font-size:13px;
    color:#333;
}

.hw-center-img{
    text-align:center;
    margin-bottom:30px;
}

.hw-center-img p{
    margin:8px 0 0;
}

.hw-center-img.cert{
    display:flex;
    justify-content:center;
    align-items:flex-start;
    gap:10px;
    margin:20px 0 40px;
}

.hw-photo-grid{
    display:grid;
    gap:25px;
    margin:20px 0 35px;
    text-align:center;
}

.hw-photo-grid.three{
    grid-template-columns:repeat(3, 1fr);
}

.hw-photo-grid.two{
    grid-template-columns:repeat(2, 1fr);
}

.hw-photo-grid figure{
    margin:0;
}

.hw-photo-grid figcaption{
    margin-top:8px;
    line-height:1.5;
}

.hw-master-list{
    width:800px;
    margin:0 auto;
}

.hw-master-item{
    display:flex;
    gap:40px;
    padding:22px 0;
    border-bottom:1px solid #c4c4c4;
}

.hw-master-item .thumb{
    width:125px;
    text-align:center;
    flex:0 0 125px;
}

.hw-master-item .thumb img{
    border:1px solid #ccc;
}

.hw-master-item .thumb p{
    margin:5px 0 0;
}

.hw-master-item .info{
    flex:1;
    font-size:13px;
    line-height:20px;
    color:#333;
}

@media (max-width:768px){
    .hw-sub-page{
        width:auto;
        display:block;
        padding:25px 15px 50px;
    }

    .hw-sub-left,
    .hw-sub-content,
    .hw-master-list{
        width:100%;
    }

    .hw-sub-left{
        margin-bottom:30px;
    }

    .hw-photo-grid.three,
    .hw-photo-grid.two{
        grid-template-columns:1fr;
    }

    .hw-master-item{
        gap:20px;
    }
}

.hw-year-link a{
    height:28px !important;
    line-height:28px !important;
    background:#fff !important;
    border-bottom:1px solid #eee !important;
    font-size:14px !important;
    color:#555 !important;
    padding-left:14px !important;
}

.hw-year-link.is-on a,
.hw-year-link a:hover{
    color:#6f910a !important;
    font-weight:600;
}

.hw-gallery-guide{
    margin:0 0 30px;
    text-align:center;
    font-size:13px;
    font-weight:600;
    color:#222;
}

.hw-activity-wrap{
    width:760px;
    margin:0 auto;
    text-align:center;
}

.hw-activity-wrap table{
    width:100% !important;
    margin:0 auto;
    border-collapse:collapse;
}

.hw-activity-wrap td{
    font-size:14px;
    line-height:1.5;
}

.hw-activity-wrap img{
    max-width:220px;
    height:auto;
}

.hw-activity-wrap a{
    color:#333;
    text-decoration:none;
}

.hw-activity-wrap strong{
    font-size:16px;
    color:#222;
}


/* sub01_5 주요활동 표 최종 오버라이드 */
.hw-main-activity{
    padding-left:20px;
    box-sizing:border-box;
    font-size:12px;
    line-height:18px;
    color:#222;
    font-weight:400;
}

.hw-main-activity > p{
    margin:0 0 18px;
    font-size:13px;
    line-height:20px;
    color:#333;
}

.hw-main-activity table{
    width:860px !important;
    max-width:860px !important;
    border-collapse:collapse !important;
    border-spacing:0 !important;
    border:1px solid #333 !important;
    table-layout:fixed !important;
}

.hw-main-activity td{
    border:1px solid #333 !important;
    padding:3px 6px !important;
    vertical-align:top !important;
    font-size:12px !important;
    line-height:18px !important;
    color:#222 !important;
    font-weight:400 !important;
    word-break:keep-all !important;
}

.hw-main-activity p,
.hw-main-activity span{
    margin:0 !important;
    font-size:12px !important;
    line-height:18px !important;
    color:#222 !important;
    font-weight:400 !important;
}

/* 첫번째 칸 연도 */
.hw-main-activity > table > tbody > tr > td:first-child[rowspan]{
    width:100px !important;
    min-width:100px !important;
    max-width:100px !important;
    text-align:left !important;
}

.hw-main-activity > table > tbody > tr > td:first-child[rowspan] p,
.hw-main-activity > table > tbody > tr > td:first-child[rowspan] span{
    font-family:'GmarketSansMedium','Noto Sans KR',sans-serif !important;
    font-size:20px !important;
    line-height:24px !important;
    font-weight:600 !important;
    color:#6f910a !important;
    white-space:nowrap !important;
}

/* 날짜칸 */
.hw-main-activity > table > tbody > tr > td:nth-child(2){
    width:100px !important;
    min-width:100px !important;
    max-width:100px !important;
    white-space:normal !important;
}

/* 내용칸 */
.hw-main-activity > table > tbody > tr > td:nth-child(3){
    width:660px !important;
}

/* 잘못 들어간 hw-year 클래스 방어: rowspan 없는 칸은 일반 날짜처럼 */
.hw-main-activity td.hw-year:not([rowspan]),
.hw-main-activity td.hw-year:not([rowspan]) p,
.hw-main-activity td.hw-year:not([rowspan]) span{
    font-size:12px !important;
    line-height:18px !important;
    color:#222 !important;
    font-weight:400 !important;
}

/* 중첩 테이블 */
.hw-main-activity table table{
    width:auto !important;
    max-width:none !important;
    border:0 !important;
    table-layout:auto !important;
}

.hw-main-activity table table td{
    border:0 !important;
    padding:0 8px 0 0 !important;
    width:auto !important;
}

/* 주요활동 */
.hw-main-activity{
    padding-left:20px;
    font-size:14px;
    line-height:24px;
    color:#333;
    font-weight:400;
}

/* 상단 설명문 */
.hw-main-activity > p{
    margin:0 0 20px;
    font-size:15px;
    line-height:26px;
    color:#333;
}

/* 표 */
.hw-main-activity table{
    width:860px !important;
    border-collapse:collapse;
    border:1px solid #333;
}

.hw-main-activity td{
    border:1px solid #333;
    padding:4px 8px;
    vertical-align:top;
    font-size:14px;
    line-height:24px;
    color:#333;
    font-weight:400;
}

.hw-main-activity p{
    margin:0;
    font-size:14px;
    line-height:24px;
    color:#333;
    font-weight:400;
}

/* 연도칸만 */
/* 연도칸만 초록 */
.hw-main-activity td[width="100"][rowspan] p,
.hw-main-activity td[width="100"][rowspan] span{
    font-family:'GmarketSansMedium','Noto Sans KR',sans-serif !important;
    font-size:20px !important;
    line-height:24px !important;
    font-weight:600 !important;
    color:#6f910a !important;
}

/* 날짜칸 강제 일반화 */
.hw-main-activity td[width="101"] p{
    font-size:14px !important;
    line-height:24px !important;
    font-weight:400 !important;
    color:#333 !important;
    font-family:'Noto Sans KR', sans-serif !important;
}
/* sub01_6 본부수련장 약도 */
.hw-sub01-6 .hw-map-wrap{
    width:100%;
    max-width:900px;
    margin:0 auto;
    font-family:'GmarketSansMedium','Noto Sans KR',sans-serif;
}

.hw-sub01-6 .hw-map-box{
    width:100%;
    margin:0 auto 34px;
}

.hw-sub01-6 .hw-map-box iframe{
    display:block;
    width:100%;
    height:450px;
}

.hw-sub01-6 .hw-map-name{
    margin:0 0 18px;
    font-family:'GmarketSansMedium','Noto Sans KR',sans-serif;
    font-size:20px;
    line-height:1.4;
    font-weight:600;
    color:#000;
}

.hw-sub01-6 .hw-map-info{
    width:100%;
    border-collapse:collapse;
    table-layout:fixed;
    font-family:'GmarketSansMedium','Noto Sans KR',sans-serif;
}

.hw-sub01-6 .hw-map-info th,
.hw-sub01-6 .hw-map-info td{
    background:#efefef;
    border-bottom:1px solid #ccc;
    font-size:14px;
    line-height:24px;
    color:#333;
    text-align:left;
    vertical-align:middle;
}

.hw-sub01-6 .hw-map-info th{
    width:102px;
    padding:8px 10px;
    border-right:1px solid #ccc;
    font-size:16px;
    font-weight:600;
    color:#111;
}

.hw-sub01-6 .hw-map-info td{
    padding:8px 12px;
    font-weight:300;
}

.hw-sub01-6 .mo-br{
    display:none;
}

@media (max-width:768px){
    .hw-sub01-6 .hw-map-wrap{
        max-width:100%;
    }

    .hw-sub01-6 .hw-map-box iframe{
        height:330px;
    }

    .hw-sub01-6 .hw-map-name{
        font-size:18px;
        margin-bottom:14px;
    }

    .hw-sub01-6 .hw-map-info th{
        width:78px;
        font-size:14px;
        padding:8px;
    }

    .hw-sub01-6 .hw-map-info td{
        font-size:13px;
        line-height:22px;
        padding:8px 10px;
    }

    .hw-sub01-6 .mo-br{
        display:block;
    }
}
/* 본부수련장 약도 */
.hw-sub01-6 .hw-map-content{
    width:900px;
    max-width:100%;
    margin:0 auto;
    font-family:'GmarketSansMedium','Noto Sans KR',sans-serif;
}

.hw-sub01-6 .hw-map-frame{
    width:100%;
    margin:0 auto 35px;
}

.hw-sub01-6 .hw-map-frame iframe{
    display:block;
    width:100%;
    height:450px;
}

.hw-sub01-6 .hw-map-place{
    margin:0 0 18px;
    font-family:'GmarketSansMedium','Noto Sans KR',sans-serif;
    font-size:20px;
    line-height:1.4;
    font-weight:600;
    color:#000;
}

.hw-sub01-6 .hw-map-table{
    width:100%;
    border-collapse:collapse;
    table-layout:fixed;
}

.hw-sub01-6 .hw-map-table th,
.hw-sub01-6 .hw-map-table td{
    background:#efefef;
    border-bottom:1px solid #ccc;
    font-family:'GmarketSansMedium','Noto Sans KR',sans-serif;
    color:#333;
    text-align:left;
    vertical-align:middle;
}

.hw-sub01-6 .hw-map-table th{
    width:102px;
    padding:8px 10px;
    border-right:1px solid #ccc;
    font-size:16px;
    line-height:24px;
    font-weight:600;
    color:#111;
}

.hw-sub01-6 .hw-map-table td{
    padding:8px 12px;
    font-size:14px;
    line-height:24px;
    font-weight:300;
}

@media (max-width:768px){
    .hw-sub01-6 .hw-map-frame iframe{
        height:330px;
    }

    .hw-sub01-6 .hw-map-place{
        font-size:18px;
    }

    .hw-sub01-6 .hw-map-table th{
        width:78px;
        font-size:14px;
        padding:8px;
    }

    .hw-sub01-6 .hw-map-table td{
        font-size:13px;
        line-height:22px;
        padding:8px 10px;
    }
}