﻿@font-face {
    font-family: 'notosanskr-bold_0';
    src: url('webfont/notosanskr-bold_0.otf') format('opentype');
}
@font-face {
    font-family: 'notosanskr-regular_0';
    src: url('webfont/notosanskr-regular_0.otf') format('opentype');
}
@font-face {
    font-family: 'notoserifkr-light';
    src: url('webfont/notoserifkr-light.otf') format('opentype');
}
@keyframes move {
    from {
        transform: translateX(100px) scale(1.2);
        animation-timing-function: cubic-bezier(.2,0,.8,1);
    }
    to {
        transform: translateX(0px) scale(1);
    }
}
@-webkit-keyframes updown {
    0% {
        bottom: 0;
    }
    100% {
        bottom: 30px;
    }
}

@-webkit-keyframes spinspin {0% {-webkit-transform: rotate(0deg);}100% {-webkit-transform:rotate(180deg);}}
@keyframes spinspin {0% {transform: rotate(0deg);}100% {transform:rotate(180deg);}}

/* 클릭 시 살짝 눌리는 키프레임 (Bounce) */
@keyframes clickPush {
    0% { transform: scale(1); }
    50% { transform: scale(0.95); }
    100% { transform: scale(1); }
}

:root{--gap1:55px;--gap2:65px;--gap3:80px;}

body *{font-family: 'notosanskr-regular_0';}
.notosanskrBold{font-family: 'notosanskr-bold_0';}
.notosanskrLight{font-family: 'notoserifkr-light';}

/* common */
a{text-decoration:none!important;color:inherit;}
#main-slider{position:relative;}
.nav-tabs {border-bottom:none;}
.plus { position:absolute; top:0; right:0;}
.plus:hover { opacity:0.8; transition:0.3s all ease;}
.slider .move-btn{top:50%!important;}
.slider .slider-wrapper .slide p{display: flex;}
.slider .slider-wrapper .slide img{width: 100%;}
.box{display:inline-block; position:relative; opacity:0; top:50px; }
.flexBox{display: inline-flex;flex-direction: column;flex-wrap: wrap;align-content: center;justify-content: center;align-items: center;text-align:center;}
.black{color:#000!important;text-decoration:none;}
.white{color:#fff!important;text-decoration:none;}

#main-slider .mainQM{position: absolute;top: 75%;text-align: center;width: 100%;transform: translate(0,-50%);
display: inline-flex;justify-content: center;align-items: center;gap:var(--gap1);}
#main-slider .mainQM a{padding: 72.5px;position: relative;display: inline-block;background-color: rgba(255, 255, 255, .7);text-decoration:none;color:#000;border: solid 1px #222;}
#main-slider .mainQM a:hover{position:relative;
animation-name: updown;animation-duration:1s;animation-duration: leaner;animation-iteration-count:infinite;animation-direction:alternate;animation-fill-mode: forwards;}
#main-slider .mainQM a .QM{position: absolute;top: 50%;left: 0;
text-align: center;width: 100%;transform: translate(0,-50%);display: inline-flex;flex-direction: column;gap: 10px;}
#main-slider .mainQM a .QM .QIMG{display: inline-block;}
#main-slider .mainQM a .QM h1{margin: 0;font-size: 16px; font-weight:bold; color:#527523;}
/* 새로 추가된 영문 텍스트 스타일 */
#main-slider .mainQM a .QM .eng_text {margin: 0;font-size: 14px;font-weight: 400;color: #333;margin-top: -5px;}

