﻿@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;
    }
}
@font-face {
    font-family: 'pretendard-bold';
    src: url('fonts/pretendard-bold.otf') format('opentype');
}
@font-face {
    font-family: 'pretendard-regular';
    src: url('fonts/pretendard-regular.otf') format('opentype');
}
@font-face {
    font-family: 'nanumsquareneo-brg';
    src: url('fonts/nanumsquareneo-brg.ttf') format('truetype');
}
@font-face {
    font-family: 'nanumsquareneo-cbd';
    src: url('fonts/nanumsquareneo-cbd.ttf') format('truetype');
}
@font-face {
    font-family: 'nanumsquareneo-deb';
    src: url('fonts/nanumsquareneo-deb.ttf') format('truetype');
}
@-webkit-keyframes arrayR {0%,100% {-webkit-transform:translate(15px,-50%);}50% {-webkit-transform:translate(15px,-50%);}}
@keyframes arrayR {0%,100% {transform:translate(0,-50%);}50% {transform:translate(15px,-50%);}}
.pretendardB{font-family: 'pretendard-bold';}
.pretendardR{font-family: 'pretendard-regular';}
.nanumBrg{font-family: 'nanumsquareneo-brg';}
.nanumCbd{font-family: 'nanumsquareneo-cbd';}
.nanumDeb{font-family: 'nanumsquareneo-deb';}
.no-padding {
    padding-right: 0;
    padding-left: 0;
}
.no-margin{margin-right:0; margin-left:0;}
/* common */


:root {
    --width1: 5;
    --width2: 4;
    --width3: 3;
}
.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;}
#mainSlider .swiper-wrapper img {width: 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;}

.view-more2 div {
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-more2:hover div: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-more2 div: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;}
.swiper-button-next, .swiper-container-rtl .swiper-button-prev {background: none;  position: relative !important; right: 0px !important; width: 48px !important; height: 48px !important; border-radius: 50%;  border: 1px solid #fff;}
.swiper-button-prev, .swiper-container-rtl .swiper-button-next {background: none; position: relative !important; left: 0px !important;  width: 48px !important; height: 48px !important; border-radius: 50%; border: 1px solid #fff;}
#mainSlider {height: 130vh;  margin-bottom: 0; padding-bottom: 0; background: transparent !important; position: relative; z-index: 1;}
    #mainSlider .background {
        background-attachment: fixed;
        background-position: center center;
        display: block;
        position: relative;
        width: 100%;
        height: 130vh;
        background-color: #000;
        margin: 0 auto;
        width: 100%;
        background-size: cover;
        background-origin: border-box;
        background-repeat: no-repeat;
    }



#main1 { margin-top: -300px; position: relative; z-index: 100; background-image: url('/UserData/ydc9071/Layouts/ydc9071_Layout/Images/2_bg.png'); background-repeat: no-repeat; background-attachment: scroll; background-size: cover; background-position: top center; background-attachment: scroll; padding: 150px 0; display: flex; align-items: center; justify-content: center;}
#mainSlider .Text { position: absolute; z-index: 1000; top: 30%; left: 13%; color: #fff;}
#mainSlider .Text h3 {font-size: 16px; display: flex; grid-gap: 15px; }
#mainSlider .Text h3 .bar {width: 1px; height: 20px; background:#fff; display: inline-block;}
#mainSlider .button {    display: flex;
    position: absolute;
    right: 14%;
    top: 40%;
    flex-direction: row;
    grid-gap: 17px;}
#mainSlider .Text h1 {font-weight: bold;}

#main1 .main1T h1{margin:0;font-size: 27px;letter-spacing: 3px;word-spacing: 5px;margin:0 0 25px;}
#main1 .main1T h1 strong{font-size: 34px;}
.swiper-button-next:after, .swiper-container-rtl .swiper-button-prev:after {display:none;}
.swiper-button-prev:after, .swiper-container-rtl .swiper-button-next:after {display:none;}
#main1 .main1M .main1T:hover a{position:relative;
animation-name: updown;animation-duration:1s;animation-duration: leaner;animation-iteration-count:infinite;animation-direction:alternate;animation-fill-mode: forwards;}
#main1 .main1M{position: relative;display: inline-flex;}
#main1 .main1M2{position: relative;display: inline-flex; width: 100%; margin-top: 50px;}
#main1 .main1M .main1L{order:1; width: 50%; position:relative; display: inline-flex; flex-direction: column; justify-content: space-between;}
#main1 .main1M .main1L .main1LM {z-index: 1000; border-radius: 20px;  display: block; position: relative; aspect-ratio: 747 / 454; overflow: hidden; background-color: #000; margin: 0 auto; width: 100%; background-size: cover; background-position: 50% 50%; background-origin: border-box;background-repeat: no-repeat;}
#main1 .main1M .main1L .main1LB {display: block;aspect-ratio: 261 / 261;  width: 261px; height: 261px; background-size: cover; background-position: 50% 50%; background-origin: border-box; background-repeat: no-repeat; position: absolute; left: -18%; top: 85%; z-index: 1; }

#main1 .main1M .main1L .main1LM h1{margin: 0 0 30px;line-height: 1.5;font-size: 32px;color: #fff; font-weight: bold;}
#main1 .main1M .main1L .main1LM h2 { width: 65%;color: #fff; line-height: 2; font-size: 30px; white-space: normal; word-wrap: break-word; display: -webkit-box; word-break: keep-all; -webkit-line-clamp: 2; overflow: hidden; -webkit-box-orient: vertical;}
#main1 .main1M .main1L .main1LM h5{margin: 20px 0 20px;line-height: 1.5;font-size: 22px;color: #fff;}
#main1 .main1M .main1L .main1LM h7{font-size: 20px;color: #fff;display: inline-flex;align-content: center;align-items: center;}
#main1 .main1M .main1R{order: 4;width: 42%;display: inline-flex;flex-wrap: wrap; flex-direction: column; grid-gap: 30px; position:relative; left: -130px;}
#main1 .main1M .main1RB {display: inline-flex; width: 100%; justify-content: space-between; align-items: flex-end;}
#main1 .main1M .main1RB .main1RBOX { height: 87px; width: calc(100% / var(--width2) - 10px); display: inline-flex; position: relative; justify-content: center; align-items: center; gap: 10px; flex-direction: column; text-decoration: none; color: inherit; border: 1px solid #A5A396;}
#main1 .main1M .main1RBOX:before { background-color: #1250A7; transition: 0.8s all ease;}
#main1 .main1M .main1RBOX:hover h1 { color: #fff; transition: 0.3s all ease; font-weight: bold;}


#main1 .main1M .main1R .main1RT .sermonST span{font-size:17px;line-height:1.5;color:#000; word-break: keep-all; overflow: hidden; word-wrap: break-word; width: 100%;
    text-overflow: ellipsis;}
#main1 .main1M .main1R .main1RT .sermonST .date {font-size: 15px;}
#main1 .main1M .main1R .main1RT .sermonST .more {margin: 0 5px; font-size: 15px;}
#main1 .main1M .main1R .main1RT .sermonSN { width: 150px; height: 100px; position:relative;}
#main1 .main1M .main1R .main1RT .sermonSN img { width: 100%; height: 100px; background-position: 50% 50%; background-size: cover; border: 0px;}
#main1 .main1M .main1R .main1RT .sermonST strong{font-size:24px;color:#000;}
#main1 .main1M .main1R .main1RT .sermonST strong{font-size:24px;color:#000;}
#main1 .main1M .main1RB .main1RBOX h1 {font-size: 15px;  text-align: center; margin: 0px;}
#main1 .main1M .main1R .main1RM { width: 100%; display: inline-flex; flex-direction: column; justify-content: space-between; margin-top: 30px; position:relative; z-index: 10000;}
#main1 .main1M .main1R .main1RM h2 {font-size: 30px; color: #267584;}
#main1 .main1M .main1R .main1RM h1 { margin: 0px; font-weight: bold; font-size: 55px; color: #267584;}
#main1 .main1M .main1R .main1RM h1 {color: #267584;}
#main1 .main1M .main1R .main1RT .sermonSN a {display: block;}
#main1 .main1M .main1R .main1RT .sermonSN .play {width: 16px; height: 17px; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}
#main1 .main1M .main1R .main1RB{display: inline-flex;justify-content: flex-start;align-items: center;
width: 100%;gap: 15px;position: relative;}
#main1 .main1M .main1R .main1RB .sermonST{display: inline-flex;flex-direction: column;}
#main1 .main1M .main1R .main1RB .sermonST span{font-size:17px;line-height:1.5;color:#888;}
#main1 .main1M .main1R .main1RB .sermonST strong{font-size:24px;color:#000;}

#main1 .main1T{text-align:center;}
#main1 .main1T h1{margin: 0;font-size: 46px;padding:80px 0 100px;}
#main1 .main1M{display: inline-flex;flex-direction: row; gap: 40px;width: 100%;}
#main1 .main1M .newsM{width:55%;} 
#main1 .main1M .newsM .newsMN{display: inline-flex;width: 100%;align-items: center;justify-content: space-between;padding-bottom: 5px;border-bottom: 3px solid #000;}
#main1 .main1M .newsM .newsMN .newsMR{display: inline-block;}
#main1 .main1M .newsM .newsMN .newsMR h1{margin: 0;font-size: 27px;letter-spacing: 0px;font-weight:bold;}
#main1 .main1M .newsM .newsMN .newsML{display: inline-block;}
#main1 .main1M .newsM .newsMN .newsML a{text-decoration:none;padding: 5px 15px;border-radius:50px;color:#000;text-decoration:none;}
#main1 .main1M .newsM .newsMN .newsML a:hover{color:#fff;}
#main1 .main1M .newsM .newsMN .newsML a:hover:before{background-color:#ED6D00;}
#main1 .main1M .newsM .newsMN .newsML .iSactive{color:#fff;}
#main1 .main1M .newsM .newsMN .newsML .iSactive:before{background-color:#ED6D00;
-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;}


