@import "/assets/css/reset.css";
@import "/assets/fonts/NanumSquare-master/nanumsquare.css";

body {
  font-family: "NanumSquare", sans-serif;
  color: #3f3f3f;
}

.back-img {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-color: transparent;
}

.display {
  display: block !important;
}

.none {
  display: none !important;
}

.flex {
  display: flex !important;
}

.normal {
  font-weight: 400;
}
.bold {
  font-weight: 700;
}
.bolder {
  font-weight: 800;
}
.light {
  font-weight: 300;
}

.b-line {
  border-bottom: 1px solid #d1d1d1;
}
.l-line {
  border-left: 1px solid #d1d1d1;
}
.r-line {
  border-right: 1px solid #d1d1d1;
}
.line {
  border: 1px solid #d1d1d1;
}
.s-line {
  border-right: 1px solid #d1d1d1;
}
@media (max-width: 767px) {
    .gnb {
        display: none !important;
    }
}
.gnb-list .sub-list .sub-tit p:hover {
  color: #3c5fb5;
  transition-duration: 0.3s;
}
.gnb-list .sub-list .sub-tit p.active {
  color: #3c5fb5;
}
.gnb-list .sub-list .sub-tit p.active a {
    color: #3c5fb5 !important;
    font-weight: bold;
}
.m-con .top-wrap .page-icon {
  margin: 21px 40px 21px 18px;
}
.m-con .top-wrap .page-icon > img {
  width: 138px;
  height: 138px;
}
/*테이블 공통정의*/
.comm-st-list {
  border-top: 1px solid #848484;
  border-bottom: 1px solid #848484;
}
.comm-st-list > li {
  display: flex;
}
.comm-st-list > li .tit {
  border-right: 1px solid #d9d9d9;
  text-align: center;
}
.comm-st-list > li .desc {
  text-align: center;
}
.comm-st-list > li:nth-child(even) {
  background-color: #f3f3f3;
}
.comm-st-list > li:nth-child(odd) {
  background-color: #ffffff;
}
.bar {
  color: #aeaeae;
  font-weight: 400;
}
.blue {
  color: #3c5fb5;
}
/* rule: 리스트 영역 패딩 및 타입 */
.acrdn-wrap.rule .arcdn .arcdn-desc-wrap.rule .desc-list {
    padding: 24px 30px 40px 30px;
    font-size: 15px;
    list-style: decimal;
}

/* rule: 리스트 내부 li 스타일 */
.acrdn-wrap.rule .arcdn .arcdn-desc-wrap.rule .desc-list > li {
    line-height: 30px;
}

/* rule: 내용 영역 하단 border */
.acrdn-wrap.rule .arcdn .arcdn-desc-wrap.rule .desc-list {
    border-bottom: 1px solid #d1d1d1;
}

/* rule: footer 섹션 */
.acrdn-wrap.rule .rule-footer {
    padding: 47px 0px 34px 0px;
    color: #555555;
    font-size: 16px;
}

/* rule: 날짜 영역 */
.acrdn-wrap.rule .rule-date {
    text-align: right;
}

.acrdn-wrap.rule .rule-date span {
    color: #555555;
    font-size: 16px;
}

.acrdn-wrap.rule .rule-date span:nth-child(2) {
    padding: 60px;
}

.location .top-map {
  width: 1140px;
  height: 300px;
  /*background-image: url(/assets/images/example_b.png);*/
  background-size: cover;
  background-color: #999999;
}

.location .lcnt-desc {
  padding: 56px 0px 80px 80px;
}
.location .lcnt-desc > .tit {
  font-size: 22px;
}
.location .lcnt-desc .sub-tit {
  color: #555555;
  font-size: 16px;
  padding: 12px 0px 44px 0px;
}
.location .lcnt-desc .lcnt-tip {
  width: 980px;
  margin-top: 14px;
  border-top: 1px solid #848484;
  border-bottom: 1px solid #848484;
}
.location .lcnt-desc .lcnt-tip .tip-con .tip-tit {
  font-size: 20px;
  width: 232px;
  text-align: center;
}
.location .lcnt-desc .lcnt-tip .tip-con {
  display: flex;
  align-items: center;
}
.location .lcnt-desc .lcnt-tip .tip-con:nth-child(even) {
  background-color: #f3f3f3;
}
.location .lcnt-desc .lcnt-tip .tip-con .tip-desc {
  padding: 26px 0px 24px 40px;
  border-left: 1px solid #d9d9d9;
}
.location .lcnt-desc .lcnt-tip .tip-con .tip-desc .tip-list .tit {
  font-size: 16px;
  color: #082268;
}
.top-30 {
  padding-top: 30px;
}
.location .lcnt-desc .lcnt-tip .tip-con .tip-desc .tip-list .desc {
  font-size: 14px;
  color: #555555;
  padding-top: 12px;
  line-height: 22px;
}
.location .lcnt-desc .lcnt-tip .tip-con .tip-desc .tip-list .sub-desc {
  font-size: 14px;
  color: #848484;
  padding: 5px 0px 0px 10px;
  line-height: 22px;
}
/*header*/
header {
  width: 100%;
}

/* 햄버거 메뉴 버튼 */
.hamburger-menu {
  display: none;
  background: none;
  border: none;
  padding: 10px;
  cursor: pointer;
  z-index: 1001;
}

.hamburger-menu .icon-bar {
  display: block;
  width: 24px;
  height: 3px;
  background-color: #333;
  margin: 5px 0;
  border-radius: 2px;
  transition: all 0.3s;
}

.hamburger-menu:hover .icon-bar {
  background-color: #3c5fb5;
}

/* 사이드 메뉴 스타일 (모바일 레이아웃과 동일) */
#side_menu {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 99999;
  background: rgba(0, 0, 0, 0.5);
}

#side_menu .side_wr {
  position: absolute;
  right: -250px;
  top: 0;
  width: 250px;
  height: 100%;
  background: #fff;
  overflow-y: auto;
}

#side_menu .side_inner_rel {
  position: relative;
  height: 100%;
}

#side_menu .side_inner_abs {
  padding: 20px;
}

#side_menu .m_search {
  margin-bottom: 20px;
}

#side_menu .m_search input {
  width: 100%;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 4px;
}

#side_menu .m_login {
  margin-bottom: 20px;
  display: flex;
  gap: 10px;
}

#side_menu .m_board {
  list-style: none;
  padding: 0;
  margin: 0 0 20px 0;
  border-top: 1px solid #eee;
}

#side_menu .m_board li {
  border-bottom: 1px solid #eee;
}

#side_menu .m_board li a {
  display: block;
  padding: 12px 0;
  color: #333;
  text-decoration: none;
}

#side_menu .m_menu {
  list-style: none;
  padding: 0;
  margin: 0;
}

#side_menu .m_menu li {
  border-bottom: 1px solid #eee;
}

#side_menu .m_menu li a {
  display: block;
  padding: 12px 0;
  color: #333;
  text-decoration: none;
}

#side_menu .m_menu .dropdown-custom-menu {
  display: none;
  list-style: none;
  padding-left: 20px;
  background: #f8f8f8;
}

#side_menu .m_menu .dropdown-custom-menu li a {
  padding: 10px 0;
  font-size: 14px;
}

/* 반응형 처리 - 중간 크기 화면 */
@media (min-width: 768px) and (max-width: 1439px) {
  .content-wrap {
    max-width: 100%;
  }

  .content-wrap .m-con {
    padding: 0 20px;
  }
}

/* 작은 화면 대응 */
@media (max-width: 1024px) {
  .cont-body {
    padding: 0 20px;
  }

  /* 햄버거 메뉴 표시 */
  .hamburger-menu {
    display: block;
    order: -1;
  }

  /* GNB 숨김 */
  .content-wrap .gnb {
    display: none !important;
  }

  /* 메인 컨텐츠 전체 너비 */
  .content-wrap .m-con {
    width: 100%;
    max-width: 100%;
  }
}
header .h-con {
  max-width: 1440px;
  height: 80px;
  margin: 0 auto;
  padding: 18px 20px 18px 24px;
  display: flex;
}
header .h-logo {
  width: 192px;
  height: 44px;
}
header .srch-wrap {
  margin: auto 0 0 auto;
  display: flex;
}
header .srch-wrap .srch-con {
  width: 228px;
  height: 38px;
  border-radius: 10px;
  padding: 12px 16px;
  /*background-image: url(/assets/images/srch.svg);*/
  background-position: 211px;
  background-size: 24px;
  background-repeat: no-repeat;
}
header .srch-wrap .login {
  width: 40px;
  height: 40px;
  margin-left: 20px;
}