#main-1{background-repeat:no-repeat;background-position:center;background-size:cover;padding: 0 0 4.5vw;}
#main-1 .main1TM{display: inline-flex;align-items: flex-end;margin: -85px 0 0;gap:var(--gap2);width:100%;position:relative;padding:0 0 150px;}
#main-1 .main1TM .sermonBG{display: inline-block;float: left;width: 54%;position:relative;}
#main-1 .main1TM .sermonBG a .sermonPLAY{position: absolute;border-radius: 50%;display: inline-flex;
width: 100px;height: 100px;background-color: #B1092D;right: 5%;bottom: 0;transform: translate(0,50%);
flex-wrap: nowrap;justify-content: center;align-items: center;}
#main-1 .main1TM .sermonBG .sermonSM{position: absolute;width: 100%;height: 100%;top: 0;padding: 50px 40px;text-align: right;color:#fff;}
#main-1 .main1TM .sermonBG .sermonSM h1{margin:0 0 20px;font-size:40px;}
#main-1 .main1TM .sermonBG .sermonSM h5{margin:0;}
#main-1 .main1TM .sermonBG .sermonSM h5 span{opacity:.85;font-size:25px;line-height: 1.5;}
#main-1 .main1TM .sermonM{display: inline-block;float: left;width: 42%;}
#main-1 .main1TM .sermonM .sermonMPLAY{display:inline-flex;gap:30px;}
#main-1 .main1TM .sermonM > h1{margin: 0;font-size: 50px;width: 100%;color:#fff;
word-break: break-word;text-overflow: ellipsis;white-space: nowrap;overflow: hidden;float: left;}
#main-1 .main1TM .sermonM > h5{margin: 0;line-height: 1.5;font-size: 50px;color:#A4A4A4;padding:0 0 35px;}
#main-1 .main1TM .sermonM .sermonMPLAY .Live{padding: 57px;position: relative;border: 3px solid #b71c27;border-radius: 15px;display:inline-block;background-color:#b71c27;}
#main-1 .main1TM .sermonM .sermonMPLAY .Live img{display: inline-block;position: absolute;top: 35%;left: 50%;text-align: center;transform: translate(-50%, -50%);}
#main-1 .main1TM .sermonM .sermonMPLAY .Live h1{margin:0;display: inline-block;position: absolute;top: 65%;left: 50%;text-align: center;transform: translate(-50%, -50%);font-size: 1rem;color: #fff;width: 100%;}
#main-1 .main1TM .sermonM .sermonMPLAY .Weekend{padding: 57px;position: relative;border: 3px solid #fff;border-radius: 15px;display:inline-block;}
#main-1 .main1TM .sermonM .sermonMPLAY .Weekend:before{background-color:#fff;}
#main-1 .main1TM .sermonM .sermonMPLAY .Weekend:hover h1{color:#000; transition:0.3s all ease;}
#main-1 .main1TM .sermonM .sermonMPLAY .Weekend h1{display: inline-block;font-size: 20px;line-height: 1.3;font-weight: bold;margin:0;
color: #fff;position: absolute;top: 50%;left: 0;text-align: center;width: 100%;transform: translate(0,-50%);}

#main-1 .main1TM .sermonM .sermonMPLAY .Friday{padding: 57px;position: relative;border: 3px solid #fff;border-radius: 15px;display:inline-block;}
#main-1 .main1TM .sermonM .sermonMPLAY .Friday:before{background-color:#fff;}
#main-1 .main1TM .sermonM .sermonMPLAY .Friday:hover h1{color:#000; transition:0.3s all ease;}
#main-1 .main1TM .sermonM .sermonMPLAY .Friday h1{display: inline-block;font-size: 20px;line-height: 1.3;font-weight: bold;margin:0;
color: #fff;position: absolute;top: 50%;left: 0;text-align: center;width: 100%;transform: translate(0,-50%);}

/* ================= main1BM (하단 배너 그리드) ================= */
#main-1 .main1BM .main1BMT{color:#fff;}
#main-1 .main1BM .main1BMT h2{margin: 0;text-align: left;font-size: 35px;letter-spacing: 5px;line-height: 2;padding: 0 0 80px;}
#main-1 .main1BM .main1BMT h1{margin: 20px 0 0;text-align: left;font-size: 60px;font-weight:bold;}
#main-1 .main1BM .QM {
    display: flex; /* grid 대신 flex 사용 */
    width: 100%;
    height: 25vw;
    min-height: 350px; /* 높이가 너무 찌그러지지 않도록 방어 */
    max-height: 400px;
    overflow: hidden;
}

#main-1 .main1BM .QM .QCM {
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* PC 컬럼별 넓이 비율 (시안에 맞게 세밀 조정) */
#main-1 .main1BM .QM .QCM:nth-child(1) { flex: 1.25; }
#main-1 .main1BM .QM .QCM:nth-child(2) { flex: 1; }
#main-1 .main1BM .QM .QCM:nth-child(3) { flex: 0.85; }
#main-1 .main1BM .QM .QCM:nth-child(4) { flex: 1; }
#main-1 .main1BM .QM .QCM:nth-child(5) { flex: 0.9; }

#main-1 .main1BM .QM .QCM .QBT {
    flex: 1; /* 상하 2단일 경우 자동으로 높이 50%씩 분할 */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 20px;
    transition: filter 0.3s ease, box-shadow 0.3s ease;
    text-decoration: none;
}