#main2 {  padding: 70px 0;}
#main2 .welcomT { display: flex; flex-direction: column; grid-gap: 40px; justify-content: center; align-items: center;}
#main2 .welcomT h4 {margin: 0; font-size: 22px;  font-family: 'pretendard-bold'; letter-spacing: 4.4px; color: #113262;}
#main2 .welcomT h1 {margin: 0; font-size: 33.5px; color: #737373;}

#main2  .welcomT .main2MF { position: relative; width: 200px; height: 50px; background-color: transparent; display: inline-flex; position: relative; justify-content: center; background: #267584; border-radius: 30px; align-items: center;}
#main2 .welcomT .main2MF h5{color: #fff; font-size: 18px;}
#main2 .welcomT .main2MF:before { background-color: #267584; transition: 0.3s all ease;}
#main2 .welcomT .main2MF a:hover, #main2 .welcomT .main2MF a:focus {text-decoration: none;}
#main2 .welcomT .main2MF a:hover h5 {text-decoration: none;}
#main2 .welcomT .main2MF:hover h5 { color: #fff; transition: 0.3s all ease; font-weight: bold;}

#main2 .welcomeM { display: inline-flex; justify-content: center; align-items: flex-start; gap: 70px; width: 100%; margin-top: 100px;}
#main2 .welcomeM a { text-align: center; text-decoration: none; color: #000;}
#main2 .welcomeM a .welcomeBT { padding: 66px; position: relative; display: inline-block; background-color: white;   border-radius: 70%; transition: all .2s;}
#main2 .welcomeM a .welcomeBT .on, #main2 .welcomeM a .welcomeBT .off { padding: 32.5px; background-repeat: no-repeat; background-position: center; background-size: cover; position: absolute; transform: translate(-50%, -50%);}
#main2 .welcomeM a:hover .welcomeBT:before { background-color:  #b8d9f7;}
#main2 .welcomeM a .welcomeBT .on { opacity: 0; transition: 0.3s all ease;}
#main2 .welcomeM a .welcomeBT .off { opacity: 1; transition: 0.3s all ease;}
#main2 .welcomeM a:hover .off { opacity: 0; transition: 0.3s all ease;}
#main2 .welcomeM a:hover .on { opacity: 1; transition: 0.3s all ease;}
#main2 .welcomeM a h1 { margin-top: 10px; font-size: 20px; line-height: 1.5; letter-spacing: 0px; text-align: center;}

#main3 { padding: 100px 0;}
#main3 .container{position:relative;z-index:1;}
#main3 .main3T {display: flex; flex-direction: column; color: #000; grid-gap: 40px;}
#main3 .main3T h1{margin: 0;font-size: 36px; color:#000; }
#main3 .main3S h4 {margin: 0; color: #1f7a8c; font-size: 20px;}
#main3 .main3S {display: flex; justify-content: space-between; align-items: center;}
#main3 .main3S a span {color: #000;}
#main3 .main3S a:hover {text-decoration: none;}
#main3 .main3M {display: flex; grid-gap: 30px; margin-top: 40px;}
#main3 .main3M .main3L {width: 50%;}
#main3 .main3M .main3L .background { z-index: 1000; display: block; position: relative; aspect-ratio: 640 / 360; overflow: hidden; background-color: #000; margin: 0 auto; width: 100%; background-size: cover; background-position: 50% 50%; background-origin: border-box; background-repeat: no-repeat;}
#main3 .main3M .main3L .subject {display: flex; justify-content: space-between; align-items: center;}
#main3 .main3M .main3L .text {display: flex; justify-content: space-between; align-items: center;}
#main3 .main3M .main3L .text .bar {margin: 0 10px;}



#main3 .main3T2 {display: flex; flex-direction: column; color: #000; grid-gap: 40px; margin-top: 40px;}
#main3 .main3T2 h1{margin: 0;font-size: 36px; color:#000; }
#main3 .main3S2 h4 {margin: 0; color: #1f7a8c; font-size: 20px;}
#main3 .main3S2 {display: flex; justify-content: space-between; align-items: center;}
#main3 .main3S2 a span {color: #000;}
#main3 .main3S2 a:hover {text-decoration: none;}
#main3 .main3M2 {display: flex; grid-gap: 30px; margin-top: 40px;}
#main3 .main3M2 .main3L {width: 50%;}
#main3 .main3M2 .main3L .background { z-index: 1000; display: block; position: relative; aspect-ratio: 640 / 360; overflow: hidden; background-color: #000; margin: 0 auto; width: 100%; background-size: cover; background-position: 50% 50%; background-origin: border-box; background-repeat: no-repeat;}
#main3 .main3M2 .main3L .subject {display: flex; justify-content: space-between; align-items: center;}
#main3 .main3M2 .main3L .text {display: flex; justify-content: space-between; align-items: center;}
#main3 .main3M2 .main3L .text .bar {margin: 0 10px;}

#main3 .main3T3 {display: flex; flex-direction: column; color: #000; grid-gap: 40px; margin-top: 40px;}
#main3 .main3T3 h1{margin: 0;font-size: 36px; color:#000; }
#main3 .main3S3 h4 {margin: 0; color: #1f7a8c; font-size: 20px;}
#main3 .main3S3 {display: flex; justify-content: space-between; align-items: center;}
#main3 .main3S3 a span {color: #000;}
#main3 .main3S3 a:hover {text-decoration: none;}
#main3 .main3M3 {display: flex; grid-gap: 30px; margin-top: 40px;}
#main3 .main3M3 .main3L {width: 50%;}
#main3 .main3M3 .main3L .background { z-index: 1000; display: block; position: relative; aspect-ratio: 640 / 360; overflow: hidden; background-color: #000; margin: 0 auto; width: 100%; background-size: cover; background-position: 50% 50%; background-origin: border-box; background-repeat: no-repeat;}
#main3 .main3M3 .main3L .subject {display: flex; justify-content: space-between; align-items: center;}
#main3 .main3M3 .main3L .text {display: flex; justify-content: space-between; align-items: center;}
#main3 .main3M3 .main3L .text .bar {margin: 0 10px;}




#main4{ overflow: hidden;}
#main4 .storyT h1 {margin: 0;font-size: 46px;padding: 90px 0 80px;text-align:center;color:#fff;}
#main4 .storyM .GalleryM{width:65%;overflow:hidden;}
#main4 .main4TB {display: grid; justify-content: center; align-items: center; width: 100%; grid-template-columns: repeat(auto-fill, minmax(min(100%, 20%), 1fr)); grid-gap: 57px; }
#main4 .main4T { padding: 50px; text-align: center;}
#main4 .main4T h5 { color: #D8D3D0; margin: 0px; font-size: 20px;}
#main4 .main4T h1 { font-weight: bold; margin: 0px; font-size: 40px; margin-top: 20px;}
#main4 .main4TB .main4B {height: 315px; width: 100%; display: inline-flex; position: relative; justify-content: center; align-items: center; gap: 20px; flex-direction: column; text-decoration: none; color: inherit;}
#main4 .main4TB .main4B div{padding: 35px; color: #fff; height: 100%; width: 100%; background-size: contain; background-repeat: no-repeat; background-position: center;}
#main4 .main4TB .main4B div h5 {font-size: 25px; position: relative; word-break: keep-all;}
#main4 .main4TB .main4B div h5:before {content: ""; position: absolute; width: 20%; height: 2px; background: #fff; left: 0px; bottom: -10px;}
#main4 .main4M .main4SD .contentSlide .box{ aspect-ratio: 1915 / 772; width: 100%;display: inline-block;position:relative;overflow:hidden;}
#main4 .main4M .main4SD .contentSlide:hover .box {box-shadow:6px 6px 16px #dfdfdf;transition: all 1s;}
#main4 .main4M .main4SD .contentSlide .box .galleryIMG{position:absolute;background-size:cover;background-position:center;background-repeat:no-repeat;
width:100%;height:100%;}
#main4 .main4M .main4SD .contentSlide:hover .box{ animation: shadow-pop-br 0.2s cubic-bezier(0.470, 0.000, 0.745, 0.715) both; }
#main4 .main4M .main4SD .contentSlide .box .galleryT{width: 100%;height: 100%;position: absolute; top: -15%; display: inline-flex;color:#fff;
flex-direction: column;justify-content: center;gap: 10px;z-index:1; transition:0.3s all ease;}
#main4 .main4M .main4SD .contentSlide .box .galleryT h3 {display: flex; align-items: center; grid-gap: 15px; font-size: 16px;}
#main4 .main4M .main4SD .contentSlide .box .galleryT .bar {width: 1px; height: 18px; background: #fff; display: inline-block;}

#main4 .main4M .main4SD .contentSlide .box .galleryT h1{margin: 0;font-size: 28px;line-height: 1.5;
width: 95%;overflow: hidden;white-space: normal;word-wrap: break-word;display: -webkit-box;
word-break: keep-all;-webkit-line-clamp: 2;-webkit-box-orient: vertical;}
#main4 .main4M .main4SD .contentSlide .box .galleryT h5{margin: 0;font-size: 20px;line-height: 1.5;}
#main4 .main4M .main4BTN{display: inline-flex; align-items: center;justify-content: center;  position:absolute; left: 15%; bottom: 30%; z-index: 1000; transform: translateX(-50%);}
#main4 .main4M .main4BTN .swiper-pagination-bullet{width:12px;height:12px;margin:5px;transition:0.3s all ease; background-color: rgba(255, 255, 255, 0.4); opacity:1;}
#main4 .main4M .main4BTN .swiper-pagination-bullet:hover{background-color:#000;transition:0.3s all ease;opacity: 1;}
#main4 .main4M .main4BTN .swiper-pagination-bullet-active{width:12px;height:12px;margin:5px;background-color:#fff;transition:0.3s all ease;opacity: 1;}
#main4 .main4M .main4BTN .main4PTN,
.swiper-slide-prev
#main4 .main4M .main4BTN .main4NTN{width: 205px;height: 30px;display: inline-block;position: relative;outline:none;}
#main4 .main4M .main4BTN .main4PTN .on,
#main4 .main4M .main4BTN .main4NTN .on{position:absolute;background-repeat:no-repeat;background-size:contain;background-position:center;width:100%;height:100%;}
#main4 .main4M .main4BTN .main4PTN .off,
#main4 .main4M .main4BTN .main4NTN .off{position:absolute;background-repeat:no-repeat;background-size:contain;background-position:center;width:100%;height:100%;}
#main4 .main4M .main4BTN .main4PTN:hover{animation: arrayL 1s ease-in-out infinite;
-webkit-animation: arrayL 1s ease-in-out infinite;transition: all 1s;}
#main4 .main4M .main4BTN .main4NTN:hover{animation: arrayR 1s ease-in-out infinite;
-webkit-animation: arrayR 1s ease-in-out infinite;transition: all 1s;}
#main4 .main4M .button {position: absolute; right: 5%; top: 45%; display: flex; flex-direction: column; z-index: 100000; grid-gap: 10px; }
#main4 .main4M .button a {    width: 48px; position: relative; display: inline-block; border: 1px solid #fff; border-radius: 50%; transition: all .2s; height: 48px;}
#main4 .main4M .button a img {position: absolute; transform: translate(-50%, -50%); top: 50%; left: 50%;}





