﻿@media (min-width: 1500px) { #content > .container, #subgnb > .container { width: 1400px; } }
/*p , td {font-size: 1.5em;}*/
.depth4 {text-align:center; margin:30px 0;}
.depth4 li { display:inline-block;}
.depth4 li:hover {padding-top:0px;}
.depth4 li.active {display:none;}
.depth4 li a {padding:20px; font-size:23px; color:#000; text-decoration:none;}
.depth4 li a:hover,.depth4 li a:focus {padding-top:0px; font-weight:bold; transition:.2s all ease-in-out;}

.document-readed_count{display:none;}
#subtop img { width:100%; }

#subgnb { border-bottom:1px solid #ddd; padding:0px 0px;}
#subgnb .subgnb-home { float:right; display:inline-block; margin:12px 0px 0px 0px;}
#subgnb span, #subgnb a { font-size:16px; color:#777; position:relative; top:3px; text-decoration:none;}
#subgnb a.active { color:#6599CB; font-weight:bold; }
#subgnb .dropdown { display:inline-block;}
#subgnb .dropdown .btn { padding:15px 20px; font-size:17px; font-weight:bold;}
#subgnb .dropdown .btn-default { border:none;}
#subgnb .dropdown .btn:hover { background-color:#6599CB; transition:0.3s all ease;}
#subgnb .dropdown .btn .active  { background-color:#6599CB; }
#subgnb .dropdown-menu>li>a { padding:10px 20px; transition:0.3s all ease; font-size:17px;}
#subgnb .caret { border-top:2px solid #000; border-right: 0px solid transparent; border-left: 2px solid #000; position: relative; margin: 0; height: 8px; width: 8px; transform: rotate(225deg); transition: all 0.6s; margin-top:-10px; margin-left:20px; }

#content { padding: 8em 0px 4em;}
#content .third-menus { margin:10px 0 42px 0;text-align:center; }
#content .third-menus ul{ display:inline-block; }
#content .third-menus ul li { border: 1px solid #dedede; float:left; margin-left:-1px;}
#content .third-menus ul li a { color: #333;text-decoration: none;padding: 8px 17px;font-size: 12px;min-width: 160px;display: inline-block;text-align: center; }
#content .third-menus ul li.active a { color:#fff; }
#sub_title { font-size: 3.3em; font-weight:600; margin:0px auto 0.8em; /*border-bottom:4px solid #000; display:inline-block; padding-bottom:10px; */}
#dimodePage { padding:30px 0px; border-top:3px solid #222;}

.lnb { padding:0px 30px;}
.lnb_title { font-size: 2.4em; /*border-bottom:1px solid #000;*/ padding:40px 0px; font-weight:600; text-align:center; position:relative;}
.sub-left-triangle { position: absolute; right: 0px; top: 0; width: 0; height: 0; border-left: 30px solid transparent; border-top-width: 30px; border-top-style: solid; border-top-color: #6599CB; }
.sub_depth2 { margin-top:0px; padding-top:0px; }
.sub_depth2 li { padding: 20px 25px; border-bottom:1px solid #ddd; transition:all ease 0.3s; }
.sub_depth2 li.active, .sub_depth2 > li:hover { background:#d9d3f2; }
.sub_depth2 > li > a { color:#777; font-weight:600;  font-size:17px; text-decoration:none; }
.sub_depth2 li a { color:#777; font-weight:600;  font-size:16px; text-decoration:none; }
.sub_depth2 li i { position:relative; margin:3px 15px 0px 0px; cursor:pointer; float:right; font-size:16px;}
.sub_depth2 li i.fa-minus { display:none; }
.sub_depth2 li:last-child { border-color:#000; }
.sub_depth3 { padding:0px 15px; margin-top:15px; display:none; }
.sub_depth3.active { display:block; }
.sub_depth3 li { padding: 10px 20px; border-bottom:1px solid #999; background-color: #f4c9ff; }
.sub_depth3 li a  { color:#999; font-size:15px;  text-decoration:none;  transition:all ease 0.3s; }
.sub_depth3 li a:hover  { color:#739AB9; }
.sub_depth3.a_96 li a:hover { color:#4E5397; }
.sub_depth3.a_98 li a:hover { color:#E4C640; }
/*글자자르기*/
.dimode-theme  {word-break:keep-all;}

ul.timeline > li > span {
    display: block; width: 100%; 
    margin-bottom:5px;
}
 


/*서브메뉴*/
.d3-subgnb-menu { display: inline-block;}
.d3-menulist {  
    display:inline-block; padding:15px 15px;    float:left;}
.d3-menulist a{ font-size:22px!important;
	color:#8F8F8F!important;
	font-weight:bold;}
.d3-subgnb-menu div.active a { color:#325481!important;
    padding-bottom:10px;
    border-bottom:2px solid #B4CEF1;
	font-weight:700;}
.d3-menulist a:hover{	  color:#325481!important;}
.subTitle{text-align:center;}





@media (max-width:1499px) {
    .lnb { padding:0px 15px;}

    #gnb > li > a { font-size: 18px; }
	div#daumRoughmapContainer1687249374537 { width: 1110px!important;}
}

@media (max-width:1199px) {
    .lnb { padding:0px 5px;}
    .sub_depth2 li { padding:20px 15px;}

    #gnb > li > a {
        padding: 1em;
        font-size: 18px;
}
	
	.sub-12 #unit7475.col-sm-8 {width: 100%!important;}
    div#daumRoughmapContainer1687249374537 { width: 910px!important;}

}


@media (max-width:991px) {
    .d3-menulist a{font-size:18px!important;}
    .subTitle { text-align:center;}
    #sub_title {font-size:30px; margin:0px 0px 30px;}
    .header-mobile-gnb {float:right; margin-top:35px; font-size:30px;}
    #footer { text-align:center; }
    #footer img { float:none; margin:0px;}
    #subgnb .dropdown { display:inline-block;}
    #subgnb .dropdown .btn { padding:30px 15px; font-size:17px; font-weight:bold;}
    #subgnb .dropdown .btn-default { border:none;}
    #subgnb .dropdown .btn:hover { background-color:#9fb2b3; transition:0.3s all ease;}
    #subgnb .dropdown .btn .active  { background-color:#9fb2b3; }
    #subgnb .dropdown-menu>li>a { padding:10px 20px; transition:0.3s all ease; font-size:18px;}
    #subgnb .caret { border-top:2px solid #000; border-right: 0px solid transparent; border-left: 2px solid #000; position: relative; margin: 0; height: 8px; width: 8px; transform: rotate(225deg); transition: all 0.6s; margin-top:-10px; margin-left:20px; }
    #subgnb .subgnb-home { margin:25px 0px;}
    .dimode-unit div hr {
        margin-top: 0px !important;
        margin-bottom: 10px !important;
}
	
    div#daumRoughmapContainer1687249374537 { width: 690px!important;}
}

@media (max-width:767px) {
    .board-theme .theme-list table th, .board-theme .theme-list table td {
        font-size: 1.3rem !important;
        padding: 8px !important;
}
    #unit9599 > div > div {
        width: auto !important;
        margin-left: 0px !important;
        font-size: 20px !important;
        /*padding: 20px !important;*/
}
    #unit9599  div  div {

        font-size: 20px !important;
        /*padding: 20px !important;*/
}
    #component2979 > div > div:first-child > div {
        margin-right: 15px !important;
}
    #component2979 > div > div:last-child > div {
        margin-left: 15px !important;
}
	
    div#daumRoughmapContainer1687249374537 { width: 100%!important;}
	.sub-15 div#unit7475 { text-align: center;}
}
@media (max-width:780px) {
    #unit9599 > div > span {  font-size: 26px !important;} 
    #unit9599 > div {  /*font-size: 1.3rem !important;*/        padding: 20px !important;}
	#component4120 br {display: none;}
	#subgnb .container {padding: 0px;}
	.header-mobile-gnb {float: right;            margin: 5% 15px 0px;            font-size: 30px;}
	#footer {text-align: center;}
	#footer img { float: none;                margin: 0px;}
	#footer p { font-size: 14px;}
    #gnb-wrap {padding: 0px;}
    #subgnb span, #subgnb a {font-size: 14px;}
        .subTitle {
            text-align: center; }

        #sub_title {
            font-size: 30px;
            margin: 0px 0px 30px; }

        #header .container {
            padding: 0px 15px}

        #subgnb .dropdown {
            display: inline-block;}

            #subgnb .dropdown .btn {
                padding: 15px;
                font-size: 14px;
                font-weight: bold;
                text-align: center;}

            #subgnb .dropdown .btn-default {
                border: none;}

            #subgnb .dropdown .btn:hover { background-color: #9fb2b3;
                transition: 0.3s all ease; }

            #subgnb .dropdown .btn .active { background-color: #9fb2b3;}

        #subgnb .dropdown-menu > li > a {padding: 8px 15px;
            transition: 0.3s all ease;
            font-size: 14px; }

        #subgnb .caret {border-top: 2px solid #000;
            border-right: 0px solid transparent;
            border-left: 2px solid #000;
            position: relative;
            margin: 0;
            height: 8px;
            width: 8px;
            transform: rotate(225deg);
            transition: all 0.6s;
            margin-top: -10px;
            margin-left: 20px;
        }
        #subgnb .subgnb-home {padding: 15px 15px;  width: 100%; border-top: 1px solid #e5e5e5; margin: 0px; }
		.sub-12 #unit7475 { text-align: center;}
		.sub-12 #unit7475 .col-sm-4 { width: 100%!important;}
		div#unit7867 >div , div#unit9538 >div{ padding: 25px!important;}
}

@media (min-width:768px) and (max-width:1199px) {
    #component2979 #unit9538 > div {padding :30px !important;}
    #component2979 #unit9538 div .row:first-of-type .col-sm-4 div span {font-size: 16px !important;}
    #gnb > li > a {font-size: medium !important; }
}

@media (max-width:450px) {
    .fontsizebigger {font-size: 14px;}	
	#content {
    padding: 5em 0px 4em;
}
}
.sub-20 .cont{
display: none;

}