header .srch-wrap .login {
  background-image: url("/assets/images/login.svg");
  background-size: 30px;
}

/* 현산교회 - body*/
.content-wrap {
  max-width: 1440px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
}
.content-wrap .gnb {
  width: 300px;
  flex-shrink: 0;
  /*margin-right: auto;*/
  position: relative;
  min-height: 1000px;
  border-right: 1px solid #d1d1d1;
}

/* 모든 메인 컨텐츠 영역에 flex 적용 */
.content-wrap .m-con {
  flex: 1;
  min-width: 0;
  width: 100%;
}
.content-wrap .gnb p {
  cursor: pointer;
}
.content-wrap .gnb .gnb-list {
  padding: 38px 14px 0px 14px;
}

.content-wrap .gnb .gnb-list .gnb-tit {
  margin: 14px 0px;
  width: 272px;
  height: 40px;
  padding: 11px 20px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-size: 16px;
}
.content-wrap .gnb .gnb-list .gnb-tit:nth-child(1) {
  margin-top: 0px;
}
.content-wrap .gnb .gnb-list .gnb-tit:hover {
  border-radius: 30px;
  background-color: #f3f3f3;
  transition-duration: 0.5s;
}
.content-wrap .gnb .gnb-list .gnb-tit.active {
  border-radius: 30px;
  background-color: #f3f3f3;
}
.content-wrap .gnb .gnb-list .gnb-tit .arrow {
  width: 24px;
  height: 24px;
  margin-left: auto;
  transform: scaleY(1);
}
.content-wrap .gnb .gnb-list .gnb-tit.active .arrow {
  transform: scaleY(-1);
}

.content-wrap .gnb .sub-list {
  padding: 6px 38px 12px 32px;
  width: 272px;
  color: #848484;
  font-weight: 700;
  font-size: 14px;
  display: none;
}

.content-wrap .gnb .sub-list .sub-tit:not(:first-child) {
  padding: 10px 0px;
}

.content-wrap .gnb .sub-list .sub-tit:first-child {
  padding: 0px 0px 10px 0px;
}

.content-wrap .gnb .gnb-footer {
  position: absolute;
  bottom: 0px;
  padding: 0px 24px 48px 24px;
  font-size: 14px;
}

.content-wrap .gnb .gnb-footer li:nth-child(2) {
  padding: 12px 0px 40px 0px;
  line-height: 24px;
}

.content-wrap .gnb .gnb-footer li:nth-child(3) {
  padding-bottom: 8px;
}

.content-wrap .gnb .gnb-footer li.tit {
  color: #082268;
  font-size: 16px;
}

.content-wrap .gnb .gnb-footer li .school-logo {
  width: 252px;
  height: 62px;
  padding-bottom: 8px;
  background-image: url("/assets/images/school_logo.png");
}

.main-page .content-wrap .m-con {
  max-width: 1140px;
}

.swiper-slide .m-txt-wrap {
  position: absolute;
  top: 92px;
  left: 665px;
}
.swiper-slide .m-txt-wrap .m-tit {
  font-size: 44px;
  font-weight: 300;
  color: #082268;
}
.swiper-slide .m-sub-tit {
  font-size: 14px;
  font-weight: 700;
  color: #677ba1;
  margin-top: 16px;
}
.content-wrap .m-con .slide-1 {
  background-image: url("/assets/images/banner_1.png");
  height: 400px;
}
.content-wrap .m-con .slide-2 {
  background-image: url("/assets/images/banner_2.jpeg");
  height: 400px;
}
.content-wrap .m-con .slide-3 {
  background-image: url("/assets/images/banner_3.jpeg");
  height: 400px;
}
.content-wrap .m-con .slide-4 {
  background-image: url("/assets/images/banner_4.jpeg");
  height: 400px;
}
.content-wrap .m-con .m-banner {
  display: flex;
  justify-content: flex-start;
}

.content-wrap .m-con .m-banner .banner-l {
  margin-right: auto;
  width: 844px;
  height: 140px;
  background-attachment: fixed;
  background-color: #334c7d;
  padding: 42px 64px 40px 64px;
  position: relative;
}
.content-wrap .m-con .m-banner .banner-l .l-con .tit {
  font-size: 20px;
  color: #ffffff;
  display: flex;
}
.content-wrap .m-con .m-banner .banner-l .l-con .tit p {
  line-height: 24px;
}
.content-wrap .m-con .m-banner .banner-l .l-con .minister-img {
  width: 210px;
  height: 140px;
  background-image: url("/assets/images/minister_choi.png");
  position: absolute;
  top: 0px;
  right: 64px;
}

.content-wrap .m-con .m-banner .l-con .chapter {
  color: #c8d8ff;
  font-size: 14px;
  padding-top: 8px;
}

.content-wrap .m-con .m-banner .banner-l .l-con .go-page {
  width: 24px;
  height: 24px;
  background-image: url("/assets/images/b-arrow.png");
  margin-left: 8px;
}

.content-wrap .m-con .m-banner .banner-r {
  width: 296px;
  height: 140px;
  background-color: #0b949d;
  padding: 44px 0px 68px 32px;
  position: relative;
}

.content-wrap .m-con .m-banner .banner-r .r-con .tit {
  font-size: 20px;
  color: #ffffff;
  display: flex;
}
.content-wrap .m-con .m-banner .banner-r .r-con .tit p {
  line-height: 24px;
}
.content-wrap .m-con .m-banner .r-con .date {
  color: #e5f3f3;
  font-size: 14px;
  padding-top: 8px;
}

.content-wrap .m-con .m-banner .banner-r .r-con .go-page {
  width: 24px;
  height: 24px;
  background-image: url("/assets/images/b-arrow.png");
  margin-left: 8px;
}

.content-wrap .m-con .m-banner .banner-r .r-con .jubo-img {
  background-image: url("/assets/images/main_jubo_icon.png");
  position: absolute;
  top: 0px;
  right: 0px;
  width: 140px;
  height: 140px;
  opacity: 0.2;
}

.board {
    padding-left: 30px;
    padding-right: 30px;
    box-sizing: border-box;
}

/* 제목 스타일 */
.board-title {
    padding: 24px 0px;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    font-weight: bold;
    margin-bottom: 0;
    border-bottom: none !important;
    font-size: 1.4rem !important;
}

/* 태블릿 이하 (1024px 이하) */
@media (max-width: 1024px) {
    .board {
        padding-left: 20px;
        padding-right: 20px;
    }

    .board-title {
        padding: 20px 8px;
        font-size: 1.1rem !important;
    }
}

/* 모바일 (768px 이하) */
@media (max-width: 768px) {
    .board {
        padding-left: 16px;
        padding-right: 16px;
    }

    .board-title {
        padding: 16px 8px;
        font-size: 1rem !important;
        gap: 8px;
    }
}

/* 작은 모바일 (500px 이하) */
@media (max-width: 500px) {
    .board {
        padding-left: 12px;
        padding-right: 12px;
    }

    .board-title {
        padding: 12px 6px;
        font-size: 0.95rem !important;
    }
}


.center {
  text-align: center;
}
.content-wrap .main-tit {
  text-align: center;
  padding: 56px 0 24px 0px;
  font-size: 22px;
  color: #3f3f3f;
}

.content-wrap .m-con .m-gallery {
  background-color: #f3f3f3;
}

.content-wrap .m-con .m-book {
    height: 594px;
    background-color: #f3f3f3;
}

.content-wrap .m-con .m-worship {
    height: 572px;
}

/* 공통 리스트 스타일 */
.content-wrap .m-cnfs .faith-list {
    display: flex;
    padding: 24px 0 48px 0;
    justify-content: center;
    flex-wrap: wrap; /* 작은 화면에서 줄바꿈 허용 */
    gap: 20px; /* 모바일에서 더 자연스럽게 간격 */
}