#main5{padding: 100px 0; overflow: hidden;}
#main5 .main5T { display: flex; justify-content: space-between; align-items: center; margin-bottom: 50px;}
#main5 .main5T h1 { color: #000; margin: 0px; font-size: 36px;}
#main5 .button {display: flex; grid-gap: 10px;}
#main5 .PhotoIMT {aspect-ratio: 3/1; display: flex; flex-direction: column; justify-content: space-between;}
#main5 .button .PhotoP {width: 48px; height: 48px; border: 1px solid #3D7C85; position: relative; display: inline-block;  border-radius: 50%; transition: all .2s;}
#main5 .button .PhotoP:hover, #main1 .button .PhotoP:active {background-color: #267584;}
#main5 .button .PhotoP img {top: 50%;  left: 50%; position: absolute; transform: translate(-50%, -50%);}
#main5 .button .PhotoN {position: relative; display: inline-block;width: 48px; height: 48px; border: 1px solid #3D7C85;  border-radius: 50%; transition: all .2s;}
#main5 .button .PhotoN:hover, #main1 .button .PhotoN:active {background-color: #267584; }
#main5 .button .PhotoN img {top: 50%;  left: 50%; position: absolute; transform: translate(-50%, -50%);}
#main5 .PhotoIMT .flex{ display: flex; justify-content: space-between; }
#main5 .PhotoIMG { aspect-ratio: 359 / 241; display: block; position: relative; overflow: hidden; background-color: #000; background-size: cover; background-position: 50% 50%; background-origin: border-box; background-repeat: no-repeat;}
#main5 .PhotoM a {border: 1px solid #C5C5C5; display: flex; flex-direction: column; }
#main5 .PhotoM a:hover {text-decoration: none; border: 1px solid #40899A; color: #fff;}
#main5 .PhotoM a:hover .PhotoIMT {background:#1F7A8C; }
#main5 .PhotoM a:hover h3 {color: #fff; }
#main5 .PhotoM a:hover h4 {color: #fff; }
#main5 .PhotoM a:hover h5 {color: #fff; }
#main5 .PhotoIMT {padding: 15px; display: flex; flex-direction: column; justify-content: space-between; aspect-ratio: 2/1;}
#main5 .PhotoIMT h3 {margin-top: 0px; font-size: 16px; color: #1f7a8c; }
#main5 .PhotoIMT h4 {font-size: 20px; color: #000;}
#main5 .PhotoIMT h5 {margin: 0px; font-size: 16px;  color: rgba(0, 0, 0, 0.8);}

#main6 {background: #F7F7F7; padding: 75px 0;}
#main6 .main6M {display: flex; justify-content: center;}
#main6 .main6M a {display: flex; flex-direction: column; align-items: center; grid-gap: 10px; padding: 0 45px; border-right: 1px solid #C6C6C6;}
#main6 .main6M a:last-child {border: none;}
#main6 .main6M a:hover {text-decoration: none;}
#main6 .main6M a:hover h5 {font-weight: bold;  color: #1f7a8c; }
#main6 .main6M a h5 {margin: 0px; font-size: 20px; color: #000; }
@media (max-width:1880px) {
    #mainSlider {height: 130vh;}
    #mainSlider .background {height: 130vh;}
}

@media (max-width:1699px) {
    #main1 {padding: 80px 0;}
    #main2 .welcomeM {grid-gap: 30px;}
    #main6 .PhotoN {right: -2%;}
    #main6 .PhotoP {left: -2%;}
}

@media (max-width:1499px) {
    #main5 .main5T {margin-bottom: 25px;}
    #main5 .main5T h1 {font-size: 30px;}
    #main5 {padding: 50px 0;}
    #main3 .main3M {margin-top: 20px;}
    #main3 .main3T h1 {font-size: 30px;}
    #main3 .main3T {grid-gap: 20px;}
    #main4 .main4M .main4SD .contentSlide .box .galleryT {top: 0px;}
    #main3 {padding: 50px 0;}
    #main2 {padding: 0px;}
    #main2 .welcomeM a h1 {font-size: 16px; line-height: 1.5;}
    #main2 .welcomeM {margin-top: 50px;}
    #main2 .welcomT {grid-gap: 25px;}
    #main2 .welcomT h1 {font-size: 25px;}
    #main1 .main1M .main1R .main1RM h2 {font-size: 25px;}
    #main1 .main1M .main1R .main1RM h1 {font-size: 45px;}
    #main2 .welcomeM a .welcomeBT {padding:50px;}
    #main1 .main1M .main1R .main1RB {
        grid-gap: 15px;
    }
    #main6 .PhotoN {right: 1%;}
    #main6 .PhotoP {left: 1%;}
	#main3 .sermonM .sermonL{background-size: contain;height:395px;}
	#main5 .main5M .main5R{padding:50px;}
}

@media (max-width:1199px) {
    #main1 .main1M .main1L .main1LB {width: 100px; height: 100px; top: 55%; left: -8%;}
    #main2 .welcomT h4 {font-size: 17px;}
    #main2 .welcomT h1 {font-size: 22px;}
    #main2 .welcomT .main2MF h5 {font-size: 16px;}
    #main2 .welcomT .main2MF {width: 170px; height: 40px;}
    #main3 .main3M .main3L .text p {margin-bottom: 0px;}
    #main3 .main3M2 .main3L .text p {margin-bottom: 0px;}
    #main3 .main3M3 .main3L .text p {margin-bottom: 0px;}
    #main3 {padding: 25px 0;}
    #main3 .main3M3 .main3L .text span {font-size: 17px;}
    #main3 .main3M2 .main3L .text span {font-size: 17px;}
    #main3 .main3M .main3L .text span {font-size: 17px;}
    #main3 .main3M3 {margin-top: 20px; grid-gap: 15px;}
    #main4 .main4M .button a {width: 35px; height: 35px;}
    #main6 {padding: 25px 0;}
    #main6 .main6M a h5 {font-size: 16px;}
    #main6 .main6M a {padding: 0px; width: 100%;}
    #main5 .button .PhotoP {width: 35px; height: 35px;}
    #main5 .button .PhotoN {width: 35px; height: 35px;}
    #main4 .main4M .main4BTN {left: 5%;}
    #main4 .main4M .main4SD .contentSlide .box .galleryT h1 {font-size: 23px;}
    #main3 .main3M3 .main3L .subject h3 { font-size: 17px; word-break: keep-all; width: 60%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
    #main3 .main3M2 .main3L .subject span {font-size: 15px;}
    #main3 .main3M2 .main3L .subject h3 { font-size: 19px; word-break: keep-all; width: 65%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
    #main3 .main3M2 {margin-top: 20px; grid-gap: 15px;}
    #main3 .main3M .main3L .subject h3 {font-size: 19px;}
    #main2 .welcomeM a .welcomeBT {padding: 40px;}
    #main3 .main3S h4 {font-size: 18px;}
    #main2 .welcomeM a .welcomeBT .on, #main2 .welcomeM a .welcomeBT .off {padding: 23.5px;}
    .swiper-button-prev, .swiper-container-rtl .swiper-button-next {width: 35px !important; height: 35px !important;}
    .swiper-button-next, .swiper-container-rtl .swiper-button-prev {width: 35px !important; height: 35px !important;}
    #mainSlider .button {grid-gap: 30px;}
    #mainSlider {height: 80vh;}
    #mainSlider .background {height: 80vh;}
    #main3 .main3T2 {margin-top: 25px;}
    #main3 .main3T h1 {font-size: 25px;}
    #main2 .welcomeM {margin-top: 25px;        margin-bottom: 10px;}
    #main1 .main1M .main1R .main1RM h4 {font-size: 16px;}
    #main1 .main1M .main1R {left: -30px; width: 50%;}
    #main1 .main1M .main1R .main1RM h1 {font-size: 35px;}
    #main1 {padding: 50px 0;}
    #main6 .galleryb {width: 100%;}
    #main5 .main5M .main5L .main5LB {padding: 15px;}
    #main5 .main5T h1 {font-size: 25px;}
    #main4 .main4T h1 {font-size: 30px;}
    #main4 .main4TB {grid-gap: 20px;}
    #main4 .main4TB .main4B div h5 {font-size: 20px;}
    #main4 .main4TB .main4B div {padding: 15px; background-size: cover;}
    #main3 .main3MF .main3MB {width: 200px; height: 50px; }
    #main3 .main3MF .main3MB h5 {font-size: 17px;}
    #main3 .main3M .newM .arrow {width: 100px;}
    #main2 .welcomeM a h1 {font-size: 18px; line-height: 1; margin-top: 5px;}
    #main1 .main1M .context h2 {font-size: 25px;}
    #main1 .main1M .main1R .main1RB {grid-gap: 50px;}
    #main1 .main1M .main1R .main1RT .sermonSN{ width: 200px;}
    #main1 .main1M .main1R .main1RT .sermonST {width: 100%;}
    #main1 .main1M .main1L img {width: 100%;}
    #main4 .main4TB .main4B {height: 170px;}
    #main2 .welcomeM a {display: inline-flex; position: relative; flex-direction: column; height: auto;}
    #main2 .welcomeM { flex-wrap: wrap; grid-gap: 20px;}
	#main1 .main1T h1 {padding: 45px 0;}
	#main1 .main1M .newsM{width:100%;}
	#main1 .main1M .allNewsM{width:100%;}
	#main3 .sermonT h1 {padding: 40px 0;}
	#main3 .sermonM{flex-direction: column-reverse;padding-bottom: 30px;}
	#main3 .sermonM .sermonR{width:100%;padding: 30px;}
	#main3 .sermonM .sermonL{width: 100%;position: relative;padding-bottom: 56.25%;height: 0;overflow: hidden;}
	#main3 .sermonM .sermonR .sermonRM h1 {padding: 30px 0;}
	#main5 .main5M .main5R{padding:50px;background-repeat: no-repeat;background-position: center;background-size: cover;}
	#main5 .main5M .main5L {background-repeat: no-repeat;background-position: center;background-size: cover;}
	#main4 .storyT h1 {padding: 40px 0;}
	.WechurchM .WechurchBM {padding: 20px 10px;}
	.storyM .GalleryM .GalleryS a .galleryIMG {height: 225px;}
	.WechurchM{gap:25px;}
	.WechurchM .WechurchBM h5 {padding-bottom: 20px;}
	#main5 {padding: 25px 0;}
}