/* =========================
   ===== 태블릿 =====
========================= */
@media (max-width: 992px) {

    /* 카드 3개 */
    .sub-16 #component5376 .col-sm-2 {
        width: calc(33.333% - 15px) !important;
    }

    /* 아래 섹션 세로 */
    .sub-16 #component7539 {
        flex-direction: column;
        text-align: center;
    }

    .sub-16 #component7539 .col-sm-7,
    .sub-16 #component7539 .col-sm-5 {
        width: 100%;
    }
}

/* =========================
   ===== 모바일 =====
========================= */
@media (max-width: 768px) {


/* =========================
   모바일 카드 → 가로 스크롤
========================= */
@media (max-width: 768px) {

    .sub-16 #component5376 .row {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        gap: 20px;
        padding-bottom: 10px;
    } 

    /* 스크롤 부드럽게 */
    .sub-16 #component5376 .row::-webkit-scrollbar {
        height: 6px;
    }

    .sub-16 #component5376 .row::-webkit-scrollbar-thumb {
        background: rgba(255,255,255,0.3);
        border-radius: 10px;
    }

    /* 카드 크기 고정 */
    .sub-16 #component5376 .col-sm-2 {
        flex: 0 0 80%;
        width: auto !important;
    }

    /* 카드 중앙 정렬 */
    .sub-16 #component5376 .col-sm-2 > div {
        padding: 30px 20px !important;
    }
}
    /* 카드 2개 */
    .sub-16 #component5376 .col-sm-2 {
        width: calc(50% - 10px) !important;
    }

    .sub-16 #component5376 {
        padding: 20px 20px !important;
    }

    .sub-16 #component5376 .font-xl {
        font-size: 18px;
    }
}