.content-wrap .m-cnfs .faith-list .faith-con1,
.content-wrap .m-cnfs .faith-list .faith-con2,
.content-wrap .m-cnfs .faith-list .faith-con3,
.content-wrap .m-cnfs .faith-list .faith-con4 {
    background-size: cover;
    background-position: center;
    width: 120px;
    height: 120px;
    margin: 0 25px;
    transition: transform 0.3s;
}

.content-wrap .m-cnfs .faith-list .faith-con1 {
    background-image: url(/assets/images/img_00_main_confession_01.png);
}
.content-wrap .m-cnfs .faith-list .faith-con2 {
    background-image: url(/assets/images/img_00_main_confession_02.png);
}
.content-wrap .m-cnfs .faith-list .faith-con3 {
    background-image: url(/assets/images/img_00_main_confession_03.png);
}
.content-wrap .m-cnfs .faith-list .faith-con4 {
    background-image: url(/assets/images/img_00_main_confession_04.png);
}

.content-wrap .m-cnfs .faith-list .tit {
    padding-top: 12px;
    font-size: 14px;
    line-height: 20px;
    text-align: center;
}

.content-wrap .m-cnfs .faith-list .tit:hover {
    color: #3c5fb5;
    cursor: pointer;
}

/* ------------------ 반응형 시작 ------------------ */

/* 태블릿 (최대 1024px) */
@media (max-width: 1024px) {
    .content-wrap .m-con .m-book {
        height: 480px;
    }
    .content-wrap .m-con .m-worship {
        height: 460px;
    }
    .content-wrap .m-cnfs .faith-list .faith-con1,
    .content-wrap .m-cnfs .faith-list .faith-con2,
    .content-wrap .m-cnfs .faith-list .faith-con3,
    .content-wrap .m-cnfs .faith-list .faith-con4 {
        width: 100px;
        height: 100px;
        margin: 0 15px;
    }
    .content-wrap .m-cnfs .faith-list .tit {
        font-size: 13px;
    }
}

/* 모바일 중간 화면 (최대 768px) */
@media (max-width: 768px) {
    .content-wrap .m-con .m-book {
        height: 400px;
    }
    .content-wrap .m-con .m-worship {
        height: 380px;
    }
    .content-wrap .m-cnfs .faith-list {
        padding: 16px 0 32px 0;
    }
    .content-wrap .m-cnfs .faith-list .faith-con1,
    .content-wrap .m-cnfs .faith-list .faith-con2,
    .content-wrap .m-cnfs .faith-list .faith-con3,
    .content-wrap .m-cnfs .faith-list .faith-con4 {
        width: 90px;
        height: 90px;
        margin: 10px;
    }
    .content-wrap .m-cnfs .faith-list .tit {
        font-size: 12px;
    }
}

/* 작은 모바일 (최대 480px) */
@media (max-width: 480px) {
    .content-wrap .m-con .m-book {
        height: auto; /* 고정 높이 제거 */
        padding: 20px 0;
    }
    .content-wrap .m-con .m-worship {
        height: auto;
        padding: 20px 0;
    }
    .content-wrap .m-cnfs .faith-list {
        flex-direction: column;
        align-items: center;
        gap: 12px;
    }
    .content-wrap .m-cnfs .faith-list .faith-con1,
    .content-wrap .m-cnfs .faith-list .faith-con2,
    .content-wrap .m-cnfs .faith-list .faith-con3,
    .content-wrap .m-cnfs .faith-list .faith-con4 {
        width: 80px;
        height: 80px;
        margin: 0;
    }
    .content-wrap .m-cnfs .faith-list .tit {
        font-size: 11px;
        line-height: 16px;
    }
}