@media (max-width:992px) {
    #main4 .main4M .main4SD .contentSlide .box {aspect-ratio: 1125/1670; }
    #main3 .main3M3 .main3L {width: 100%;}
    #main3 .main3M3 {flex-direction: column;}
    #main3 .main3M2 {flex-direction: column;}
    #main3 .main3M2 .main3L {width: 100%; }
    #main3 .main3M .main3L {width: 100%;}
    #main3 .main3M { flex-direction: column; }
    #main3 .main3M {grid-gap: 15px;}
    #main3 .main3M .main3L .text span {font-size: 15px;}
    #main3 .main3M2 .main3L .text span {font-size: 15px;}
    #main3 .main3M3 .main3L .text span {font-size: 15px;}
    #main3 .main3M3 .main3L .subject span {font-size: 15px;}
    #main2 .welcomeM a {display:inline-block;}
    #main7 .main7B {grid-gap: 20px; padding-bottom: 40px; display: grid; justify-content: center; align-items: center; width: 100%; grid-template-columns: repeat(auto-fill, minmax(min(100%, 30%), 1fr));}
    #main6 .PhotoN {right: -2%;}
    #main6 .PhotoP {left: -2%;}
    #main6 .gallery-tab li a div {font-size: 16px;}
    #main5 .main5M .news_img h3 {font-size: 18px;}
    #main5 .main5M .main5L .main5X {grid-gap: 20px;}
    #main5 .main5M .main5MB {width: 20%;}
    #main5 .main5M .news_img {padding: 0 15px;}
    #main4 .main4TB .main4B div h5 {font-size: 18px;}
    #main3 .main3T h1 {font-size: 30px;}
    #main3 {padding: 25px 0;}
    #main2 .welcomeM a .welcomeBT {padding: 45px;}
    #main2 .welcomeM a h1 {font-size: 16px;}
    #main2 .welcomeM {justify-content: center; grid-gap: 10px;}
	#main1 .welcomeT h1{font-size:32px;}
	#main1 .welcomeT h4{font-size:20px;}
	#main1 .welcomeT h5{font-size:24px;}
	#main1 .welcomeM {gap: 20px;}
	#main1 .main1M {padding-bottom: 20px;}
	#main1 .main1T h1{font-size:32px;}
	#main1 .main1M .newsM .newsMN .newsMR h1{font-size:24px;}
	#main1 .main1M .newsM .documents .tab-content .newsT h2{font-size:20px;}
	#main1 .main1M .newsM .documents .tab-content .newsT .RegT{padding: 15px;}
	#main1 .main1M .newsM .documents .tab-content .newsT .RegT h1{font-size:20px;}
	#main1 .main1M .allNewsM .allNewsSD{height: 375px;}
	#main1 .main1M .allNewsM .allNewsSD .swiper-slide .allnewsT h1{font-size:20px;}
	#main3 .sermonT h1 {padding: 20px 0;font-size:32px;}
	#main3 .sermonM .sermonR .sermonRM h1{font-size:32px;}
	#main3 .sermonM .sermonR .sermonRM h3{font-size:24px;}
	#main4{padding-bottom:0;}
	#main4 .storyT h1{font-size:32px;}
	#main4 .storyM {flex-direction: column;gap:30px;}
	#main4 .storyM .GalleryM{width:100%;}
	#main4 .WechurchM{width:100%;padding: 30px;}
	#main4 .WechurchM .WechurchT h1{font-size:24px;}
	#main5 .main5M .main5R .main5RM h1{font-size:32px;}
	#main5 .main5M .main5R .main5RM .main5RBT{width:35%;}
	#main5 .main5M .main5R .main5RM .main5RBT a{font-size:20px;}
	#main5 .main5M .main5L .main5LM h1{font-size:32px;}
	#main5 .main5M .main5L .main5LM .main5LBT a{font-size:20px;}
}

@media (max-width:767px) {
    #main5 .main5T {margin-bottom: 15px;}
    #main5 .PhotoIMT {padding: 7px;}
    #main2 .welcomT h1 {font-size: 20px;}
    #main3 .main3M .main3L .subject h3  { margin-top: 10px;}
    #main3 .main3M2 .main3L .subject h3 { margin-top: 10px;}
    #main3 .main3M3 .main3L .subject {grid-gap: 3px;}
    #main3 .main3M3 .main3L .subject h3 {font-size: 15px; margin-top: 10px; width: 100%;}
    #main3 .main3M3 { flex-direction: row;}
    #main4 .main4M .button {grid-gap: 5px; top:38%;}
    #mainSlider .button {right: 5%; top: 50%;}
    #main6 .main6M a {width: 33%; border-right: 0px;}
    #main6 .main6M {flex-wrap: wrap;}
    #main5 .PhotoM a { display: block;}
    #main5 .PhotoIMT h3 {font-size: 14px;}
    #main5 .PhotoIMT h5  {font-size: 13px;}
    #main5 .PhotoM h4 { font-size: 16px; word-break: keep-all; width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
    #main4 .main4M .main4BTN .swiper-pagination-bullet { width: 5px; height: 5px;}
    #main4 .main4M .main4BTN .swiper-pagination-bullet {width: 5px; height: 5px;}
    #main4 .main4M .main4SD .contentSlide .box .galleryT h3 { margin-top: 10px; margin-bottom: 5px;}
    #mainSlider .Text {top: 20%; left: 5%;}
    #main5 .main5T h1 {font-size: 20px;}
    #main6 .main6M a h5 {font-size: 13px;}
    #main1 .main1M .main1R {width: 100%;}
    #mainSlider .Text h3 {font-size: 14px; margin-top: 10px; margin-bottom: 5px;}
    #mainSlider .Text h1 {font-size: 20px; margin-top: 20px; margin-bottom: 5px;}
    #main1 {margin-top: -133px; padding: 0px;}
    #main1 .main1M {padding-top: 150px;}
    #mainSlider {height: 90vh;}
    #mainSlider .background {height: 90vh;}
    #main1 .main1M .main1L {width: 100%;}
    #main1 .main1M {flex-direction: column;}
    #main4 .main4M .main4BTN {bottom: 10%;}
    #main3 .main3M3 .main3L {width: 100%;}
    #main3 .main3M2 .main3L {width: 100%;}
    #main3 .main3M2 {flex-direction: column;}
    #main3 .main3M .main3L {width: 100%;}
    #main3 .main3M {flex-direction: column;}
    #main2 .welcomT .main2MF {width: 130px; height: 30px;}
    #main2 .welcomT {grid-gap: 15px;}
    #main1 .main1M .main1R .main1RM h4 {word-break: keep-all;}
    #main1 .main1M .main1R {left: 0px; grid-gap: 15px;}
    #main1 .main1M .main1R .main1RM h1 {font-size: 25px;}
    #main1 .main1M .main1R .main1RM h2 {font-size: 20px; margin-top: 0px;}
    #main1 .container {width: 95%;}
    #main1 .main1M .context .text {grid-gap: 10px;}
    #main2 .welcomeM a h1 {font-size: 15px;}
    #main2 .welcomeM a .welcomeBT .on, #main2 .welcomeM a .welcomeBT .off {padding: 20px;}
    #main2 .welcomeM a .welcomeBT {padding: 35px;}
    #main6 .PhotoM .PhotoIMG {width: 140px; height: 130px;}
    #main6 .PhotoM .PhotoIMG .PhotoIMT h1 {font-size: 15px;}
    #main5 .main5M .main5L .main5LB .notice_img {height: 70px;}
    #main5 .main5M .main5L .main5LB {height: 230px;}
    #main5 .main5M .main5L .main5LB .text {-webkit-line-clamp: 3;}
    #main5 .main5M {grid-gap: 10px;}
    #main5 .main5M .news_img h3 {font-size: 15px;}
    #main5 .main5M .news_img h2 {font-size: 20px;}
    #swiperSlider63 .swiper-pagination {bottom: 10px !important;}
    #main1 .main1M .main1R .main1RT .sermonST span {font-size: 15px;}
    #main3 .main3MF .main3MB h5 {font-size: 15px;}
    #main3 .main3T h1 {font-size: 20px;}
    #main3 .main3T h5 {font-size: 18px;}
    #main1 .main1M .main1R .main1RT .sermonSN {width: 34%;}
    #main1 .main1M .main1B {height: 115px;}
    #main1 .main1M .context h2 {font-size: 20px;}
    #main1 .main1M .context h5 {font-size: 17px;}
    #main6 .gallery-tab li.active a:after {bottom: -2px;}
    #main6 .gallery-tab li {width: 33%; float: left;}
    #main6 .gallery-tab li {border: none;}
    #main6 .gallery-tab {display: inline-block;}
    #main4 .main4T h1 {margin-top: 15px; font-size: 25px;}
    #main4 .main4T {padding: 30px 15px;}
    #main3 .main3MF {margin-top: 20px;}
    #main1 .main1M .main1RB .main1RBOX h1 {font-size: 16px;}
    #main4 .main4TB {grid-template-columns: repeat(auto-fill, minmax(min(100%, 25%), 1fr));}
     #main6 .PhotoP {top: 67%}
    #main6 .PhotoN {top: 67%;}
    #main1 .main1M .main1R .main1RM {margin-top: 0px;}
    #main1 .main1M .context {padding: 0 15px; }
    #main1 .main1M {grid-gap: 15px;}
    #main2 {padding: 20px 30px;}
    #main1 .main1M .main1R .main1RB {grid-gap: 15px; }
    #main5 .main5M .news_img {background-size: contain; height: 110px; grid-gap: 5px;}
    #main5 .main5M .news_img img {width: 10px;}
    #main5 .main5M .main5MB {width: 100%;}
    #main3 .main3MF .main3MB {width: 30%;}
    #main3 .main3M .newM .new {width: 8%;}
        #main3 .main3M .newM .arrow {width: 70px;}
	#main1 .welcomeT img {padding: 20px 0 10px;}
	#main1 .welcomeT h1{font-size:24px;}
	#main1 .welcomeT h4{font-size:15px;padding-bottom: 20px;}
	#main1 .welcomeT h5{font-size:20px;}
	#main1 .welcomeM.visible-xs {gap: 20px;flex-wrap: wrap;padding-bottom: 20px;display: inline-flex!important;}
	#main1 .welcomeM a h1{font-size:15px;}
	#main1 .welcomeM a .welcomeBT {padding: 40px;}
	#main1 .main1T h1{font-size:24px;padding: 20px 0;}
	#main1 .main1M .newsM .newsMN{flex-direction: column;gap: 10px;}
	#main1 .main1M .newsM .newsMN .newsMR h1{font-size:20px;}
	#main1 .main1M .newsM .newsMN .newsML a{padding: 5px 10px;}
	#main1 .main1M .newsM .newsMN .newsML a li{font-size:15px;}
	#main1 .main1M .newsM .documents .tab-content .newsT h2{font-size: 15px;word-wrap: break-word;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;width: 45%;word-break: keep-all;}
	#main1 .main1M .newsM .documents .tab-content .newsT .RegT{padding: 10px;}
	#main1 .main1M .newsM .documents .tab-content .newsT .RegT h1{font-size:15px;}
	#main1 .main1M .newsM .documents .tab-content .newsT .newsBT {padding: 15.5px;}
	#main1 .main1M .allNewsM .allNewsSD{height: 315px;}
	#main1 .main1M .allNewsM .allNewsSD .swiper-slide {padding: 15px;}
	#main1 .main1M .allNewsM .allNewsSD .swiper-slide .allnewsT h1{font-size: 15px;word-wrap: break-word;display: -webkit-box;-webkit-line-clamp: 1;-webkit-box-orient: vertical;width: 65%;overflow: hidden;}
	#main3 .sermonT h1{font-size:24px;}
	#main3 .sermonM .sermonR {padding: 15px;}
	#main3 .sermonM .sermonR .sermonRM h1{font-size:24px;padding: 15px 0;}
	#main3 .sermonM .sermonR .sermonRM h3{font-size:20px;}
	#main3 .sermonM .sermonR .sermonRM .sermonB .sermonBP h2{font-size:17px;}
	#main4{padding-bottom:0;}
	#main4 .storyT h1{font-size:24px;padding: 20px 0;}
	#main4 .storyM {flex-direction: column;gap:10px;}
	#main4 .storyM .GalleryM{width:100%;}
	#main4 .WechurchM{width:100%;padding: 15px;gap: 15px;}
	#main4 .WechurchM .WechurchT h1{font-size:20px;}
	#main4 .WechurchM .WechurchBT a {padding: 15px 10px;}
	#main4 .WechurchM .WechurchBT a h1 {font-size: 17px;}
	#main4 .WechurchM .WechurchBM h5{font-size: 17px;}
	#main5 .main5M {flex-direction: column;}
	#main5 .main5M .main5R{width:100%;height: inherit;padding: 20px;}
	#main5 .main5M .main5R .main5RM h1{font-size:24px;}
	#main5 .main5M .main5R .main5RM h5{font-size:15px;padding-bottom:20px;}
	#main5 .main5M .main5R .main5RM .main5RBT{width:35%;position: relative;}
	#main5 .main5M .main5R .main5RM .main5RBT a{font-size:15px;}
	#main5 .main5M .main5L{width:100%;height: inherit;}
	#main5 .main5M .main5L .main5LM h1{font-size:24px;}
	#main5 .main5M .main5L .main5LM h5{font-size:15px;padding-bottom: 55%;}
	#main5 .main5M .main5L .main5LM .main5LBT{position:relative;}
	#main5 .main5M .main5L .main5LM .main5LBT a{font-size:15px;}
	#main4 .galleryTP .galleryT h1{font-size:20px;}
	#main4 .galleryTP .galleryT h5{font-size:17px;}
	.storyM .GalleryM .GalleryS a .galleryT h2{font-size:20px;}
	.storyM .GalleryM .GalleryS a .galleryT h5{font-size:17px;}
}