#main-1 .main1BM .QM .QCM .QBT:hover {
    filter: brightness(0.95);
    box-shadow: inset 0 0 20px rgba(0,0,0,0.1);
}

#main-1 .main1BM .QM .QCM .QBT .QT {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 15px; /* 타이틀과 서브타이틀 간격 */
}
#main-1 .main1BM .QM .QCM .QBT .QT h1 { margin: 0; font-size: 1.6rem; color: #fff; line-height: 1.3; word-break: keep-all; }
#main-1 .main1BM .QM .QCM .QBT .QT h5 { margin: 0; font-size: 1rem; color: rgba(255, 255, 255, 0.8); line-height: 1.4; word-break: keep-all; }

/* 밝은 배경(.BLM) 텍스트 컬러 처리 */
#main-1 .main1BM .QM .QCM .BLM .QT h1 { color: #2b2b2b; }
#main-1 .main1BM .QM .QCM .BLM .QT h5 { color: #555; }
.slider .slider-dots{bottom:10% !important;}
#main-2{background-repeat:no-repeat;background-position:center;background-size:cover;color:#000;}
#main-2 .main2T h2{margin: 0;text-align: center;font-size: 35px;letter-spacing: 5px;line-height: 2;padding:80px 0 0;}
#main-2 .main2T h1{margin: 20px 0 0;text-align: center;font-size: 60px;font-weight:bold;}
#main-2 .main2T h5{margin: 0;text-align: center;font-size: 30px;line-height:3;}
#main-2 .main2M{display: inline-flex;width: 100%;justify-content: center;gap: 20px;padding: 115px 0 240px;}
#main-2 .main2M a{padding: 90.5px;position: relative;display: inline-block;border-radius: 50%;background-color:#f4f4f6;}
#main-2 .main2M a:hover{position:relative;
animation-name: updown;animation-duration:1s;animation-duration: leaner;animation-iteration-count:infinite;animation-direction:alternate;animation-fill-mode: forwards;}
#main-2 .main2M .view-more:before{background-color:#77974d;}
#main-2 .main2M a h1{position: absolute;top: 50%;margin:0;font-size:27px;color:#77974d;word-break: keep-all;
text-align: center;width: 100%;border: none;display: block;transform: translate(-50%,-50%);line-height: 1.2;}
#main-2 .main2M a:hover h1{color:#f4f4f6;}

#main-3{position: relative;width: 100%;overflow: hidden;height: 620px;display: inline-block;float: left;}
#main-3 .main3M{overflow:hidden;padding: 120px 0 0;}
#main-3 .main3M > .container{position: absolute;right: -10%;top: 50%;transform: translate(0,-50%);}
#main-3 .main3M .main3L{overflow:hidden;position:relative;}
#main-3 .main3M .main3L .main3S{padding:85px 0 10px;}
#main-3 .main3M .main3L .main3S .swiper-slide{box-shadow: 7px 7px 5px rgba(0,0,0,0.3);}
#main-3 .main3M .main3L .main3S .swiper-slide a{display: inline-block;width: 100%;overflow: hidden;float:left;}
#main-3 .main3M .main3L .main3S .swiper-slide a .galleryIMG {display: inline-flex;width: 100%;
position: relative;height: 270px;overflow: hidden;
margin: 0 auto;background-size: cover;background-position: 50% 50%;background-origin: border-box;background-repeat: no-repeat;align-items: center;justify-content: center;}
#main-3 .main3M .main3L .main3S .swiper-slide:hover .galleryIMG{transform:scale(1.2); transition:0.3s all ease;}
#main-3 .main3M .main3L .main3S .swiper-slide a .galleryIMG .galleryT h1{margin: 0;line-height: 1.5;font-size: 24px;}
#main-3 .main3M .main3L .main3S .swiper-slide a .galleryIMG .galleryT h5{margin: 0;font-size: 20px;}
#main-3 .main3M .main3L .main3S .swiper-slide .galleryT{opacity: 0;width: 100%;height: 100%;display: inline-flex;color:#fff;
align-items: center;justify-content: center;flex-direction: column;}
#main-3 .main3M .main3L .main3S .swiper-slide:hover .galleryT{opacity:1; transition:0.3s all ease;background-color:rgba(0,0,0,.5);}

