﻿/* common */
.heading { position:relative; margin-right: 3.5rem; margin-bottom: 1.2rem; line-height:1; font-size:1rem; font-weight:600; color:#222; white-space: nowrap; overflow:hidden;}
.btn_more { position:absolute; top:0rem; right:0; font-size: 0.8rem; padding-left: 0.6rem; -webkit-transition:all 0.15s; transition:all 0.15s;}
.btn_more::before{content: ''; display: block; position: absolute; left: 0; top: 50%; width: 4px; height: 4px; border-radius: 50%; background: #158fec; }
.btn_more i{font-weight: 1rem; margin-left: 0.2rem; transition: all 0.15s;}
.btn_more:hover i,
.btn_more:focus i{transform: rotate(180deg);}

/* 메인비주얼 */
.MVisual0040 { position: relative; float: right; max-width: 78rem; width: 100%; height: 100%; overflow:hidden; border-radius: 0 0 3.3rem 0; background: rgba(0,0,0,0.1); isolation: isolate;}
.MVisual0040 .slider{ position:relative; z-index: 0;}
.MVisual0040 .item{overflow:hidden; line-height:0;}
.MVisual0040 .item img{position:relative; width:100%; height:auto; top:0; right: 0;}
.MVisual0040 .control{position:absolute; right: 2rem; bottom:2rem; z-index:1;}
.MVisual0040 .control > a{display:inline-block; width:2rem; height:2rem; line-height:2rem;  background:rgb(17, 26, 50, 0.5); color:#fff; text-align: center; border-radius:50%; -webkit-transition:all 0.15s; -ms-transition:all 0.15s; transition:all 0.15s; }
.MVisual0040 .control > a.play{display:none;}
.MVisual0040 .control > a:hover,
.MVisual0040 .control > a:focus{ background:rgb(17, 26, 50, 0.9);}

/* 바로가기1 */
.M_link0040 {position: relative; height: 100%; background: #00a157; color: #fff; font-size: 0.95rem; font-weight: 500; border-radius: 5rem;}
.M_link0040 ul {display: flex; align-items: center; height: 100%;}
.M_link0040 li {position: relative; display: flex; align-items: center; height: 100%; flex: 1; padding: 0 0.5rem 0 2.5rem; }
.M_link0040 li + li::before {content: ''; display: block; position: absolute; left: 0; top: 50%; width: 0; height: 1.4rem; border-left:1px dashed #fff; transform: translateY(-50%);}
.M_link0040 li a {position: relative; display: flex; align-items: center; padding-left: 4rem; width: 100%; }
.M_link0040 li a .ico {display: flex; justify-content: center; align-items: center; position: absolute; top: 50%; left: 0; width: 3rem; height: 3rem; background: #fff; border-radius: 50%; transition: all 0.15s; transform: translateY(-50%);}
.M_link0040 li a .ico img {max-width: 100%; transition: all 0.15s; }
.M_link0040 li a p {max-height: 2.7rem; overflow: hidden;}
.M_link0040 li a,
.M_link0040 li a .ico {-webkit-transition:all 0.15s; -ms-transition:all 0.15s; transition:all 0.15s;}
/** 바로가기1 : active **/
.M_link0040 li a:hover .ico,
.M_link0040 li a:focus .ico { box-shadow: 0 0 0.5rem rgba(0,0,0,0.6);}
.M_link0040 li a:hover .ico img,
.M_link0040 li a:focus .ico img{transform: rotateY(180deg);}
.M_link0040 li a:hover p span,
.M_link0040 li a:focus p span {background-image: linear-gradient(to bottom, transparent 65%, #008045 65%); }

/* 게시판 */
.notice0040 {position: relative; height: 100%; }
.notice0040 .titTab {position: relative; padding-right: 3.5rem; margin-bottom: 1.2rem;}
.notice0040 .titTab ul::after {content: ''; display: block; clear: both;}
.notice0040 .titTab li {position: relative; float: left; max-width: 33.33%; line-height: 1; font-size: 1rem; padding-right: 1.75rem;}
.notice0040 .titTab li a {position: relative; display: block; color: #000; }
.notice0040 .titTab li a::after{content: "\e937"; font-family: 'xeicon'; display: block; position: absolute; right: -1.1rem; top: 50%; transform: translateY(-50%); color: #c6c6c6; font-weight: 300; transition: all 0.15s;}
.notice0040 .titTab li a span {position: relative; display: block; white-space: nowrap; overflow: hidden;}
.notice0040 .tabWrap {height: calc(100% - 2.2rem); padding: 2rem 1.5rem; border: 2px solid #158fec; border-radius: 1rem; box-shadow: 0 0 0.3rem rgba(0,0,0,0.2);}
.notice0040 .list_box {display: none; width: 100%; height: 100%;}
.notice0040 .list_box ul {height: 100%;}
.notice0040 .list_box li { position: relative; height: 3.5rem; padding: 0.7rem 0;}
.notice0040 .list_box li:nth-child(n+4) {display: none;}
.notice0040 .list_box li + li {margin-top: 1.9rem;}
.notice0040 .list_box li + li::before{content: ''; display: block; height: 0; position: absolute; top: -0.8rem; left: 4rem; right: 0; border-bottom: 1px dashed #bbb;}
.notice0040 .list_box li a {position: relative; display: block; height: 100%; padding-left: 4rem;}
.notice0040 .list_box li .tit { position: relative; margin-bottom: 0.5rem; font-size: 0.8rem; font-weight: 500; color: #222; line-height: 1;}
.notice0040 .list_box li .tit span{ display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.notice0040 .list_box li a.new .tit{padding-left: 1.5rem;}
.notice0040 .list_box li a.new .tit::before {content: "N"; position: absolute; top: 50%; left:0; display: inline-block; width: 1.4rem; height: 1.4rem; line-height: 1.2rem; text-align: center; font-size: 0.7rem; font-weight: 600; color: #fff; background: #ff7a00; border: 2px solid #fff; border-radius: 50%; transform: translateY(-50%);}
.notice0040 .list_box li .txt {font-size: 0.75rem; color: #777; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; line-height: 1;}
.notice0040 .list_box li .date {position: absolute; top: 50%; left: 0rem; display: flex; flex-direction: column; justify-content: center; align-items: center; width: 3.5rem; height: 3.5rem; font-size: 1.1rem; font-weight:600; color: #000; border-radius: 0.7rem; background: #dceefc; transform: translateY(-50%);}
.notice0040 .list_box li .date em {font-size: 0.6rem; font-weight: 500; color: #060606;}
.notice0040 .list_box li.no_data {height: 100%; display: flex; align-items: center; justify-content: center; }
.notice0040 a {-webkit-transition:all 0.15s; -ms-transition:all 0.15s; transition:all 0.15s; }
/* 게시판 : active */
.notice0040 .titTab li a.current,
.notice0040 .titTab li a:hover,
.notice0040 .titTab li a:focus {font-weight: 600; color: #222;}
.notice0040 .titTab li a.current::after{color: #158fec;}
.notice0040 .list_box.on {display: block;}
.notice0040 .list_box li a:hover,
.notice0040 .list_box li a:focus {text-decoration: underline; }

/* 캘린더 */
.pop_schedule0040 {position: relative; height: 100%;}
.pop_schedule0040 .sche_wrap {padding: 1rem; height: calc(100% - 2.2rem); background: #e5f5ee; border-radius: 1rem;}
.pop_schedule0040 .month {display: flex; justify-content: space-around; align-items: center; margin-bottom: 0.4rem; text-align: center; line-height: 1.5rem;}
.pop_schedule0040 .month a {display: inline-block; vertical-align: middle; transition: all 0.15s;}
.pop_schedule0040 .month span {display: inline-block; margin: 0 0.5rem; vertical-align: middle; font-size: 1rem; font-weight: 500; color: #000;}
.pop_schedule0040 .month span em{ display: inline-block; width: 2rem; height: 2rem; margin-left: 0.2rem; text-align: center; line-height: 2rem; border-radius: 50%; font-weight: 600; color: #fff; background:#00a157;}
.pop_schedule0040 .sche_table{height: 10rem; margin-bottom: 0.7rem;}
.pop_schedule0040 .sche_table table {table-layout: fixed; height: 100%; text-align: center;}
.pop_schedule0040 .sche_table table thead th {padding: 0.4rem 0.15rem; font-size: 0.75rem; color: #000; font-weight: 500; background: #fff; }
.pop_schedule0040 .sche_table table thead th.sat {color: #5a98e0;}
.pop_schedule0040 .sche_table table thead th.sun {color: #f83f3f;}
.pop_schedule0040 .sche_table table thead tr:first-child th:first-child {border-radius: 0.5rem 0 0 0.5rem;}
.pop_schedule0040 .sche_table table thead tr:first-child th:last-child {border-radius: 0 0.5rem 0.5rem 0;}
.pop_schedule0040 .sche_table table tbody td {padding: 0.15rem; font-size: 0.7rem; font-weight: 500;}
.pop_schedule0040 .sche_table table tbody td .sat {color: #5a98e0;}
.pop_schedule0040 .sche_table table tbody td .sun {color: #f83f3f;}
.pop_schedule0040 .sche_table table tbody td a,
.pop_schedule0040 .sche_table table tbody td span {display: inline-block; width: 1.1rem; height: 1.1rem; line-height: 1.1rem; color: #444; border-radius: 50%;}
.pop_schedule0040 .sche_table table tbody td .event {background: #fff; color: #00a157;}
.pop_schedule0040 .sche_table table tbody td .today {background: #ff7a00 !important; color: #fff !important;}
.pop_schedule0040 .lst {position: relative;}
.pop_schedule0040 .lst ul {height: 3rem; overflow-y: auto;}
.pop_schedule0040 .lst li a {position: relative; display: block; padding-left: 3.5rem; line-height: 1.1rem; font-size: 0.75rem; color: #000; white-space: nowrap; text-overflow: ellipsis; overflow: hidden;}
.pop_schedule0040 .lst li ~ li {margin-top: 0.5rem;}
.pop_schedule0040 .lst li a span {position: absolute; top: 0; left: 0; width: 3rem; text-align: center; line-height: 1rem; font-size: 0.7rem; font-weight: 500; background: #fff; border-radius: 1rem; border: 1px dashed #00a157;}
.pop_schedule0040 .lst .no_data {height: 93%; display: flex; justify-content: center; align-items: center; background: #fff; border-radius: 0.5rem;}
.pop_schedule0040 a,
.pop_schedule0040 a span {-webkit-transition:all 0.15s; -ms-transition:all 0.15s; transition:all 0.15s;}
.pop_schedule0040 .btn_more::before{background: #00a157;}
/** 캘린더 : active **/
.pop_schedule0040 .month a.prev:hover,
.pop_schedule0040 .month a.prev:focus{transform: translateX(-2px);}
.pop_schedule0040 .month a.next:hover,
.pop_schedule0040 .month a.next:focus{transform: translateX(2px);}
.pop_schedule0040 .sche_table table tbody td a:hover,
.pop_schedule0040 .sche_table table tbody td a:focus{text-decoration: underline;}
.pop_schedule0040 .lst li a:hover,
.pop_schedule0040 .lst li a:focus {text-decoration: underline;}

/* 식단 */
.meal_menu0040 {position: relative; height: 100%;}
.meal_menu0040 .inner {padding: 1.7rem 1.5em 1.5rem 1.5rem; height: calc(100% - 2.2rem); background: #ffdbe3; border-radius: 1rem;}
.meal_menu0040 .inner .img {display: block; text-align: center; margin-bottom: 1.5rem;}
.meal_menu0040 .inner .img img {max-width: 8rem; width: 100%;}
.meal_menu0040 .inner ul {height: 7rem; overflow-y: auto;}
.meal_menu0040 .inner li + li {margin-top: 1rem;}
.meal_menu0040 .inner li:not(.no_data) {padding-right: 0.25rem;}
.meal_menu0040 .inner .no_data {line-height: 7rem; text-align: center;}
.meal_menu0040 .inner dl {text-align: center; color: #222;}
.meal_menu0040 .inner dt {max-width: 70%; height: 2.25rem; line-height: 2.25rem; margin: 0 auto; font-size: 0.9rem; font-weight: 500; background: #ff7191; color: #fff; border-radius: 2rem;}
.meal_menu0040 .inner dt span em{font-weight: 600;}
.meal_menu0040 .inner dd {margin-top: 1.5rem; font-size: 0.8rem; word-break: keep-all; color: #000;}
.meal_menu0040 .btn_more::before{background: #ff7191;}

/* 팝업존 */
.pop0040 {display: flex; align-items: flex-start; position: relative; width: 100%; height: 100%; }
.pop0040::before{content: ''; display: block; position: absolute; top: 4.2rem; left: 0; right: 0; bottom: 0; border-radius: 1.5rem 1rem 1rem 1.5rem; background: url(/images/schl/template/T0040/main/0040_img_bg01.png);}
.pop0040 .heading {flex-shrink: 0; width: 4.75rem; margin: 0; }

.pop0040 .pop_img {flex-shrink: 0; position: relative; width: calc(100% - 4.75rem); height: 11.25rem; background: rgba(0,0,0,0.1); border-radius: 1.5rem 1.5rem 0 1.5rem; overflow: hidden; isolation: isolate;}
.pop0040 .pop_img div[class*='slick-'],
.pop0040 .pop_img .item {height: 100%;}
.pop0040 .pop_img .item a {display: flex; height: 100%; line-height: 0; align-items: center; justify-content: center; overflow: hidden;}
.pop0040 .pop_img .item img {position: relative; max-width: 100%;}

.pop0040 .control {position: absolute; top: 5rem; left: 1.5rem; display: flex; flex-direction: column; align-items: center; }
.pop0040 .control p {margin-bottom: 1rem; font-size: 0.7rem; font-weight: 500;}
.pop0040 .control p strong {font-size: 0.85rem; font-weight: 600; color: #00a157;}
.pop0040 .control p span {display: inline-block;}
.pop0040 .control p span:before {padding: 0 0.5rem; content: "/";}
.pop0040 .control a {display: block; width: 1.5rem; height: 1.5rem; line-height: 1.5rem; text-align: center; font-size: 0.85rem; color: #000; background: #fac709; border-radius: 50%; overflow: hidden; transition: all 0.2s; -webkit-transition: all 0.2s;}
.pop0040 .control .play,
.pop0040 .control .stop { background: #fff; box-shadow: 0 0 0.2rem rgba(0,0,0,0.2); margin: 0.3rem 0;}
.pop0040 .control .play {display: none;}
/* 팝업존 : active */
.pop0040 .control a:hover,
.pop0040 .control a:focus {background: #ff8609; color: #fff;}

/* 갤러리 */
.gallery0040 {position: relative; height: 100%;}
.gallery0040 .heading{margin-bottom: 1rem;}
.gallery0040 .list_box {height: calc(100% - 2rem); margin: 0 -1rem;}
.gallery0040 .list_box ul {display: flex; height: 100%;}
.gallery0040 .list_box li {flex: 1; padding: 0 1rem; max-width: 50%; height: 100%;}
.gallery0040 .list_box li:nth-child(n+3) {display: none;}
.gallery0040 .list_box li a {position: relative; display: block; height: 100%; border-radius: 1rem; overflow: hidden; }
.gallery0040 .list_box li a .img {height: 100%; background: rgba(0,0,0,0.1); overflow: hidden; isolation: isolate;}
.gallery0040 .list_box li a .img img {position: relative; left: 50%; width: auto; height: 100%; transform: translateX(-50%); -webkit-transform: translateX(-50%); transition: all 0.15s;}
.gallery0040 .list_box li a .txt {position: absolute; bottom: 0; left: 0; padding: 0 1rem; width: 100%; line-height: 2.5rem; text-align: center; font-size: 0.8rem; font-weight: 500; color: #404040; white-space: nowrap; text-overflow: ellipsis; background: rgba(0,0,0,0.6); color: #fff; overflow: hidden; transition: all 0.15s;}
.gallery0040 .list_box li.no_data {display: flex; align-items: center; justify-content: center; max-width: 100%; width: 100%; height: 100%; }
/** 갤러리 : active **/
.gallery0040 .list_box li a:hover .txt,
.gallery0040 .list_box li a:focus .txt { background: #158fec;}
.gallery0040 .list_box li a:hover .img img,
.gallery0040 .list_box li a:focus .img img {transform: translateX(-50%) scale(1.1);}

/* 배너존 */
.banner_zone {line-height: 1; border-top: 1px solid #d1d8e4;}
.banner_zone .container {position: relative; height: 4rem; overflow: hidden;}
.banner_zone h2 {float:left; margin-top: 1.5rem; width: 4rem; font-size: 0.8rem; font-weight: 600; color: #191919;}
.banner_zone .btn {float: left; margin-top: 1.3rem; overflow: hidden; border-left:1px solid #ccc;}
.banner_zone .btn a {float: left; width: 1.4rem; height: 1.4rem; line-height:1.4rem; text-align:center; overflow: hidden; border:1px solid #ccc; border-left:0;}
.banner_zone .btn a.play{display:none;}
.banner_zone .bnWrap { width: calc(100% - 10rem); float:left; padding-top: 0.75rem; padding-left:1.5rem; overflow: hidden;}
.banner_zone .bnWrap a {display: block; height: 2.5rem; line-height: 2.3rem; text-align: center; margin:0 5px; border: 1px solid #c8d1db; overflow: hidden;}
.banner_zone .bnWrap a img {max-width: 100%; max-height: 100%; vertical-align: middle;}


@media (max-width: 1240px) {
	/* 갤러리 */
	.gallery0040 .list_box{margin: 0 -0.5rem;}
	.gallery0040 .list_box li{padding: 0 0.5rem;}
}

@media (max-width: 1024px) {
	/* 바로가기 */
	.M_link0040 li{padding-left: 1rem;}
	.M_link0040 li a{padding-left: 3.5rem;}

	/* 식단 */
	.meal_menu0040 .inner{position: relative; height: 4.3rem; padding: 1rem; padding-left: 7rem;}
	.meal_menu0040 .inner .img {position: absolute; left: 2rem; top: 50%; transform: translateY(-50%); max-width: 4rem;}
	.meal_menu0040 .inner ul{height: 100%;}
	.meal_menu0040 .inner dl{display: flex; }
	.meal_menu0040 .inner dt{flex-shrink: 0; width: 8rem; margin: 0;}
	.meal_menu0040 .inner dd{margin-top: 0; padding-left: 1rem; text-align: left; line-height: 2.25rem;}
}

@media (max-width: 960px) {
	/* 갤러리 */
	.gallery0040 .list_box li{width: 100%; max-width: 100%;}
	.gallery0040 .list_box li ~ li{display: none;}
}

@media (max-width: 860px) {
	.heading{margin-bottom: 1rem;}

	/* 바로가기 */
	.M_link0040{border-radius: 1rem; padding: 0.5rem 0;}
	.M_link0040 ul{flex-wrap: wrap;}
	.M_link0040 li{width: 50%; height: 3.5rem; flex: auto;}
	.M_link0040 li:nth-child(2n+1)::before{display: none;}

	/*  게시판 */
	.notice0040 .titTab{margin-bottom: 1rem;}
	.notice0040 .tabWrap{padding: 1rem;}

	/* 캘린더 */
	.pop_schedule0040 .sche_wrap{display: flex; flex-wrap: wrap; height: auto;}
	.pop_schedule0040 .month{width: 100%;}
	.pop_schedule0040 .sche_table{flex-shrink: 0; width: 15rem;} 
	.pop_schedule0040 .lst{ width: calc(100% - 15rem); padding-left: 1rem;}
	.pop_schedule0040 .lst ul{height: 10rem; display: flex; flex-wrap: wrap;}
	.pop_schedule0040 .lst ul li{width: 50%; padding: 0 0.2rem; margin-bottom: 0.65rem;}
	.pop_schedule0040 .lst ul li ~ li{margin-top: 0;}

	
}

@media (max-width: 768px) {

	/* 캘린더 */
	.pop_schedule0040 .lst ul li{width: 100%;}
}

@media (max-width: 560px) {

	/* 캘린더 */
	.pop_schedule0040 .sche_table{width: 100%;}
	.pop_schedule0040 .lst{width: 100%; padding-left: 0;}
	.pop_schedule0040 .lst ul{height: 3rem;}

}

@media (max-width: 520px) {
	/* 메인비주얼 */
	.MVisual0040{border-radius: 0;}
	.MVisual0040 .control {bottom: 0.5rem; right: 0.75rem;}
	.MVisual0040 .control > a {width: 1.65rem; height: 1.65rem; line-height: 1.65rem;}

	/* 게시판 */
	.notice0040 .titTab{margin-bottom: 0.5rem;}
	.notice0040 .titTab li{max-width: 100%; margin-bottom: 0.5rem;}

	/* 식단 */
	.meal_menu0040 .inner{height: 8rem; padding-left: 1rem; padding-right: 5.5rem;}
	.meal_menu0040 .inner dl{flex-direction: column;}
	.meal_menu0040 .inner dt{line-height: 1.8rem; height: auto;}
	.meal_menu0040 .inner dd{line-height: 1.2rem; margin-top: 0.5rem; padding-left: 0;} 
	.meal_menu0040 .inner .img{left: auto; right: 1rem; bottom: 1rem; top: auto; transform: none; margin-bottom: 0;}
}

@media (max-width: 480px) {

	/* 바로가기 */
	.M_link0040 li a{padding-left: 3rem;}
	.M_link0040 li a .ico{width: 2.5rem; height: 2.5rem; }
	.M_link0040 li a .ico img{width: 80%;}

	/* 팝업존 */
	.pop0040{flex-direction: column;}
	.pop0040::before{display: none;}
	.pop0040 .heading{margin-bottom: 1rem; width: calc(100% - 9rem);}
	.pop0040 .control{left: auto; right: 0; top: -0.2rem; flex-direction: row; }
	.pop0040 .control p{margin-bottom: 0; margin-right: 1rem;}
	.pop0040 .control .play, 
	.pop0040 .control .stop{margin: 0 0.5rem;}
	.pop0040 .pop_img{width: 100%;}

}

@media (max-width: 380px) {

	/* 팝업존 */
	.pop0040 .pop_img{height: auto;}
}

@media (max-width: 360px) {

	/* 바로가기 */
	.M_link0040{padding: 0.5rem 1rem;}
	.M_link0040 li{width: 100%; padding: 0;}
	.M_link0040 li ~ li{border-top: 1px dashed #fff;}
	.M_link0040 li ~ li::before{display: none;}

	/* 식단 */
	.meal_menu0040 .inner{padding-right: 1rem;}
	.meal_menu0040 .inner .img{display: none;}
}