@media (max-width:550px) {
    #main1 .main1M .main1R .main1RT .sermonSN img {height: 80px;}
    #main1 .main1M .main1R .main1RT .sermonSN {height: 80px;}
    #main1 .main1M .main1R {grid-gap: 10px;}
	    #main2 .welcomeM a {display:inline-block; width:25%;}
    #main1 .main1M .main1L .play  img {width: 15px;}
    #main1 .main1M .main1B {height: 95px;}
    #main1 .main1M .context h5 {font-size: 15px;}
    #main1 .main1M .main1RB .main1RBOX h1 {font-size: 15px;}
    #main2 .welcomeM a .welcomeBT {padding: 32px;}
    #main2 .welcomeM a .welcomeBT .on, #main2 .welcomeM a .welcomeBT .off {padding: 18.5px;}
    #main2 .welcomeM a h1 {font-size: 15px;         word-break: keep-all;}
    .swiper-button-next img {width: 10px;}
    .swiper-button-prev img {width: 10px;}
    #main7 .main7B {grid-gap: 10px;}
    #main1 .main1M .main1R .main1RB {grid-gap: 20px; display: grid; justify-content: center; align-items: center; width: 100%; grid-template-columns: repeat(auto-fill, minmax(min(100%, 25%), 1fr));}
    #main1 .main1M .main1RB .main1RBOX {height: 75px; width: 100%; grid-gap: 5px;}
    #main3 .main3MF .main3MB {width:40%;}
    #main3 .main3M .newM {display: inline-block; text-align: center;}
    #main3 .main3M .newM .new {width: 20%;}
    #main3 .main3M .newM .new img:first-child {width: 30px;}
    #main3 .main3M .newM .new img:nth-child(2) {width: 47px;}
    #main4 .main4TB { grid-template-columns: repeat(auto-fill, minmax(min(100%, 41%), 1fr));}
    #main5 .main5M .main5L .main5LB .text {width: 100%;}
    #main5 .main5M .main5L .main5LB .content {width: 100%;}
    #main5 .main5M .main5L .main5LB {width: 100%; background-repeat: no-repeat; background-size: cover; margin-top: 20px; grid-gap: 15px;}
    #main5 .main5M .main5L .main5X {display: inline-block;}
    #main3 .main3M .newM .arrow {width: 50px;}
}


/* 플로팅 */

.visual-link-wrap{ 

    position:absolute;

    left:50%;

    top:20%; 

    transform:translateX(-50%);

    width:1200px;
	

    display:flex;

    z-index:100;

}

.visual-link{

    flex:1;

    height:200px;

    padding:35px;

    color:#fff;

    text-decoration:none;

    position:relative;

}

.visual-link.black{

    background:#111;

}

.visual-link.blue{

    background:#384b7a;

}

.visual-link.image{

  
    background:url('/UserData/ydc9071/Layouts/ydc9071_Layout/Images/1_site_bg.png'); 
    background-size:cover;

}

.visual-link span{

    display:block;

    font-size:16px;

    letter-spacing:2px;
    margin-right: 8px;

}

.visual-link strong{

    font-size:22px;

    font-weight:600;

}

.visual-link,
.visual-link:link,
.visual-link:visited,
.visual-link:hover,
.visual-link:focus,
.visual-link:active{

    color:#fff;
    text-decoration:none;
    outline:none;

}


.welcome-title{

    display:flex;
    align-items:center;
    justify-content:center;
    gap:15px;
    margin-bottom:40px;

}

.welcome-title span{

    width:35px;
    height:1px;
    background:#888;

}

.welcome-title p{

    font-size:14px;
    color:#666;
    letter-spacing:6px;
    margin:0;

}
#mainSermon{
    width:100%;
    background:#f2f3f4;
}

#mainSermon .sermon-wrap{
    display:flex;
    width:100%;
    min-height:535px;
}

#mainSermon .sermon-img{
    width:50%;
    overflow:hidden;
}

#mainSermon .sermon-thumb{
    width:100%;
    height:100%;
    min-height:470px;
    background-position:center;
    background-repeat:no-repeat;
    background-size:cover;
}

#mainSermon .sermon-info{
    width:50%;
    padding:85px 90px;
    box-sizing:border-box;
    background:#f2f3f4;
}

#mainSermon .sermon-label{
    font-size:16px;
    font-weight:800;
    color:#111;
    letter-spacing:1px;
    margin-bottom:18px;
}

#mainSermon .sermon-main{
    display:block;
    color:#111;
    text-decoration:none;
    position:relative;
}

#mainSermon .sermon-main h2{
    font-size:36px;
    line-height:1.35;
    font-weight:800;
    margin:0 0 18px;
}

#mainSermon .sermon-meta{
    display:flex;
    gap:10px;
    align-items:center;
    font-size:16px;
    color:#222;
}

#mainSermon .sermon-date{
    position:absolute;
    right:0;
    bottom:0;
    font-size:13px;
    color:#222;
}

#mainSermon .sermon-line{
    width:100%;
    height:1px;
    background:#333;
    margin:38px 0 25px;
}

#mainSermon .sermon-list{
    margin:0;
    padding:0;
    list-style:none;
}