#main-3 .main3M .main3L .main3P{display: inline-flex;justify-content: space-between;gap: 15px;position: absolute;top:10%;}
#main-3 .main3M .main3L .main3P .swiper-pagination-bullet-active{background-color:#fff!important;width:40px!important; transition:0.3s all ease;}
#main-3 .main3M .main3L .main3P .swiper-pagination-bullet{background-color:#C2C2C2;width:20px;height:20px;opacity:1;border-radius:15px; transition:0.3s all ease;}

#main-3 .main3M .main3R{}
#main-3 .main3M .main3R h1{margin: 0;font-size: 51px;line-height: 2;color:#fff;}
#main-3 .main3M .main3R h2{margin: 0;color: #878787;line-height: 1;font-size: 46px;font-weight:bold;}
#main-3 .main3M .main3R h5{margin: 0;font-size: 24px;line-height: 2.5;color:#fff;}

.view-more {
    display: inline-block;
    text-decoration: none;
    overflow: hidden;
    vertical-align: middle;
    background: transparent;
    overflow: hidden;
    -webkit-transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1);
    position: relative;
    z-index: 1;
    font-weight: 100;
}

.view-more:hover:before {
-webkit-transform: translateX(0) skewX(-17.62deg);-ms-transform: translateX(0) skewX(-17.62deg);
transform: translateX(0) skewX(-17.62deg);-webkit-transform-origin: left top;
-ms-transform-origin: left top;transform-origin: left top;}

.view-more:before {
z-index: -1;content: "";display: block;width: 135%;height: 105%;position: absolute;left: 0;top: 0;
-webkit-transform-origin: right top;-ms-transform-origin: right top;transform-origin: right top;-webkit-transform: translateX(-101%) skewX(-17.62deg);
-ms-transform: translateX(-101%) skewX(-17.62deg);transform: translateX(-101%) skewX(-17.62deg);-webkit-transition: -webkit-transform 1s cubic-bezier(0.165, 0.84, 0.44, 1);
transition: -webkit-transform 1s cubic-bezier(0.165, 0.84, 0.44, 1);transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1);transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1),  -webkit-transform 1s cubic-bezier(0.165, 0.84, 0.44, 1);
-webkit-backface-visibility: hidden;backface-visibility: hidden;}

/* --- 추가 애니메이션 스타일 (기존 스타일 보존) --- */

/* 클릭 시 살짝 눌리는 키프레임 적용 클래스 */
.is-active {animation: clickPush 0.4s ease-out forwards !important;}

/* AOS 요소들이 나타날 때 더 부드럽게 transition 적용 */
[data-aos] {transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;}

/* 클릭 효과 적용을 위해 인라인 요소에 기본 transform 허용 */
.btn-click-ani {display: inline-block;}

/* 퀵메뉴 호버 시 기존 updown 애니메이션과 클릭 애니메이션이 충돌하지 않도록 우선순위 부여 */
#main-slider .mainQM a.is-active, 
#main-2 .main2M a.is-active {animation: clickPush 0.4s ease-out forwards !important;}

/* =========================================================
   Hover Animations (AOS 안전 속성 위주 적용)
   ========================================================= */

/* 1. 메인 슬라이더 위 퀵메뉴 (그림자 및 살짝 밝아지는 효과) */
#main-slider .mainQM a {
    transition: box-shadow 0.3s ease, background-color 0.3s ease !important;
}
#main-slider .mainQM a:hover {
    box-shadow: 0 10px 20px rgba(0,0,0,0.15);
    background-color: rgba(255, 255, 255, 0.9);
}

/* 2. Main1 (예배와 말씀) - 좌측 썸네일 이미지 및 플레이 버튼 확대 */
#main-1 .main1TM .sermonBG a {
    display: block;
    overflow: hidden; /* 이미지 확대 시 밖으로 나가지 않게 */
}
#main-1 .main1TM .sermonBG a > img {
    transition: transform 0.5s ease;
}
#main-1 .main1TM .sermonBG a:hover > img {
    transform: scale(1.03); /* 배경 이미지 살짝 확대 */
}
#main-1 .main1TM .sermonBG a .sermonPLAY {
    transition: all 0.3s ease;
}
#main-1 .main1TM .sermonBG a:hover .sermonPLAY {
    background-color: #d11237; /* 버튼 색상 진하게 */
    transform: translate(0, 50%) scale(1.1); /* 버튼 크기 살짝 확대 */
}

