
/* 메인공통 */
#main h2 a{font-family: 'NanumSquare'; font-weight: 700; color:#333;  font-size: 1.2em;margin-bottom: 20px; display: inline-block}
#main h3{font-family: 'NanumSquare'; font-weight: 700; color:#c03322; font-size: 1.2em;}
#main section:nth-child(n+2){padding: 50px 0}
.more, .more::before{-moz-transition:color .3s ease;-o-transition:color .3s ease;-ms-transition:color .3s ease;-webkit-transition:color .3s ease;transition:color .3s ease;
-moz-transition: background-color .3s ease;-o-transition: background-color .3s ease;-ms-transition: background-color .3s ease;-webkit-transition: background-color .3s ease;transition: background-color .3s ease;}

/* 메인 - 슬라이드 */
.slide-wrap > div{height: 650px; position: relative; padding-bottom: 140px; background-size: cover; background-position: center }
.slide-wrap > div::after{width: 100%; height: 75px; background: #fff; content: ""; display: block; position: absolute ; bottom: 0; left: 0;}
.slide-wrap {color: #fff;  font-family: 'NanumSquare';}
.slide-wrap .text01{ position: relative; top: 50%; transform: translateY(-50%)}
.slide-wrap .text01 .title{font-size: 4em; margin-bottom: 15px; text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.3)}
.slide-wrap .text01 .title a{color:#fff}
.slide-wrap .text01 .text{font-size: 1.1em;padding-left: 12px; line-height: 160%; text-shadow: 2px 2px 1px rgba(0, 0, 0, 0.3)}
.slide-wrap .text02{  position: absolute; bottom: 0px; width: 100%; height: 140px; margin-bottom: 10px ; z-index:1 ;}
.slide-wrap .text02 .container{display: table;vertical-align: middle;height: 140px;background:#fff; padding-left: 20px; padding-right: 380px; box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.3) ; }
.slide-wrap .text02 .title{font-size: 1.6em;  margin-bottom: 10px; color:#c03322; font-weight: 700}
.slide-wrap .text02 .text{font-family: 'NanumGothic'; color: #333; max-height:80px; font-weight: 300; line-height: 160%; overflow-y: auto; padding-left: 4px; font-weight: 500 }
.slide-wrap .text02 .text li{padding-left: 15px; position: relative;}
.slide-wrap .text02 .text li::after{content: ""; width: 6px; height: 6px; border-radius: 10px; background: #696975; display: inline; position: absolute; top: 9px; left: 0;  }

.bx-controls{width: 100%; max-width: 1180px; height: 500px; position: absolute; margin: 0 auto; text-align: right; top: 100px; left: 50%; transform: translateX(-50%); padding-top:470px;z-index:100 ; }

.bx-controls-direction{position: absolute; right: -10px; bottom: -140px; background: #c03322; }
.bx-controls-auto{display: inline-block; vertical-align: bottom ;  margin-right:15px; position: relative; top: -2px }
.bx-default-pager{display: inline-block ; vertical-align: bottom}
.bx-pager-item {display: inline-block ;}
.bx-pager-item a{width: 15px; height: 15px; border-radius: 10px; background:rgba(255, 255, 255, 0.8) ; text-indent: -9999px; display: inline-block; margin-right:10px; text-align: left }
.bx-pager-item a.active{width: 30px;background:rgba(255, 255, 255, 1) ;}

.bx-controls .bx-next, .bx-controls .bx-prev{width: 190px; height: 140px; display: table-cell; vertical-align: middle; text-align: center; border-left: 1px solid rgba(255, 255, 255, 0.2)}
.bx-controls .bx-next::before, .bx-controls .bx-prev::before{content: ""; display: inline-block; width: 60px; height: 20px; background: url(../img/main_tem01.png) -60px -290px no-repeat ; opacity: 0.3 }
.bx-controls .bx-next:hover::before, .bx-controls .bx-prev:hover::before{  opacity: 0.7}
.bx-controls .bx-prev{border-left: 0}
.bx-controls .bx-prev::before{background-position:0px -290px  }
.bx-controls .bx-start::before, .bx-controls .bx-stop::before{display: block; font-family: 'Font Awesome 5 Free';  font-weight: 900; font-size: 15px; color:rgba(255, 255, 255, 0.8) }
.bx-controls .bx-start::before{content: "\f04b"; }
.bx-controls .bx-stop::before{content: "\f04d";  }


/* 메인 - 공지사항, 주보안내 */
.main-wrap01{ }
.main-wrap01 h2{}
.main-wrap01 .more{display: block; position: absolute; top: 0px; right: 10px;}
.main-wrap01 .more::before{content: "\f067"; display: block; font-family: 'Font Awesome 5 Free';  font-weight: 900; font-size: 25px; color:#c03322; opacity: 0.3; }
.main-wrap01 .more:hover::before{ opacity: 0.8;}
.notice {}
.notice ul{}
.notice ul li{ position: relative;}
.notice ul li a{display: block; margin-bottom: 10px; }
.notice ul li a:hover p{color: #000;  font-weight: 600; }
.notice ul li a p{display: inline-block; padding-right:90px; width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.notice ul li a span{font-size: 0.9em; color: #777; display:inline-block; position: absolute; right: 0; top: 1px; }

.weekly h2{padding-left:10px ; }
.weekly ul{ width: 100%;display: table;table-layout: fixed}
.weekly li{display: table-cell;  text-align: center; padding-left:10px ; }
.weekly li a{display: block; width: 100%; border: 1px solid #dddddd; }
.weekly li a:hover{border-color: #aaa}
.weekly li a:hover .data{background-color: #e3e3ed}
.weekly li .data{font-size: 1.1em; font-weight:700; height:50px;   font-family: 'NanumSquare'; width: 100%; display: table;  background: #f2f2f7;}
.weekly li .title{height:100px;    width: 100%;display: table;  padding:0 10px; word-break: keep-all}
.weekly li .data span, .weekly li .title span{ display: table-cell;vertical-align: middle; width: 100%; height: 100%; }


/* 메인 - 미사시간, 성사시간 */
#main section.main-wrap02{padding: 0;height: 100%; }
#main section.main-wrap02 h2{height: 100%;  display: table-cell; margin: 0; vertical-align: top; width: 15%;}
#main section.main-wrap02 h2 a{ color: #fff; display: table; width: 100%; height: 100%;  background: #c03322; padding: 30px;margin: 0;  font-size: 0.9em; }
#main section.main-wrap02 h2 a span::before{content: ""; width: 1px; height:40px ; background: #fff; opacity: 0.7; display: inline-block; transform: rotate( 90deg ); position: relative; top: -10px; left: 22px;  }
#main section.main-wrap02 h2 a span{display: table-cell ;vertical-align: middle ; text-align: center;  position: relative;}
.mass,.sacrament{width: 100%; height: 100%; box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.3) ; padding: 0; min-height: 170px; display: table}
.time-wrap, .sacrament dl{ margin: 0; border-top: 1px solid #ddd; display: table-cell; padding: 30px;}

.mass{ margin-bottom:20px; }
.mass .time-wrap{   overflow-y: auto; width: 85%; height: 100%;position: relative;}
.mass .time-wrap > div{display: table; width: 100%;height: 100%;}
.mass .time-wrap::after{content: "";width: 330px; height: 100%; display: block; background: url(../img/main_tem01.png) 0 -30px  no-repeat; position: absolute; top: 0; right: 0; }
.mass .time-wrap > div > div{  display:table-cell ; float: left;   vertical-align: top ; width: 28%; }
.mass .time-wrap .day, .mass .time-wrap .satur{border-left:1px solid #ddd; padding-left: 30px }
.mass .time-wrap .satur dl{margin-bottom: 0}
.mass .time-wrap .sun::after, .mass .time-wrap .day::after, .mass .time-wrap .satur::after{content: ""; display: block; clear: both;}
.mass .time-wrap h3{ position: relative;  width: 100%; margin-bottom: 20px; }
.mass .time-wrap ul{margin: 0 }
.mass .time-wrap ul::after{content: ""; display: block; clear: both;}
.mass .time-wrap ul{ width: 100%; }
.mass .time-wrap ul li{margin-bottom: 5px}
.mass .time-wrap ul span:first-child{display: inline-block; margin-right: 10px; font-weight:bold}
.mass .time-wrap ul span p{display: inline-block; }


.sacrament{}
.sacrament dl{  padding: 30px; padding-right:0}
.sacrament dl::after{content: ""; display: block; clear: both;}
.sacrament dl dt{width:20%;float: left;  color: #c03322;margin-bottom: 10px ;position: relative;  }
.sacrament dl dd{width:30%;  margin-bottom: 10px;  float: left; padding-right: 30px }




/* 메인 - 갤러리  */
.main-wrap03{position: relative; padding-top: 20px !important}
.gallery{}
.gallery h2{  display: none}
#main section.main-wrap03 .gallery h2 a{ color:#333; background: #fff; display: inline-block; padding: 0 20px; margin: 0 auto; font-size:1.5em;}
.gallery-list{display: block; margin-top: 30px }
.gallery-list::after{content: ""; display: block; clear: both;}
.gallery-list a{display: block; float: left; padding: 10px; width: 25%;}
.gallery-list a .img{width: 100%; height: 280px; overflow:hidden;}
.gallery-list a .img div{background-size: cover;width: 100%; height: 100%;}
.gallery-list a .img div.image{transform:rotate(90deg) scale(1.5)}
/* .gallery-list a:hover .img div{
 cursor:pointer; -webkit-transform:scale(1.1); -moz-transform:scale(1.1); -o-transform:scale(1.1);transform:scale(1.1);transition: transform .5s; -o-transition: transform .5s; -moz-transition: transform .5s; -webkit-transition: transform .5s; }
 */
.gallery-list a .title{font-family: 'NanumSquare'; font-weight: 700;  font-size: 1.2em; padding: 10px 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.gallery-list a .text{ color: #666; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; word-wrap:break-word ; line-height: 1.3em;height:40px;  width: 100%; }
.gallery-list::after{content: ""; display: block; clear: both;}
.gallery .more{display: block; margin: 30px auto 0; border: 1px solid #ddd;  width:150px; height: 40px; font-size: 0.9em; color: #666}
.gallery .more::before{content: "Gallery "; display: inline;}
.gallery .more::after{content: "+"; display: inline-block; margin-left: 10px;}
.gallery .more:hover{background-color: #c03322; color: #fff ; border: 0}


/* 메인 - 동영상  */
.main-wrap04{position: relative; background: #f2f2f7; }
.video{}
.video h2{ display: none}
#main section.main-wrap04 .video h2 a{ color:#333; display: inline-block; padding: 0 20px; margin: 0 auto; font-size: 1.5em;}
.video-list{display: block;   }
.video-list a{display:block; width: 50%; float: left; padding:0  10px; margin-bottom: 20px; }
.video-list a .img{width: 50%; height: 190px; overflow:hidden; float: left;}
.video-list a .img div{background-size: cover;width: 100%; height: 100%;position: relative; background-position: center}
.video-list .video-text{border: 0;width: 50%; float: right;background-color: #fff; height: 190px; padding:30px  20px; position: relative; }
.video-list a .title{font-family: 'NanumSquare'; font-weight: 700;   font-size: 1.2em;  color: #c03322; margin-bottom: 10px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.video-list a .text{ color: #666; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; word-wrap:break-word ; line-height: 1.3em;height:60px;  width: 100%; }
.video-list a .video-text::after{content: "동영상 보기"; display: inline-block; font-size: 0.9em; width: 110px; height: 15px; background: url(../img/main_tem01.png) no-repeat 75px 4px; position: absolute; bottom: 20px; right: 20px; color: #666;  }
.video-list a .video-text:before{content:''; display:block; position:absolute;left:0px; top:0px; height: 2px; width: 0px; background: #c03322;}
.video-list a:hover .video-text:before{width: 100%;-webkit-transition: all 0.3s ease;-moz-transition: all 0.3s ease;transition: all 0.3s ease; }
.video-list a:hover .video-text::after{color: #000}
.video-list::after{content: ""; display: block; clear: both;}
.video .more{display: block; margin: 30px auto 0; border: 1px solid #ddd;  width:150px; height: 40px; font-size: 0.9em; color: #666}
.video .more::before{content: "Gallery "; display: inline;}
.video .more::after{content: "+"; display: inline-block; margin-left: 10px;}
.video .more:hover{background-color: #c03322; color: #fff ; border: 0}



/* 메인 - 월중행사, 위치안내  */
.main-wrap05{}
#main section.main-wrap05 h2 a{ color: #333; text-align: center; display: block}

.event{}
.event .calender{ background:#f2f2f7 ; height: 500px; padding: 30px; font-family: 'NanumSquare'; font-weight: 400; position: relative;}
.event .control{text-align: center; font-size:1.6em;  font-weight: 700;}
.event .control .prev, .event .control .next{position: relative; display: inline;float: left; }
.event .control .next{float: right}
.event .control .next::before{content: "\f054"; }
.event .control .prev::before{content: "\f053"; }
.event .control .next::before, .event .control .prev::before{display: block; font-family: 'Font Awesome 5 Free';  font-weight: 900; font-size: 30px; color:#babac7;
-moz-transition:color .2s ease;-o-transition:color .2s ease;-ms-transition:color .2s ease;-webkit-transition:color .2s ease;transition:color .2s ease; }
.event .control .prev:hover::before, .event .control .next:hover::before{color: #333}
.event table{ width: 100%; margin-top:20px; margin-bottom: 10px}
.event table th{background:#c03322; color: #fff; font-size: 1.2em; text-align: center; padding: 10px 0; }
.event table td{font-size: 1.1em;text-align: center; padding: }
.event table td p{ padding: 5px; margin-top: 3px; display: inline-block; min-width:33px}
.event table td .today {color: #000; font-weight: 900;  }
.event table td .event {font-weight: 700; border:2px solid #c03322;  border-radius: 30px;}

.event .event-list{ background: #fff;  height: 130px;  width: 100%; padding: 15px; overflow-y: hidden}
.event .event-list ul{position: relative;}
.event .event-list > div{height: 95px;overflow-y: hidden}
.event .event-list li{ font-size: 1.1em; min-height: 25px;}
.event .event-list .data{cursor: pointer;color:#c03322; font-weight: 700; font-size: 1.1em; display: inline-block; margin-right: 15px}

.map{}
.map .api{background:#f2f2f7;height: 380px;}
.map .info{background:#c03322; color: #fff;font-family: 'NanumSquare'; font-weight: 400; font-size:1.1em; height: 120px; width: 100%; display: table; line-height: 160%;}
.map .info > div{display: table-cell;  vertical-align: middle; padding: 30px; opacity: ; }


@media (max-width: 1199px) { 
   
.slide-wrap > div{height: 500px;} 
.slide-wrap .text02 .container{padding :0 20px; margin: 0; width: 100%; }
.bx-controls{ height: 100px; padding-top:320px; text-align: center }
.bx-controls-direction{ position: relative; bottom: auto; top: 0;right:0}
.bx-controls .bx-next, .bx-controls .bx-prev{background: transparent;  width:60px; height:20px; border: 0}
.bx-controls .bx-next{position: absolute; top: -150px; right: 0px;}
.bx-controls .bx-prev{position: absolute; top: -150px; left: 0px;}

.mass .time-wrap::after{display: none }
.mass .time-wrap > div > div{  display: table-cell;  float:none }
.mass .time-wrap h3, .mass .time-wrap ul,  { width: 100%; float: normal; }
.mass .time-wrap ul { margin-top: 10px; }
.mass .time-wrap ul dt{width:30%;}
.mass .time-wrap ul dd{ width: 70%;}

.sacrament dl dt{width:40%;}
.sacrament dl dd{ width: 60%;} 

.weekly h2{padding-left:0px ; }
.weekly li:first-child{padding-left:0px ;}
.weekly{padding-top: 20px}
.weekly .more{top:25px;}

.map{padding-top: 50px}

.gallery-list a, .video-list a{ width:50%; display: block; float: left; }

 }

@media (max-width: 991px) { 
 #main section.main-wrap02 h2 {display: block; width: 100%; }
 #main section.main-wrap02 h2 a{height: auto; padding: 20px 0 10px}
 #main section.main-wrap02 h2 a span::before{display:none} 
 .mass, .sacrament{display: block; }
 .mass h2, .sacrament h2{display: block; width: 100%;}
  .mass .time-wrap, .sacrament dl{border: 0; border-left: 1px solid #ddd; display: block; width: 100%; height:auto}
 
 }

@media (max-width: 768px) { 
    .bx-controls{ top: 60px; }
    .event .event-list li{height: auto; width: 100%;}
    .event .event-list .data{cursor: pointer;display: block}
	.sacrament dl, .mass .time-wrap{height:auto; }


 }

 @media (max-width: 575px) { 
	#main section:nth-child(n+2){padding:20px 0}
	#main h2 a{font-size:0.85em}
	.gallery .more,.video .more {margin-top:10px}
    .slide-wrap > div{height: 300px;padding-bottom:80px}
    .slide-wrap .text01 .title{font-size: 1.8em}
    .slide-wrap .text01 .text{font-size: 0.9em;}
    .slide-wrap .text02 .title{font-size: 1.2em}
    .slide-wrap .text02 .text{font-size: 1em;}


    .slide-wrap > div{height: 300px;padding-bottom:80px}
    .slide-wrap .text01 .title{font-size: 1.8em}
    .slide-wrap .text01 .text{font-size: 0.9em;}
    .slide-wrap .text02, .slide-wrap .text02 .container{  height: 80px;  }
    .slide-wrap .text02 .title{font-size: 1.1em;margin-bottom: 5px}
    .slide-wrap .text02 .text{font-size: 0.8em;max-height:40px;}
    .bx-controls{ height: 100px; padding-top:190px; }
    .bx-controls .bx-next, .bx-controls .bx-prev{top: -100px;}

    .weekly li{ width:50%; display: block; float: left; margin-bottom: 10px;padding-left:0px ; }
    .weekly li:nth-child(2n+1){padding-right:5px ;}    
    .weekly li:nth-child(2n+2){padding-left:5px ;}

   .mass .time-wrap > div > div{width: 100% !important; display: block; padding-bottom: 10px; }  
    .mass .time-wrap .day, .mass .time-wrap .satur{border-left:0; border-top:1px solid #ddd; padding-left: 0px; padding-top: 20px;  margin-top:10px  }
    .time-wrap .satur{padding-bottom: 0px !important;} 


    
    .sacrament dl dt, .sacrament dl dd{width:100%;}
    .sacrament dl dt{margin-bottom: 5px;}
    .sacrament dl dd{ margin-bottom: 10px; border-bottom: 1px dotted #ddd; padding-bottom: 10px}
    .sacrament dl dd:last-child{margin-bottom: 0px; border-bottom: 0; padding-bottom: 0px}
    .sacrament dl dd::before{content: "-"; display: inline-block; margin-right: 10px;}
    
    .gallery-list a, .video-list a{ width:100%;  float: normal; }

    
    .event .calender, .map .info > div{padding:20px; height: auto;}
	.event .event-list{height: auto !important;font-size:0.9em }
	.event .event-list li:nth-child(n+2){margin-top:10px}
	.event .event-list > div{height: auto !important; }
	#footer{font-size: 0.8em;}


    .map .api{background:#f2f2f7;height: 300px;}
    .map .info strong{display: block;font-size:  1.2em}
    .map .info p:nth-child(n+2) strong{margin-top:10px}
    .map .info{font-size: 14px}

 
 }