#mainSermon .sermon-list li{
    margin-bottom:24px;
}

#mainSermon .sermon-list a{
    font-size:20px;
    color:#111;
    text-decoration:none;
    font-weight:500;
}

#mainSermon .sermon-list span{
    margin-left:12px;
}

/* 반응형 */
@media(max-width:991px){
    #mainSermon .sermon-wrap{
        flex-direction:column;
    }

    #mainSermon .sermon-img,
    #mainSermon .sermon-info{
        width:100%;
    }

    #mainSermon .sermon-img{
        height:220px;
    }

    #mainSermon .sermon-info{
		padding: 15px 35px;
    }

    #mainSermon .sermon-main h2{
        font-size:28px;
    }

    #mainSermon .sermon-date{
        position:static;
        display:block;
        margin-top:12px;
    }
}

#mainGallery{

    padding:120px 0;
    background:#faf8f3;

}

#mainGallery .container{

    max-width:980px;
    margin:0 auto;

}

.gallery-title{
	
    text-align:center;
    margin-bottom:50px;

}
.gallery-title h2{font-weight:700 !important;}

.gallery-title p{

    font-size:13px;
    letter-spacing:2px;
    color:#666;
    margin-bottom:12px;

}

.gallery-wrap{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    grid-template-rows:180px 180px;

    gap:14px;

}

.gallery-item{

    overflow:hidden;
    display:block;

}

.gallery-thumb{

    width:100%;
    height:100%;

    background-size:cover;
    background-position:center;

    transition:.4s;

}

.gallery-item:hover .gallery-thumb{

    transform:scale(1.08);

}

/* 첫번째 사진 크게 */

.gallery-item:first-child{

    grid-row:span 2;

}

.gallery-item:first-child .gallery-thumb{

    height:374px;

}

.gallery-bottom{

    margin-top:35px;

    text-align:center;

}

.gallery-bottom a{

    font-size:16px;
	font-weight:700;
    color:#111;

    text-decoration:none;

    letter-spacing:1px;

}

.gallery-item{

    display:block;

    overflow:hidden;

}

.gallery-thumb{

    position:relative;

    width:100%;
    padding-top:72%;

    background-size:cover;
    background-position:center;

    transition:.45s;

}

/* 검은 오버레이 */

.gallery-overlay{

    position:absolute;

    left:0;
    top:0;

    width:100%;
    height:100%;

    background:rgba(0,0,0,0);

    transition:.35s;

}

/* 텍스트 */

.gallery-text{

    position:absolute;

    left:25px;
    bottom:20px;

    color:#fff;

    transform:translateY(30px);

    opacity:0;

    transition:.35s;

}

.gallery-text h3{

    font-size:24px;

    font-weight:700;

    margin-bottom:10px;

    color:#fff;

}

.gallery-text span{

    font-size:14px;

    color:rgba(255,255,255,.8);

}

/* Hover */

.gallery-item:hover .gallery-thumb{

    transform:scale(1.08);

}

.gallery-item:hover .gallery-overlay{

    background:rgba(0,0,0,.45);

}

.gallery-item:hover .gallery-text{

    opacity:1;

    transform:translateY(0);

}

.gallery-text h3:after{

    content:"";

    display:block;

    width:40px;

    height:2px;

    background:#fff;

    margin-top:12px;

}

#mainLocation{

    background:#1f202b;
    padding:100px 0;

}

#mainLocation .container{

    max-width:1400px;
    margin:0 auto;

    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:70px;

}

.location-map{

    flex:1;

}

/* .location-map .root_daum_roughmap{ */

    /* width:100% !important; */

/* } */

.location-map iframe{

    width:100% !important;
    height:560px !important;

}

.location-info{

    flex:1;

    color:#fff;

}

.location-label{

    display:block;

    font-size:18px;
    font-weight:600;
    margin-bottom:20px;

}

.location-info .sub-title{

    font-size:14px;
    font-weight:700;

    letter-spacing:4px;

    color:#fff;

    margin-bottom:30px;

}

.location-info h2{

    font-size:32px;

    line-height:1.35;

    font-weight:700;

    margin-bottom:70px;

}

.location-info ul{

    list-style:none;

    padding:0;

    margin:0;

}

.location-info li{

    display:flex;

    align-items:center;

    padding:25px 0;

    border-top:1px solid rgba(255,255,255,.15);

}

.location-info li:last-child{

    border-bottom:1px solid rgba(255,255,255,.15);

}

.location-info li span{

    width:90px;

    color:#a8a8a8;

    font-size:18px;

}

.location-info li strong{

    font-size:22px;

    font-weight:300;

}

/* 슬라이드 버튼 전체 */
.button{
    position:absolute;
    top:50%;
    right:80px;
    transform:translateY(-50%);
    z-index:30;

    display:flex;
    flex-direction:column;
    gap:18px;
}

/* 기본 swiper 스타일 제거 */
.button .swiper-button-prev,
.button .swiper-button-next{
    position:relative;
    left:auto;
    right:auto;
    top:auto;
    margin:0;

    width:52px;
    height:52px;

    display:flex;
    justify-content:center;
    align-items:center;

    border-radius:50%;
    background:rgba(255,255,255,.18);
    border:1px solid rgba(255,255,255,.8);

    backdrop-filter:blur(3px);

    cursor:pointer;

    transition:.3s;
}

.button{

    position:absolute;

    top:50%;
    right:45px;

    transform:translateY(-50%);

    display:flex;
    flex-direction:ROW ;

    align-items:center;

    gap:16px;

    z-index:100;
}

.button .swiper-button-prev,
.button .swiper-button-next{

    position:unset !important;

    left:unset !important;
    right:unset !important;
    top:unset !important;
    bottom:unset !important;

    margin:0 !important;

    width:56px;
    height:56px;

    flex-shrink:0;

    border-radius:50%;

    display:flex;
    justify-content:center;
    align-items:center;

    background:rgba(255,255,255,.15);

    border:1px solid rgba(255,255,255,.7);

}
/* hover */
.button .swiper-button-prev:hover,
.button .swiper-button-next:hover{

    background:#fff;
    border-color:#fff;

    transform:scale(1.08);

}

/* hover 시 아이콘 살짝 진하게 */
.button .swiper-button-prev:hover img,
.button .swiper-button-next:hover img{
    filter:brightness(.3);
}

.visual-link strong{

    display:flex;
    justify-content:baseline;
    align-items:center;
    margin: 85px 0 0 0px;
    width:100%;
}

.sermon-list li a{
    display:flex;

    justify-content: left;

    align-items:center;
    transition:.3s;
}

.sermon-list li a span{
    opacity:0;
    transform:translateX(-10px);
    transition:all .3s ease;
}

.sermon-list li:hover a span{
    opacity:1;
    transform:translateX(0);
}

/* ========================================
   LOCATION 반응형
======================================== */

/* 카카오맵이 부모 영역을 넘어가지 않도록 */
#mainLocation .location-map {
    min-width: 0;
}

#mainLocation .location-map .root_daum_roughmap {
    width: 100% !important;
    max-width: 100% !important;
}

/* 카카오맵 내부 실제 지도 */
#mainLocation .location-map .root_daum_roughmap .wrap_map {
    width: 100% !important;
}


/* ========================================
   태블릿 이하
======================================== */
@media (max-width: 991px) {

    #mainLocation {
        padding: 60px 0;
    }

    #mainLocation .container {
        width: 100%;
        padding-left: 20px;
        padding-right: 20px;
    }
.visual-link strong{

    display:flex;
    justify-content:baseline;
    align-items:center;
    margin: 10px 0 0 0px;
    width:100%;
}
    /*
     * 기존에 flex로 좌우 배치되어 있어도
     * 세로로 강제 변경
     */
	 .visual-link-wrap{ 

    position:absolute;

    left:50%;

    top: 8.3%; 

    transform:translateX(-50%);

    width:100%;
	

    display:flex;

    z-index:100;

}
.visual-link {
    flex: 1;
    height: 125px;
    padding: 20px;
    color: #fff;
    text-decoration: none;
    position: relative;
}

    #mainLocation .container {
        display: flex;
        flex-direction: column;
    }

    #mainLocation .location-map,
    #mainLocation .location-info {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
    }

    #mainLocation .location-map {
        order: 1;
    }

    #mainLocation .location-info {
        order: 2;
        padding: 35px 0 0 !important;
        margin: 0 !important;
    }

    /* 680px로 박혀있는 카카오맵 제거 */
    #mainLocation .root_daum_roughmap {
        width: 100% !important;
    }

    #mainLocation .root_daum_roughmap .wrap_map {
        width: 100% !important;
        height: 420px !important;
    }

    #mainLocation .location-info h2 {
        font-size: 26px;
        line-height: 1.5;
    }
}


/* ========================================
   모바일
======================================== */
@media (max-width: 767px) {

    #mainLocation {
        padding: 40px 0;
    }

    #mainLocation .container {
        padding-left: 15px;
        padding-right: 15px;
    }

    #mainLocation .root_daum_roughmap .wrap_map {
        height: 320px !important;
    }

    #mainLocation .location-info {
        padding-top: 40px !important;
    }

    #mainLocation .location-info .sub-title {
        font-size: 13px;
        margin-bottom: 12px;
    }

    #mainLocation .location-info h2 {
        font-size: 20px;
        line-height: 1.5;
        margin-bottom: 25px;
    }

    #mainLocation .location-info ul {
        margin: 0;
        padding: 0;
    }

    #mainLocation .location-info ul li {
        display: flex;
        align-items: center;
        width: 100%;
        margin-bottom: 0px;
    }

    #mainLocation .location-info ul li span {
        width: 60px;
        flex-shrink: 0;
    }

    #mainLocation .location-info ul li strong {
        flex: 1;
        word-break: break-all;
    }
}


/* ========================================
   작은 모바일
======================================== */
@media (max-width: 480px) {
.location-info li {
    padding: 10px;
}
.visual-link span {
    font-size: 18px;
}

    #mainLocation .location-info ul li {
        margin-bottom: 0Px important;
    }

.location-info li strong {
    font-size: 15px;
    font-weight: 300;
}
		