/* 3. Main1 (예배와 말씀) - 우측 버튼 영역 (광원 및 그림자 효과) */
#main-1 .main1TM .sermonM .sermonMPLAY a {
    transition: box-shadow 0.3s ease, filter 0.3s ease !important;
}
#main-1 .main1TM .sermonM .sermonMPLAY a:hover {
    box-shadow: 0 10px 20px rgba(0,0,0,0.2);
    filter: brightness(1.05); /* 전체적으로 살짝 밝아짐 */
}

/* 4. Main1 (하단 배너 그리드 영역) - 내부 쉐도우 및 밝기 조절 */
#main-1 .main1BM .QM .QCM .QBT {
    transition: filter 0.3s ease, box-shadow 0.3s ease;
}
#main-1 .main1BM .QM .QCM .QBT:hover {
    filter: brightness(0.95); /* 살짝 톤 다운시켜 클릭 유도 */
    box-shadow: inset 0 0 20px rgba(0,0,0,0.1);
}

/* 5. Main2 (다음세대) - 원형 아이콘 호버 시 부드러운 그림자 */
#main-2 .main2M a {
    transition: box-shadow 0.3s ease, background-color 0.3s ease !important;
}
#main-2 .main2M a:hover {
    box-shadow: 0 15px 25px rgba(0,0,0,0.15);
}

/* 공통 스타일 (기존 유지 및 border-radius 등 최적화) */
.slider .move-btn {
    background: rgba(0, 0, 0, 0.68) !important;
    position: absolute !important;
    top: 50% !important;
    margin-top: -52px !important;
    cursor: pointer !important;
    padding: 30px 0 !important;
    width: 2rem !important;  /* SVG가 비정상적으로 커지는 걸 방지하기 위한 너비 제한 */
    height: auto !important;
    box-sizing: content-box !important;
}

/* 왼쪽 화살표 (이전 버튼) 강제 매핑 */
.slider .move-btn.prev-btn {
    left: 0 !important;
    /* 흰색 왼쪽 꺾쇠 화살표 SVG */
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='15 18 9 12 15 6'%3E%3C/polyline%3E%3C/svg%3E") !important;
}

/* 오른쪽 화살표 (다음 버튼) 강제 매핑 */
.slider .move-btn.next-btn {
    right: 0 !important;
    /* 흰색 오른쪽 꺾쇠 화살표 SVG */
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'%3E%3C/polyline%3E%3C/svg%3E") !important;
}
@media(min-width:1440px) {
    .container {
        width: 1440px;
    }
}
@media(min-width:1440px) {
    .container {
        width: 1440px;
    }
}

@media (max-width:1699px) {
}

