/* 공용 Start */
:root {
  --main-color01: #7f293c;
  --main-color02: #c12941;
  --main-color03: #601b2a;
}

.wrap {
  font-family: "NanumGothic", sans-serif;
}

.cont_size {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

/* 공용 END */

/* 반응형 클래스 Start */

.uotc_100 {
  width: 100% !important;
}
.s_board_100 {
  width: 100% !important;
}
.media_board_100 {
  width: 100% !important;
}
.history_100 {
  width: 100% !important;
}
.steward_100 {
  width: 100% !important;
}
.member_100 {
  width: 100% !important;
}
.yearend_100 {
  width: 100% !important;
}
.worship_100 {
  width: 100% !important;
}
.weekly_100 {
  width: 100% !important;
}
.shichal_100 {
  width: 100% !important;
}
.work_100 {
  width: 100% !important;
}
.table_100 {
  width: 100% !important;
}

.wrap .pc_area {
  display: block;
}
.wrap .mobi_area {
  display: none;
}
.wrap .pc_area_flex {
  display: flex;
}
.wrap .mobi_area_flex {
  display: none;
}

@media screen and (max-width: 1200px) {
  .wrap .pc_area {
    display: none;
  }
  .wrap .mobi_area {
    display: block;
  }
  .wrap .pc_area_flex {
    display: none;
  }
  .wrap .mobi_area_flex {
    display: flex;
  }
}

/* 반응형 클래스 End */

/* header */
.header {
  position: relative;
}
.header_cont.cont01 {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 35px 0;
}
.header_cont.cont01 .logo {
  margin-right: auto;
}
.header_cont.cont01 .btn_login {
  padding: 0.4em 0.8em;
  font-size: 1.4rem;
  font-weight: 600;
  color:#333;
  transition: all 0.2s;
}
.header_cont.cont01 .btn_login:hover {
  background: var(--main-color01);
  color: #fff;
  border: 1px solid var(--main-color01);
}
.header_cont.cont01 .btn_sitemap {
  display: flex;
  margin-left: 3px;
  color: #39aea7;
  background: none;
  border: 0;
}
.header_cont.cont01 .btn_sitemap .txt {
  font-weight: 600;
  font-size: 1.4rem;
  color:#333;
}
.header_cont.cont01 .btn_sitemap_line {
  position: relative;
  width: 30px;
  margin-left: 3px;
}
.header_cont.cont01 .btn_sitemap_line .line {
  display: block;
  width: 100%;
  height: 2px;
  margin-bottom: 5px;
  background-color: #39aea7;
}
.header_cont.cont01 .btn_sitemap:hover .txt {
  color: var(--main-color01);
}
.header_cont.cont01 .btn_sitemap:hover .btn_sitemap_line .line {
  background-color: var(--main-color01);
}
.btn_menu_mobi {
  flex: 0 0 70px;
  width: 70px;
  height: 60px;
  padding-top: 6px;
  background: none;
  border: 0;
  cursor: pointer;
}
.btn_menu_mobi .line {
  width: 40%;
  height: 3px;
  margin: 0 auto 4px;
  background-color: var(--main-color01);
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
}
.sub_top {
  position: relative;
  height: 260px;
  background: url("../img/main/header_top_bg.jpg") no-repeat;
  background-size: cover;
}
.sub_top_cont {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  color: #fff;
}
.sub_top_tit {
  margin-bottom: 0.2em;
  font-size: 3.7rem;
}
.sub_top_tit .eng {
  display:block;
  padding-top:10px;
  font-size: 2.1rem;
  font-weight:300;
  text-transform: uppercase;
}
@media screen and (max-width: 1200px) {
  .header_cont.cont01 {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0;
    background-color: #fff;
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
    z-index: 99999999;
  }
  .header_cont.cont01 .logo {
    height: 40px;
    margin-left:7px;
  }
  .header_cont.cont01 .logo_img {
    height: 100%;
  }
  .header_cont.cont01 .btn_login {
    display: none;
  }
  .header_cont.cont01 .btn_sitemap {
    display: none;
  }
  .sub_top {
    margin-top: 60px;
    height: 100px;
  }
  .sub_top_tit {
    font-size: 2rem;
  }
  .sub_top_tit .eng {
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 768px) {
  .sub_top {
    height: 60px;
  }
  .sub_top.hide {display:none;}
  .sub_top_tit {
    font-size: 1.6rem;
  }
}

/* 사이트맵 */
.site_map_area {overflow-y:scroll; display:none; position:fixed; top:0; left:0; width:100%; height:100%; text-align:left; z-index:99999999;}
.site_map_cont {position:relative; width:90%; margin:100px auto 0; padding-bottom:20px; height:auto; z-index:9999999;}
.site_map_bg {position: fixed; top:0; left:0; width:100%; height:100%; background-color:rgba(0,0,0,0.8); z-index:999;}
.site_map_tit {position:absolute; top:30px; left:50%; margin-left:-56.5px; font-size:30px; color:#fff; text-align:center; z-index:9999;}
.site_map_btn_cls {position:absolute; top:30px; right:30px; font-size:30px; color:#fff; cursor:pointer; z-index:9999;}
.site_map_area .menu_list {margin-top:40px; font-size:0; text-align:center;}
.site_map_area .menu_list .link:hover {border-bottom:1px dashed rgba(255,255,255,0.6);}
.site_map_area .menu_list > li {float:left; width:calc(100%/5 - 2px); height:auto; margin:0 1px; padding:0px 20px 20px 20px; font-size:15px; background-color:#39aea7; box-sizing:border-box; vertical-align:top;}
.site_map_area .menu_list > li > .link {display:block; padding:20px 0; margin-bottom:10px; font-weight:bold; color:#fff; text-align:center; font-size:20px; border-bottom:1px dashed rgba(0,0,0,0.2); text-transform:uppercase;}
.site_map_area .menu_list_scd {text-align:left;}
.site_map_area .menu_list_scd > li {padding:10px 0;}
.site_map_area .menu_list_scd > li > .link {display:block; padding-bottom:5px; font-size:18px; color:rgba(255,255,255,1); font-weight:bold; border-bottom:1px dashed rgba(255,255,255,0.4);}
.site_map_area .menu_list_trd {}
.site_map_area .menu_list_trd > li {position:relative; padding:15px 20px 0px; box-sizing:border-box;}
.site_map_area .menu_list_trd > li:before {content:''; position:absolute; top:20px; left:10px; display:block; width:4px; height:4px; background-color:rgba(0,0,0,0.7);}
.site_map_area .menu_list_trd > li > .link {font-size:16px; color:rgba(0,0,0,0.7);}

/* 탑메뉴 */
.header_cont.cont02 {
  background-color: var(--main-color01);
}
.menu_top_bg {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 360px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow:1px 1px 2px rgba(0,0,0,0.2);
  z-index: 999999;
}
.menu_top_bg_cont {
  position: relative;
}
.menu_top_bg_cont_thumb {
  position: absolute;
  top: 0;
  left: -202px;
  padding-top: 60px;
  text-align: center;
}
.menu_top_bg_cont_thumb .img {
  display: block;
  max-width:200px;
  margin: 0 auto 10px;
}
.menu_top_bg_cont_thumb .txt {
  font-size: 1.2rem;
  line-height: 1.2;
}
.menu_gnb {
  position: relative;
  color: #fff;
  z-index: 9999999;
}
.menu_gnb_fst {
  display: flex;
  justify-content: space-around;
}
.menu_gnb_fst > li {
  flex: 1 1 auto;
}
.menu_gnb_fst > li > .link {
  position: relative;
  display: block;
  padding: 0.7em 0;
  font-size: 1.8rem;
  text-align: center;
}
.menu_gnb_fst > li > .link::after {
  display:none;
  content: "";
  position: absolute;
  top: 50%;
  right: -1px;
  width: 2px;
  height: 0.9em;
  background: #fff;
  transform: translateY(-50%) rotate(20deg);
}
.menu_gnb_fst > li:last-child > .link::after {
  display: none;
}
.menu_gnb_fst > li > .link::before {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  width: 0;
  height: 0;
  border-left: 17px solid transparent;
  border-right: 17px solid transparent;
  border-top: 17px solid var(--main-color02);
  transform: translateX(-50%);
  opacity:0;
}
.menu_gnb_fst > li:hover > .link::before {
  opacity:1;
}
.menu_gnb_fst > li:hover > .link {
  background:var(--main-color02);
  text-shadow: 1px 1px 3px rgba(255, 255, 255, 0.4);
}
.menu_gnb_fst > li > .link .eng {display:none;}
.menu_gnb_scd {
  display: none;
  position: absolute;
  color: var(--main-color01);
  transition: all 0.3s;
  opacity: 0;
}
.menu_gnb_scd.active {
  display: flex;
  opacity: 1;
}
.menu_gnb_fst > li:nth-of-type(1) .menu_gnb_scd {
  left: 50px;
}
.menu_gnb_fst > li:nth-of-type(2) .menu_gnb_scd {
  left: 50px;
}
.menu_gnb_fst > li:nth-of-type(3) .menu_gnb_scd {
  left: 10em;
}
.menu_gnb_fst > li:nth-of-type(4) .menu_gnb_scd {
  right: 0;
}
.menu_gnb_fst > li:nth-of-type(5) .menu_gnb_scd {
  right: 0;
}
.menu_gnb_fst > li:nth-of-type(6) .menu_gnb_scd {
  right: 0;
}
.menu_gnb_scd > li > .link {
  position: relative;
  display: block;
  width:100%;
  padding-left:20px;
  padding-right:50px;
  margin: 1.8em 0 0.8em;
  font-size: 1.7rem;
  font-weight: 600;
  text-align:left;
  box-sizing:border-box;
}
/*
.menu_gnb_fst > li:nth-of-type(2) .menu_gnb_scd > li > .link {
  padding-left:10px;
}
*/
.menu_gnb_scd > li > .link::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 1px;
  height: 12px;
  background: var(--main-color01);
  transform: translateY(-50%);
}
/*
.menu_gnb_scd > li:last-child > .link::before {
  display: none;
}
*/
.menu_gnb_scd > li > .link::after {
  content: "";
  position: absolute;
  top: -10px;
  left: 28px;
  display: block;
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 7px solid var(--main-color01);
  transform: translateX(-50%);
  transition: all 0.2s;
  opacity: 0;
}
.menu_gnb_scd > li > .link:hover::after {
  opacity: 1;
}
.menu_gnb_trd {
  padding-left:20px;
  padding-bottom: 50px;
  color: #333;
  text-align: center;
}
.menu_gnb_trd > li {
  margin-bottom: 0.7em;
  text-align:left;
}
.menu_gnb_trd > li > .link {
  position: relative;
  display: inline-block;
  padding-right:20px;
  font-size: 1.6rem;
  line-height:1.4;
}
.menu_gnb_trd > li > .link:hover {
  color: var(--main-color01);
}
.menu_gnb_trd > li > .link::after {
  content: "";
  position: absolute;
  top: 50%;
  left: -0.5em;
  display: block;
  width: 0;
  height: 0;
  border-top: 3px solid transparent;
  border-left: 6px solid var(--main-color01);
  border-bottom: 3px solid transparent;
  transform: translateY(-50%);
  transition: all 0.2s;
  opacity: 0;
}
.menu_gnb_trd > li > .link:hover::after {
  opacity: 1;
}
.menu_gnb_mobi {
  position: relative;
  margin-bottom: 10px;
  padding-top: 37px;
}
.menu_gnb_mobi .btn_home {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  width: 37px;
  height: 37px;
  font-size: 20px;
  color: #fff;
  line-height: 37px;
  text-align: center;
}
.menu_gnb_mobi .btn_cls {
  position: absolute;
  top: 0px;
  right: 0px;
  display: block;
  width: 37px;
  height: 37px;
  font-size: 20px;
  color: #fff;
  border: 0;
  background: none;
  cursor: pointer;
}
.menu_gnb_mobi_list::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: calc(100% - 6px);
  margin: 0 auto;
  border-bottom: 1px solid #fff;
  transform: translateX(-50%);
  opacity: 0.2;
}
.menu_gnb_mobi_list {
  position: relative;
  display: flex;
  padding: 10px 0;
}
.menu_gnb_mobi_list > li {
  position: relative;
  padding: 0 10px;
}
.menu_gnb_mobi_list > li::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 1px;
  height: 1em;
  background-color: #fff;
  transform: translateY(-50%);
  opacity: 0.3;
}
.menu_gnb_mobi_list > li:last-child::before {
  display: none;
}
.menu_gnb_mobi_list > li > .link {
  display: block;
  font-size: 1.4rem;
  color: #fff;
}
@media screen and (max-width: 1200px) {
  .header_cont.cont02 {
    overflow-y: scroll;
    position: fixed;
    top: 0;
    right: -100%;
    width: 100%;
    height: 100%;
    z-index: 99999999;
  }
  .menu_gnb_fst {
    display: block;
  }
  .menu_gnb_fst > li > .link {
    padding: 1em 0.8em;
    text-align: left;
  }
  .menu_gnb_fst > li > .link::after {
    display: none;
  }
  .menu_gnb_fst > li > .link::before {
    bottom:auto; left:auto; top:calc(50% - 3px); right:15px; transform:translate(-50%, 0);
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 4px solid #fff;
    opacity:1;
  }
  .menu_gnb_fst > li:nth-of-type(2) .menu_gnb_scd > li > .link {padding:0;}
  .menu_gnb_scd {
    position: static;
    padding: 15px 25px;
    background-color: var(--main-color03);
    color: #fff;
    opacity: 0.8;
  }
  .menu_gnb_scd.active {
    display:block;
  }
  .menu_gnb_scd > li {
    padding: 7px 0;
  }
  .menu_gnb_scd > li > .link {
    margin: 0;
    padding: 0;
    font-size: 1.6rem;
    text-align:left;
  }
  .menu_gnb_scd > li > .link:hover {
    text-decoration: underline;
    color: #fff;
  }
  .menu_gnb_scd > li > .link:hover::after {
    display: none;
  }
  .menu_gnb_scd > li > .link::before {
    display: none;
  }
  .menu_gnb_trd {
    padding: 0;
    text-align: left;
    color: #fff;
    opacity: 0.7;
  }
  .menu_gnb_trd > li {
    padding-top: 15px;
    padding-left: 22px;
    margin: 0;
  }
  .menu_gnb_trd > li > .link {
    font-size: 1.6rem;
  }
  .menu_gnb_trd > li > .link::before {
    content: "";
    position: absolute;
    top: 0.5em;
    left: -9px;
    display: block;
    width: 4px;
    height: 1px;
    background: #fff;
  }
  .menu_gnb_trd > li > .link:hover {
    text-decoration: underline;
    color: #fff;
  }
  .menu_gnb_trd > li > .link:hover::after {
    display: none;
  }
}

/*** main ***/
.main {
}
.main.sub {
  display: flex;
}
.main_left {
  flex: 0 0 188px;
}
.main_cont {
  flex: 1 1 auto;
  padding: 50px 0 50px 50px;
}
#solution_title_comm {position:relative;}
#solution_title_comm::before {
  content:''; position:absolute; top:0.3em; left:0; width:40px; height:5px; background:var(--main-color02);
}
@media screen and (max-width: 1200px) {
  .main {
    
  }
  .main.sub {
    padding-top: 0;
  }
  .main_cont {
    flex: 0 0 100%;
    width:100%;
    padding: 10px;
  }
  #solution_title_comm {font-size:2.2rem; text-align:left;}
  #solution_title_comm a {font-size:2.2rem; text-align:left;}
  #solution_title_comm::before {top:0.8em;}
}

/* banner */
.wrap .bm_swiper_area .bm_swiper_cont .swiper-pagination {
  display:none;
}
.extra-pagination.swiper-pagination {
  position:absolute; bottom:20px; left:50%; transform:translateX(-50%);
}
.extra-pagination .swiper-pagination-bullet {margin:0 4px;}
.header_flex {
  display:flex; flex-direction:column; height:100vh;
}
.banner_area {
  overflow:hidden;
  position:relative;
  flex:1;
}
.banner_cont {
  aspect-ratio: 6 / 3.12;
  position: absolute;
  top:50%;
  left:50%;
  min-width:100%;
  min-height:100%;
  transform:translate(-50%,-50%);
}
.banner_cont img {
  display: block;
  width: 100%;
}
@media screen and (max-width:1200px){
  .wrap .bm_swiper_area .bm_swiper_cont .swiper-pagination {
    display:block;
  }
  .extra-pagination.swiper-pagination {
    display:none;
  }
  .header_flex {
    display:block; height:auto;
  }
  .banner_area {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 52%;
    margin: 60px auto 0;
  }
  .banner_cont {
    aspect-ratio: auto;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-width:0;
    min-height:0;
    transform:translate(0%,0%);
  }
}
@media screen and (max-width:768px){
  .banner_area {padding-bottom:100%;}
  .banner_cont {top:50%; left:50%; width:170%; transform:translate(-50%,-50%);}
}

/* 메인 소개 */
.main_intro {
  padding: 40px 0;
}
.main_intro_cont {
  display: flex;
  align-items: center;
}
.main_intro_cont .link_m {display:none; flex:0 0 100%; text-align:center; color:red; font-size:1.2rem;}
.main_intro_tit {
  flex: 0 0 450px;
  font-size: 2.7rem;
  line-height: 1.7;
  color: var(--main-color01);
  border-right: 1px solid var(--main-color01);
}
.main_intro_tit .str {font-weight:600;}
.main_intro_desc {
  flex: 1 1 auto;
  padding-left: 35px;
  font-size: 1.4rem;
  line-height: 1.7;
  word-break: keep-all;
  letter-spacing:1px;
}
.main_intro_desc .link {
  display:inline-block;
  color: red;
}
.main_intro_desc .link:hover {
  text-decoration: underline;
}
@media screen and (max-width: 1200px) {
  .main_intro {
    padding: 20px;
  }
  .main_intro_cont {flex-wrap:wrap;}
  .main_intro_tit {
    flex:0 0 100%;
    margin-bottom:10px;
    font-size: 2.3rem;
    text-align:center;
    line-height:1.5;
    border-right:0;
  }
  .main_intro_cont .link_m {display:block;}
  .main_intro_desc {display:none;}
}
@media screen and (max-width: 768px) {
  .main_intro {padding:15px;}
  .main_intro_cont {flex-wrap:wrap;}
  .main_intro_tit {
    flex:0 0 100%;
    font-size: 2rem;
    text-align:center;
    border-right:0;
  }
  .main_intro_cont .link_m {display:block;}
  .main_intro_desc {display:none; padding-left:15px; font-size:1.1rem;}
  .main_intro_desc .m_none {display:none;}
  .main_intro_desc br {display:none;}
  .main_intro_desc .link {display:block;}
}

/* 퀵메뉴 */
.main_menu_quick {
  display: flex;
  align-items: center;
  margin:0 auto 50px;
  justify-content: center;
}
.main_menu_quick > li {
  flex: 0 1 23%;
}
.main_menu_quick > li > .link {
  position: relative;
  display: block;
  text-align: center;
  color: var(--main-color01);
}
.main_menu_quick > li > .link::before {
  display:none;
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  height: 90%;
  border-right: 1px solid var(--main-color01);
  transform: translateY(-50%);
}
.main_menu_quick > li:last-child > .link::before {
  display: none;
}
.main_menu_quick > li > .link .icon {
  max-width: 55px;
  padding:7px;
  margin-bottom:7px;
  transition: all 0.2s;
  border-radius:50%;
  box-sizing:content-box;
}
.main_menu_quick > li > .link:hover .icon {
  background:var(--main-color02);
  transform: scale(1.1);
}
.main_menu_quick > li > .link .txt {
  font-weight:600;
  color:#333;
}
@media screen and (max-width: 768px) {
  .main_menu_quick {
    padding:0 15px;
    margin-bottom: 45px;
  }
  .main_menu_quick > li {
    flex: 1 1 auto;
  }
  .main_menu_quick > li > .link::before {
    height: 40%;
    display: none;
  }
  .main_menu_quick > li > .link .icon {
    max-width: 40px;
    margin-bottom: 10px;
  }
  .main_menu_quick > li > .link .txt {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 450px) {
  .main_menu_quick > li > .link .txt {
    padding:0 2px;
    font-size: 1.3rem;
    line-height:1.3;
  }
}

/* main hr */
.main_hr {position:relative; margin-bottom:50px; text-transform:uppercase; color:var(--main-color01); text-align:center;}
.main_hr::before {content:''; position:absolute; top:50%; left:50%; display:block; width:100%; height:1px; border-bottom:1px solid var(--main-color01); transform:translate(-50%,-50%);}
.main_hr .txt {position:relative; display:inline-block; padding:0 2em; background:#fff; z-index:99;}

@media screen and (max-width:768px){
  .main_hr {margin-bottom:20px;}
  .main_hr .txt {font-size:1.3rem;}
}

/* 설교 */
.main_sermon {
  display: flex;
  gap: 2px;
  margin:0 auto 50px;
}
.main_sermon > .tit_m {display:none; margin-bottom:10px; color: var(--main-color01);}
.main_sermon_link {
  overflow:hidden;
  position: relative;
  flex: 0 0 600px;
  height: 337.5px;
}
.main_sermon_link img {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 100%;
  transform: translate(-50%, -50%);
  transition:all 0.2s;
}
.main_sermon_link:hover img {
  transform: translate(-50%, -50%) scale(1.05);
}
.main_sermon_list {
  flex: 1 1 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 2px;
}
.main_sermon_list > li {
  flex: 1 1 30%;
  text-align: center;
}
.main_sermon_list > li > .link {
  overflow: hidden;
  position: relative;
  display: block;
  background: var(--main-color01);
  height: 100%;
  transition: all 0.2s;
}
.main_sermon_list > li > .link::before {content:''; position:absolute; top:2px; left:2px; display:block; width:calc(100% - 4px); height:calc(100% - 4px); border:1px solid #fff;}
.main_sermon_list > li + li + li + li > .link {
  background: var(--main-color02);
}
.main_sermon_list > li > .link .icon {
  position: absolute;
  top: 40%;
  left: 50%;
  max-width: 58px;
  color: #fff;
  font-size: 1.8rem;
  transform: translate(-50%, -50%);
}
.main_sermon_list > li > .link .txt {
  position: absolute;
  bottom: 20%;
  left: 50%;
  width: 120px;
  color: #fff;
  font-size: 1.8rem;
  transform: translateX(-50%);
}
.main_sermon_list > li > .link .bg {
  position: absolute;
  top: 50%;
  left: 50%;
  object-fit: cover;
  transition: all 0.2s;
  transform: translate(-50%, -50%);
  opacity: 0;
}
.main_sermon_list > li > .link:hover {
  box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.6) inset;
}
.main_sermon_list > li > .link:hover .bg {
  opacity: 0.1;
}
@media screen and (max-width: 900px) {
  .main_sermon {
    display: block;
    padding:15px; margin:0;
  }
  .main_sermon_link {
    overflow: hidden;
    display: block;
    width: 100%;
    height:0;
    padding-bottom:56.25%;
    margin: 0 auto 2px;
  }
  .main_sermon_list {
    height: auto;
  }
  .main_sermon_list > li > .link {
    height: 0;
    padding-bottom: 100%;
  }
  .main_sermon_list > li > .link .icon {max-width:100%; width:30%;}
}
@media screen and (max-width: 768px) {
  .main_sermon {}
  .main_sermon > .tit_m {display:block;}
  .main_sermon_list > li > .link .icon {max-width:70px;}
  .main_sermon_list > li > .link .txt {
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 512px) {
  .main_sermon {
    margin-bottom: 2px;
  }
  .main_sermon_link {
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
  }
}

/*** footer ***/
.footer {
  position: relative;
  padding: 55px 0 50px;
  background-color: var(--main-color01);
  color: #fff;
}
.footer::before {
  content: "";
  position: absolute;
  top: 5px;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-color: #fff;
}
.footer_cont {
  position: relative;
}
.footer_sns {
  position: absolute;
  top: 50%;
  right: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content:flex-end;
  gap: 12px;
  transform: translateY(-50%);
  z-index: 9;
}
.footer_sns > .link:last-child {
  flex: 0 0 100%;
  margin-top:1.5em;
  text-align: right;
}
.footer_sns > .link:hover {
  text-decoration: underline;
}
.footer_sns > .link .icon {max-width:27px;}
.footer_logo {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-bottom: 0.7em;
  font-size: 2.2rem;
  font-weight: 500;
}
.footer_logo .icon {
  width:250px;
}
.footer_logo .icon.icon_m {display:none;}
.footer_copy {
  font-size: 1.6rem;
  line-height: 1.7;
  opacity: 0.8;
}

.footer_copy .bott_info_link {margin-right:10px; text-decoration: underline;}
@media screen and (max-width: 1200px) {
  .footer_cont {
    padding: 0 10px;
    word-break: keep-all;
  }
  .footer_sns {
    position: static;
    justify-content: center;
    align-items: center;
  }
  .footer_sns > .link:last-child {
    flex: 0 1 auto;
    margin-top:0;
    font-size: 1.3rem;
  }
  .footer_logo {justify-content:center;}
  .footer_logo .txt {
    font-size: 1.6rem;
    font-weight:600;
  }
  .footer_copy {font-size:1.3rem; text-align:center;}
}
@media screen and (max-width: 768px) {
  .footer {padding:25px; text-align:center;}
  .footer_logo .icon {width:180px;}
  .footer_copy .br_m {display:block;}
  .footer_sns {display:flex; flex-wrap:wrap; padding-top:10px;}
  .footer_sns > .link:nth-child(1) {order:2;}
  .footer_sns > .link:nth-child(2) {order:3;}
  .footer_sns > .link:last-child {flex: 0 0 100%; order:1; margin:10px 0; text-align:center;}

  .footer.footer_sub .footer_logo {justify-content:start;}
  .footer.footer_sub .footer_copy {text-align:left;}
  .footer.footer_sub .bott_info_link {display:none;}
  .footer.footer_sub .copyright {display:none;}
  .footer.footer_sub .footer_sns {position:absolute; bottom:0; right:0;}
  .footer.footer_sub .footer_sns .link:last-child {display:none;}
  .footer.footer_sub .footer_logo .icon {display:none;}
  .footer.footer_sub .footer_logo .icon.icon_m {display:block;}
}

/* 왼쪽메뉴 */
.main_left_tit {
  position: relative;
  height: 0;
  padding-bottom: 100%;
  margin-bottom: 3px;
  background: url("../img/main/menu_snb_bg.jpg") no-repeat;
  background-size: cover;
}
.main_left_tit_cont {
  position: absolute;
  top: 50%;
  left: 50%;
  width:100%;
  transform: translate(-50%, -50%);
  text-align: center;
  color: #fff;
}
.main_left_tit_cont .tit {
  margin-bottom: 0.2em;
  font-size: 2.3rem;
}
.main_left_tit_cont .tit .eng {display:none;}
.main_left_tit_cont .txt {
  font-size: 1.6rem;
  text-transform: uppercase;
  color: #ccc;
}
.menu_snb_scd_tit {
  display: none;
}
.menu_snb_scd {
  margin-bottom: 100px;
  text-align: center;
  border-top: 1px solid #cbcbcb;
}
.menu_snb_scd .link {
  display: block;
  padding: 12px 16px;
  font-size: 1.9rem;
  background-color: #ececec;
  border: 1px solid #cbcbcb;
  border-top: 0;
  text-align:left;
}
.menu_snb_scd > li > .link {
  position:relative;
  font-weight: 600;
}
.menu_snb_scd > li > .link:hover {
  background-color: var(--main-color01);
  color: #fff;
}
.menu_snb_scd > li > .link.active {
  background-color: var(--main-color01);
  color: #fff;
}
.menu_snb_scd > li > .link i {
  position:absolute; top:50%; right:0.8em; transform:translateY(-50%); font-size:13px;
}
.menu_snb_trd > li > .link {
  padding: 14px 16px;
  font-size: 1.5rem;
  background-color: #fff;
  text-align:left;
  word-break:keep-all;
  line-height:1.4;
}
.menu_snb_trd > li > .link:hover {
  font-weight:800;
}
.menu_snb_trd > li > .link.active {
  font-weight:800;
}

/* 서브페이지 */
.sub_page_tit {font-size:30px; height:80px; color:#333; font-weight:600; font-family:"맑은 고딕", Malgun Gothic; line-height:90px;}
.sub_wrap {display:flex; flex-wrap:wrap; min-height:calc(987px - 57px);}
.sub_wrap .sub_page_tit {flex: 0 0 100%;}
.next_title {flex:0 0 100%; margin-bottom:23px;}
.sub_wrap .next {display:flex; flex-wrap:wrap; flex: 0 0 100%;}
.sub_wrap .next h2 {flex:0 0 100%; line-height:50px; border-bottom:1px solid #666; margin-bottom:20px; font-size:14px; color:#666; }
.sub_wrap .next h2 > a {flex:0 0 100%; font-size:14px; color:#666; }
.sub_wrap .next > table {width:100%;}
.next_photo {flex: 0 0 60%; display:flex; flex-wrap:wrap; padding-right:20px;}
.next_photo h2 {flex:0 0 100%; margin-bottom:20px;}
.next_photo-ul {display:flex; gap:10px; flex-wrap:wrap;}
.next_photo-ul > li {flex: 1 1 28%; color:#888; font-size:13px;}
.next_photo-ul > li > a:first-of-type {overflow:hidden; position:relative; display:block; width:100%; height:0; padding-bottom:130px; line-height:1;}
.next_photo-ul img {position:absolute; top:50%; left:50%; display:block; width:auto; height:100%; transform:translate(-50%,-50%);}
.next_photo-ul > li > a {font-size:13px; color:#555; line-height:1.3;}
.next_board {flex: 0 0 40%; display:flex; flex-wrap:wrap; padding-right:20px;}
.next_board h2 {flex:0 0 100%; margin-bottom:20px;}
.next_photo-ul2 {display:flex; gap:10px; flex-wrap:wrap;}
.next_photo-ul2 > li {flex: 1 1 45%; color:#888; font-size:13px;}
.next_photo-ul2 > li > a:first-of-type {overflow:hidden; position:relative; display:block; width:100%; height:0; padding-bottom:130px; line-height:1;}
.next_photo-ul2 img {position:absolute; top:50%; left:50%; display:block; width:auto; height:100%; transform:translate(-50%,-50%);}
.next_photo-ul2 > li > a {font-size:13px; color:#555; line-height:1.3;}
@media screen and (max-width:768px){
  .next_photo {flex: 0 0 100%; margin-bottom:30px;}
  .next_board {flex: 0 0 100%;}
}

.wrap .menu_lnb_area {border:0;}
.wrap .menu_lnb_cont .btn_home {display:none;}
.wrap .menu_lnb {display:inline-block; min-width:0; height:auto; padding:0 10px; border:0; pointer-events: none;}
.wrap .menu_lnb.fst,  
.wrap .menu_lnb.scd, 
.wrap .menu_lnb.trd {flex:0 0 auto;}
.wrap .menu_lnb:first-of-type {padding-left:0;}
.wrap .menu_lnb:hover {background:none;}
.wrap .menu_lnb .menu_lnb_sbj {color:#333; line-height:1; font-size:1.3rem;}
.wrap .menu_lnb:hover .menu_lnb_sbj {color:#333;}
.wrap .menu_lnb .icon_arw {right:-5px; transform:translateY(-50%) rotate(-90deg); color:#333;}
.wrap .menu_lnb:hover .icon_arw {color:#333;}
.menu_lnb:last-of-type .icon_arw {display:none;}
@media screen and (max-width:768px){
  .wrap .menu_lnb_area.margin_m {margin-top:60px;}
}

/* 게시판 sns 버튼 숨김 */
.wrap .main .main_cont .icon_sns_hide {display:none;}
.wrap .main .main_cont .btn_sns_item {width:32px; height:32px; transition:none;}
.wrap .main .main_cont .btn_sns_item img {width:100%;}