#mainLocation .container{

    max-width:1400px;
    margin:0 auto;

    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:0px !important;

}

.section_address {
    display:none;
}
    #mainLocation .root_daum_roughmap .wrap_map {
        height: 280px !important;
    }

    #mainLocation .location-info h2 {
        font-size: 18px;
    }

    #mainLocation .location-info ul li {
        font-size: 14px;
    }
	.welcome-text .h2, h2 {
        font-size: 15px;
        text-align: center;
        margin-top: 10px;
        margin-bottom: 10px;
}

	.location-info .welcome-text .h2, h2 {
        font-size: 15px;
        text-align: left;
        margin-top: 10px;
        margin-bottom: 10px;
}
#footer {
    position: relative;
    background: #f8f7f3;
    overflow: hidden;
    padding: 25px 0 30px 0;
}	
}
@media (max-width: 1119px) {

.visual-link-wrap {
    position: absolute;
    left: 50%;
    top: 11.2%;
    transform: translateX(-50%);
    width: 1200px;
    display: flex;
    z-index: 100;
} 
	 .visual-link-wrap
	 { 
			width:100%;
	}
}

@media (max-width: 768px) {
    .sermon-img,
    .sermon-img > a {
        width: 100% !important;
    }

    .sermon-thumb {
        width: 100% !important;
        height: 200px !important;

        background-size: 100% 100% !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }
	#mainSermon .sermon-thumb{
    width:100%;
    height:100%;
    min-height:220px !important;
    background-position:center;
    background-repeat:no-repeat;
    background-size:cover;
}
	#mainSermon{
display:none ;
}

#mainSermon .sermon-list a{
    font-size:16px!important;
    color:#111;
    text-decoration:none;
    font-weight:500;
}

#mainGallery{

    padding:35px 0!important;
    background:#faf8f3;

}


}
----------------
/* =========================================================
   영도교회 MOBILE
   시안 기준
========================================================= */

@media (max-width: 768px) {

    html,
    body {
        width: 100%;
        overflow-x: hidden;
    }

    #dimodePage,
    #dimodePage .page-content {
        width: 100%;
        max-width: 100%;
    }
	

    /* =====================================================
       1. MAIN VISUAL
    ===================================================== */

    #mainSlider {
        width: 100%;
        height: auto;
    }

    #mainSlider .swiper-container,
    #mainSlider .swiper-wrapper,
    #mainSlider .swiper-slide {
        width: 100%;
        height: 310px !important;
    }

    #mainSlider .simpleParallax {
        width: 100%;
        height: 100% !important;
    }

    #mainSlider .background {
        width: 100%;
        height: 100% !important;

        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }


    /* =====================================================
       2. 새가족 / 예배안내 / 오시는길
    ===================================================== */

    .visual-link-wrap {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;

        transform: none !important;

        width: calc(100% - 56px) !important;
        max-width: none !important;

        margin: 28px auto 0 !important;

        display: flex !important;
        flex-direction: column !important;
    }

    .visual-link-wrap .visual-link {
        width: 100% !important;
        height: 130px !important;

        display: flex !important;
        flex-direction: column;
        justify-content: center;
        align-items: center;

        box-sizing: border-box;
    }

    .visual-link-wrap .visual-link > span {
        font-size: 11px;
        margin-bottom: 10px;
    }

    .visual-link-wrap .visual-link strong {
        font-size: 21px;
    }


    /* =====================================================
       3. WELCOME
    ===================================================== */

    #main2 {
        padding: 75px 20px 65px !important;
    }

    #main2 .container {
        width: 100% !important;
        max-width: none !important;
        padding: 0 !important;
    }

    #main2 .row {
        margin: 0 !important;
    }

    .welcomT {
        width: 100% !important;
        text-align: center;
    }

    .welcome-title {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 12px;
    }

    .welcome-title span {
        width: 28px;
        height: 1px;
        background: #222;
    }

    .welcome-title p {
        margin: 0;
        font-size: 11px;
        letter-spacing: 8px;
    }

    .welcome-sign {
        margin-top: 18px;
    }

    .welcome-sign img {
        width: 220px;
        max-width: 75%;
    }

    .welcome-text {
        margin-top: 20px;
    }

    .welcome-text h2 {
        margin: 3px 0;
        font-size: 12px !important;
        line-height: 1.7;
        font-weight: 400;
    }


    /* =====================================================
       4. 바로가기 아이콘 5개
    ===================================================== */

    .welcomeM {
        width: 100% !important;

        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;

        margin-top: 38px !important;
    }

    .welcomeM .view-more2 {
        width: 33.3333% !important;
        flex: 0 0 33.3333% !important;

        margin: 0 0 25px !important;
        padding: 0 5px !important;

        box-sizing: border-box;
        text-align: center;
    }

    .welcomeBT {
        width: 45px !important;
        height: 45px !important;

        margin: 0 auto 8px !important;
    }

    .welcomeBT .off,
    .welcomeBT .on {
        width: 100% !important;
        height: 100% !important;

        background-size: contain !important;
        background-position: center !important;
        background-repeat: no-repeat !important;
    }

    .welcomeM .view-more2 h1 {
        margin: 0 !important;

        font-size: 12px !important;
        line-height: 1.25 !important;

        word-break: keep-all;
    }


    /* =====================================================
       5. SERMON
    ===================================================== */

    #mainSermon {
        width: 100%;
        padding: 0 !important;
    }

    .sermon-wrap {
        width: 100% !important;
        max-width: none !important;

        display: flex !important;
        flex-direction: column !important;

        margin: 0 !important;
    }

    .sermon-img {
        width: 100% !important;
        height: 250px !important;
    }

    .sermon-img > a {
        display: block;
        width: 100%;
        height: 100%;
    }

    .sermon-thumb {
        width: 100% !important;
        height: 100% !important;

        /*
          시안처럼 사진이 영역 전체를 채우도록
        */
        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }

    .sermon-info {
        width: 100% !important;
        min-height: 330px;

        padding: 28px 28px 35px !important;

        box-sizing: border-box;
        background: #f3f3f3;
    }

    .sermon-label {
        margin: 0 0 18px !important;

        font-size: 11px !important;
        font-weight: 700;
        letter-spacing: .5px;
    }

    .sermon-main {
        position: relative;
        display: block;
    }

    .sermon-main h2 {
        margin: 0 0 20px !important;

        font-size: 23px !important;
        line-height: 1.3;
        font-weight: 700;
    }

    .sermon-meta {
        display: flex;
        gap: 8px;

        padding-right: 80px;

        font-size: 10px !important;
    }

    .sermon-date {
        position: absolute !important;
        right: 0 !important;
        bottom: 0 !important;

        font-size: 10px !important;
    }

    .sermon-line {
        width: 100%;
        height: 1px;

        margin: 20px 0 18px !important;

        background: #aaa;
    }

    .sermon-list {
        margin: 0 !important;
        padding: 0 !important;
        list-style: none;
    }

    .sermon-list li {
        margin-bottom: 15px !important;
    }

    .sermon-list li a {
        font-size: 11px !important;
    }


    /* =====================================================
       6. GALLERY
    ===================================================== */

    #mainGallery {
        padding: 55px 28px 65px !important;
    }

    #mainGallery .container {
        width: 100% !important;
        max-width: none !important;
        padding: 0 !important;
    }

    .gallery-title {
        margin-bottom: 30px !important;
        text-align: center;
    }

    .gallery-title h2 {
        margin: 0;
        font-size: 21px !important;
    }

    .gallery-wrap {
        display: grid !important;

        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;

        width: 100% !important;
    }

    /*
      첫 번째 사진만 시안처럼 크게
    */
    .gallery-item:first-child {
        grid-column: 1 / 3;
    }

    .gallery-thumb {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 1.6 / 1;

        background-size: cover !important;
        background-position: center !important;
    }

    .gallery-item:first-child .gallery-thumb {
        aspect-ratio: 2.15 / 1;
    }

    .gallery-bottom {
        margin-top: 30px !important;
        text-align: center;
    }

    .gallery-bottom a {
        display: inline-block;

        padding-bottom: 5px;

        font-size: 11px !important;
        font-weight: 700;

        border-bottom: 1px solid #222;
    }


    /* =====================================================
       7. LOCATION
    ===================================================== */

    #mainLocation {
        padding: 50px 28px !important;
    }

    #mainLocation .container {
        width: 100% !important;
        max-width: none !important;

        padding: 0 !important;
        margin: 0 !important;

        display: flex !important;
        flex-direction: column !important;
    }

    .location-map {
        width: 100% !important;
        margin: 0 0 38px !important;
    }

    /*
      카카오맵에 inline width:680px이 있기 때문에
      !important 필요
    */
    .location-map .root_daum_roughmap {
        width: 100% !important;
    }

    .location-map .wrap_map {
        width: 100% !important;
        height: 260px !important;
    }

    .location-info {
        width: 100% !important;
    }

    .location-info .sub-title {
        margin-bottom: 25px;

        font-size: 11px !important;
        font-weight: 700;
    }

    .location-info h2 {
        margin-bottom: 30px !important;

        font-size: 18px !important;
        line-height: 1.35;
    }

    .location-info ul {
        margin: 0;
        padding: 0;
    }

    .location-info li {
        display: flex;
        align-items: center;

        padding: 15px 0;

        border-top: 1px solid rgba(255,255,255,.4);
    }

    .location-info li:last-child {
        border-bottom: 1px solid rgba(255,255,255,.4);
    }

    .location-info li span {
        width: 55px;
        font-size: 10px;
    }

    .location-info li strong {
        font-size: 11px;
        font-weight: 400;
    }

}
/* ==========================================
   영도교회 모바일 강제 초기화
========================================== */
@media screen and (max-width: 768px) {


.arrow{
	display:none  !important;
}
    /* ======================================
       메인 비주얼
    ====================================== */
    #mainSlider {
        position: relative !important;

        width: 100% !important;
        height: 220px !important;
        min-height: 220px !important;

        margin: 0 !important;
        padding: 0 !important;
    }

    #mainSlider .swiper-container,
    #mainSlider .swiper-wrapper,
    #mainSlider .swiper-slide,
    #mainSlider .simpleParallax {
        width: 100% !important;
        height: 220px !important;
        min-height: 220px !important;
    }

    #mainSlider .background {
        width: 100% !important;
        height: 220px !important;
        min-height: 220px !important;

        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }


    /* ======================================
       3개 바로가기 전체
    ====================================== */
    #dimodePage .visual-link-wrap {
        position: relative !important;

        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;

        transform: none !important;

        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;

        /*
         * 시안처럼 좌우 약 20px 여백
         */
        width: calc(100% - 40px) !important;
        max-width: none !important;
        height: auto !important;

        /*
         * 슬라이드와 바로가기 사이 간격
         */
        margin: 20px auto 0 !important;
        padding: 0 !important;

        float: none !important;
    }


    /* ======================================
       바로가기 각각
    ====================================== */
    #dimodePage .visual-link-wrap > .visual-link {
        position: relative !important;

        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;

        float: none !important;
        clear: both !important;

        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;

        flex: none !important;

        width: 100% !important;
        max-width: none !important;

        /*
         * 기존 130px → 시안에 맞게 90px
         */
        height: 90px !important;
        min-height: 90px !important;

        margin: 0 !important;
        padding: 0 !important;

        transform: none !important;

        box-sizing: border-box !important;
    }


    /* ======================================
       NEW FAMILY
    ====================================== */
    #dimodePage .visual-link-wrap > .visual-link.black {
        width: 100% !important;
        height: 110px !important;
    }


    /* ======================================
       WORSHIP SCHEDULE
    ====================================== */
    #dimodePage .visual-link-wrap > .visual-link.image {
        width: 100% !important;
        height: 110px !important;

        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }


    /* ======================================
       LOCATION
    ====================================== */
    #dimodePage .visual-link-wrap > .visual-link.blue {
        width: 100% !important;
        height: 110px !important;
    }


    /* ======================================
       영문 텍스트
       NEW FAMILY / WORSHIP SCHEDULE / LOCATION
    ====================================== */
    #dimodePage .visual-link-wrap > .visual-link > span {
        display: block !important;

        margin: 0 0 7px !important;

        font-size: 9px !important;
        line-height: 1 !important;
        letter-spacing: 1px !important;

        text-align: center !important;
    }


    /* ======================================
       한글 텍스트
       새가족 안내 / 예배안내 / 오시는 길
    ====================================== */
    #dimodePage .visual-link-wrap > .visual-link strong {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;

        margin: 0 !important;

        font-size: 16px !important;
        line-height: 1.2 !important;
        font-weight: 600 !important;

        text-align: center !important;
    }


    /* ======================================
       바로가기 화살표
    ====================================== */
    #dimodePage .visual-link-wrap > .visual-link strong img {

        width: 18px !important;
        height: auto !important;

        margin-left: 8px !important;
    }



}