@media (max-width:1499px) {
    :root{--gap2: 25px;}
    #main-1 .main1TM{margin: -45px 0 0;}
    #main-1 .main1TM .sermonM .sermonMPLAY{gap: 10px;}
    #main-1 .main1TM .sermonM > a:nth-child(1) h1{font-size:38px;}
    #main-1 .main1TM .sermonM > a:nth-child(1) h5{font-size:36px;}
    #main-1 .main1BM .main1BT h1{font-size:38px;}
    #main-1 .main1BM .main1BT h5{font-size:36px;}
    #main-1 .main1BM .QM { height: 28vw; min-height: 320px; }
    #main-1 .main1BM .QM .QCM .QBT .QT h1 { font-size: 1.4rem; }
    #main-1 .main1BM .QM .QCM .QBT .QT h5 { font-size: 0.95rem; }
    #main-2 .main2M a{padding:73px;}
    #main-2 .main2T h1{font-size:52px;}
    #main-2 .main2M a h1{font-size:27px;}
    #main-3 .main3M > .container{right:-15%;}
    #main-3 .main3M .main3R h1{font-size:42px;}
}
@media (max-width:1199px) {
    :root {--gap1: 25px;--gap2: 20px;--gap3: 25px;}
    #main-slider .mainQM a{padding:70px;}
    #main-1 .main1TM{margin: -20px 0 0;padding: 0 0 100px;}
    #main-1 .main1TM .sermonM > a:nth-child(1) h1{font-size:32px;}
    #main-1 .main1TM .sermonM > a:nth-child(1) h5{font-size:28px;}
    #main-1 .main1TM .sermonM .sermonMPLAY .Weekend,
    #main-1 .main1TM .sermonM .sermonMPLAY .Live{padding:47px;}
    #main-1 .main1BM .main1BT h1{font-size:32px;}
    #main-1 .main1BM .main1BT h5{font-size:28px;}
    /* 태블릿: 3개 / 2개 구조로 줄바꿈 */
    #main-1 .main1BM .QM { flex-wrap: wrap; height: auto; max-height: none; }
    #main-1 .main1BM .QM .QCM { 
        width: 33.333%; 
        height: 280px; 
        flex: none !important; /* PC비율 무시하고 지정 너비 적용 */
    }
    #main-1 .main1BM .QM .QCM:nth-child(4),
    #main-1 .main1BM .QM .QCM:nth-child(5) { width: 50%; }
    #main-1 .main1BM .NewsM{padding: 0 0 60px;}
    #main-1 .main1BM .NewsM .NewsBOX .NewsSBOX{width: 80%;margin: -20px 0 0;}
    #main-1 .main1BM .NewsM .NewsBOX .NewsSBOX .NewsT h7{font-size:17px;}
    #main-1 .main1BM .NewsM .NewsBOX .NewsSBOX .NewsT h1{font-size:28px;}
    #main-1 .main1BM .NewsM .NewsBOX .NewsSBOX .NewsT h5{font-size:15px;}
    #main-2 .main2M{padding: 50px 0 100px;flex-wrap: wrap;}
    #main-2 .main2M a{padding:95px;}
    #main-2 .main2T h2{font-size:36px;}
    #main-2 .main2T h1{font-size:48px;}
    #main-2 .main2T h5{font-size:24px;line-height:2.5;}
    #main-2 .main2M a h1{font-size:24px;}
    #main-3 .main3M{padding: 60px 0 0;}
    #main-3 .main3M .main3R{order: 1;padding: 0 15px;display: inline-flex;flex-wrap: wrap;align-items: center;}
    #main-3 .main3M .main3R h1{margin-right:15px;}
    #main-3 .main3M .main3R h2{width:100%;}
    #main-3 .main3M > .container{position:relative;right: 0;order:2;transform:inherit;}
}

@media (max-width:992px) {
    #main-slider .mainQM{top:80%;}
    #main-slider .mainQM a{padding:60px;}
	#main-slider .mainQM a .QM{align-items: center;}
    #main-slider .mainQM a .QM h1{font-size:14px;}
	#main-slider .mainQM a .QM .QIMG{width:60px;}
	#main-slider .mainQM a .QM .eng_text{font-size:13px;}
    #main-1 .main1TM{flex-wrap: wrap;justify-content: center;padding: 0 0 50px;}
    #main-1 .main1TM .sermonBG{width:90%;margin: 0 0 50px;}
    #main-1 .main1TM .sermonM{width:100%;}
    #main-1 .main1TM .sermonM .sermonMPLAY .Weekend, 
    #main-1 .main1TM .sermonM .sermonMPLAY .Live{padding:55px;}
    /* 모바일 가로: 2개씩 구조로 변경 */
    #main-1 .main1BM .QM .QCM { width: 50%; height: 250px; }
    #main-1 .main1BM .QM .QCM:nth-child(5) { width: 100%; height: 180px; } /* 마지막 요소는 100% 꽉 채우기 */
    #main-1 .main1BM .NewsM .NewsBOX .NewsSBOX{width:100%;margin: -15px 0 0;}
    #main-1 .main1BM .NewsM .NewsBOX .NewsSBOX .more{right: 30%;}
    #main-1 .main1BM .NewsM .NewsBOX .NewsSBOX .NewsT{margin-left: 15px;}
    #main-2 .main2T h2{padding: 35px 0 0;}
    #main-2 .main2M{padding: 25px 0 50px;gap:25px;}
    #main-2 .main2M a{padding:80px;}
    #main-3 .main3M > .container{padding:0!important;}
}