/* =========================
   ===== 작은 모바일 =====
========================= */
@media (max-width: 480px) {
	
	/* =========================
   비전 섹션 높이 문제 해결
========================= */
.sub-16 #component5376 {
    height: auto !important;
    min-height: unset !important;
    padding-bottom: 25px !important;

}

/* 내부 패딩 줄이기 (겹침 방지 핵심) */
.sub-16 #component7956 {
    padding: 60px 20px !important;
    height: auto !important;
}

/* 카드 영역 정리 */
.sub-16 #component5376 .row {
    margin-top: 30px;
}

/* 카드 겹침 방지 */
.sub-16 #component5376 .col-sm-2 {
    position: relative;
    top: 0 !important;
    transform: none !important;
}

/* 아래 섹션과 간격 확보 (중요) */
.sub-16 #component7539 {
    margin-top: 0px !important;
    position: relative;
    z-index: 1;
}

/* 혹시 남는 겹침 차단 */
.sub-16 #component5376 {
    overflow: hidden;
}

    /* 카드 1개 */
    .sub-16 #component5376 .col-sm-2 {
        width: 100% !important;
    }

    .sub-16 #component7838 .font-2xl {
        font-size: 18px;
    }
}


/* =========================
   ===== 태블릿 =====
========================= */
@media (max-width: 992px) {

    .sub-17 #component5376 {
        padding: 60px 30px !important;
    }
}

