.sub_content{
    padding:100px 0;
}

.sub_content p{
    font-size:clamp(14px,1rem,17px);
}


.sub_content .page_title{
    margin-bottom:60px;
    text-align:center;
}

.sub_content .page_title h2{
    font-size:42px;
    font-weight:700;
    color:#111;
}

.sub_content .content_section{
    margin-bottom:100px;
}

.sub_content .content_section:last-child{
    margin-bottom:0;
}

.sub_content .sec_tit{
    margin-bottom:30px;
}

.sub_content .sec_tit h3{
    display: flex;
    flex-flow: row nowrap;
    align-items: flex-end;
    font-size:32px;
    font-weight:700;
    color:#111;
}
.sub_content .sec_tit h3 .symbol{
    width:38px;
    opacity:0.4;
}

.sub_content .sec_tit p{
    margin-top:10px;
    color:#666;
}

.sub_content .txt_box{
    line-height:2;
    color:#555;
    word-break:keep-all;
}

.sub_content .txt_box.center{
    text-align:center;
}

.sub_content .txt_box.right{
    text-align:right;
}

.sub_content .sign{
    margin-top:40px;
    font-size:18px;
    font-weight:600;
}

.sub_content .basic_table{
    width:100%;
    margin-bottom:30px;
    font-size:16px;
    border-top:2px solid #9ece4d;
    border-collapse: collapse;
    table-layout:fixed;
}

.sub_content .basic_table th{
    padding:18px;
    background:#f8f8f8;
    border:1px solid #ddd;
    font-weight:600;
}

.sub_content .basic_table td{
    padding:18px;
    word-wrap: break-word;
    border:1px solid #ddd;
}
.sub_content .basic_table.tb_center td{
    text-align:center;
}

.sub_content.greeting_page{
    max-width:1000px;
    margin:0 auto;
}

.sub_content.greeting_page .txt_box{
    font-size:20px;
    line-height:2.2;
    word-break:keep-all;
}


.sub_content.greeting_page1 .txt_box{
    background:url(/img/0101_bg.png) no-repeat center/contain;
}

.sub_content.greeting_page2 .txt_box{
    background:url(/img/0102_bg.png) no-repeat center/contain;
}

.sub_content .greeting_name,
.sub_content .greeting_slogan{
    font-size:32px;
    font-weight:700;
    color:#222;
}

.sub_content .business_wrap{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:30px;
}

.sub_content .business_item{
    padding:40px;
    border:1px solid #e5e5e5;
    border-radius:12px;
    background:url(/img/box-bg.png) no-repeat right bottom / contain;
}

.sub_content .business_item h4{
    margin-bottom:20px;
    font-size:24px;
    font-weight:700;
}

.sub_content .business_item li{
    position:relative;
    padding-left:12px;
    margin-bottom:10px;
    font-size:16px;
}

.sub_content .business_item li::before{
    content:'•';
    position:absolute;
    left:0;
}

.sub_content .org_chart{
    text-align:center;
}

.sub_content .org_chart img{
    max-width:100%;
}

.sub_content .root_daum_roughmap{
    width:100%;
}

.sub_content .cont{
    display:none;
}




.info_box{
    margin-top:50px;
}

.info_box:first-of-type{
    margin-top:0;
}

.sub_tit{
    margin-bottom:20px;
    font-size:24px;
    font-weight:700;
    color:#222;
}


.process_wrap{
display:grid;
grid-template-columns:repeat(3, 1fr);
gap:60px;
}

.process_item{
position:relative;
padding:40px 30px;
font-size: 16px;
border:1px solid #e5e5e5;
border-radius:20px;
background:#fff;
}

.process_item .step{
position:absolute;
top:15px;
right:20px;
font-size:48px;
font-weight:800;
color:#e8eecb;
line-height:1;

}

.process_item strong{
display:block;
margin-bottom:15px;
font-size:22px;
font-weight:700;
color:#222;
}

.process_item p{
line-height:1.8;
word-break:keep-all;
}

/* 2행 역순 배치 */
.process_item:nth-child(4){
grid-column:3;
grid-row:2;
}

.process_item:nth-child(5){
grid-column:2;
grid-row:2;
}

.process_item:nth-child(6){
grid-column:1;
grid-row:2;
}

/* 1 → 2 */
.process_item:nth-child(1)::after{
content:"→";
}

/* 2 → 3 */
.process_item:nth-child(2)::after{
content:"→";
}

/* 3 ↓ */
.process_item:nth-child(3)::after{
content:"↓";
position:absolute;
top:auto;
bottom:-50px;
right:50%;
transform:translateX(50%);
font-size:32px;
color:#f3dec8;
font-weight:700;
}

/* 5 ← 4 */
.process_item:nth-child(4)::after{
content:"←";
}

/* 6 ← 5 */
.process_item:nth-child(5)::after{
content:"←";
}

.process_item:nth-child(1)::after,
.process_item:nth-child(2)::after,
.process_item:nth-child(4)::after,
.process_item:nth-child(5)::after{
position:absolute;
top:50%;
right:-46px;
transform:translateY(-50%);
font-size:32px;
color:#f3dec8;
font-weight:700;
}