.content-wrap .m-gallery .gallery-con {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 24px 0px 56px 0px;
  position: relative;
}
.content-wrap .m-gallery .photo-list-wrapper {
  width: 780px;
  overflow: hidden;
  position: relative;
}
.content-wrap .m-gallery .photo-list {
  display: flex;
  gap: 20px;
  transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: transform;
}
.content-wrap .m-gallery .photo-list.no-transition {
  transition: none;
}
.content-wrap .m-gallery .photo-list > li {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
  width: 240px;
}
.content-wrap .m-gallery .gallery-con .photo-list .photo-con {
  width: 240px !important;
  height: 180px !important;
  background-image: url(/assets/images/test.jpg);
}
.content-wrap .m-gallery .photo-title {
  margin-top: 12px;
  font-size: 14px;
  font-weight: 500;
  color: #333;
  text-align: center;
  max-width: 220px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.content-wrap .m-gallery .photo-date {
  margin-top: 6px;
  font-size: 12px;
  color: #848484;
  text-align: center;
}

.content-wrap .m-gallery .a-btn {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background-image: url(/assets/images/arrow.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 35px;
  background-color: transparent;
}
.content-wrap .m-gallery .gallery-con .arrow-r {
  margin-left: 18px;
}

.content-wrap .m-gallery .gallery-con .arrow-l {
  margin-right: 18px;
  transform: rotate(180deg);
}

.content-wrap .m-gallery .a-btn:hover {
  background-color: #dddddd;
}

.content-wrap .m-notice .notice-wrap {
  padding: 56px 60px;
  display: flex;
  justify-content: center;
}
.content-wrap .m-notice .notice-wrap .notice-con {
  width: 320px;
}
.content-wrap .m-notice .notice-wrap .notice-con:nth-child(2) {
  margin: 0 30px;
}
.content-wrap .m-notice .notice-wrap .notice-con .tit-wrap {
  width: 320px;
  border-bottom: 1px solid #d1d1d1;
  display: flex;
  justify-content: flex-start;
  padding: 10px;
}
.content-wrap .m-notice .notice-wrap .notice-con .tit-wrap .notice-tit {
  font-size: 22px;
}
.content-wrap .m-notice .notice-wrap .notice-con .tit-wrap .go-to-img {
  width: 32px;
  height: 32px;
  margin-left: auto;
}

.content-wrap
  .m-notice
  .notice-wrap
  .notice-con
  .notice-list
  > li:nth-child(1) {
  padding-top: 20px;
}
.content-wrap .m-notice .notice-wrap .notice-con .notice-list > li {
  padding: 12px 10px;
  font-size: 14px;
}
.content-wrap .m-notice .notice-wrap .notice-con .notice-list > li > a {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  text-decoration: none;
  color: inherit;
  width: 100%;
}
.content-wrap .m-notice .notice-wrap .notice-con .notice-list > li > a:hover span:nth-child(1) {
  color: #3c5fb5;
  cursor: pointer;
}
.content-wrap .m-notice .notice-wrap .notice-con .notice-list > li a > span:nth-child(1) {
  width: 75%;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.content-wrap .m-notice .notice-wrap .notice-con .notice-list > li a > span:nth-child(2) {
  width: 25%;
  text-align: right;
  color: #aeaeae;
}
.content-wrap .m-notice .notice-wrap .notice-con .desc-wrap {
  padding: 17px 10px 0px 10px;
}
.content-wrap .m-notice .notice-wrap .notice-con .desc-wrap .notice-tit {
  color: #082268;
  font-size: 16px;
  padding-bottom: 9px;
}
.content-wrap .m-notice .notice-wrap .notice-con .desc-wrap .notice-desc {
  color: #848484;
  font-size: 14px;
  line-height: 23px;
  width: 300px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: normal;
  display: -webkit-box;
  word-wrap: break-word;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
}
/* 기본 데스크톱 스타일 */
.m-book .m-tit-wrap {
    width: 812px;
    padding: 56px 0 24px 0;
    margin: 0 auto;
}

.m-tit-wrap {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    margin: 0 auto;
    align-items: center;
}

/* ------------------ 반응형 시작 ------------------ */

/* 태블릿 (최대 1024px) */
@media (max-width: 1024px) {
    .m-book .m-tit-wrap {
        width: 90%; /* 고정폭 대신 상대폭 */
        padding: 48px 0 20px 0;
    }
    .m-tit-wrap {
        justify-content: space-between; /* 공간 분배로 시각적 여유 */
    }
}

/* 모바일 중간 (최대 768px) */
@media (max-width: 768px) {
    .m-book .m-tit-wrap {
        width: 100%;
        padding: 40px 16px 16px 16px; /* 좌우 여백 확보 */
    }
    .m-tit-wrap {
        flex-direction: column; /* 타이틀과 부제 등 세로 배치 */
        align-items: flex-start;
    }
}

/* 작은 모바일 (최대 480px) */
@media (max-width: 480px) {
    .m-book .m-tit-wrap {
        width: 100%;
        padding: 32px 12px 12px 12px;
    }
    .m-tit-wrap {
        flex-direction: column;
        align-items: center; /* 중앙 정렬로 모바일 가독성 강화 */
        text-align: center;
    }
}

.go-to-img {
  border-radius: 50%;
  background-image: url(/assets/images/arrow.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-color: transparent;
}
.go-to-img.large {
  width: 40px;
  height: 40px;
  background-size: 30px;
  border-radius: 50%;
}
.go-to-img.large:hover {
  background-color: #dddddd;
}
.go-to-img .samll {
  width: 40px;
  height: 40px;
}
.go-to-img:hover {
  background-color: #f3f3f3;
}
.go-to-img.gray:hover {
  background-color: #dddddd;
}

.content-wrap .m-header-tit {
  text-align: center;
  font-size: 22px;
  color: #3f3f3f;
  line-height: 40px;
  margin: 0 auto;
  padding-left: 40px;
}
.content-wrap .book-con {
  display: flex;
  flex-direction: row;
  justify-content: center;
}
.content-wrap .book-con .book-wrap {
  width: 260px;
  height: 401px;
  background-color: #ffffff;
  box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.14);
  border-radius: 5px;
  border: 1px solid #d1d1d1;
}

.content-wrap .book-con .book-wrap .book-img {
  width: 120px;
  height: 163px;
  margin: 24px 70px;
  background-image: url(/assets/images/book-1.png);
}

.content-wrap .book-con .book-wrap .book-desc {
  border-top: 1px solid #d1d1d1;
  padding: 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.content-wrap .book-con .book-wrap .book-desc .tit {
  color: #55575c;
  font-size: 16px;
  width: 220px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.content-wrap .book-con .book-wrap .book-desc .desc {
  color: #494949;
  font-size: 12px;
  margin: 7px 0px 16px 0px;
  line-height: 22px;
  width: 220px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: normal;
  display: -webkit-box;
  word-wrap: break-word;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.content-wrap .book-con .book-wrap .book-desc .btn-more {
  width: 98px;
  height: 40px;
  text-align: center;
  border-radius: 30px;
  border: 1px solid #6c6c6c;
  color: #494949;
  font-size: 14px;
  background-color: #ffffff;
  margin-left: auto;
}

.content-wrap .book-con .book-wrap .book-desc .btn-more:hover {
  background: #f5f5f5;
}
.content-wrap .book-con .book-wrap:nth-child(2) {
  margin: 0px 16px;
}
.m-worship .m-tit-wrap {
  width: 780px;
  padding: 56px 0px 16px 0px;
}
.m-worship .worship-con {
  width: 780px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0 auto;
}
.m-worship .worship-con .list {
  height: 56px;
  font-size: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.m-worship .worship-con .list:nth-child(1) {
  border-top: 1px solid #848484;
}
.m-worship .worship-con .list.odd {
  background-color: #f3f3f3;
}
.m-worship .worship-con .list.even {
  background-color: #ffffff;
}
.m-worship .worship-con .list .tit {
  color: #555555;
  text-align: right;
  width: 118px;
}
.m-worship .worship-con .list .time {
  color: #082268;
}
.m-worship .worship-con .list .split {
  background-color: #aeaeae;
  margin: 0px 60px;
  transform: rotate(45deg);
  width: 2px;
  height: 12px;
}
.con-tit {
  font-size: 32px;
  padding: 80px 0px 12px 80px;
}
.con-sub-tit {
  font-size: 14px;
  color: #848484;
  padding: 0px 0px 30px 80px;
}
.con-sub-tit.his-tit {
  padding: 0px 0px 52px 80px;
}
.cont-body {
  width: 100%;
  max-width: 1140px;
}
/*교회소개*/
.top-banner {
  width: 1140px;
  height: 200px;
  background-image: url(/assets/images/img_01_about_main.jpg);
  background-size: cover;
}
.top-banner.bible {
  background-image: url(/assets/images/img_01_about_sub_01.jpg);
}
.top-banner.group {
  background-image: url(/assets/images/img_01_about_sub_03.jpg);
}
.top-banner.whole {
  background-image: url(/assets/images/img_01_about_sub_02.jpg);
}
.content-wrap .m-con .tit-wrap {
  padding: 50px 0px;
}
.content-wrap .m-con .tit-wrap .tit {
  font-size: 32px;
  padding-bottom: 28px;
  text-align: center;
}
.content-wrap .m-con .tit-wrap .desc {
  width: 940px;
  margin: 0 auto;
  font-size: 15px;
  line-height: 30px;
  color: #848484;
}

.content-wrap .m-con .acrdn-wrap {
  width: 980px;
  margin: 0 auto;
  margin-bottom: 80px;
}
.acrdn-wrap .arcdn:nth-child(1) .arcdn-tit {
  border-top: 1px solid #848484;
}
.acrdn-wrap .arcdn .arcdn-tit {
    height: 70px;
    font-size: 20px;
    color: #3f3f3f;
    padding-left: 20px;
    border-bottom: 1px solid #d1d1d1;
    padding: 24px 24px 18px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.acrdn-wrap .arcdn .arcdn-tit:hover {
  background-color: #e8efff;
}

.acrdn-wrap .arcdn .arcdn-tit .arcdn-arw {
  width: 32px;
  height: 32px;
  margin-left: auto;
}
.acrdn-wrap .arcdn .arcdn-tit .arcdn-arw.arcdn-up {
  transform: scaleY(1);
}
.acrdn-wrap .arcdn .arcdn-tit .arcdn-arw.arcdn-dwn {
  transform: scaleY(-1);
}
/* 기본 닫힘 상태 */
.acrdn-wrap .arcdn .arcdn-desc-wrap {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    padding: 0; /* 닫힌 상태에서는 패딩 제거해야 부드럽게 열림 */
    transition: max-height 0.4s ease, opacity 0.3s ease, padding 0.3s ease;
}

/* 열림 상태 */
.acrdn-wrap .arcdn.open .arcdn-desc-wrap {
    max-height: 2000px; /* 충분히 큰 값 */
    opacity: 1;
    padding: 24px 0 41px 0;
}

.acrdn-wrap .arcdn .arcdn-desc-wrap .arcdn-img1 {
  background-image: url(/assets/images/img_01_about_sub_01.jpg);
  width: 980px;
  height: 200px;
}
.acrdn-wrap .arcdn .arcdn-desc-wrap .arcdn-img2 {
  background-image: url(/assets/images/img_01_about_sub_02.jpg);
  width: 980px;
  height: 200px;
}
.acrdn-wrap .arcdn .arcdn-desc-wrap .arcdn-img3 {
  background-image: url(/assets/images/img_01_about_sub_03.jpg);
  width: 980px;
  height: 200px;
}
.acrdn-wrap .arcdn .arcdn-desc-wrap .arcdn-img4 {
  background-image: url(/assets/images/img_01_about_sub_04.jpg);
  width: 980px;
  height: 200px;
}
.acrdn-wrap .arcdn .arcdn-desc-wrap .arcdn-img5 {
  background-image: url(/assets/images/img_01_about_sub_05.jpg);
  width: 980px;
  height: 200px;
}
.acrdn-wrap .arcdn .arcdn-desc-wrap .arcdn-img6 {
  background-image: url(/assets/images/img_01_about_sub_06.jpg);
  width: 980px;
  height: 200px;
}
.acrdn-wrap .arcdn .arcdn-desc-wrap .arcdn-img7 {
  background-image: url(/assets/images/img_01_about_sub_07.jpg);
  width: 980px;
  height: 200px;
}
.acrdn-wrap .arcdn .arcdn-desc-wrap .arcdn-img8 {
  background-image: url(/assets/images/img_01_about_sub_08.jpg);
  width: 980px;
  height: 200px;
}

.acrdn-wrap .arcdn .arcdn-desc-wrap .arcdn-img9 {
  background-image: url(/assets/images/img_01_about_sub_09.jpg);
  width: 980px;
  height: 200px;
}
.acrdn-wrap .arcdn .arcdn-desc-wrap .arcdn-desc {
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 30px;
  color: #848484;
  padding: 24px 20px 0px 20px;
}

/*history*/
.his-wrap {
  padding-bottom: 80px;
}
.his-wrap .his-con-list {
  display: flex;
  padding-left: 80px;
}
.his-wrap .his-con-list .his-line-wrap {
  padding-top: 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.his-wrap .his-con-list .his-line-wrap .his-circle {
  background-color: #3c5fb5;
  width: 10px;
  height: 10px;
  border-radius: 50%;
}
.his-wrap .his-line-wrap .his-line {
  border-left: 2px solid #c8d8ff;
  height: 160px;
  margin-top: 8px;
}
.his-wrap .his-con-list .year {
  color: #3c5fb5;
  font-size: 40px;
  margin-right: 52px;
}
.his-wrap .his-con-list .his-cont .date {
  font-size: 16px;
  margin: 0px 0px 0px 52px;
  color: #7898eb;
  width: 150px;
}
.his-wrap .his-con-list .his-cont {
  padding-top: 12px;
}
.his-wrap .his-con-list .his-cont li {
  padding-top: 16px;
  display: flex;
}
.his-wrap .his-con-list .his-cont li:nth-child(1) {
  padding-top: 0px;
}

/* serve 통합 버전 */
.m-con.serve .arcdn-desc-wrap.serve {
    background-color: #f3f3f3;
}

/* serve 내부 padding */
.m-con.serve .arcdn-desc-wrap.serve .arcdn-serve-list {
    padding: 24px 40px 40px 24px;
}

/* serve 리스트 공통 카드 */
.m-con.serve .arcdn-desc-wrap.serve .arcdn-serve-list .arcnd-serve {
    width: 900px;
    height: 180px;
    margin-top: 20px;
    background-color: #ffffff;
    border: 1px solid #d1d1d1;
    border-radius: 8px;
    overflow: hidden;
    display: flex;
    box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.1);
}

.m-con.serve .arcdn-desc-wrap.serve .arcdn-serve-list .arcnd-serve:nth-child(1) {
    margin-top: 0px;
}

.m-con.serve .arcdn-desc-wrap.serve .arcdn-serve-list .arcnd-serve .serve-face {
    width: 156px;
    height: 180px;
}

/* 개인별 serve 이미지 매핑 */
/* 최덕수 목사님 */
.m-con.serve
.arcdn:nth-child(1)
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve:nth-child(1)
.serve-face {
    background-image: url(/assets/images/serve-1.jpg);
}

/* 이철중 목사님 */
.m-con.serve
.arcdn:nth-child(1)
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve:nth-child(2)
.serve-face {
    background-image: url(/assets/images/serve-2.jpg);
}

/* 이남규 목사님 */
.m-con.serve
.arcdn:nth-child(1)
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve:nth-child(3)
.serve-face {
    background-image: url(/assets/images/serve-3.jpg);
}

/* 박준영 목사님 */
.m-con.serve
.arcdn:nth-child(1)
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve:nth-child(4)
.serve-face {
    background-image: url(/assets/images/serve-4.jpg);
}

/* 정요셉 전도사님 */
.m-con.serve
.arcdn:nth-child(1)
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve:nth-child(5)
.serve-face {
    background-image: url(/assets/images/serve-5.jpg);
}

/* 장철호 장로님 */
.m-con.serve
.arcdn:nth-child(2)
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve:nth-child(1)
.serve-face {
    background-image: url(/assets/images/serve-6.jpg);
}

/* 김좌기 장로님 */
.m-con.serve
.arcdn:nth-child(2)
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve:nth-child(2)
.serve-face {
    background-image: url(/assets/images/serve-7.jpg);
}

/* 임종훈 장로님 */
.m-con.serve
.arcdn:nth-child(2)
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve:nth-child(3)
.serve-face {
    background-image: url(/assets/images/serve-8.jpg);
}

/* 이형국 장로님 */
.m-con.serve
.arcdn:nth-child(2)
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve:nth-child(4)
.serve-face {
    background-image: url(/assets/images/serve-9.jpg);
}

/* 정준화 집사님 */
.m-con.serve
.arcdn:nth-child(3)
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve:nth-child(1)
.serve-face {
    background-image: url(/assets/images/serve-10.jpg);
}

/* 이현규 집사님 */
.m-con.serve
.arcdn:nth-child(3)
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve:nth-child(2)
.serve-face {
    background-image: url(/assets/images/serve-11.jpg);
}

/* 이한경 집사님 */
.m-con.serve
.arcdn:nth-child(3)
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve:nth-child(3)
.serve-face {
    background-image: url(/assets/images/serve-12.jpg);
}

/* 이혁 집사님 */
.m-con.serve
.arcdn:nth-child(3)
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve:nth-child(4)
.serve-face {
    background-image: url(/assets/images/serve-13.jpg);
}

/* 박해정 집사님 */
.m-con.serve
.arcdn:nth-child(3)
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve:nth-child(5)
.serve-face {
    background-image: url(/assets/images/serve-14.jpg);
}

/* 태영백 집사님 */
.m-con.serve
.arcdn:nth-child(3)
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve:nth-child(6)
.serve-face {
    background-image: url(/assets/images/serve-15.jpg);
}
/* serve: 설명 텍스트 박스 스타일 */
.m-con.serve .arcdn-desc-wrap.serve .arcdn-serve-list .arcnd-serve .serve-desc {
    padding: 37px 40px;
    width: 744px;
}

/* serve: 이름 */
.m-con.serve
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve
.serve-desc
.serve-nm {
    color: #3c5fb5;
    font-size: 22px;
}

/* serve: 제목 */
.m-con.serve
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve
.serve-desc
.serve-tit {
    font-size: 14px;
    padding: 20px 0px 12px 0px;
}

/* serve: 말씀 */
.m-con.serve
.arcdn-desc-wrap.serve
.arcdn-serve-list
.arcnd-serve
.serve-desc
.serve-words {
    font-size: 14px;
    color: #848484;
    line-height: 22px;
}

/* serve: 아코디언 전체 간격 */
.content-wrap .m-con .acrdn-wrap.serve-wrap {
    margin-bottom: 140px;
}

/*worship*/
.worship-list {
  width: 980px;
  margin: 0 auto;
}

.worship-list .worship-con {
  font-size: 20px;
}
.worship-list .worship-con .tit {
  width: 232px;
  padding: 24px 0px;
}
.worship-list .worship-con .desc {
  width: 748px;
  padding: 24px 0px;
}
.worship-notice {
  padding: 47px 0px 40px 80px;
}
.worship-notice:nth-child(3) {
  padding: 0px 0px 80px 80px;
}
.worship-notice .tit {
  font-size: 22px;
  margin-bottom: 16px;
}
.worship-notice .notice-list li {
  color: #555555;
  font-size: 15px;
  line-height: 30px;
}

/*support*/
.support-list {
  width: 980px;
  margin: 0 auto;
  font-size: 15px;
  margin-bottom: 80px;
}
.support-list .support-con .tit {
  width: 323px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.support-list .support-con .desc {
  width: 748px;
  line-height: 30px;
  padding: 26px 0px;
  color: #555555;
}
/*book*/
.m-con.book .book-list {
  margin-left: 80px;
  width: 980px;
}
.m-con.book .book-list .book-con {
  display: flex;
}

.m-con.book .book-list .book-con .img-wrap {
  display: flex;
  align-items: center;
  padding: 30px 40px;
}
.m-con.book .book-list .book-con .img-wrap > img {
  width: 150px;
  height: 205px;
}
.m-con.book .book-list .book-con .desc-wrap .tit {
  padding-bottom: 16px;
  display: flex;
  justify-content: flex-start;
}
.m-con.book .book-list .book-con .desc-wrap .tit .book-tit {
  font-size: 20px;
}
.m-con.book .book-list .book-con .desc-wrap .tit .date {
  font-size: 14px;
  color: #848484;
  margin-left: auto;
}
.m-con.book .book-list .book-con .desc-wrap .desc {
  font-size: 15px;
  line-height: 30px;
  color: #555555;
  width: 672px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: normal;
  display: -webkit-box;
  word-wrap: break-word;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}
.m-con.book .book-list .book-con .desc-wrap {
  padding: 66px 56px 66px 24px;
  text-align: left;
}
.m-con .book-footer {
  padding: 16px 80px 0px 80px;
  display: flex;
  justify-content: flex-start;
  margin-bottom: 85px;
}
.m-con .book-footer .srch {
  background-image: url(/assets/images/srch.png);
  width: 38px;
  height: 38px;
  border: 1px solid #848484;
  border-radius: 50%;
  background-color: #ffffff;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 15px;
}

/* --- 기존 메뉴 숨김 --- */
.header-top-menu {
    display: none !important;
}

/* --- 상단 헤더 구조 --- */
.h-con {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap; /* 줄바꿈 허용 */
    gap: 1rem;
    padding: 8px 0;
}

/* --- 로고 --- */
.h-logo {
    max-height: 48px;
    width: auto;
}

/* --- 검색창 반응형 --- */
.srch-wrap {
    flex: 1 1 230px; /* 기본 크기 */
    max-width: 320px;
    min-width: 200px;
    position: relative;
}

.srch-wrap form {
    display: flex;
    width: 100%;
    align-items: center;
}

.srch-wrap .form-group {
    display: flex;
    flex: 1;
    align-items: center;
}

.srch-wrap .srch-con {
    flex: 1;
    height: 36px;
    border-radius: 18px 0 0 18px;
    border: 1px solid #848484;
    padding: 0 12px;
}

/* 검색 버튼 기본 스타일 재정의 */
.btn.btn-search.btn-sm {
    background: none !important;          /* 파란 배경 제거 */
    border: 1px solid #999 !important;    /* 얇은 회색 테두리 */
    border-radius: 50% !important;        /* 완전 원형 */
    width: 36px !important;
    height: 36px !important;
    color: #555 !important;               /* 아이콘 색상 */
    display: flex !important;
    justify-content: center;
    align-items: center;
    padding: 0 !important;
    box-shadow: none !important;
    transition: all 0.3s ease;
}

/* hover 효과 */
.btn.btn-search.btn-sm:hover {
    background-color: #f5f7fb !important;
    border-color: #3c5fb5 !important;
    color: #3c5fb5 !important;
}

/* focus (접근성) */
.btn.btn-search.btn-sm:focus {
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(60, 95, 181, 0.25) !important;
}

/* 아이콘 크기 조정 */
.btn.btn-search.btn-sm i {
    font-size: 16px;
}

/* 모바일 대응 */
@media (max-width: 768px) {
    .btn.btn-search.btn-sm {
        width: 32px !important;
        height: 32px !important;
    }
    .btn.btn-search.btn-sm i {
        font-size: 14px;
    }
}

/* --- 로그인 버튼 기본 --- */
.login-btn {
    display: flex;          /* 항상 가로 배치 */
    align-items: center;
    gap: 8px;               /* 버튼 사이 간격 */
}

.login-btn li {
    list-style: none;
}

.login-btn a {
    color: #333;
    font-weight: 600;
    font-size: 20px;
    text-decoration: none;
    padding: 7px 7px;
    border: 1px solid #ccc;
    border-radius: 20px;
    transition: all 0.3s;
    display: inline-flex;    /* 아이콘 + 텍스트 정렬에 유리 */
    align-items: center;
}

/* 호버 */
.login-btn a:hover {
    background-color: #3c5fb5;
    color: #fff;
    border-color: #3c5fb5;
}

/* --- 반응형 처리 --- */
@media (max-width: 1024px) {
    .srch-wrap {
        flex: 1 1 60%;
        max-width: 420px;
    }
}

@media (max-width: 768px) {
    .h-con {
        flex-direction: column;
        align-items: stretch;
        text-align: center;
    }

    .srch-wrap {
        width: 100%;
        order: 2; /* 중앙 정렬 */
    }

    .login-btn {
        order: 3;
        margin-top: 8px;
        justify-content: center;
        flex-wrap: wrap;     /* 좁은 화면에서 자동 줄바꿈 */
    }

    .login-btn a {
        font-size: 13px;
        padding: 6px 16px;
    }
}


.m-con .book-footer .pagging {
  margin: 0 auto;
  display: flex;
  padding-top: 46px;
  align-items: center;
}
.m-con .book-footer .pagging .p-arrow.p-left {
  transform: rotate(270deg);
  margin-right: 36px;
}
.m-con .book-footer .pagging .p-arrow.p-right {
  transform: rotate(90deg);
  margin-left: 36px;
}
.m-con .book-footer .pagging .p-arrow {
  width: 20px;
  height: 20px;
  background-image: url(/assets/images/up-arrow.png);
  background-position: center;
  background-size: 15px;
  background-color: #ffffff;
}

.m-con .book-footer .p-list {
  display: flex;
}
.m-con .book-footer .p-list > li {
  padding: 0px 4px;
}
.m-con .book-footer .p-list > li > p {
  border-radius: 50%;
  text-align: center;
  padding: 8px 12px;
  font-size: 16px;
}
.m-con .book-footer .p-list > li > p.active {
  background-color: #3c5fb5;
  color: #ffffff;
}
.m-con .book-footer .p-list > li:nth-child(1) {
  padding-left: 0px;
}
.m-con .book-footer .p-list > li:nth-child(5) {
  padding-right: 0px;
}
.m-con .book-footer .w-btn {
  width: 98px;
  height: 40px;
  font-size: 14px;
  border: 1px solid #848484;
  background-color: #ffffff;
  border-radius: 30px;
}
.m-con .book-footer .w-btn:hover {
  background-color: #e8efff;
}
/*school*/
.m-con.school .cont-body > .tit {
  font-size: 32px;
  text-align: center;
  padding: 48px 0px 28px 0px;
}
.m-con.school .top-wrap {
  width: 96%;
  border: 1px solid #d1d1d1;
  border-radius: 8px;
  display: flex;
  align-items: center;
  margin: 0 auto;
  box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.14);
}
.m-con.school .top-wrap .desc {
  font-size: 15px;
  line-height: 30px;
  color: #555;
}
.m-con.school .con-wrap {
  margin-left: 80px;
}
.m-con.school .con-wrap > .tit {
  font-size: 20px;
  padding: 40px 0px 16px 0px;
}
.m-con.school .con-wrap > table {
  text-align: center;
  border-bottom: 1px solid #848484;
  margin-bottom: 176px;
}
.m-con.school .con-wrap > table .t-body:nth-child(odd) {
  background-color: #f3f3f3;
}
.m-con.school .con-wrap > table .t-head {
  color: #848484;
  font-size: 12px;
}
.m-con.school .con-wrap > table .t-head > th {
  padding: 10px 0px;
  border-top: 1px solid #848484;
  border-bottom: 1px solid #848484;
}

.m-con.school .con-wrap > table .t-body {
  height: 70px;
}
.m-con.school .con-wrap > table .t-body > td {
  font-size: 14px;
  color: #555555;
  display: table-cell;
  vertical-align: middle;
  line-height: 22px;
}
.m-con.school .con-wrap.bible > table .t-body > td {
  padding: 24px 0px;
}
.m-con.school .con-wrap > table .t-body > .tit {
  font-size: 16px;
  border-right: 1px solid #d9d9d9;
}
.con-wrap.bible {
  margin-top: 48px;
}
/*gallery*/
.m-con.photo .photo-list {
  margin-left: 80px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.m-con.photo .photo-list > li {
  width: 304px;
  height: 286px;
  border-radius: 3px;
  background-color: #ffffff;
  overflow: hidden;
  box-shadow: 0px 10px 10px rgba(0, 0, 0, 0.14);
}
.m-con.photo .photo-list > li:nth-child(n + 4) {
  margin-top: 33px;
}
.m-con.photo .photo-list .photo-con .img-wrap {
  height: 170px;
  background-color: #3f3f3f;
}

.m-con.photo .photo-list .photo-con > .desc-wrap {
  padding: 14px 20px 20px 20px;
}
.m-con.photo .photo-list .photo-con > .desc-wrap .tit {
  font-size: 16px;
  line-height: 24px;
}
.m-con.photo .photo-list .photo-con > .desc-wrap .info {
  font-size: 14px;
  color: #848484;
  padding-top: 22px;
  text-align: right;
}
.m-con.photo .photo-list .photo-con > .desc-wrap .info .gubun {
  padding: 0px 18px;
}
.m-con.school.fellower .top-wrap {
  padding: 60px 40px;
  letter-spacing: -0.7px;
  line-height: 30px;
}
.m-con.school.fellower .con-wrap p {
  padding-top: 36px;
  font-size: 15px;
  line-height: 30px;
  color: #848484;
  width: 940px;
}
.m-con.school.fellower .con-wrap {
  margin-left: 100px;
}
/*mc*/
.m-con.mc .cont-body > .tit {
  font-size: 32px;
  text-align: center;
  padding: 48px 0px 28px 0px;
}
.m-con.mc .cont-body .btn-wrap {
  width: 978px;
  height: 54px;
  display: flex;
  margin: 0 auto;
}
.m-con.mc .cont-body .btn-wrap button {
  font-size: 15px;
  width: 50%;
}

.m-con.mc .cont-body .btn-wrap .btn-l {
  border-radius: 30px 0% 0% 30px;
  border: 1px solid #d1d1d1;
  background-color: #ffffff;
}

.m-con.mc .cont-body .btn-wrap .btn-r {
  border-radius: 0% 30px 30px 0%;
  background-color: #ffffff;
  border: 1px solid #d1d1d1;
}

.m-con.mc .cont-body .btn-wrap button.active {
  background-color: #3c5fb5;
  color: #ffffff;
  border: none;
}
.m-con.mc .top-wrap {
  width: 940px;
  height: 180px;
  overflow: hidden;
  border: 1px solid #d1d1d1;
  border-radius: 8px;
  display: flex;
  align-items: center;
  margin: 0 auto;
  box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.14);
}
.m-con.mc .top-wrap .desc {
  font-size: 15px;
  line-height: 30px;
  color: #555;
  padding-right: 30px;
  letter-spacing: -0.8px;
}
.m-con.mc .top-wrap .page-icon {
  margin: 0px 40px 0px -3px;
  display: flex;
}
.m-con.mc .top-wrap .page-icon > img {
  width: auto;
  height: auto;
}
.m-con.mc .con-sub-desc {
  font-size: 15px;
  line-height: 30px;
  color: #848484;
  width: 940px;
  margin: 0 auto;
  padding: 32px 0px 48px 0px;
  letter-spacing: -0.1px;
}

.m-con.mc .top-banner {
  margin-bottom: 40px;
}

.m-con.mc .mc-table-wrap {
  margin: 0 auto;
  width: 980px;
}
.m-con.mc .mc-table-wrap .mc-table-con {
  display: flex;
  border-top: 1px solid #555555;
  border-bottom: 1px solid #555555;
}

.m-con.mc .mc-table-wrap .mc-table-con .month-list ul li {
  width: 180px;
  font-size: 20px;
  text-align: center;
  border-right: 1px solid #d9d9d9;
}
.m-con.mc .mc-table-wrap.mc-t .mc-table-con .month-list ul li {
  line-height: 96px;
}
.m-con.mc .mc-table-wrap.mc-t2 .mc-table-con .month-list ul li {
  line-height: 102px;
}
.m-con.mc .mc-table-wrap .mc-table-con .month-list ul li:nth-child(odd) {
  background-color: #f3f3f3;
}
.m-con.mc .mc-table-wrap .mc-table-con .month-list ul li:nth-child(even) {
  background-color: #ffffff;
}
.m-con.mc .mc-table-wrap .mc-table-con .month-list ul li.active {
  background-color: #3c5fb5 !important;
  color: #ffffff;
}
.m-con.mc .mc-table-wrap .mc-table-con .month-list ul li.sp {
  background-color: #e8efff;
}
.m-con.mc .mc-table-wrap .mc-table-con .mc-table {
  padding: 60px 80px;
}
.m-con.mc .mc-table-wrap .mc-table-con .mc-table .tit {
  font-size: 20px;
  padding-bottom: 16px;
}
.m-con.mc .mc-table-wrap .mc-table-con .mc-table .date-wrap {
  font-size: 14px;
  border: 1px solid #3f3f3f;
  display: flex;
  text-align: center;
}
.m-con.mc .mc-table-wrap .mc-table-con .mc-table .date-wrap ul li {
  height: 32px;
  line-height: 32px;
  border-bottom: 1px solid #d1d1d1;
}
.m-con.mc
  .mc-table-wrap
  .mc-table-con
  .mc-table
  .date-wrap
  ul
  li:nth-last-child(1) {
  border-bottom: none;
}
.m-con.mc .mc-table-wrap .mc-table-con .mc-table .date-wrap ul li p {
  border-right: 1px solid #d1d1d1;
}
.m-con.mc
  .mc-table-wrap
  .mc-table-con
  .mc-table
  .date-wrap
  .bible-list:nth-child(5)
  > li
  > p {
  border-right: none;
}
.m-con.mc
  .mc-table-wrap
  .mc-table-con
  .mc-table
  .date-wrap
  .bible-list.b-them
  li:nth-child(odd) {
  background-color: #f3f3f3;
}
.m-con.mc
  .mc-table-wrap
  .mc-table-con
  .mc-table
  .date-wrap
  .bible-list.g-them
  li:nth-child(odd) {
  background-color: #e5f3f3;
}
.m-con.mc .mc-table-wrap .mc-table-con .mc-table .date-wrap .day-list li {
  width: 160px;
  border-right: 1px solid #d1d1d1;
}
.m-con.mc .mc-table-wrap .mc-table-con .mc-table .date-wrap .bible-list li {
  width: 120px;
}
.m-con.mc .mc-table-wrap .mc-table-con .mc-table .date-wrap ul li.blue {
  background-color: #082268 !important;
  color: #ffffff !important;
}
.m-con.mc .mc-table-wrap .mc-table-con .mc-table .date-wrap ul li.green {
  background-color: #0b949d !important;
  color: #ffffff !important;
}
.m-con.mc .mc-table-wrap .file-wrap {
  height: 104px;
  background-color: #f3f3f3;
  border-bottom: 1px solid #d1d1d1;
  margin-bottom: 80px;
  font-size: 14px;
  color: #848484;
  padding: 24px 26px;
  display: flex;
}

.m-con.mc .mc-table-wrap .file-wrap p {
  padding-right: 24px;
}

.m-con.mc .mc-table-wrap .file-wrap .file-list li:nth-child(1) {
  padding-bottom: 8px;
}
.m-con.mc .mc-table-wrap .file-wrap .file-list li a {
  color: #3f3f3f;
}
.m-con.mc .mc-table-wrap .file-wrap .file-list li a:hover {
  color: #3c5fb5;
  background-color: none;
}
.m-con.mc.mc2 .mc-table-wrap .mc-table-con .mc-table {
  padding: 48px 0px 0px 40px;
}
.m-con.mc.mc2 .mc-table-wrap .sub-tit {
  padding-bottom: 24px;
  font-size: 16px;
  color: #082268;
}
.m-con.mc.mc2 .mc-table-wrap .together td {
  height: 32px;
  line-height: 32px;
  border: 1px solid #d1d1d1;
  color: #555555;
}
.m-con.mc.mc2 .mc-table-wrap .together tr td:nth-last-child(1) {
  border-right: none;
}
.m-con.mc.mc2 .mc-table-wrap .together thead tr:nth-child(1) td {
  border-top: none;
}
.m-con.mc.mc2 .mc-table-wrap .together tr:nth-last-child(1) td {
  border-bottom: none;
}

.m-con.mc.mc2 .mc-table-wrap .week:nth-child(odd) {
  background-color: #082268;
  color: #ffffff;
}
.m-con.mc.mc2 .mc-table-wrap .week:nth-child(even) {
  background-color: #0b949d;
  color: #ffffff;
}
.m-con.mc.mc2 .mc-table-wrap.mc-t .mc-table-con .month-list ul li {
  height: 96px;
}

.m-con.mc.mc2 .mc-table-wrap.mc-t2 .mc-table-con .month-list ul li {
  height: 102px;
}

.together
  > tbody
  tr:not(.st-none):nth-child(even)
  td:nth-child(n + 4):nth-child(odd) {
  background-color: #e5f3f3;
}
.together > tbody tr:not(.st-none):nth-child(even) td:nth-child(3) {
  background-color: #f3f3f3;
}
.together
  > tbody
  tr:not(.st-none):nth-child(even)
  td:nth-child(n + 4):nth-child(even) {
  background-color: #f3f3f3;
}

/*notice*/
.cont-body.notice-t {
  padding: 0px 80px;
}
.notice-t th {
  color: #848484;
  font-size: 12px;
  font-weight: 700;
  height: 38px;
  line-height: 38px;
  text-align: center;
  border-top: 1px solid #555555;
  border-bottom: 1px solid #555555;
}
.notice-t td {
  height: 56px;
  line-height: 56px;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
}

.notice-t td.title {
  display: flex;
  justify-content: center;
  align-items: center;
}
.notice-t td.title span {
  width: 85%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.notice-t tbody tr:nth-child(odd) {
  background-color: #f3f3f3;
}

.notice-t tbody tr:last-child {
  border-bottom: 1px solid #555555;
}
.notice-t tbody tr:hover {
  background-color: #e8efff;
}

.m-con.notice .book-footer {
  padding: 17px 0px 0px 0px;
}
.notice-gnb {
  padding: 0 80px;
}
.notice-gnb ul {
  display: flex;
}
.notice-gnb ul li:first-child {
  border-radius: 30px 0 0 30px;
}
.notice-gnb ul li:last-child {
  border-radius: 0 30px 30px 0;
  border-right: 1px solid #d1d1d1;
}
.notice-gnb ul li {
  width: 245px;
  height: 56px;
  font-size: 15px;
  text-align: center;
  line-height: 56px;
  color: #3f3f3f;
  font-weight: 800;
  border-left: 1px solid #d1d1d1;
  border-top: 1px solid #d1d1d1;
  border-bottom: 1px solid #d1d1d1;
}
.notice-gnb ul li:hover {
  background-color: #e8efff;
}

.notice-gnb ul li.active {
  background-color: #3c5fb5;

  color: #ffffff;
}
select::-ms-expand {
  display: none; /*for IE10,11*/
}
select {
  -webkit-appearance: none; /* for chrome */
  -moz-appearance: none; /*for firefox*/
  appearance: none;
  background: url("/assets/images/dwn-arrow.png") no-repeat 92% 40%/20px auto !important;
}
.minster2 {
  color: #555555;
  position: relative;
}
.minster2 ul {
  position: absolute;
  top: 15%;
  left: 20%;
}
.selectBox {
  position: relative;
  border-radius: 30px;
  width: 178px;
  height: 36px;
  border: 1px solid #d1d1d1;
  margin: 24px 0 8px 0;
}
.selectBox .select {
  width: inherit;
  height: inherit;
  background: transparent;
  border: 0 none;
  outline: 0 none;
  padding: 0 16px;
  position: relative;
  z-index: 3;
  font-size: 13px;
  color: #3f3f3f;
  font-weight: 800;
  font-family: "NanumSquare", sans-serif !important;
}
.selectBox .select option {
  color: #fff;
  padding: 3px 0;
  font-size: 16px;
}
.notice-t .name-g {
  width: 100px;
  height: 24px;
  background-color: #ffffff;
  border-radius: 20px;
  font-size: 14px;
  text-align: center;
  line-height: 24px;
  font-weight: 700;
  margin: 0 auto;
}
.notice-t .name-g.gubun1 {
  border: 1px solid #221fbb;
  color: #221fbb;
}
.notice-t .name-g.gubun2 {
  border: 1px solid #0b949d;
  color: #0b949d;
}
.notice-t .name-g.gubun3 {
  border: 1px solid #9e3d89;
  color: #9e3d89;
}
.notice-t .name-g.gubun4 {
  border: 1px solid #af8b0d;
  color: #af8b0d;
}
.notice-t .name-g.gubun5 {
  border: 1px solid #127d10;
  color: #127d10;
}
.notice-t .name-g.gubun6 {
  border: 1px solid #555555;
  color: #555555;
}
.minster2 {
  line-height: 20px !important;
}

/*notice-view*/
.m-con.notice-view {
  padding: 64px 0px 0px 84px;
}
.m-con.notice-view .sub-nav {
  color: #aeaeae;
  font-size: 14px;
  text-align: right;
  padding-bottom: 17px;
}
.view-wrap {
  width: 980px;
}
.view-tit .v-tit-wrap {
  border-top: 1px solid #848484;
  padding: 24px 10px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.view-tit .v-tit-wrap .v-tit,
.view-tit .v-tit-wrap .name {
  font-size: 20px;
  color: #3f3f3f;
}
.view-tit .v-tit-wrap .v-tit {
  padding-right: 10px;
}
.view-tit .v-tit-wrap .name {
  padding-left: 10px;
}
.view-tit .v-tit-wrap .date {
  font-size: 14px;
  color: #848484;
  margin-left: auto;
}
.view-tit .file-wrap {
  background-color: #f3f3f3;
  font-size: 14px;
  color: #3f3f3f;
  border-top: 1px solid #d1d1d1;
  border-bottom: 1px solid #d1d1d1;
  padding: 16px 24px;
  display: flex;
}
.view-tit .file-wrap .tit {
  color: #848484;
  padding-right: 24px;
}
.view-tit .file-wrap ul li {
  padding-top: 12px;
}
.view-tit .file-wrap ul li:nth-child(1) {
  padding-top: 0px;
}
.view-tit .file-wrap .f-tit a {
  color: #3f3f3f;
}
.view-wrap .content {
  padding: 40px 20px;
  border-bottom: 1px solid #848484;
  line-height: 30px;
}
.m-con.notice-view .view-footer {
  padding: 24px 0px;
  display: flex;
  align-items: flex-start;
}
.m-con.notice-view .view-footer .go-list {
  margin-left: auto;
  width: 98px;
  height: 40px;
  border-radius: 30px;
  border: 1px solid #848484;
  background-color: #ffffff;
}
/*footer*/
footer {
  background-color: #3f3f3f;
}

footer .f-con {
  max-width: 1440px;
  padding: 40px 24px;
  color: #ffffff;
  font-size: 14px;
  margin: 0 auto;
}

.f-con-list li:nth-child(1) {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.f-con-list li:nth-child(1) > a {
  margin-left: auto;
}

.f-con-list li:nth-child(1) > a > .go-video {
  width: 215px;
  height: 40px;
  background-color: #555555;
  color: #f3f3f3;
  border-radius: 30px;
  border: 1px solid #848484;
  display: flex;
  justify-content: center;
  align-items: center;
}

.f-con-list > li:nth-child(1) > a > .go-video .video-icon {
  background-image: url(/assets/images/youtube.svg);
  width: 24px;
  height: 24px;
  margin-left: 8px;
}

.f-con-list > li:nth-child(2) {
  line-height: 28px;
}
.f-con-list > li:nth-child(3) {
  line-height: 28px;
  padding: 16px 0px 20px 0px;
}
.f-con-list > li:nth-child(4) {
  color: #848484;
}

/*reset*/
.txt-left {
  text-align: left !important;
}
.no-line {
  border: none !important;
}

/* 모든 버튼을 둥글고, 평면 스타일로 만들기 */
.border_button .btn {
    border-radius: 999px !important;
    padding: 6px 18px !important;
    font-size: 14px;
    color: #333;
    background-color: #fff !important;
    border: 1px solid #ccc !important;
    box-shadow: none !important;          /* 그림자 제거 */
    background-image: none !important;    /* 그라데이션 제거 */
    text-shadow: none !important;         /* 텍스트 그림자 제거 */
    transition: background-color 0.2s, border-color 0.2s;
}

/* 작은 버튼 스타일 */
.border_button .btn.btn-sm {
    padding: 4px 14px !important;
    font-size: 13px;
}

/* 버튼 그룹 간격 */
.border_button .btn-group .btn {
    margin-left: 8px;
}

.border_button .btn-group .btn:first-child {
    margin-left: 0;
}

/* 우측 버튼도 동일 처리 */
.border_button .pull-right .btn {
    border-radius: 999px !important;
    background-color: #fff !important;
    background-image: none !important;
    box-shadow: none !important;
}

/* hover 효과 (선택적) */
.border_button .btn:hover {
    background-color: #f5f5f5 !important;
    border-color: #999 !important;
}