@media (max-width:767px) {
    .row{margin:0;}
    :root {--gap2: 5px;}
    #main-slider .mainQM{position: relative; transform: none; padding: 15px;}
    #main-slider .mainQM a {padding: 50px;}
    #main-slider .mainQM a .QM .QIMG {width: 40px;}
    #main-slider .mainQM a .QM h1{font-size:12px;}
    #main-slider .mainQM a .QM .eng_text{font-size:10px;}
    #main-1 .main1TM{padding:0 0 20px;}
    #main-1 .main1TM .sermonBG{margin:0 0 20px;}
    #main-1 .main1TM .sermonBG a .sermonPLAY{width:30px;height:30px;}
	#main-1 .main1TM .sermonBG .sermonSM h1{font-size:20px;}
	#main-1 .main1TM .sermonBG .sermonSM h5 span{font-size:17px;}
    #main-1 .main1TM .sermonM > a:nth-child(1) h1{font-size:24px;}
    #main-1 .main1TM .sermonM > a:nth-child(1) h5{font-size:20px;padding: 0 0 20px;}
    #main-1 .main1TM .sermonM .sermonMPLAY{gap: 15px;flex-wrap: wrap;}
    #main-1 .main1TM .sermonM .sermonMPLAY .Weekend, 
    #main-1 .main1TM .sermonM .sermonMPLAY .Live{padding: 50px;}
    #main-1 .main1TM .sermonM .sermonMPLAY .Friday h1{font-size:17px;}
    #main-1 .main1TM .sermonM .sermonMPLAY .Live h1,
    #main-1 .main1TM .sermonM .sermonMPLAY .Weekend h1{font-size:15px;}
    #main-1 .main1TM .sermonM .sermonMPLAY .Weekend, 
    #main-1 .main1TM .sermonM .sermonMPLAY .Live{padding:40px;}
	#main-1 .main1TM .sermonM > h1,
	#main-1 .main1TM .sermonM > h5{font-size:20px;}
    #main-1 .main1BM .main1BT {margin: 0 0 20px;align-items: flex-start;flex-direction: column;gap:0;}
    #main-1 .main1BM .main1BT h1{font-size:24px;line-height:1.3;}
    #main-1 .main1BM .main1BT h1 strong{display:block;}
    #main-1 .main1BM .main1BT h5{font-size:20px;}
    /* 모바일 세로: 1개씩 세로로 층층이 쌓임 */
    #main-1 .main1BM .QM { flex-direction: column; flex-wrap: nowrap; }
    #main-1 .main1BM .QM .QCM { width: 100% !important; height: auto !important; }
    
    #main-1 .main1BM .QM .QCM .QBT { 
        padding: 20px 0; /* 터치 영역 확보를 위해 여백 넓게 */
    }
    #main-1 .main1BM .QM .QCM .QBT .QT { gap: 10px; }
    #main-1 .main1BM .QM .QCM .QBT .QT h1 { font-size: 1.3rem; }
    #main-1 .main1BM .QM .QCM .QBT .QT h5 { font-size: 0.9rem; }
    #main-1 .main1BM .NewsM{flex-wrap: wrap;padding: 0 0 20px;}
    #main-1 .main1BM .NewsM a{width:100%;}
    #main-1 .main1BM .NewsM .NewsBOX .NewsSBOX .NewsT h1{font-size:20px;}
	#main-1 .main1BM .main1BMT h1{font-size:24px;}
	#main-1 .main1BM .main1BMT h2{font-size:17px;padding: 0 0 20px;}
    #main-2 .main2T h2{padding:20px; font-size:20px;}
    #main-2 .main2T h1{font-size:24px;margin:0;}
    #main-2 .main2T h5{font-size:17px;}
    #main-2 .main2M{flex-wrap: wrap;gap: 10px;}
    #main-2 .main2M a{padding:10%;}
    #main-2 .main2M a h1{font-size:12px;}
    #main-3{height:inherit; padding:0 0 20px;}
    #main-3 .main3M{padding:20px 0 0;}
    #main-3 .main3M .main3R h2{font-size:24px;}
    #main-3 .main3M .main3R h1{font-size:24px;}
    #main-3 .main3M .main3R h5{font-size:17px;}
    #main-3 .main3M .main3L .main3P{top:5%;}
    #main-3 .main3M .main3L .main3S{padding:50px 0 10px;}
    #main-3 .main3M .main3L .main3P .swiper-pagination-bullet{width: 15px;height: 15px;}
    #main-3 .main3M .main3L .main3P .swiper-pagination-bullet-active{width: 30px!important;}
    #main-3 .main3M > .container{padding:0!important;transform: inherit;}
	#main-3 .main3M .main3L .main3S .swiper-slide a .galleryIMG .galleryT h1{font-size:17px;}
	#main-3 .main3M .main3L .main3S .swiper-slide a .galleryIMG .galleryT h5{font-size:15px;}
}

@media (max-width:320px) {
}