.process_item:nth-child(4)::after,
.process_item:nth-child(5)::after{
right:auto;
left:-46px;
}


/* =========================
    0203 사업안내
========================= */

.facility_gallery{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:24px;
}

.facility_item{
    position:relative;
    overflow:hidden;
    border-radius:20px;
    grid-column:span 2;
}

.facility_item.large{
    grid-column:span 3;
}

.facility_item img{
    width:100%;
    height:100%;
    min-height:260px;
    object-fit:cover;
    display:block;
    transition:.4s;
}

.facility_item:hover img{
    transform:scale(1.05);
}

.facility_item span{
    position:absolute;
    left:20px;
    bottom:20px;

    padding:8px 16px;

    background:rgba(0,0,0,.55);
    backdrop-filter:blur(5px);

    color:#fff;
    font-size:15px;
    font-weight:600;

    border-radius:50px;
}


.goal_wrap{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:25px;
}

.goal_item{
    position:relative;
    padding:35px 30px;
    border:1px solid #e5e5e5;
    border-radius:20px;
    background:#fff;
}

.goal_item span{
    display:block;
    margin-bottom:15px;

    font-size:42px;
    font-weight:800;
    color:#e8eecb;
    line-height:1;
}

.goal_item p{
    line-height:1.8;
    word-break:keep-all;
}

.practice_table td{
    line-height:1.8;
}


/* =========================
    후원안내
========================= */

.donate_method_wrap{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:25px;
}

.donate_method_item{
    padding:35px 25px;
    border:1px solid #e5e5e5;
    border-radius:20px;
    background:#fff;
}

.donate_method_item img{
    width:60px;
}



.donate_method_item strong{
    display:block;
    margin:15px 0;

    font-size:22px;
    font-weight:700;
    color:#222;
}

.donate_method_item p{
    line-height:1.8;
    word-break:keep-all;
}

.receipt_box{
    padding:40px;
    border-radius:20px;
    background:#f8f8f8;
}

.receipt_box .dot_list{
    font-size:16px;
}


.receipt_info{
    margin-top:30px;
    padding-top:30px;
    border-top:1px solid #ddd;
}

.receipt_info strong{
    display:block;
    margin-bottom:10px;
    font-size:20px;
}

.receipt_info p{
    line-height:1.8;
}


.account_copy{
    display:flex;
    justify-content: center;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}

.copy_btn{
    padding:6px 12px;

    border:none;
    border-radius:50px;

    background:#ea9d4a;
    color:#fff;

    font-size:13px;
    cursor:pointer;

    transition:.3s;
}

.copy_btn:hover{
    opacity:.85;
}







/* 태블릿 + 모바일 */
@media(max-width:1024px){


    .process_wrap{
        grid-template-columns:1fr;
        gap:45px;
    }

    .process_item{
        grid-column:auto !important;
        grid-row:auto !important;
    }

    .process_item::after{
        display:none;
    }

    .process_item:not(:last-child)::before{
        content:"↓" !important;
        position:absolute;
        left:50%;
        bottom:-37px;
        transform:translateX(-50%);
        font-size:28px;
        color:#f3dec8;
        font-weight:700;
    }

        .facility_gallery{
        grid-template-columns:repeat(3,1fr);
    }

    .facility_item.large{
        grid-column:span 3;
    }

    .donate_method_wrap{
        grid-template-columns:repeat(2,1fr);
    }

}




@media(max-width:768px){


    .sub_content{
        padding:60px 0;
    }

    .sub_content .page_title{
        margin-bottom:40px;
    }

    .sub_content .page_title h2{
        font-size:30px;
    }

    .sub_content .sec_tit h3{
        font-size:24px;
    }

    .sub_content .basic_table{
        font-size:14px;
    }

    .sub_content .basic_table th,
    .sub_content .basic_table td{
        padding:12px;
    }


    .sub_content.greeting_page .txt_box{
        font-size:16px;
        line-height:1.9;
    }

    .sub_content .greeting_name,
    .sub_content .greeting_slogan{
        font-size:24px;
    }

    .sub_content .business_wrap{
        grid-template-columns:1fr;
    }

    .sub_content .business_item{
        padding:25px;
    }


    .process_wrap{
        grid-template-columns:1fr;
        gap:40px;
    }

    .process_item:not(:last-child)::after{
        content:"↓";
        top:auto;
        right:auto;
        left:50%;
        bottom:-28px;

        transform:translateX(-50%);
    }



    .facility_gallery{
        grid-template-columns:repeat(2,1fr);
        gap:15px;
    }

    .facility_item.large{
        grid-column:span 2;
    }

    .facility_item img{
        min-height:180px;
    }

    .facility_item span{
        left:12px;
        bottom:12px;
        font-size:13px;
        padding:6px 12px;
    }

    .goal_wrap{
        grid-template-columns:1fr;
    }


    .donate_method_wrap{
        grid-template-columns:1fr;
    }

    .receipt_box{
        padding:25px;
    }



}