/* =========================
   ===== 모바일 =====
========================= */
@media (max-width: 768px) {

    /* 배너 */
    .sub-17 #component5376 {
        padding: 50px 20px !important;
        border-radius: 15px;
    }

    /* 내부 padding 제거 */
    .sub-17 #component7956 {
        padding: 0 !important;
    }

    /* 텍스트 중앙 정렬 */
    .sub-17 #component5376 {
        text-align: center;
    }

    /* 이름도 중앙 */
    .sub-17 #component5376 div[style*="text-align:right"] {
        text-align: center !important;
    }

    /* 본문 여백 */
    .sub-17 #component2067 {
        margin-top: 40px !important;
    }
}

/* =========================
   ===== 작은 모바일 =====
========================= */
@media (max-width: 480px) {

    .sub-17 #component5376 {
        padding: 40px 15px !important;
    }

    .sub-17 #component2067 .font-l,
    .sub-17 #component2067 div {
        font-size: 14px;
    }
}


/* =========================
   ===== 태블릿 =====
========================= */
@media (max-width: 992px) {

    .sub-18 .person > div {
        width: calc(33.333% - 14px);
    }
}

/* =========================
   ===== 모바일 =====
========================= */
@media (max-width: 768px) {



    /* 카드 2개 */
    .sub-18 .person > div {
        width: calc(50% - 10px);
    }
}

/* =========================
   ===== 작은 모바일 =====
========================= */
@media (max-width: 480px) {

    /* 카드 1개 */
    .sub-18 .person > div {
        width: 100%;
    }

    .sub-18 .person_txt {
        font-size: 14px;
    }
}

/* =========================
   ===== 태블릿 =====
========================= */
@media (max-width: 992px) {

    .sub-19 #component3547 {
        flex-direction: column;
        gap: 20px;
    }

    .sub-19 #component3547 .col-sm-6 {
        width: 100%;
    }
}

/* =========================
   ===== 모바일 =====
========================= */
@media (max-width: 768px) {

    /* 배너 */
    .sub-19 #component5376 {
		height:200px !important;
		
    }
	 .sub-19 #component7956 {
		    padding: 20px 100px 0px !important;
		
    }


    /* 완전 세로 */
    .sub-19 #component3547 {
        flex-direction: column;
    }

    /* 테이블 폰트 */
    .sub-19 .worship_01 td {
        font-size: 14px;
        padding: 12px !important;
    }

    /* 테이블 가독성 */
    .sub-19 .worship_01 td:first-child {
        font-weight: 600;
    }
}

/* =========================
   ===== 작은 모바일 =====
========================= */
@media (max-width: 480px) {

    .sub-19 .worship_01 td {
        font-size: 13px;
        padding: 10px !important;
    }

}


/* =========================
   sub-20 전체 반응형
========================= */

/* 1. 좌우 2단 → 모바일에서 세로 */
#content.sub-20 .dimode-sort.row {
    display: flex;
    flex-wrap: wrap;
}

#content.sub-20 .col-sm-6 {
    width: 50%;
}

@media (max-width: 768px) {
    #content.sub-20 .col-sm-6 {
        width: 100%;
    }
}


/* 2. 카카오맵 반응형 처리 (핵심) */
#content.sub-20 #daumRoughmapContainer1775720105553 {
    width: 100% !important;
}

#content.sub-20 #daumRoughmapContainer1775720105553 .wrap_map {
    height: 300px !important;
}

@media (max-width: 768px) {
    #content.sub-20 #daumRoughmapContainer1775720105553 .wrap_map {
        height: 250px !important;
    }
}


/* 3. 이미지 반응형 */
#content.sub-20 img {
    max-width: 100%;
    height: auto;
}


/* 4. 박스 여백 정리 */
#content.sub-20 [id^="unit"] > div {
    padding: 20px !important;
}


/* 5. 하단 정보 영역 */
#content.sub-20 #unit6162 > div {
    padding: 30px !important;
}

@media (max-width: 768px) {
    #content.sub-20 #unit6162 > div {
        padding: 20px !important;
    }
}


/* 6. 주소/전화 줄 정리 */
#content.sub-20 #unit6162 .row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

#content.sub-20 #unit6162 .col-sm-2 {
    width: 100%;
    margin-bottom: 5px;
}

#content.sub-20 #unit6162 .col-sm-10 {
    width: 100%;
}

/* 1. 좌우 박스 높이 맞추기 */
#content.sub-20 #component4231 {
    display: flex;
    flex-wrap: wrap;
}