/* ==========================================
   모바일 GALLERY - 시안
========================================== */
@media screen and (max-width: 768px) {

    #mainGallery {
        padding: 40px 0 50px !important;
    }

    #mainGallery .container {
        width: 100% !important;
        max-width: none !important;
        padding: 0 30px !important;
        margin: 0 auto !important;
    }

    /* 제목 */
    #mainGallery .gallery-title {
        width: 100% !important;
        margin: 0 0 30px !important;
        padding: 0 !important;
        text-align: center !important;
    }

    #mainGallery .gallery-title h2 {
        margin: 0 !important;
        padding: 0 !important;
        font-size: 22px !important;
        font-weight: 700 !important;
        line-height: 1 !important;
    }


    /* =========================
       갤러리
    ========================= */

    #mainGallery .gallery-wrap {
        display: grid !important;

        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

        gap: 10px !important;

        width: 100% !important;
        height: auto !important;

        margin: 0 !important;
        padding: 0 !important;
    }


    /* PC용 레이아웃 초기화 */
    #mainGallery .gallery-item {
        position: relative !important;

        display: block !important;

        width: 100% !important;
        height: auto !important;

        top: auto !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;

        margin: 0 !important;
        padding: 0 !important;

        transform: none !important;
    }


    /* =========================
       첫 번째 사진
       → 가로 전체 사용
    ========================= */

    #mainGallery .gallery-item:first-child {
        grid-column: 1 / -1 !important;
    }

    #mainGallery .gallery-item:first-child .gallery-thumb {
        width: 100% !important;

        aspect-ratio: 2.45 / 1 !important;

        height: auto !important;
    }


    /* =========================
       나머지 4장
       → 2 × 2
    ========================= */

    #mainGallery .gallery-item:not(:first-child) .gallery-thumb {
        width: 100% !important;

        aspect-ratio: 1.45 / 1 !important;

        height: auto !important;
    }


    /* 이미지 공통 */
    #mainGallery .gallery-thumb {
        position: relative !important;

        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }


    /* 필요하면 모바일에서 오버레이 숨김 */
    #mainGallery .gallery-overlay {
        display: none !important;
    }


    /* =========================
       ALL VIEW
    ========================= */

    #mainGallery .gallery-bottom {
        width: 100% !important;

        margin: 35px 0 0 !important;
        padding: 0 !important;

        text-align: center !important;
    }

    #mainGallery .gallery-bottom a {
        display: inline-block !important;

        padding-bottom: 6px !important;

        font-size: 13px !important;
        font-weight: 700 !important;

        color: #111 !important;
        text-decoration: none !important;

        border-bottom: 1px solid #777 !important;
    }
}

/* ==========================================
   모바일 GALLERY
   시안 : 1 + 2 + 2 구조
========================================== */
@media screen and (max-width: 768px) {

    #mainGallery {
        width: 100% !important;
        padding: 40px 0 45px !important;
        margin: 0 !important;
    }

    #mainGallery .container {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 30px !important;
        margin: 0 auto !important;
        box-sizing: border-box !important;
    }


    /* =========================
       제목
    ========================= */

    #mainGallery .gallery-title {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;

        margin: 0 0 30px !important;
        padding: 0 !important;

        text-align: center !important;
    }

    #mainGallery .gallery-title h2 {
        margin: 0 !important;
        padding: 0 !important;

        font-size: 22px !important;
        line-height: 1.2 !important;
        font-weight: 700 !important;
    }


    /* =========================
       전체 갤러리
    ========================= */

    #mainGallery .gallery-wrap {
        display: grid !important;

        grid-template-columns:
            minmax(0, 1fr)
            minmax(0, 1fr) !important;

        gap: 8px 10px !important;

        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;

        box-sizing: border-box !important;
    }


    /* =========================
       각 갤러리 아이템 초기화
    ========================= */

    #mainGallery .gallery-item {
        position: relative !important;

        display: block !important;

        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        top: auto !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;

        margin: 0 !important;
        padding: 0 !important;

        transform: none !important;

        box-sizing: border-box !important;
        overflow: hidden !important;
    }


    /* 첫 번째 사진은 가로 전체 */
    #mainGallery .gallery-item:first-child {
        grid-column: 1 / -1 !important;

        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
    }


    /* =========================
       이미지 공통 초기화
    ========================= */

    #mainGallery .gallery-thumb {
        position: relative !important;

        display: block !important;

        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        margin: 0 !important;
        padding: 0 !important;

        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;

        box-sizing: border-box !important;
    }


    /* 첫 번째 큰 이미지 */
    #mainGallery .gallery-item:first-child .gallery-thumb {
        aspect-ratio: 2.45 / 1 !important;
        height: auto !important;
        min-height: 0 !important;
    }


    /* 아래 4개 */
    #mainGallery .gallery-item:not(:first-child) .gallery-thumb {
        aspect-ratio: 1.48 / 1 !important;
        height: auto !important;
        min-height: 0 !important;
    }


    /* 오버레이 제거 */
    #mainGallery .gallery-overlay {
        display: none !important;
    }


    /* =========================
       ALL VIEW
    ========================= */

    #mainGallery .gallery-bottom {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;

        margin: 32px 0 0 !important;
        padding: 0 !important;

        text-align: center !important;
    }

    #mainGallery .gallery-bottom a {
        display: inline-block !important;

        padding: 0 0 6px !important;

        font-size: 13px !important;
        line-height: 1.2 !important;
        font-weight: 700 !important;

        color: #111 !important;
        text-decoration: none !important;

        border-bottom: 1px solid #777 !important;
    }
}
@media screen and (max-width: 768px) {

    #mainGallery .gallery-wrap {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

        /* 핵심 */
        grid-template-rows: auto !important;
        grid-auto-rows: auto !important;
        align-items: start !important;

        height: auto !important;
        min-height: 0 !important;

        gap: 8px 10px !important;
    }

    #mainGallery .gallery-item {
        position: static !important;

        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        margin: 0 !important;
        padding: 0 !important;

        top: auto !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;

        grid-row: auto !important;

        aspect-ratio: auto !important;

        transform: none !important;
    }

    /* 첫 번째만 한 줄 전체 */
    #mainGallery .gallery-item:first-child {
        grid-column: 1 / -1 !important;
        grid-row: auto !important;

        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        margin: 0 !important;
        padding: 0 !important;

        aspect-ratio: auto !important;
    }

    /* 첫 번째 사진 */
    #mainGallery .gallery-item:first-child .gallery-thumb {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;

        aspect-ratio: 2.45 / 1 !important;

        margin: 0 !important;
        padding: 0 !important;
    }

    /* 나머지 4장 */
    #mainGallery .gallery-item:not(:first-child) .gallery-thumb {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;

        aspect-ratio: 1.48 / 1 !important;

        margin: 0 !important;
        padding: 0 !important;
    }
}

@media screen and (max-width: 768px) {

    /* 지도 전체 크기 */
    #mainLocation .location-map {
        width: 100% !important;
        max-width:360PX!important;
        margin: 0 auto !important;
    }

#dimodePage {
    margin-top: 60px;
}

    /* 카카오맵 바깥 영역 */
    #mainLocation .root_daum_roughmap {
        width: 100% !important;
        max-width: 360px !important;
    }

    /* 실제 지도 영역 */
    #mainLocation .root_daum_roughmap .wrap_map {
        width: 100% !important;
        height: 200px !important;
    }
}
#dimodePage {
    margin-top: 95px;
}