#content.sub-20 #component4231 > .col-sm-6 {
    display: flex;
}

/* 2. 내부 박스를 동일 높이로 */
#content.sub-20 #component4231 > .col-sm-6 > div {
    width: 100%;
    display: flex;
}

#content.sub-20 #component4231 [id^="unit"] > div {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 3. 지도 / 이미지 꽉 채우기 */
#content.sub-20 #daumRoughmapContainer1775720105553,
#content.sub-20 #daumRoughmapContainer1775720105553 .wrap_map {
    width: 100% !important;
    height: 100% !important;
}

#content.sub-20 #component4723 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 4. 모바일에서는 다시 자연스럽게 */
@media (max-width: 768px) {
    #content.sub-20 #component4231 {
        display: block;
    }

    #content.sub-20 #component4231 > .col-sm-6 {
        display: block;
    }

    #content.sub-20 #daumRoughmapContainer1775720105553 .wrap_map {
        height: 250px !important;
    }

    #content.sub-20 #component4723 img {
        height: auto;
    }
}


@media (max-width: 480px) {
    #content.sub-29 #component7956 {
        padding: 10px !important;
    }
	
	#component5376[style*="height: 500px"]{
	height: 600px !important;
}

	#component5376[style*="height: 300px"]{
	height:150px !important;
}

}
/* =========================
sub-30 responsive
========================= */

@media (max-width:991px){

/* 공통 여백 */
.sub-30 .container{
padding-left:20px;
padding-right:20px;
}

/* 상단 비주얼 */
.sub-30 #component5376{
height:220px !important;
border-radius:14px;
background-size:cover !important;
background-position:center !important;
}

.sub-30 #component7956{
padding:55px 25px 0 !important;
}

.sub-30 .font-xl{
font-size:30px !important;
line-height:1.4;
}

.sub-30 .font-l{
font-size:20px !important;
line-height:1.7;
}

.sub-30 .font-m{
font-size:15px !important;
letter-spacing:2px !important;
}

/* 2열 -> 1열 */
.sub-30 #component7539 > .col-sm-6{
width:100%;
display:block;
padding:0 !important;
margin-bottom:30px;
}

/* 카드 디자인 */
.sub-30 #component7539 [style*="box-shadow"]{
height:auto !important;
padding:35px 28px !important;
border-radius:20px !important;
}

/* 리스트 spacing */
.sub-30 .mission_01 li{
font-size:17px;
line-height:1.8;
}

.sub-30 .mission_01 li+li{
margin-top:14px;
}

/* 중간 설명 */
.sub-30 #component7838{
margin:35px 0 !important;
}

.sub-30 #component7838 br{
display:none;
}

/* 하단 배너 */
.sub-30 #component8041{
height:auto !important;
min-height:430px;
padding:50px 20px !important;
background-size:cover !important;
background-position:center !important;
}

.sub-30 #component4580{
margin:0 !important;
padding:0 !important;
}

.sub-30 #component8041 .font-l{
font-size:22px !important;
line-height:1.7;
}

/* 제목 점 아이콘 정렬 */
.sub-30 [style*="border: 4px solid rgb(153, 150, 95)"]{
transform:translateY(-1px);
}

/* 줄바꿈 긴 문단 가독성 */
.sub-30 div[style*="line-height:1.8"]{
font-size:17px;
line-height:1.9 !important;
word-break:keep-all;
}

}


/* ======================
mobile
======================*/
@media (max-width:767px){

.sub-30 #component5376{
height:180px !important;
}

.sub-30 #component7956{
padding:45px 18px 0 !important;
}

.sub-30 .font-xl{
font-size:24px !important;
}

.sub-30 .font-l{
font-size:17px !important;
}

.sub-30 .font-m{
font-size:13px !important;
}

.sub-30 #component7539{
margin-top:40px !important;
}

.sub-30 #component7539 [style*="box-shadow"]{
padding:28px 22px !important;
}

.sub-30 .mission_01 li{
font-size:15px;
}

.sub-30 #component8041{
min-height:500px;
}

.sub-30 #component8041 br{
display:none;
}

.sub-30 #component8041 .font-l{
font-size:18px !important;
}

}


/* 살짝 hover (PC에서 예쁨) */
@media (min-width:992px){

.sub-30 #component7539 [style*="box-shadow"]{
transition:.35s;
}

.sub-30 #component7539 [style*="box-shadow"]:hover{
transform:translateY(-8px);
box-shadow:0 10px 28px rgba(0,0,0,.08) !important;
}

}