
/* Import Fonts & All CSS */
@import url(../fonts/font.css);
/*----------------------------------------*/
:root {
	/* Set fade in duration */
	--fade-time: 0.5s;
}
/* reset css */
html, body {
	margin: 0;
	padding: 0;
}

dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, select, textarea, p, blockquote, tbody, tfoot, thead, th, td {
	margin: 0;
	padding: 0;
}

input, textarea, select, button {
	vertical-align: middle;
	letter-spacing: -0.5px;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
}

table {
	table-layout: fixed;
	width: 100%;
	border-spacing: 0;
	border-collapse: collapse;
}

ol, ul, li {
	list-style: none;
}

hr, legend, caption, .skip {
	position: absolute;
	overflow: hidden;
	line-height: 0.01%;
	font-size: 0.01%;
	width: 0;
	height: 0;
}

img, fieldset {
	border: 0 none;
	vertical-align: middle;
}

label, button {
	cursor: pointer;
}

em, address {
	font-style: normal;
}




html,
body {
	height: 100%;
}




img {
	max-width: 100%;
}

input:focus,
select:focus,
button:focus,
textarea:focus {
	outline: none;
}

a {
	text-decoration: none;
	color: #000;
	display: block;
}

	a:hover, a:focus {
		text-decoration: none;
		outline: none;
		color: #214b98;
	}


ul,
ol {
	padding: 0;
	margin: 0;
}

ol, ul, li {
	list-style: none;
}




/* Input */
input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
input[type="number"] {
	max-width: 100%;
	height: 45px;
	padding: 0 15px;
	font-size: 14px;
	line-height: 43px;
	color: #545454;
	border: 1px solid #d2d2d2;
	border-radius: 5px;
}

input[type="radio"],
input[type="checkbox"] {
	width: 18px;
	height: 18px;
}

input[type="file"] {
	max-width: 100%;
	height: 45px;
	padding: 0 0;
	line-height: 43px;
	border: 1px solid #d2d2d2;
	background: #fff;
}

textarea {
	overflow: auto;
	overflow-x: hidden;
	padding: 10px;
	border: 1px solid #d2d2d2;
	background: #fff;
	resize: none;
	border-radius: 5px;
}






select {
	max-width: 100%;
	height: 45px;
	padding: 0px 15px;
	font-size: 14px;
	line-height: 43px;
	color: #545454;
	font-weight: 400;
	border: 1px solid #d2d2d2;
	border-radius: 5px;
	background: #fff url(../images/common/icon_view_nav_next.png) no-repeat 93% 50%; /* 네이티브 화살표 대체 */
	-webkit-appearance: none; /* 네이티브 외형 감추기 */
	-moz-appearance: none;
	appearance: none;
}

	/* IE 10, 11의 네이티브 화살표 숨기기 */
	select::-ms-expand {
		display: none;
	}



/* Button */
button {
	overflow: visible;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	white-space: nowrap;
	cursor: pointer;
	display: inline-block;
	vertical-align: middle;
	box-sizing: border-box;
}

	button::-moz-focus-inner {
		padding: 0;
		border: 0;
	}

	button span {
		display: block;
		position: relative;
	}

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

::-moz-selection {
	color: #fff;
	background: #462cc8;
}

::selection {
	color: #fff;
	background: #462cc8;
}

input:-ms-input-placeholder {
	color: #999;
}

input::-webkit-input-placeholder {
	color: #999;
}

input::-moz-placeholder {
	color: #999;
}

textarea:-ms-input-placeholder {
	color: #bebebe;
}

textarea::-webkit-input-placeholder {
	color: #bebebe;
}

textarea::-moz-placeholder {
	color: #bebebe;
}

input[type="text"]:focus,
input[type="password"]:focus,
textarea:focus {
	outline: none;
}

input:-moz-read-only {
	background-color: #fafafa;
}

input:read-only {
	background-color: #fafafa;
}

input:-moz-read-only:focus {
	border-color: #ddd !important;
}

input:read-only:focus {
	border-color: #ddd !important;
}




h1, .h1 {
	font-size: 2.75rem;
}

h2, .h2 {
	font-size: 2.2rem;
}

h3, .h3 {
	font-size: 1.925rem;
}

h4, .h4 {
	font-size: 1.65rem;
}

h5, .h5 {
	font-size: 1.375rem;
}





.ft20 {
	font-size: 1.375rem;
}

.bg-white {
	background-color: #fff !important
}

.img-fluid {
	max-width: 100%;
	height: auto
}

.w-100 {
	width: 100% !important
}

.a_C {
	text-align: center !important
}

.a_R {
	text-align: right !important
}



.ft12 {
	font-size: 0.750rem;
}

.ft14 {
	font-size: 0.875rem;
}

.ft18 {
	font-size: 1.125rem;
}

.ft20 {
	font-size: 1.250rem;
}

.ft30 {
	font-size: 1.875rem;
}

.f-gray {
	color: #5f5f5f
}

.f-black {
	color: #000000
}

.f-gray2 {
	color: #787878
}

.f-darkgray {
	color: #424242
}

.f-brown {
	color: #be6700
}

.f-org {
	color: #f8b500
}

.fred {
	color: #dc0000;
}

.fblue {
	color: #002cab;
}

.fblue2 {
	color: #0850aa;
}

.fgreen {
	color: #10c725;
}

.fgray {
	color: #aeaeae;
}

.f-tag {
	font-size: 14px;
	color: #165592;
	font-weight: 400;
}

.new_grren {
	color: #467b31;
}

.text-decoration {
	text-decoration: line-through;
}

input::placeholder {
	color: #a70707;
	font-style: italic; /* 선택 사항: 기울임꼴 */
}

.fweight-300 {
	font-weight: 300 !important;
}

.fweight-400 {
	font-weight: 400 !important;
}

.fweight-500 {
	font-weight: 500 !important;
}

.fweight-600 {
	font-weight: 600 !important;
}

.fweight-700 {
	font-weight: 700 !important;
}

.mt-0 {
	margin-top: 0px !important;
}

.mt-1 {
	margin-top: 10px !important;
}

.mt-2 {
	margin-top: 20px !important;
}

.mt-3 {
	margin-top: 30px !important;
}

.mt-4 {
	margin-top: 40px !important;
}

.mt-5 {
	margin-top: 50px !important;
}

.mt-6 {
	margin-top: 60px !important;
}

.mt-7 {
	margin-top: 70px !important;
}

.mt-8 {
	margin-top: 80px !important;
}

.mt-12 {
	margin-top: 120px !important;
}

.mt-15 {
	margin-top: 150px !important;
}

.m-2 {
	margin: 20px
}

.my-05 {
	margin: 5px 0px !important;
}

.my-1 {
	margin: 10px 0px !important;
}

.my-2 {
	margin: 20px 0px !important;
}

.my-3 {
	margin: 30px 0px !important;
}


.mb-2 {
	margin-bottom: 20px !important;
}

.mb-1 {
	margin-bottom: 10px !important;
}

.mb-5 {
	margin-bottom: 50px !important;
}

.mb-7 {
	margin-bottom: 70px !important;
}



.mx-1 {
	margin: 0 10px
}

.mx-2 {
	margin: 0 20px
}

.mx-3 {
	margin: 0 30px
}

.mxl-1 {
	margin-left: 10px
}

.mxl-2 {
	margin-left: 20px
}

.mxr-1 {
	margin-right: 10px
}

.mxr-2 {
	margin-right: 20px
}

.mxr-3 {
	margin-right: 30px
}

.mxr-4 {
	margin-right: 40px
}

.pt-1 {
	padding-top: 10px !important;
}

.px-1 {
	padding: 0 10px !important;
}

.px-2 {
	padding: 0 20px
}

.px-3 {
	padding: 0 30px
}

.pb-1 {
	padding-bottom: 10px
}

.pb-2 {
	padding-bottom: 20px
}


/*---------------------
  Helper CSS
-----------------------*/

.section-title {
}

	.section-title.left {
		text-align: left;
	}

	.section-title span.title {
		color: #1968cb;
		font-size: 1.875rem;
		font-weight: 600;
		text-transform: uppercase;
		letter-spacing: -1px;
	}

		.section-title span.title span.fblack {
			color: #000;
		}

	.section-title span.title_sub {
		font-size: 1.5rem;
		color: #23282d;
		font-weight: 100;
		line-height: 30px;
		text-transform: uppercase;
		margin-bottom: 10px;
		letter-spacing: -2px;
	}

		.section-title span.title_sub.mob {
			display: none
		}




.set-bg {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
}

.spad {
	padding-top: 50px;
	padding-bottom: 50px;
}

.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white h6,
.text-white p,
.text-white span,
.text-white li,
.text-white a {
	color: #fff;
}

/* buttons */




/* Preloder */

#preloder {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 999999;
	background: #000;
}

.loader {
	width: 40px;
	height: 40px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -13px;
	margin-left: -13px;
	border-radius: 60px;
	animation: loader 0.8s linear infinite;
	-webkit-animation: loader 0.8s linear infinite;
}

@keyframes loader {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
		border: 4px solid #f44336;
		border-left-color: transparent;
	}

	50% {
		-webkit-transform: rotate(180deg);
		transform: rotate(180deg);
		border: 4px solid #673ab7;
		border-left-color: transparent;
	}

	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
		border: 4px solid #f44336;
		border-left-color: transparent;
	}
}

@-webkit-keyframes loader {
	0% {
		-webkit-transform: rotate(0deg);
		border: 4px solid #f44336;
		border-left-color: transparent;
	}

	50% {
		-webkit-transform: rotate(180deg);
		border: 4px solid #673ab7;
		border-left-color: transparent;
	}

	100% {
		-webkit-transform: rotate(360deg);
		border: 4px solid #f44336;
		border-left-color: transparent;
	}
}

/*---------------------
  Header
-----------------------*/
.header-top {
	border-bottom: 1px solid #e5e5e6;
	padding: 5px 0 10px 0
}

.top_menu {
	text-align: right;
}

.btn-allmenu {
	padding: 0 15px;
	height: 30px;
	line-height: 30px;
	text-align: center;
	display: inline-block;
}

	.btn-allmenu:after {
		content: '';
		width: 30px;
		height: 30px;
		display: inline-block;
		vertical-align: middle;
		background: #fff url('../images/common/menu.png') no-repeat 0px 0px;
		position: relative;
		margin-left: 5px
	}

.btn-login {
	padding: 0 10px;
	height: 33px;
	line-height: 33px;
	text-align: center;
	display: inline-block;
	letter-spacing: -0.05em;
	font-size: 1rem;
	color: #494949;
	font-weight: 500;
}


.btn-join {
	padding: 0 10px;
	height: 33px;
	line-height: 33px;
	text-align: center;
	display: inline-block;
	letter-spacing: -0.05em;
	font-size: 1rem;
	color: #494949;
	font-weight: 500;
}

	.btn-join:before {
		content: '';
		width: 20px;
		height: 20px;
		display: inline-block;
		vertical-align: middle;
		background: #fff url('../images/common/icon_1.png') no-repeat 0px 5px;
		position: relative;
	}

.btn-mypage {
	padding: 0 10px;
	height: 33px;
	line-height: 33px;
	text-align: center;
	display: inline-block;
	letter-spacing: -0.05em;
	font-size: 1rem;
	color: #494949;
	font-weight: 500;
}

	.btn-mypage:before {
		content: '';
		width: 20px;
		height: 20px;
		display: inline-block;
		vertical-align: middle;
		background: #fff url('../images/common/icon_1.png') no-repeat 0px 5px;
		position: relative;
	}


.header {
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 99;
	padding: 10px 0 0;
	background: #ffffff;
}

	.header.header-normal {
		position: relative;
		padding: 20px 0 20px;
	}

.header__logo a {
	display: inline-block;
	margin: 0px;
}



.header__menu {
	text-align: right;
	margin: 30px 0 10px 0;
}

	.header__menu ul li {
		list-style: none;
		display: inline-block;
		position: relative;
		margin-right: 65px;
		letter-spacing: -0.8px;
		color: #000;
	}

		.header__menu ul li.active a:after {
			-webkit-transform: scale(1);
			-ms-transform: scale(1);
			transform: scale(1);
		}

		.header__menu ul li:hover a:after {
			-webkit-transform: scale(1);
			-ms-transform: scale(1);
			transform: scale(1);
		}

		.header__menu ul li:hover .dropdown {
			top: 32px;
			opacity: 1;
			visibility: visible;
		}

		.header__menu ul li:last-child {
			margin-right: 0;
		}

		/*.header__menu ul li .dropdown {
	position: absolute;
	left: 0;
	top: 70px;
	width: 190px;
	background-color: rgba(255, 255, 255, 0.9);
	border-radius:0 0 10px 10px;
	text-align: left;
	padding: 5px 0;
	z-index: 9;
	opacity: 0;
	visibility: hidden;
	-webkit-transition: all, 0.3s;
	-o-transition: all, 0.3s;
	transition: all, 0.3s;
}*/

		.header__menu ul li .dropdown {
			position: absolute;
			left: 0;
			top: 70px;
			width: 190px;
			background-color: rgba(255, 255, 255, 0.9);
			border-radius: 0 0 10px 10px;
			text-align: left;
			padding: 5px 0;
			z-index: 9;
			display: none; /* opacity, visibility 대신 display 사용 */
			-webkit-transition: all, 0.3s;
			-o-transition: all, 0.3s;
			transition: all, 0.3s;
		}

			.header__menu ul li .dropdown li {
				display: block;
				margin-right: 0;
			}

				.header__menu ul li .dropdown li a {
					color: #000000;
					font-size: 0.938rem;
					font-weight: 400;
					padding: 8px 20px;
					text-transform: capitalize;
				}

					.header__menu ul li .dropdown li a:after {
						display: none;
					}
		/*.header__menu ul li .dropdown li a:hover {
	color: #1968cb;
}
*/
		.header__menu ul li:hover .dropdown {
			top: 32px;
			display: block;
		}

		.header__menu ul li a {
			font-size: 1.25rem;
			color: #000;
			display: block;
			font-weight: 500;
			padding: 5px 0;
			position: relative;
		}

			.header__menu ul li a:after {
				position: absolute;
				left: 0;
				bottom: 0;
				height: 2px;
				width: 100%;
				background: #84c85e;
				content: "";
				-webkit-transition: all, 0.4s;
				-o-transition: all, 0.4s;
				transition: all, 0.4s;
				-webkit-transform: scale(0);
				-ms-transform: scale(0);
				transform: scale(0);
			}

.header__widget {
	text-align: right;
}

	.header__widget span {
		font-size: 0.875rem;
		font-family: "Aldrich", sans-serif;
		color: #b7b7b7;
		display: block;
		margin-bottom: 10px;
	}

	.header__widget h4 {
		font-size: 1.375rem;
		color: #84c85e;
	}

.offcanvas-menu-wrapper {
	display: none;
}

.canvas__open {
	display: none;
}


/*---------------------
 웹접근성
-----------------------*/
#main-content:focus {
	outline: none; /* 필요한 경우 */
}

#main-content {
	scroll-margin-top: 100px; /* 헤더 높이만큼 여백 추가 */
}

/*---------------------
  Hero
-----------------------*/

.hero {
	position: relative;
}

.hero__items {
	margin-top: 160px;
	height: 650px;
	padding: 0 40px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.hero__text {
	max-width: 820px;
	text-align: center;
	margin: 50% 0;
}


	.hero__text p.txt2 {
		color: #ffffff;
		font-size: 3.438rem;
		font-weight: 700;
		line-height: 70px;
		text-transform: uppercase;
		position: relative;
		top: 100px;
		opacity: 0;
		-webkit-transition: all, 0.5s;
		-o-transition: all, 0.5s;
		transition: all, 0.5s;
		letter-spacing: -1px;
	}

	.hero__text p.txt3 {
		color: #ffffff;
		font-size: 2.188rem;
		line-height: 40px;
		text-transform: uppercase;
		position: relative;
		top: 100px;
		opacity: 0;
		-webkit-transition: all, 0.3s;
		-o-transition: all, 0.3s;
		transition: all, 0.3s;
		letter-spacing: -1px;
	}




.hero__slider.owl-carousel .owl-item.active .hero__text p.txt2 {
	top: 0;
	opacity: 1;
}

.hero__slider.owl-carousel .owl-item.active .hero__text p.txt3 {
	top: 0;
	opacity: 1;
}

.hero__slider.owl-carousel .owl-dots {
	display: none;
}

.hero__slider.owl-carousel .owl-nav button {
	font-size: 1.750rem;
	color: #ffffff;
	position: absolute;
	left: 145px;
	top: 60%;
	display: inline-block;
	height: 50px;
	width: 50px;
	margin-top: -25px;
}

	.hero__slider.owl-carousel .owl-nav button.owl-next {
		left: auto;
		right: 145px;
	}

	.hero__slider.owl-carousel .owl-nav button:before {
		position: absolute;
		left: 0;
		bottom: 0;
		height: 20px;
		width: 20px;
		border-left: 2px solid rgba(255, 255, 255, 0.2);
		border-bottom: 2px solid rgba(255, 255, 255, 0.2);
		content: "";
		border-radius: 0 0 0 4px;
		-webkit-transition: all, 0.5s;
		-o-transition: all, 0.5s;
		transition: all, 0.5s;
	}

	.hero__slider.owl-carousel .owl-nav button:after {
		position: absolute;
		right: 0;
		top: 0;
		height: 20px;
		width: 20px;
		border-right: 2px solid rgba(255, 255, 255, 0.2);
		border-top: 2px solid rgba(255, 255, 255, 0.2);
		content: "";
		border-radius: 0 4px 0 0;
		-webkit-transition: all, 0.5s;
		-o-transition: all, 0.5s;
		transition: all, 0.5s;
	}

	.hero__slider.owl-carousel .owl-nav button:hover:before {
		height: 100%;
		width: 100%;
		border-radius: 4px;
	}

	.hero__slider.owl-carousel .owl-nav button:hover:after {
		height: 100%;
		width: 100%;
		border-radius: 4px;
	}

.slide-num {
	position: absolute;
	left: 145px;
	bottom: 55px;
	z-index: 9;
}

	.slide-num span {
		color: #ffffff;
		font-weight: 600;
		margin-right: 140px;
	}

		.slide-num span:last-child {
			margin-right: 0;
		}

.slider__progress {
	width: 100px;
	height: 1px;
	background: rgba(255, 255, 255, 0.3);
	position: absolute;
	left: 180px;
	bottom: 67px;
	z-index: 9;
}

	.slider__progress span {
		background: #ffffff;
		height: 2px;
		display: block;
		-webkit-transition: all, 0.4s;
		-o-transition: all, 0.4s;
		transition: all, 0.4s;
		position: relative;
		top: -1px;
	}



/*---------------------
  testimonials Slider
-----------------------*/



.testimonials {
	background-color: #fff;
	position: relative;
	padding-top: 80px;
}

#customers-testimonials {
	padding: 0 90px
}

.testimonials .owl-carousel .owl-nav [class*='owl-'] {
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}

	.testimonials .owl-carousel .owl-nav [class*='owl-'].disabled:hover {
		background-color: #D6D6D6;
	}

.testimonials .owl-carousel {
	position: relative;
}

	.testimonials .owl-carousel .owl-next,
	.testimonials .owl-carousel .owl-prev {
		width: 50px;
		height: 50px;
		line-height: 50px;
		border-radius: 50%;
		position: absolute;
		top: 40%;
		font-size: 1.250rem;
		color: #fff;
		border: 1px solid #ddd;
		text-align: center;
	}

		.testimonials .owl-carousel .owl-next i,
		.testimonials .owl-carousel .owl-prev i {
			font-size: 1.750rem;
			color: #7e7e7e;
			width: 50px;
			height: 50px;
			line-height: 45px;
			border-radius: 50%;
			border: 1px solid #ddd;
			background: rgba(255, 255, 255, 0.7);
		}


	.testimonials .owl-carousel .owl-prev {
		left: 0px;
	}

	.testimonials .owl-carousel .owl-next {
		right: 0px;
	}





/*---------------------
  link
-----------------------*/

.link_banner {
	position: relative;
	width: 100%;
}

	.link_banner li {
		position: relative;
		float: left;
		text-align: center;
		width: 16.6%
	}

		.link_banner li p {
			font-size: 0.938rem;
			font-weight: 600;
			color: #000000;
			margin-top: 5px;
			letter-spacing: -1px;
		}




/*---------------------
  Latest
-----------------------*/

.latest {
	position: relative;
	background: #f3f3f3;
}

	.latest.gellery {
		background: #ffffff;
		margin-bottom: 50px;
		margin-top: -20px;
	}

.latest__btn {
	text-align: right;
}

.latest__item {
	border: 1px solid #dddddd;
	background: #ffffff;
	margin: 30px 0;
	cursor: pointer;
}

.latest__item__text a {
	display: block;
}

.latest__item.active {
	border: 1px solid #80d200;
}


.latest.gellery .latest__item {
	border: 1px solid #dddddd;
	margin-bottom: 30px;
	box-shadow: 0px 0px 5px 2px #e7e7e7;
}

.latest__item:hover a {
	padding-left: 0;
}

	.latest__item:hover a:after {
		left: auto;
		right: -50px;
	}

.latest__item__pic {
}

	.latest__item__pic img {
		width: 100%;
		height: 185px;
	}

.latest__item__text {
	padding: 20px 20px 20px 20px;
}

	.latest__item__text span {
		color: #fff;
		background: #1968cb;
		font-size: 0.875rem;
		font-weight: 400;
		padding: 2px 10px;
		text-transform: uppercase;
		margin-bottom: 20px;
		border-radius: 20px;
	}

	.latest__item__text h4 {
		color: #000000;
		font-size: 1.250rem;
		font-weight: 500;
		line-height: 20px;
		margin-top: 10px;
		height: 30px;
	}





	.latest__item__text h5 {
		color: #000000;
		font-weight: 500;
		line-height: 20px;
		margin-top: 10px;
	}


	.latest__item__text p {
		color: #525252;
		font-size: 0.938rem;
		line-height: 25px;
		padding: 5px 0;
		overflow: hidden;
		text-overflow: ellipsis;
		display: -webkit-box;
		-webkit-line-clamp: 1;
		-webkit-box-orient: vertical;
	}

.latest.gellery .latest__item .latest__item__text {
	background: #ffffff;
	padding: 10px 20px;
}

	.latest.gellery .latest__item .latest__item__text p {
		color: #8f8f8f;
		font-size: 0.875rem;
		font-weight: 400;
		line-height: 20px;
		padding-top: 0px;
	}


.latest.gellery .latest__item__text h5 {
	color: #000000;
	font-weight: 500;
	line-height: 20px;
	margin-top: 10px;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}



/**sangjuinfo***/

.latest.sangjuinfo {
	background: #ffffff;
}

	.latest.sangjuinfo .section-title {
		text-align: center;
		margin-bottom: 10px
	}

	.latest.sangjuinfo .titlecenter {
		color: #010101;
		font-size: 2.5rem;
		font-weight: 600;
	}


.sangjuinfo .sangjuinfo__item {
	padding: 40px 35px;
	letter-spacing: -1px;
	min-height: 320px;
	height: 320px;
}

	.sangjuinfo .sangjuinfo__item a {
		display: block;
	}

	.sangjuinfo .sangjuinfo__item.b01 {
		background: #33a495;
	}

	.sangjuinfo .sangjuinfo__item.b02 {
		background: #3385a4;
	}

	.sangjuinfo .sangjuinfo__item.b03 {
		background: #9f33a4;
	}

	.sangjuinfo .sangjuinfo__item.b04 {
		background: #a46033;
	}

	.sangjuinfo .sangjuinfo__item h4 {
		color: #fff;
		font-size: 2rem;
		font-weight: 600;
		line-height: 20px;
		margin-top: 30px;
	}

	.sangjuinfo .sangjuinfo__item h5 {
		color: #fff;
		font-size: 2rem;
		font-weight: 300;
		line-height: 25px;
		padding-top: 15px;
	}

		.sangjuinfo .sangjuinfo__item h5:after {
			content: '';
			width: 25px;
			height: 25px;
			display: inline-block;
			vertical-align: middle;
			background: url('../images/common/arrow-right.png') no-repeat 0px 0px;
			position: relative;
			margin-left: 5px;
			color: #fff
		}




	.sangjuinfo .sangjuinfo__item span {
		position: relative;
		display: block;
		color: #fff;
		font-size: 0.938rem;
		letter-spacing: 0px;
		padding-top: 70px
	}






/*---------------------
 notice
-----------------------*/

.notice {
	margin: 20px 0 70px 0
}

	.notice .notice__item {
		border: 1px solid #dddddd;
		padding: 20px;
		letter-spacing: -1px;
		min-height: 196px;
	}

		.notice .notice__item h4 {
			color: #000000;
			font-size: 1.25rem;
			font-weight: 500;
			line-height: 20px;
			margin-top: 10px;
		}

		.notice .notice__item p {
			color: #525252;
			font-weight: 400;
			line-height: 25px;
			padding-top: 20px;
			overflow: hidden;
			text-overflow: ellipsis;
			display: -webkit-box;
			-webkit-line-clamp: 2;
			-webkit-box-orient: vertical;
		}

		.notice .notice__item span {
			position: relative;
			display: block;
			color: #8f8f8f;
			font-size: 0.875rem;
			letter-spacing: 0px;
			padding-top: 20px
		}

	.notice .online__item {
		border: 1px solid #dddddd;
		padding: 20px 20px 22px 20px;
		background: #f8efe6;
		cursor: pointer;
		position: relative;
		width: 100%;
	}

		.notice .online__item span {
			color: #6e4840;
			font-size: 1.375rem;
			font-weight: 600;
			text-transform: uppercase;
			letter-spacing: 1px;
			background-image: linear-gradient(to top, #f9c98a 50%, transparent 50%);
		}

		.notice .online__item p {
			margin-top: 20px;
			font-size: 1.125rem;
			line-height: 24px;
			font-weight: 100;
			color: #080808;
			letter-spacing: -0.6px;
		}

		.notice .online__item img {
			position: absolute;
			right: 30px;
			top: 30%
		}






/*---------------------
 footer
-----------------------*/


.footer {
	background: #f5f5f5;
	border-top: 1px solid #d0d0d0;
}

	.footer ul {
		padding: 0px 0;
		margin-bottom: 5px
	}

		.footer ul li {
			position: relative;
			float: left;
			padding: 10px 15px;
			font-size: 1.063rem;
			font-weight: 500;
		}

			.footer ul li.policy a {
				color: #0064c8;
			}

			.footer ul li:first-child {
				padding-left: 0;
			}

			.footer ul li:before {
				content: '';
				position: absolute;
				top: 50%;
				left: 0;
				display: block;
				width: 1px;
				height: 14px;
				margin-top: -6px;
				background: #757575;
			}

			.footer ul li:first-child:before {
				display: none;
			}



	.footer p.add {
		padding-left: 55px;
		font-size: 1.125rem;
		font-weight: 400;
		color: #3e3e3e
	}

	.footer p.txttel {
		padding-left: 10px;
		font-size: 1rem;
		font-weight: 400;
		color: #3e3e3e
	}

	.footer .footer-txt {
		padding-left: 55px;
		margin-top: 20px
	}

	.footer .tel {
		margin-top: 100px;
		position: relative;
	}

		.footer .tel p {
			position: absolute;
			left: 70px;
			top: -10px;
			color: #3e3e3e;
			font-size: 1.125rem;
			font-weight: 400;
		}

			.footer .tel p span {
				font-size: 1.375rem;
				font-weight: 600;
			}

	.footer .link-item {
		border-bottom: 1px solid #d0d0d0;
		padding-bottom: 30px;
		margin-bottom: 40px
	}

		.footer .link-item .bannerlink-item {
			width: 100%;
			text-align: center;
			vertical-align: middle;
			background: #ffffff;
			border: 1px solid #dddddd;
			margin-bottom: 4px
		}






/*** 서브 ***/

.page-header {
	margin-top: 170px;
	background: linear-gradient(rgba(24, 29, 56, .9), rgba(24, 29, 56, .5)), url(../images/sub/carousel-1.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.page-header-inner {
	background: rgba(15, 23, 43, .7);
}


.page-header .page__text {
	max-width: 820px;
	text-align: center;
}

	.page-header .page__text h1 {
		color: #ffffff;
		font-size: 2.500rem;
		font-weight: 600;
		position: relative;
		letter-spacing: -1px;
	}

	.page-header .page__text p {
		color: #ffffff;
		font-size: 1.125rem;
		font-weight: 400;
		position: relative;
		letter-spacing: -1px;
	}


/*snb*/
.snb {
	margin-top: -60px;
}

.snb_wrap {
	position: relative;
	width: 100%;
	margin: 0 auto;
	height: 70px;
	padding: 0 0px
}

.snb ul li {
	float: left;
	position: relative;
	margin-left: 20px;
	padding: 23px 0 16px
}

	.snb ul li a {
		display: block;
		line-height: 30px;
		padding-right: 42px;
		color: #000;
		font-size: 1.125rem;
		font-weight: 400;
		letter-spacing: -1px;
		background: url(../images/common/btn_nav_select01.gif) no-repeat right 2px top 50%
	}

	.snb ul li.sDep2 a.on {
		color: #1968cb
	}

	.snb ul li.home {
		margin: 0;
		padding: 0;
		background: #1968cb
	}

		.snb ul li.home a {
			width: 60px;
			height: 60px;
			text-indent: -9999px;
			background: #1968cb url(../images/common/icon_home.png) no-repeat center 52%;
			border-radius: 20px 0 0 0
		}

	.snb ul li ul {
		display: none;
		position: absolute;
		border: 1px solid #e5e5e5;
		z-index: 10;
		left: -20px;
		top: 70px;
		padding: 14px 25px;
		background-color: #fff
	}

	.snb ul li li {
		float: none;
		border-left: 0;
		padding: 0;
		margin: 0;
		white-space: nowrap
	}

	.snb ul li ul.sDep2_drop li {
		padding: 0;
		margin: 0
	}

	.snb ul li li a {
		height: 35px;
		line-height: 35px;
		font-size: 0.938rem;
		color: #555;
		padding: 0;
		background: none;
		font-weight: 400 !important;
	}

		.snb ul li li a.on {
			color: #1968cb
		}

	.snb ul li li:last-child {
		border-right: 0;
	}


.sub_container {
	position: relative;
	margin: 0px 0 80px 0
}

	.sub_container .title_box {
		text-align: center;
		display: block;
		margin-bottom: 50px;
	}

		.sub_container .title_box span {
			padding: 0;
			font-size: 2.000rem;
			font-weight: 600;
			color: #242424;
			text-transform: uppercase;
			letter-spacing: 1px;
			letter-spacing: -1px;
		}

	.sub_container .sub_content {
		padding-top: 0px;
		min-height: 400px
	}




.icon_tit {
	position: relative;
	font-size: 1.500rem;
	font-weight: 700;
	color: #111;
	padding-left: 28px;
	margin: 40px 0 20px 0;
}

	.icon_tit::after {
		content: "";
		position: absolute;
		top: 10px;
		left: 0;
		width: 20px;
		height: 20px;
		border-radius: 50%;
		border: 5px solid #1968cb;
		box-sizing: border-box;
	}





/*테이블*/

.table_defult table {
	width: 100%;
	position: relative;
	border-collapse: collapse;
	border-top: 1px solid #293f50;
	border-right: 1px solid #c5c9d6;
}

.table_defult thead th {
	vertical-align: middle;
	font-weight: 600;
	text-align: center;
	color: #10293b;
	background: #f0f2f6;
	padding: 15px 0;
	border-bottom: 1px solid #c5c9d6;
	border-left: 1px solid #c5c9d6;
}

.table_defult tbody th {
	font-weight: 400;
	color: #333 !important;
	background: #f0f2f6 !important;
}

.table_defult tbody td {
	padding: 15px 10px;
	color: #555555;
	text-align: center;
	border-bottom: 1px solid #c5c9d6;
	border-left: 1px solid #c5c9d6;
}

	.table_defult tbody td.lft {
		text-align: left;
	}

.table_defult tr.odd {
	background: #f5f5f5;
}

/* 짝수 줄컬러 
.table_defult tr:nth-of-type(even) { 
  background: #f5f5f5; 
}
*/
/* 홀수 줄컬러
.table_defult tr:nth-of-type(odd) { 
  background: #f5f5f5; 
}
 */
.table_box table {
	width: 100%;
	border-top: 2px solid #666666;
	border-collapse: collapse;
	table-layout: fixed;
}

.table_box thead > tr {
	background: #f9f9f9;
}

	.table_box thead > tr > th {
		font-weight: 500;
		text-align: center;
		color: #111;
		border-bottom: 1px solid #808080;
		border-right: 1px solid #dddddd;
		background: #f9f9f9;
		padding: 15px 0;
	}

.table_box td {
	border-bottom: 1px solid #dddddd;
	border-right: 1px solid #dddddd;
	text-align: center;
	padding: 15px 5px;
	word-wrap: break-word
}

	.table_box td.lft {
		text-align: left;
		padding-left: 20px
	}

	.table_box td:last-of-type {
		border-left: 1px solid #dddddd;
	}

	.table_box td.leftba {
		border-left: 1px solid #dddddd;
	}

	.table_box td.c {
		color: #787878;
	}

.table_box tr:last-of-type td {
	border-bottom: 1px solid #808080;
}

.table_box td:last-of-type,
.table_box th:last-of-type {
	border-right: none;
}

.table_box tr.odd {
	background: #fafafa;
}


.table_box.ver2 td {
	border-bottom: 1px solid #dddddd;
	border-right: 1px solid #dddddd;
	text-align: center;
	padding: 15px 5px;
	word-wrap: break-word
}

.table_box.ver2 tbody th {
	font-weight: 500;
	text-align: center;
	color: #111;
	background: #f9f9f9;
	border-right: 1px solid #dddddd;
	border-bottom: 1px solid #dddddd;
}

.table_box.ver2 tr:last-of-type td {
	border-bottom: 1px solid #dddddd;
}

.table_box.ver2 tr td:last-of-type {
	border-right: none;
}

.table_box.ver2 td.lft {
	text-align: left;
	padding-left: 20px
}


/*인사말*/

.greeting {
	margin-top: 30px
}

	.greeting .txt {
		position: relative;
		padding: 0px 80px 0;
	}

		.greeting .txt h3 {
			font-weight: 500;
			font-size: 1.500rem;
			color: #467b31;
			line-height: 1.3;
			margin-bottom: 46px;
		}

		.greeting .txt h4 {
			font-weight: 700;
			font-size: 1.875rem;
			color: #0072bc;
			line-height: 1.3;
		}

		.greeting .txt p {
			font-size: 1.125rem;
			color: #111;
			line-height: 1.8;
			margin-bottom: 40px;
		}


	.greeting .sign {
		flex-shrink: 0;
		padding: 10px;
		text-align: center;
	}

		.greeting .sign figure:first-child {
			width: 398px;
		}

		.greeting .sign .sign_in {
			font-weight: 500;
			font-size: 1.500rem;
			margin-top: 50px;
		}



.graybox {
	width: 100%;
	border: 6px solid #f1f0e7;
	background: #fff;
	padding: 30px;
	border-radius: 10px;
}

	.graybox.ver2 {
		border: 1px solid #ddd;
		background: #f9f9f9;
		padding: 10px;
		border-radius: 0px;
	}

.linebox {
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	padding: 10px 10px 10px 20px;
}

.txtlist > ul > li {
	padding: 3px 0 3px 20px;
	position: relative;
}

	.txtlist > ul > li span {
		color: #36617d;
		font-weight: 500;
	}

		.txtlist > ul > li span.fred {
			color: #dc0000;
			font-weight: 300;
		}

		.txtlist > ul > li span.fblue {
			color: #002cab;
			font-weight: 300;
		}

	.txtlist > ul > li:before {
		content: "";
		display: inline-block;
		width: 3px;
		height: 3px;
		background: #506046;
		border-radius: 50%;
		position: absolute;
		top: 15px;
		left: 10px;
	}

	.txtlist > ul > li.btnno:before {
		content: "";
		display: inline-block;
		width: 0px;
		height: 0px;
		background: #1968cb;
		border-radius: 50%;
		vertical-align: middle;
		margin-right: 0px;
	}

	.txtlist > ul > li ol {
		padding-left: 5px;
		line-height: 1.7;
		font-size: 0.938em
	}

	.txtlist > ul > li > ul.commu {
		position: relative;
		display: inline-block;
		width: 100%;
	}

		.txtlist > ul > li > ul.commu > li {
			float: left;
			width: 20%;
			padding: 20px;
		}

			.txtlist > ul > li > ul.commu > li h3 {
				font-size: 1.125rem;
				font-weight: 600;
				text-align: center;
				vertical-align: middle;
				border: 10px solid #f8df89;
				background: #fff;
				border-radius: 50px;
				line-height: 80px;
				height: 100px
			}

			.txtlist > ul > li > ul.commu > li:before {
				font-size: 20px;
				width: 30px;
				height: 30px;
				display: inline-block;
				vertical-align: middle;
				position: relative;
				font-family: "FontAwesome";
				content: '\f054';
				font-weight: 600;
				top: 60px;
				left: -25px
			}

			.txtlist > ul > li > ul.commu > li:first-child:before {
				font-size: 0px;
			}

/*programinfo*/



#programinfo {
	margin-top: 40px
}

	#programinfo .nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active {
		color: #ffffff !important;
		background-color: #1968cb !important;
		border-color: transparent transparent #1968cb;
		font-weight: 700;
	}

	#programinfo .nav-tabs .nav-link {
		height: 60px;
		vertical-align: middle;
		line-height: 40px;
		border: 1px solid transparent;
		color: #eee;
		font-weight: 400;
		background-color: #fff;
		border: 1px solid #dddddd;
		color: #393939;
		border-radius: 0 !important;
	}

.nav-item {
	width: 25%;
	text-align: center;
}

	.nav-item.ver2 {
		width: 33.3%;
		text-align: center;
	}

	.nav-item.ver3 {
		width: 50%;
		text-align: center;
	}

	.nav-item.ver4 {
		width: 20%;
		text-align: center;
	}

.nav-tabs .nav-link.active {
	background-color: #1968cb !important;
}


.width50pro {
	width: 40%;
}


/* company-history */

/* animation */
.subtitle-box .subTit {
	animation: blur_txt 1.8s 0.3s;
	animation-fill-mode: both;
}

.subTopTitle {
	text-align: center;
}

	.subTopTitle .tit-1 {
		color: #111;
		font-size: 2.188em;
		font-weight: 700;
		line-height: 1.2;
	}

	.subTopTitle .txt {
		margin-top: 30px;
	}

.company-history .inner1600 {
	display: flex;
	flex-wrap: wrap;
}

.company-history .year-box {
	width: 380px;
	position: sticky;
	top: 100px;
	max-height: 680px;
	z-index: 2;
}

	.company-history .year-box .subTopTitle {
		text-align: left;
	}

	.company-history .year-box .historyimg img {
		margin-top: 30px;
		border-radius: 20px;
	}

.company-history .history-list {
	width: calc(100% - 380px);
}

.company-history .history-list {
	position: relative;
	margin-top: 0px;
}

	.company-history .history-list:before {
		content: "";
		display: block;
		position: absolute;
		top: 20px;
		left: 0;
		width: 3px;
		height: calc(100% - 200px);
		border-left: 1px dashed #d6d6d6;
	}

	.company-history .history-list > ul:not(:last-child),
	.company-history .history-list > ul > li:not(:last-child) {
		margin-bottom: 80px;
	}

	.company-history .history-list > ul > li {
		position: relative;
		padding-left: 54px;
	}

		.company-history .history-list > ul > li:before {
			content: "";
			display: block;
			position: absolute;
			top: 20px;
			left: -4px;
			width: 9px;
			height: 9px;
			background: #d6d6d6;
			border-radius: 10px;
		}

		.company-history .history-list > ul > li.effect:before {
			background: #01488a;
		}

		.company-history .history-list > ul > li > ul > li {
			position: relative;
			display: block;
			font-size: 1.125rem;
			color: #333;
			font-weight: 300;
			line-height: 1.8;
			padding-left: 15px
		}

			.company-history .history-list > ul > li > ul > li strong {
				color: #01488a;
				font-weight: 600;
				letter-spacing: -0.02em;
				padding-right: 30px
			}

				.company-history .history-list > ul > li > ul > li strong:before {
					content: "";
					display: block;
					position: absolute;
					top: 15px;
					left: 3px;
					width: 3px;
					height: 3px;
					background: #6182ab;
					border-radius: 10px;
				}


	.company-history .history-list h3 {
		position: relative;
		display: block;
		color: #111;
		font-size: 2.188em;
		font-weight: 600;
		margin-bottom: 20px;
		color: #1968cb
	}



.bbsSearch {
	margin-bottom: 20px;
	margin-bottom: 40px;
	padding: 30px 10px;
	background: #f6f6f6;
	text-align: center;
}

	.bbsSearch input {
		margin-right: 5px
	}

	.bbsSearch .search_btn {
		height: 43px;
		padding: 0 20px;
		display: inline-block;
		text-align: center;
		font-size: 14px;
		font-weight: 400;
		line-height: 40px;
		color: #fff;
		background-color: #4f4f4f;
		border-radius: 5px;
	}


.infotel li {
	position: relative;
	display: block;
	font-size: 1.125rem;
	color: #000;
	font-weight: 300;
	line-height: 1.8;
	padding-left: 15px
}

.infotel strong.icon {
	color: #01488a;
	font-weight: 600;
	letter-spacing: -0.02em;
	padding-right: 30px
}

	.infotel strong.icon:before {
		content: "";
		display: block;
		position: absolute;
		top: 15px;
		left: 3px;
		width: 3px;
		height: 3px;
		background: #6182ab;
		border-radius: 10px;
	}


/*테이블*/

.default_table table {
	width: 100%;
	border-collapse: collapse;
	border-top: 2px solid #1968cb;
	table-layout: fixed;
}
	/*.default_table table caption{display:none}*/
	.default_table table tbody tr:hover {
		background: #fafafa;
	}

	.default_table table thead th {
		padding: 15px 10px;
		text-align: center;
		border-bottom: 1px solid #e9eaee;
		font-weight: 500;
		vertical-align: middle;
		position: relative;
	}

	.default_table table thead td.layer_title {
		padding: 15px 10px;
		text-align: center;
		border-bottom: 1px solid #e9eaee;
		font-weight: 500;
		vertical-align: middle;
		position: relative;
	}

	.default_table table tbody td {
		vertical-align: middle;
		padding: 20px 10px;
		text-align: center;
		border-bottom: 1px solid #e9eaee;
		font-weight: 300;
		letter-spacing: 0px;
	}

		.default_table table tbody td a {
			color: #000;
		}

			.default_table table tbody td a:hover {
				color: #163575;
			}

		.default_table table tbody td.subject {
			text-align: left;
			white-space: nowrap;
			overflow: hidden;
			text-overflow: ellipsis;
		}

			.default_table table tbody td.subject .new {
				position: relative;
				display: inline-block;
				width: 30px;
				top: -1px;
				height: 15px;
				margin: 0 4px;
				background: url(../images/common/ic_new.gif) no-repeat 50% 50%;
				text-indent: -9999em;
				vertical-align: middle;
			}

			.default_table table tbody td.subject .reply {
				display: inline-block;
				position: relative;
				left: -2px;
				padding: 0 0 0 30px;
				background: url(../images/common/ico_reply.png) no-repeat 10px 15px;
				text-indent: -9999em;
				overflow: hidden;
				width: 1px;
			}

			.default_table table tbody td.subject .reply2 {
				display: inline-block;
				position: relative;
				left: 10px;
				padding: 0 0 0 45px;
				background: url(../images/common/ico_reply.png) no-repeat 10px 15px;
				text-indent: -9999em;
				overflow: hidden;
				width: 1px;
			}

			.default_table table tbody td.subject .list_reply {
				color: #aa6801
			}




.accordion {
	width: 100%;
}

.accordion-item {
	background-color: #fff;
	border: 0px solid rgba(0,0,0,0.125);
}


.accordion-button {
	font-size: 1rem;
	background-color: #fff;
	color: #000000;
	border-top: 0px solid #ff0000;
	border-bottom: 1px solid #d7d7d7;
	border-radius: 0;
	padding: 10px;
}

	.accordion-button::after {
		flex-shrink: 0;
		width: 1.25rem;
		height: 1rem;
	}

	.accordion-button .Q {
		color: #afb9d2;
		font-weight: 600;
		font-size: 1.2rem;
		padding: 10px
	}

.accordionsub .A {
	color: #afb9d2;
	font-weight: 600;
	font-size: 1.2rem;
	padding: 10px 10px 10px 15px
}

.accordionsub {
	background-color: #f2f6ff;
}

.accordion-button.guide {
	border: 1px solid #eee;
	padding: 12px 20px;
	margin: 15px 0;
	color: #595959;
	line-height: 30px;
}

	.accordion-button.guide h6 {
		color: #3b4553;
		font-weight: 600;
		font-size: 16px
	}

.accordion-body.guide h6 {
	color: #3b4553;
	font-weight: 600;
	font-size: 16px
}

.accordion-body.guide .list {
	font-size: 14px
}


.accordion-button:focus {
	z-index: 3;
	border-color: #ffffff;
	outline: 0;
	box-shadow: 0 0 0 .25rem rgba(6,187,204,0.25)
}

.accordion-button:not(.collapsed) {
	color: #05a8b8;
	background-color: #ffffff;
	box-shadow: inset 0 -1px 0 rgba(0,0,0,0.125)
}

.accordion-body {
	background-color: #f8f8f8;
}




/*페이지 링크 */

/* pagination */
.pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 60px;
}

	.pagination a {
		display: flex;
		flex-flow: row wrap;
		justify-content: center;
		align-items: center;
		width: 35px;
		height: 35px;
		position: relative;
		color: #939393;
		font-size: 16px;
		transition: all 0.3s ease 0s;
		opacity: 1;
	}

	.pagination ol {
		display: flex;
		align-items: center;
	}

		.pagination ol li {
			margin: 0 3px;
		}

			.pagination ol li.on a {
				font-weight: 600;
				color: #222;
			}

			.pagination ol li:not(.on) a:hover {
				opacity: 0.7;
			}

	.pagination div[class^="page_control"] a {
		margin: 0 3px;
		border: 1px solid #ddd;
		font-size: 0;
	}

		.pagination div[class^="page_control"] a:hover {
			border-color: #b7b7b7;
		}

	.pagination div[class^="page_control"] {
		display: flex;
		flex-flow: row wrap;
		align-items: center;
		margin: 0 9px;
		justify-content: center;
		align-content: center;
		flex-wrap: nowrap;
	}

	.pagination .btn_pager::after {
		content: "";
		width: 100%;
		height: 100%;
		position: absolute;
		left: 0;
		top: 0;
		background: url(../images/common/icon_page_next.png) no-repeat 52% 50%;
		opacity: 0.7;
	}

	.pagination .btn_pager.prev::after {
		background-position: 50% 50%;
	}

	.pagination .btn_pager.prev::after, .pagination .btn_end.first::after {
		transform: rotate(180deg);
		-webkit-transform: rotate(180deg);
	}

	.pagination .btn_end::after {
		content: "";
		width: 100%;
		height: 100%;
		position: absolute;
		left: 0;
		top: 0;
		background: url(../images/common/icon_page_next_last.png) no-repeat 52% 50%;
		opacity: 0.7;
	}





/*** Button ***/

.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
	margin-left: -1px;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}



.btn2 {
	display: inline-block;
	font-weight: 400;
	line-height: 1.5;
	text-align: center;
	vertical-align: middle;
	cursor: pointer;
	user-select: none;
	background-color: transparent;
	border: 1px solid transparent;
	padding: .375rem 1.75rem;
	font-size: 0.8rem;
	border-radius: 1.078em;
	transition: color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out
}


.btn .h6 {
	color: #FFFFFF;
}

.btn.btn-primary,
.btn.btn-secondary {
	color: #FFFFFF;
}

.btn-gray {
	color: #000;
	background-color: #ededed;
	border-color: #d3d3d3
}

	.btn-gray:hover {
		color: #fff;
		background-color: #2bc5d4;
		border-color: #2bc5d4
	}

.btn-mi {
	height: 45px;
	background: #1968cb;
	font-size: 1rem;
	line-height: 32px;
	border-radius: 0.4em;
	border: 1px solid #1968cb;
}

	.btn-mi span {
		color: #ffffff;
	}

.btn-lg-square {
	width: 48px;
	height: 48px;
}


.btn-lg-square {
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: normal;
	border-radius: 0px;
}


.btn-blue {
	align-items: center;
	justify-content: center;
	font-weight: 500;
	color: #ffffff;
	background: #0850aa;
}

.btn-gray2 {
	align-items: center;
	justify-content: center;
	font-weight: 500;
	color: #ffffff;
	background: #434343;
}


.btndiv {
	position: relative;
	display: block;
	width: 100%;
	margin-bottom: 20px
}

.btn_green {
	padding: 5px 20px;
	background: #fff;
	color: #000;
	font-size: 0.938rem;
	line-height: 32px;
	border-radius: 6px;
	border: 1px solid #cacaca;
	margin-bottom: 20px
}


.sports-end {
	position: relative;
	display: block;
	color: #fff;
	background: #767676;
	border-radius: 20px;
	font-size: 0.875em;
	font-weight: 300;
	padding: 8px;
	width: 80px;
	text-align: center;
}

.sports-ing {
	position: relative;
	display: block;
	color: #fff;
	background: #267a6e;
	border-radius: 20px;
	font-size: 0.875em;
	font-weight: 300;
	padding: 8px;
	width: 80px;
	text-align: center;
}


/* view */

.boardview .bod_view {
	border-top: 2px solid #0951a7;
	border-bottom: 1px solid #ddd;
	padding: 25px 0px;
	background: #f2f6ff;
	text-align: center;
	font-size: 1.2rem;
	font-weight: 500;
}

.boardview .bod_view_day {
	position: relative;
	display: inline-block;
	border-top: 0px solid #0951a7;
	border-bottom: 1px solid #ddd;
	padding: 13px 0px 0px 0px;
	font-size: 0.938em;
	font-weight: 300;
}

	.boardview .bod_view_day span {
		position: absolute;
		right: 0;
		top: 13px
	}

.boardview .viewcontent {
	padding: 20px 10px;
	border-bottom: 1px solid #ddd;
	min-height: 200px;
	font-weight: 300;
	letter-spacing: 0px;
}


.boardwrite .form-group input, .boardwrite .form-group textarea, .join-section .form-group input, .join-section .form-group select {
	font-size: 0.938rem;
	font-weight: 300;
}

.bg-notice {
	background: #bbc6d6
}



.login-section {
	margin: 50px 0 50px 0;
	padding: 50px 50px
}

	.login-section .jointxt {
		margin-top: 20px;
		text-align: center;
		font-size: 1rem;
	}

.form-check-input:checked {
	background-color: #1968cb;
	border-color: #1968cb;
}

.txtarea {
	width: 100%;
	height: 250px;
	overflow: auto;
	background-color: #f0f0f0;
	border: 1px solid #ddd;
	padding: 15px;
	margin-top: 5px;
	font-weight: 300;
}




/* 전체메뉴 기본 세팅 */
.pk_popup_dimmed {
	display: none;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: black;
	z-index: 100;
	opacity: .7;
	z-index: 99999;
}

.pk_popup_wrapper {
	display: none;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 100;
	z-index: 999999;
}

	.pk_popup_wrapper .pk_popup_wrap {
		display: block;
		width: 100%;
		height: 100%;
	}

	.pk_popup_wrapper .pk_popup_container {
		display: block;
		width: 100%;
		height: 100%;
		text-align: center;
		vertical-align: middle;
		outline: 0 !important;
	}

	.pk_popup_wrapper .pk_popup_content {
		position: relative;
		float: left;
		margin-left: 50%;
		transform: translate(-50%,0px);
	}

	.pk_popup_wrapper .pk_popup-box {
		position: relative;
		background-color: #fff;
		border-radius: 15px;
	}

	.pk_popup_wrapper .pk_popup_close_wrap {
		z-index: 10;
		text-align: right;
	}

	/* 옵션 */
	/* 해당 pk_popup_content에 class를 추가하여 옵션을 설정한다. */

	/* 풀 팝업 .full_popup */
	.pk_popup_wrapper .full_popup.pk_popup_content {
		width: 100%;
		height: 100%;
		transform: translate(0,0);
		margin-left: 0;
		border: none;
	}

		.pk_popup_wrapper .full_popup.pk_popup_content .pk_popup-box {
			height: 100%;
		}

	/* 여백 고정 .padding_popup */
	.pk_popup_wrapper .padding_popup.pk_popup_content {
		position: relative;
		float: none;
		padding: 100px;
		transform: translate(0,0);
		margin-left: 0;
		border: none;
		background-color: transparent;
	}

	/* 상단 고정 top_popup */
	.pk_popup_wrapper .top_popup.pk_popup_container {
		vertical-align: top;
	}

	.pk_popup_wrapper .top_popup .pk_popup-box {
		min-width: 1300px;
		margin-top: 10px;
		height: 360px
	}

/* 디자인 */

.pk_popup_skin .pk_popup_close_wrap {
}

	.pk_popup_skin .pk_popup_close_wrap .pk_popup_close {
		text-decoration: none;
		color: #000;
	}

.pk_popup_skin .pk_popup_close_wrap {
	position: absolute;
	right: 10px;
	top: 10px;
}

.pk_popup_skin .pk_popup_header_wrap {
	position: relative;
	padding: 10px;
	border-bottom: 1px solid #e9ecef;
	font-weight: 500;
	color: #000;
}

.pk_popup_skin .pk_popup_body_wrap {
	padding: 20px;
}

	.pk_popup_skin .pk_popup_body_wrap > ul > li {
		float: left;
		text-align: left;
		padding: 0 30px;
	}

		.pk_popup_skin .pk_popup_body_wrap > ul > li > a {
			font-size: 1.063rem;
			font-weight: 600;
			color: #3f3f3f;
			text-transform: uppercase;
			letter-spacing: 1px;
			background-image: linear-gradient(to top, #abdeef 10%, transparent 10%);
		}

		.pk_popup_skin .pk_popup_body_wrap > ul > li > ul {
			margin-top: 10px
		}

			.pk_popup_skin .pk_popup_body_wrap > ul > li > ul > li {
				padding: 5px 0
			}

				.pk_popup_skin .pk_popup_body_wrap > ul > li > ul > li > a {
					font-size: 1.00rem;
					font-weight: 400;
				}


/* 
프로그램
*/
.sports-facilitiestb table {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px solid #1968cb;
}
/* Zebra striping */
.sports-facilitiestb tr:nth-of-type(odd) {
	background: #f5f5f5;
}

.sports-facilitiestb th {
	background: #fff;
	color: #1968cb;
	text-align: center;
	padding: 1em;
	border-bottom: 1px solid #dddddd;
}

.sports-facilitiestb td {
	padding: 0.8em;
	text-align: center;
	font-weight: 300;
	border-bottom: 1px solid #dddddd;
}

	.sports-facilitiestb td a, .sports-facilitiestb td a:hover {
		color: #333
	}

	.sports-facilitiestb td.lft {
		text-align: left;
	}



.program_table table {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px solid #e9eaee;
	table-layout: fixed;
}

	.program_table table caption {
		display: none
	}

	.program_table table tbody td.layer_title {
		padding: 1rem;
		font-weight: 500;
		text-align: left;
		color: #000000;
		border-bottom: 1px solid #e9eaee;
		vertical-align: middle;
		position: relative;
	}

	.program_table table tbody td {
		vertical-align: middle;
		padding: 20px 10px;
		text-align: left;
		border-bottom: 1px solid #e9eaee;
		font-weight: 300;
		letter-spacing: 0px;
	}

		.program_table table tbody td a {
			color: #000;
		}

			.program_table table tbody td a:hover {
				color: #163575;
			}

.program_table span.price {
	font-size: 1.3rem;
	font-weight: 600;
	color: #c70000
}

.program_table span.price_cancel {
	text-decoration: line-through;
}

.program_table .teacher_box {
	position: relative;
	display: inline-block;
	width: 100%;
	list-style: none;
	padding: 0;
	margin: 0
}

	.program_table .teacher_box li {
		float: left;
		list-style: none;
		padding-right: 20px
	}


.facilities {
	position: relative;
	display: inline-block;
	width: 100%;
	margin-top: 30px
}

	.facilities .txtlist {
	}



@media screen and (max-width:1024px) {
	.company-history .year-box .historyimg {
		display: none
	}

	.company-history .year-box {
		width: 400px;
	}

		.company-history .year-box .year_btn {
			margin-top: 45px;
		}

			.company-history .year-box .year_btn li {
				width: 160px;
			}

				.company-history .year-box .year_btn li a {
					height: 48px;
				}

	.company-history .history-list {
		width: calc(100% - 400px);
		margin-top: 45px;
	}

		.company-history .history-list:before {
			top: 15px;
		}

		.company-history .history-list > ul:not(:last-child),
		.company-history .history-list > ul > li:not(:last-child) {
			margin-bottom: 80px;
		}

		.company-history .history-list > ul > li {
			padding-left: 40px;
		}

			.company-history .history-list > ul > li:before {
				top: 13px;
			}

			.company-history .history-list > ul > li > dl > dt {
				width: 100px;
				font-size: 1.875rem;
			}

			.company-history .history-list > ul > li > dl > dd {
				width: calc(100% - 100px);
				padding-top: 2px;
			}

				.company-history .history-list > ul > li > dl > dd li:not(:last-child) {
					margin-bottom: 25px;
				}

	.section-title span.title_sub.pc {
		display: none
	}

	.section-title span.title_sub.mob {
		display: block;
	}

	.btn-login:before {
		content: '';
		width: 20px;
		height: 20px;
		display: inline-block;
		vertical-align: middle;
		background: #fff url('../images/common/icon_1.png') no-repeat 0px 5px;
		position: relative;
	}
}

@media screen and (max-width:960px) {
	.company-history .year-box .subTopTitle {
		text-align: center;
	}

		.company-history .year-box .subTopTitle .tit-1 br {
			display: none
		}

	.company-history .history-list:before {
		top: 15px;
		height: calc(100% - 210px);
	}

	.company-history .year-box {
		width: 100%;
		position: relative;
		top: 0;
	}

		.company-history .year-box .year_btn ul {
			display: flex;
			max-width: 500px;
			gap: 0 10px;
		}

			.company-history .year-box .year_btn ul li {
				width: cacl((100% - 20px) / 3);
			}

	.company-history .history-list {
		width: 100%;
		margin-top: 45px;
	}
}

@media screen and (max-width: 767px) {
	.company-history .history-list:before {
		top: 15px;
		height: calc(100% - 300px);
	}

	.company-history .history-list > ul:not(:last-child),
	.company-history .history-list > ul > li:not(:last-child) {
		margin-bottom: 50px;
	}

	.company-history .history-list > ul > li {
		padding-left: 15px;
	}

		.company-history .history-list > ul > li > dl > dt {
			width: 100%;
			font-size: 1.5rem;
		}

		.company-history .history-list > ul > li > dl > dd {
			width: 100%;
			padding-top: 20px;
		}

			.company-history .history-list > ul > li > dl > dd li:not(:last-child) {
				margin-bottom: 20px;
			}


			.company-history .history-list > ul > li > dl > dd li {
				position: relative;
				padding-left: 90px;
				font-size: 0.875rem;
				color: #333;
				font-weight: 300;
				line-height: 1.3;
			}

				.company-history .history-list > ul > li > dl > dd li strong {
					position: absolute;
					left: -10px;
					top: 0;
					width: 90px;
					text-align: right;
					display: inline-block;
					color: #01488a;
					font-weight: 600;
					letter-spacing: -0.02em;
				}

				.company-history .history-list > ul > li > dl > dd li.ver2 {
					position: relative;
					padding-left: 10px;
					font-size: 0.875rem;
					color: #333;
					font-weight: 300;
					line-height: 1.3;
				}

				.company-history .history-list > ul > li > dl > dd li strong.ver2 {
					position: absolute;
					left: 0;
					top: 0;
					width: 8px;
					text-align: right;
					display: inline-block;
					color: #01488a;
					font-weight: 600;
					letter-spacing: -0.02em;
				}
}





/*공간소개*/

.centerinfo {
	width: 100%;
	margin: auto;
	border: #fff solid 2px;
	background: #fff;
}

.main-img {
	width: 100%;
	border: 6px solid #f1f0e7;
	padding: 30px;
	text-align: center;
	margin-bottom: 30px;
}



.thumbnail-images {
	position: relative;
	width: 100%;
}

	.thumbnail-images li {
		float: left;
		width: 16.6%;
		text-align: center;
		padding: 0 1px
	}

		.thumbnail-images li p {
			font-size: 0.875rem;
			font-weight: 400;
			line-height: 1.3;
			padding: 5px 0 5px 0
		}

	.thumbnail-images .thumbnail-images__img {
		cursor: pointer;
	}

/* Fade in animation */
@keyframes fadeIn {
	to {
		opacity: 1;
	}
}

.fade-in {
	opacity: 0;
	animation: fadeIn var(--fade-time) ease-in 1 forwards;
}

/* Media Queries */
@media (max-width: 767px) {

	.main-img {
		padding: 10px;
	}

	.thumbnail-images li {
		float: left;
		width: 25%;
		text-align: center;
		height: 130px;
	}
}




/* 방과후아카데미 체계도*/
.org {
	text-align: center;
	margin: 0 auto;
	max-width: 1050px
}

	.org .imgfull img {
		width: 100%
	}

	.org .imgfull.pc {
	}

	.org .imgfull.m {
		display: none;
	}

	.org .org-txt li {
		float: left;
		width: 20%;
	}

		.org .org-txt li div {
			border: 2px solid #acacac;
			margin: 0 10px;
			text-align: left;
			padding: 20px;
			min-height: 220px
		}

			.org .org-txt li div h1 {
				text-align: center;
				margin-bottom: 20px
			}

				.org .org-txt li div h1 span {
					font-size: 1.250rem;
					font-weight: 500;
					color: #3f3f3f;
					text-transform: uppercase;
					letter-spacing: 1px;
					background-image: linear-gradient(to top, #abdeef 50%, transparent 50%);
				}

			.org .org-txt li div dd {
				font-size: 0.875rem;
				font-weight: 300;
				color: #666;
			}


@media (max-width: 991px) {
	.org .imgfull.m {
		display: flex
	}

	.org .imgfull.pc {
		display: none;
	}

	.org .org-txt li {
		float: left;
		width: 100%;
	}

		.org .org-txt li div {
			margin: 0 10px 10px 10px;
			padding: 10px 10px 20px 10px;
			min-height: 100px
		}
}



.photo-guide img {
	border: 1px solid #dddddd;
	background: #ffffff;
	border-radius: 10px;
	margin-bottom: 30px;
	overflow: hidden;
}






/*--------------------------------- Responsive Media Quaries -----------------------------*/

@media only screen and (min-width: 1200px) {
	.container {
		max-width: 1170px;
	}
}

@media only screen and (min-width: 1450px) {
	.container {
		max-width: 1400px;
	}

	.header {
		padding: 10px 0px;
	}

	.header__menu ul li {
		margin-right: 65px;
	}
}

/* Medium Device = 1200px */

@media only screen and (min-width: 992px) and (max-width: 1199px) {

	.header__menu ul li a {
		font-size: 0.938rem;
	}

	.header__menu ul li {
		margin-right: 25px;
	}

	.hero__slider.owl-carousel .owl-nav button {
		left: 15px;
	}

		.hero__slider.owl-carousel .owl-nav button.owl-next {
			right: 15px;
		}
}

/* Tablet Device = 768px */
@media only screen and (max-width: 991px) {






	.icon_tit {
		position: relative;
		font-size: 1.375rem;
		font-weight: 600;
		color: #111;
		padding-left: 18px;
		margin: 40px 0 10px 0;
	}

		.icon_tit::after {
			content: "";
			position: absolute;
			top: 8px;
			left: 0;
			width: 15px;
			height: 15px;
			border-radius: 50%;
			border: 5px solid #1968cb;
			box-sizing: border-box;
		}

		.icon_tit.ver2 {
			margin: 0px 0 10px 0;
		}



	#customers-testimonials {
		padding: 0 10px
	}



	.canvas__open {
		display: block;
		font-size: 1.375rem;
		color: #000;
		height: 35px;
		width: 35px;
		line-height: 35px;
		text-align: center;
		border: 1px solid #000;
		border-radius: 2px;
		cursor: pointer;
		position: absolute;
		right: 15px;
		top: 14px;
	}

	.offcanvas-menu-overlay {
		position: fixed;
		left: 0;
		top: -150px;
		height: 100%;
		width: 100%;
		background: rgba(0, 0, 0, 0.7);
		content: "";
		z-index: 989;
		-webkit-transition: all, 0.5s;
		-o-transition: all, 0.5s;
		transition: all, 0.5s;
		visibility: hidden;
	}

		.offcanvas-menu-overlay.active {
			visibility: visible;
		}

	.offcanvas-menu-wrapper {
		position: fixed;
		left: -300px;
		top: 0;
		width: 350px;
		height: 100%;
		background: #111111;
		padding: 60px 20px 30px 30px;
		display: block;
		z-index: 998;
		overflow-y: auto;
		-webkit-transition: all, 0.5s;
		-o-transition: all, 0.5s;
		transition: all, 0.5s;
		opacity: 0;
	}

		.offcanvas-menu-wrapper.active {
			opacity: 1;
			left: 0;
		}

	.offcanvas__logo {
		margin-bottom: 20px;
	}

		.offcanvas__logo a {
			display: inline-block;
		}

	.slicknav_btn {
		display: none;
	}

	.slicknav_menu {
		background: transparent;
		padding: 0;
		margin-bottom: 30px;
	}

	.slicknav_nav ul {
		margin: 0;
	}

	.slicknav_nav .slicknav_row {
		border-bottom: 1px solid #272727;
	}

	.slicknav_nav .slicknav_row,
	.slicknav_nav a {
		padding: 10px;
		margin: 0;
		color: #ffffff;
		font-weight: 500;
	}

	.slicknav_nav ul li .dropdown {
		background: #222222;
	}

		.slicknav_nav ul li .dropdown li a {
			font-size: 0.875rem;
			color: #fff;
			font-weight: 400;
			padding: 8px 20px;
			text-transform: capitalize;
		}


	.slicknav_nav .slicknav_arrow {
		color: #ffffff;
	}

	.slicknav_nav .slicknav_row:hover {
		border-radius: 0;
		background: transparent;
		color: #b5f000;
	}

	.slicknav_nav a:hover {
		border-radius: 0;
		background: transparent;
		color: #ffffff;
	}

	.slicknav_nav {
		display: block !important;
	}

	.offcanvas__widget a {
		display: block;
		text-align: left;
		background: #fff;
		border-radius: 8px;
		margin: 3px 0;
		height: 45px;
		line-height: 45px;
		padding-left: 20px;
	}

	.header__menu {
		display: none;
	}

	.header__widget {
		display: none;
	}

	.header__allmenu {
		display: none;
	}

	.top_menu {
		text-align: left;
	}



	.section-title span.title {
		font-size: 1.75rem;
		display: block !important;
	}


	.section-title span.title_sub {
		font-size: 1.25rem;
	}
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
	.hero__slider.owl-carousel .owl-nav button {
		left: 0;
	}

		.hero__slider.owl-carousel .owl-nav button.owl-next {
			right: 0;
		}

	.hero__text .hero__social {
		right: 80px;
	}

	.slide-num {
		left: 70px;
	}

	.slider__progress {
		left: 106px;
	}
}



@media only screen and (max-width: 767px) {


	.table_box {
		width: 100%;
		overflow: hidden;
		overflow-x: scroll;
		padding: 0px 0 20px 0;
	}


		/* 스크롤 바 전체에 대한 스타일 지정 */
		.table_box::-webkit-scrollbar {
			width: 8px; /* 스크롤 바의 너비 */
			height: 8px; /* 스크롤 바의 높이 */
			background-color: #f0f0f0; /* 스크롤 바의 배경색 */
		}

		/* 스크롤 바의 색상 지정 */
		.table_box::-webkit-scrollbar-thumb {
			background-color: #c9ced6; /* 스크롤 바의 색상 */
		}

			/* 스크롤 바 호버 시 색상 지정 */
			.table_box::-webkit-scrollbar-thumb:hover {
				background-color: #c9ced6; /* 스크롤 바의 색상 */
			}







		.table_box table {
			width: 100%;
			min-width: 480px;
		}



	.hero__items {
		height: 500px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		padding: 0 40px;
	}

	.notice .notice__item {
		min-height: 100px;
	}




	.hero__slider.owl-carousel .owl-nav button {
		left: 0;
	}

		.hero__slider.owl-carousel .owl-nav button.owl-next {
			right: 0;
		}

	.hero__text p.txt2 {
		font-size: 2.500rem;
		line-height: 58px;
	}

	.hero__text p.txt3 {
		font-size: 1.333rem;
		line-height: 35px;
	}

	.hero__text .hero__social {
		right: 0;
		left: 0;
		margin: 0 auto;
		bottom: 100px;
	}

	.slide-num {
		bottom: 25px;
		left: 0;
		width: 100%;
		text-align: center;
	}

	.slider__progress {
		left: 0;
		bottom: 35px;
		right: 0;
		margin: 0 auto;
	}

	.hero__text .more_btn {
		bottom: 62px;
	}

	.project__sidebar {
		padding-top: 20px;
	}

	.footer ul li {
		width: 100%;
		padding: 3px 0px 3px 0;
		text-align: center;
		background: #f0f0f0;
		border: 1px solid #eee;
	}

		.footer ul li:before {
			display: none;
		}

	.footer .tel {
		margin: 20px 0
	}

	.link_banner li {
		width: 33.3%;
		padding-bottom: 20px;
	}



	.snb ul li {
		float: left;
		position: relative;
		margin-left: 10px;
		padding: 23px 0 16px
	}

		.snb ul li a {
			display: block;
			line-height: 20px;
			padding-right: 18px;
			color: #000;
			font-size: 0.875rem;
			font-weight: 400;
			letter-spacing: -1px;
			background: url(../images/common/icon_view_nav_next.png) no-repeat right 2px top 50%
		}

		.snb ul li.home a {
			width: 40px;
			height: 40px;
			text-indent: -9999px;
			background: #1968cb url(../images/common/icon_home.png) no-repeat center 52%;
			border-radius: 20px 0 0 0
		}

		.snb ul li ul {
			display: none;
			position: absolute;
			border: 1px solid #e5e5e5;
			z-index: 10;
			left: -20px;
			top: 50px;
			padding: 10px 15px;
			background-color: #fff
		}

		.snb ul li li a {
			height: 30px;
			line-height: 30px;
			font-size: 0.875rem;
			color: #555;
			padding: 0;
			background: none;
			font-weight: 400 !important;
		}




	.page-header .page__text h1 {
		font-size: 1.50rem;
	}

	.page-header .page__text p {
		font-size: 0.875rem;
	}



	.greeting {
		margin-top: 10px
	}

		.greeting .txt {
			position: relative;
			padding: 0px 10px 0;
		}

			.greeting .txt h3 {
				font-weight: 500;
				font-size: 1.25rem;
				color: #5fa942;
				line-height: 1.3;
			}




		.greeting .sign {
			text-align: center;
		}




	.subTopTitle .tit-1 {
		color: #111;
		font-size: 2.000em;
		font-weight: 700;
		line-height: 1.2;
	}

	.login-section .jointxt {
		font-size: 0.875rem;
	}

	.login-section {
		margin: 10px 0;
		padding: 10px
	}



	#programinfo .nav-tabs .nav-link {
		height: 40px;
		line-height: 25px;
	}


	.nav-item {
		width: 100%;
	}

		.nav-item.ver2 {
			width: 100%;
		}

		.nav-item.ver3 {
			width: 100%;
		}

		.nav-item.ver4 {
			width: 100%;
		}

	.graybox {
		padding: 10px;
	}


	.sub_container .title_box span {
		font-size: 1.500rem;
	}

	.mt-4 {
		margin-top: 10px !important;
	}

	.icon_tit {
		margin: 20px 0 10px 0;
	}

	.icon_tit {
		font-size: 1.125rem;
	}

		.icon_tit::after {
			content: "";
			position: absolute;
			top: 4px;
			left: 0;
			width: 14px;
			height: 14px;
			border-radius: 50%;
			border: 4px solid #1968cb;
			box-sizing: border-box;
			padding-right: 5px
		}


	.ft30 {
		font-size: 1.25rem;
	}


	.accordion-button {
		padding: 0px;
	}

	.pagination a {
		width: 25px;
		height: 25px;
		font-size: 0.875rem;
	}

	.bbsSearch {
		margin-bottom: 20px;
		margin-bottom: 40px;
		padding: 10px 5px;
		background: #f6f6f6;
		text-align: center;
	}

		.bbsSearch input {
			margin-right: 5px
		}

		.bbsSearch .search_btn {
			height: 43px;
			padding: 0 10px;
			display: inline-block;
			text-align: center;
			font-size: 14px;
			font-weight: 400;
			line-height: 40px;
			color: #fff;
			background-color: #4f4f4f;
			border-radius: 5px;
		}


	.default_table table .mb_none {
		display: none
	}

	h5, .h5 {
		font-size: 1.125rem;
	}

	.txtlist > ul > li > ul.commu {
		position: relative;
		display: inline-block;
		width: 100%;
	}

		.txtlist > ul > li > ul.commu > li {
			float: left;
			width: 50%;
			padding: 5px;
		}

			.txtlist > ul > li > ul.commu > li h3 {
				font-size: 1rem;
				font-weight: 600;
				text-align: center;
				vertical-align: middle;
				border: 2px solid #f8df89;
				background: #fff;
				border-radius: 50px;
				line-height: 45px;
				height: 50px;
			}

			.txtlist > ul > li > ul.commu > li:before {
				font-size: 12px;
				width: 10px;
				height: 10px;
				display: inline-block;
				vertical-align: middle;
				position: relative;
				font-family: "FontAwesome";
				content: '\f054';
				font-weight: 600;
				top: 30px;
				left: -7px
			}

	.footer p.add {
		padding-left: 10px;
		font-size: 1.00rem;
		font-weight: 400;
		color: #3e3e3e
	}

	.footer .footer-txt {
		padding-left: 10px;
		font-size: 0.875rem;
	}

	.footer .tel {
		margin-top: 20px;
	}

		.footer .tel p {
			left: 70px;
			top: 0px;
		}

	.txtarea {
		font-size: 0.875rem;
	}
}



@media only screen and (max-width: 430px) {
}




/* 월간일정 */
.cont_ps_month .srch_box {
	position: relative;
	padding: 40px;
	background: #f5f5f5;
	margin-bottom: 40px
}

	.cont_ps_month .srch_box .year_area {
		position: relative;
		z-index: 10;
	}

		.cont_ps_month .srch_box .year_area .slt_month {
			display: none;
		}

	.cont_ps_month .srch_box .month {
		position: absolute;
		top: 35px;
		left: 0;
		right: 0;
		font-weight: 200;
		font-size: 2.5em;
		line-height: 1.2;
		letter-spacing: -1px;
		text-align: center;
	}

		.cont_ps_month .srch_box .month strong {
			font-weight: 600;
		}

	.cont_ps_month .srch_box .nav_month {
		display: flex;
		align-items: center;
		width: 100%;
		margin: 15px 0 0;
		border: 1px solid #d2d2d2;
		background: #fff;
	}

		.cont_ps_month .srch_box .nav_month li {
			flex: 1;
			position: relative;
			z-index: 1;
			line-height: 52px;
			text-align: center;
		}

			.cont_ps_month .srch_box .nav_month li:before {
				content: '';
				display: inline-block;
				position: absolute;
				top: 0;
				left: 0;
				bottom: 0;
				height: 12px;
				z-index: -1;
				margin: auto 0;
				border-left: 1px solid #d2d2d2;
			}

			.cont_ps_month .srch_box .nav_month li:first-child:before {
				display: none;
			}

			.cont_ps_month .srch_box .nav_month li.active {
				z-index: 2;
			}

				.cont_ps_month .srch_box .nav_month li.active:after {
					content: '';
					display: block;
					position: absolute;
					top: -1px;
					right: -1px;
					bottom: -1px;
					left: -1px;
					z-index: -1;
					background: #0850aa;
				}

			.cont_ps_month .srch_box .nav_month li a {
				display: block;
				font-weight: 600;
			}

			.cont_ps_month .srch_box .nav_month li.active a {
				color: #fff;
			}

.cont_ps_month .hall_guide {
	margin: 40px 0 15px;
	text-align: right;
	font-size: 0;
}

	.cont_ps_month .hall_guide .month {
		display: none;
	}

.cont_ps_month .month_calendar {
	position: relative;
	table-layout: fixed;
	border-top-width: 1px;
}

	.cont_ps_month .month_calendar:after {
		content: '';
		display: block;
		position: absolute;
		left: 0;
		bottom: 0;
		z-index: 10;
		width: 100%;
		height: 1px;
		background: #000;
	}

	.cont_ps_month .month_calendar th,
	.cont_ps_month .month_calendar td {
		padding: 14px 5px;
		border: 1px solid #e2e2e2;
		background: none;
		font-size: 1em;
	}

	.cont_ps_month .month_calendar th {
		font-weight: 600;
		font-size: 1.1875em;
		text-align: center;
	}

	.cont_ps_month .month_calendar td {
		padding: 15px;
	}

	.cont_ps_month .month_calendar tbody tr:first-child td {
		box-shadow: inset 0 4px 0 #f7f7f7;
	}

	.cont_ps_month .month_calendar thead th {
		border-left: 0;
		border-right: 0;
		border-color: #000;
	}

	.cont_ps_month .month_calendar td {
		height: 200px;
		vertical-align: top;
	}

		.cont_ps_month .month_calendar th:first-child,
		.cont_ps_month .month_calendar td:first-child {
			color: #e63030;
		}

		.cont_ps_month .month_calendar th:last-child,
		.cont_ps_month .month_calendar td:last-child {
			color: #1c74ea;
		}

		.cont_ps_month .month_calendar td > .date {
			display: block;
			margin-bottom: 10px;
			font-size: 1.0625em;
		}

			.cont_ps_month .month_calendar td > .date.hday {
				color: #e63030;
			}

			.cont_ps_month .month_calendar td > .date em {
				display: none;
			}

	.cont_ps_month .month_calendar .schedule {
		position: relative;
		margin-top: 15px;
		color: #555;
	}

		.cont_ps_month .month_calendar .schedule:first-of-type {
			margin-top: 0;
		}

		.cont_ps_month .month_calendar .schedule .sort {
			display: inline-block;
			height: 26px;
			line-height: 24px;
			margin-left: 5px;
			padding: 0 15px;
			border-radius: 26px;
			border: 1px solid #ed9100;
			font-weight: 400;
			color: #ed9100;
			font-style: normal;
			font-size: 14px;
			vertical-align: middle;
		}

	.cont_ps_month .month_calendar .ico_hall em {
		position: absolute;
		clip: rect(0, 0, 0, 0);
		width: 1px;
		height: 1px;
		margin: -1px;
		overflow: hidden;
	}

	.cont_ps_month .month_calendar .schedule > .tit {
		display: block;
		margin-top: 10px;
		font-size: 0.9375em;
		line-height: 1.3;
	}

		.cont_ps_month .month_calendar .schedule > .tit .cate {
			display: inline-block;
			margin-bottom: 3px;
			padding: 0 6px;
			border-radius: 4px;
			background: #909aab;
			font-size: 13px;
			line-height: 22px;
			color: #fff;
			vertical-align: top;
		}

		.cont_ps_month .month_calendar .schedule > .tit a {
			display: block;
			color: inherit;
		}

			.cont_ps_month .month_calendar .schedule > .tit a span {
				font-weight: 400;
				color: #3150b7;
			}

	.cont_ps_month .month_calendar .schedule .btn_mobile {
		display: none;
	}

	.cont_ps_month .month_calendar .schedule .pop {
		display: none;
		position: absolute;
		top: 100%;
		left: 50%;
		transform: translateX(-50%);
		z-index: 30;
		width: 900px;
		padding-top: 20px;
	}

	.cont_ps_month .month_calendar td:nth-child(-n + 2) .schedule .pop {
		left: 0;
		transform: none;
	}

	.cont_ps_month .month_calendar td:nth-child(n + 6) .schedule .pop {
		left: auto;
		right: 0;
		transform: none;
	}

	.cont_ps_month .month_calendar .schedule.open .pop {
		display: block;
	}

	.cont_ps_month .month_calendar .schedule .pop:before,
	.cont_ps_month .month_calendar .schedule .pop:after {
		content: '';
		display: block;
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		z-index: 10;
		width: 0;
		height: 0;
		margin: 0 auto;
		border: 20px solid transparent;
		border-width: 0 21px 20px 21px;
		border-bottom-color: #d2d2d2;
	}

	.cont_ps_month .month_calendar .schedule .pop:after {
		top: 1px;
		border-bottom-color: #fafafa;
	}

	.cont_ps_month .month_calendar td:nth-child(-n + 2) .schedule .pop:before,
	.cont_ps_month .month_calendar td:nth-child(-n + 2) .schedule .pop:after {
		left: 60px;
		right: auto;
	}

	.cont_ps_month .month_calendar td:nth-child(n + 6) .schedule .pop:before,
	.cont_ps_month .month_calendar td:nth-child(n + 6) .schedule .pop:after {
		left: auto;
		right: 60px;
	}



.button,
.button * {
	position: relative;
	display: inline-block;
	box-sizing: border-box;
	overflow: visible;
	margin: 0;
	padding: 0;
	text-decoration: none !important;
	white-space: nowrap;
	text-align: center;
	vertical-align: middle;
	cursor: pointer;
	transition: all .3s;
}

/* Button Size */
.button {
	position: relative;
	overflow: hidden;
	height: 39px;
	line-height: 37px;
	margin: 1px 3px;
	padding: 0 15px;
	border: 1px solid transparent;
	font-weight: 600;
	font-size: 1rem;
	letter-spacing: 0;
}

	.button.darkgray {
		border-color: transparent;
		background-color: #434343;
		color: #fff !important;
	}



@media screen and (max-width:1023px) {

	/* 월간일정 */
	.cont_ps_month .srch_box {
		padding: 20px;
	}

	.cont_ps_month .month_calendar,
	.cont_ps_month .month_calendar tbody,
	.cont_ps_month .month_calendar tr,
	.cont_ps_month .month_calendar td {
		display: block;
	}

		.cont_ps_month .month_calendar caption,
		.cont_ps_month .month_calendar thead,
		.cont_ps_month .month_calendar td.empty {
			display: none;
		}

		.cont_ps_month .month_calendar td {
			position: relative;
			height: auto;
			min-height: 60px;
			padding: 15px 10px 12px 60px;
			border-width: 1px 0 0;
			box-shadow: none !important;
		}

			.cont_ps_month .month_calendar td:after {
				content: '';
				display: block;
				clear: both;
			}

			.cont_ps_month .month_calendar td > .date {
				position: absolute;
				top: 10px;
				left: 0;
				right: calc(100% - 60px);
				margin: 0;
				font-size: 1.33em;
				line-height: 1.2;
				text-align: center;
			}

				.cont_ps_month .month_calendar td > .date em {
					display: inline;
					font-size: 0.6em;
				}

		.cont_ps_month .month_calendar .schedule {
			margin-top: 20px;
		}

			.cont_ps_month .month_calendar .schedule > .tit {
				margin-top: 5px;
			}

			.cont_ps_month .month_calendar .schedule .btn_mobile {
				display: block;
				margin-top: 5px;
			}

			.cont_ps_month .month_calendar .schedule .pop {
				display: none !important;
			}
}




/* 
수강대기목록 테이블 (sports-waitingb)
*/
.sports-waitingb table {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px solid #1968cb;
}
/* Zebra striping */
.sports-waitingb tr:nth-of-type(odd) {
	background: #f5f5f5;
}

.sports-waitingb th {
	background: #fff;
	color: #1968cb;
	text-align: center;
	padding: 1em;
	border-bottom: 1px solid #dddddd;
}

.sports-waitingb td {
	padding: 0.8em;
	text-align: center;
	font-weight: 300;
	border-bottom: 1px solid #dddddd;
}

	.sports-waitingb td a, .sports-waitingb td a:hover {
		color: #333
	}

	.sports-waitingb td.lft {
		text-align: left;
	}

@media only screen and (max-width: 760px), (min-device-width: 768px) and (max-device-width: 1024px) {


	.sports-facilitiestb table, .sports-facilitiestb thead, .sports-facilitiestb tbody, .sports-facilitiestb th, .sports-facilitiestb td, .sports-facilitiestb tr {
		display: block;
	}


		.sports-facilitiestb thead tr {
			position: absolute;
			top: -9999px;
			left: -9999px;
		}

	.sports-facilitiestb tr {
		border: 1px solid #ddd;
	}

	.sports-facilitiestb td {
		border: none;
		border-bottom: 1px solid #eee;
		position: relative;
		padding-left: 35%;
		text-align: left;
	}

		.sports-facilitiestb td:before {
			position: absolute;
			left: 20px;
			width: 30%;
			white-space: nowrap;
			color: #005593;
		}

		.sports-facilitiestb td:nth-of-type(1):before {
			content: "강좌명";
		}

		.sports-facilitiestb td:nth-of-type(2):before {
			content: "개월수";
		}

		.sports-facilitiestb td:nth-of-type(3):before {
			content: "강좌시간";
		}

		.sports-facilitiestb td:nth-of-type(4):before {
			content: "강사명";
		}

		.sports-facilitiestb td:nth-of-type(5):before {
			content: "정원";
		}

		.sports-facilitiestb td:nth-of-type(6):before {
			content: "수강료";
		}

		.sports-facilitiestb td:nth-of-type(7):before {
			content: "상태";
		}

	/* 수강대기목록 모바일 반응형 */
	.sports-waitingb table, .sports-waitingb thead, .sports-waitingb tbody, .sports-waitingb th, .sports-waitingb td, .sports-waitingb tr {
		display: block;
	}


		.sports-waitingb thead tr {
			position: absolute;
			top: -9999px;
			left: -9999px;
		}

	.sports-waitingb tr {
		border: 1px solid #ddd;
	}

	.sports-waitingb td {
		border: none;
		border-bottom: 1px solid #eee;
		position: relative;
		padding-left: 40%;
		padding-top: 0.8em;
		padding-bottom: 0.8em;
		text-align: left;
	}

		.sports-waitingb td:before {
			position: absolute;
			left: 6px;
			width: 30%;
			top: 0.8em;
			white-space: nowrap;
			color: #005593;
			font-weight: 600;
		}

		.sports-waitingb td:nth-of-type(1):before {
			content: "접수";
		}

		.sports-waitingb td:nth-of-type(2):before {
			content: "강좌명";
		}

		.sports-waitingb td:nth-of-type(3):before {
			content: "강좌일정";
		}

		.sports-waitingb td:nth-of-type(4):before {
			content: "강좌시간";
		}

		.sports-waitingb td:nth-of-type(5):before {
			content: "수강료";
		}

		.sports-waitingb td:nth-of-type(6):before {
			content: "접수구분";
		}

		.sports-waitingb td:nth-of-type(7):before {
			content: "결제방법";
		}

		.sports-waitingb td:nth-of-type(8):before {
			content: "결제취소";
		}
}

/* 데스크톱/모바일 표시 제어 */
.desktop-only {
	display: block;
}

.mobile-only {
	display: none;
}

/* 모바일용 카드 레이아웃 스타일 */
.sports-waitingb-mobile {
	width: 100%;
}

.mobile-card {
	border: 1px solid #ddd;
	margin-bottom: 15px;
	padding: 15px;
	background: #fff;
	border-radius: 5px;
	box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.card-row {
	display: flex;
	margin-bottom: 10px;
	align-items: flex-start;
	min-height: 24px;
}

	.card-row:last-child {
		margin-bottom: 0;
	}

	.card-row .label {
		width: 30%;
		min-width: 80px;
		font-weight: 600;
		color: #005593;
		font-size: 0.9rem;
		padding-right: 10px;
		flex-shrink: 0;
	}

	.card-row .value {
		width: 70%;
		font-size: 0.9rem;
		color: #333;
		line-height: 1.4;
		word-break: break-word;
	}

		.card-row .value input[type="button"] {
			padding: 5px 10px;
			font-size: 0.8rem;
			background: #1968cb;
			color: white;
			border: none;
			border-radius: 3px;
			cursor: pointer;
		}

			.card-row .value input[type="button"]:hover {
				background: #0850aa;
			}

@media only screen and (max-width: 760px) {
	.desktop-only {
		display: none !important;
	}

	.mobile-only {
		display: block !important;
	}

	/* 기존 sports-waitingb 모바일 스타일 비활성화 */
	.sports-waitingb table,
	.sports-waitingb thead,
	.sports-waitingb tbody,
	.sports-waitingb th,
	.sports-waitingb td,
	.sports-waitingb tr {
		display: table !important;
	}

		.sports-waitingb thead tr {
			position: static !important;
			top: auto !important;
			left: auto !important;
		}

	.sports-waitingb tr {
		border: none !important;
	}

	.sports-waitingb td {
		border: 1px solid #dddddd !important;
		border-bottom: 1px solid #dddddd !important;
		position: static !important;
		padding: 0.8em !important;
		text-align: center !important;
	}

		.sports-waitingb td:before {
			display: none !important;
		}
}

.join-title {
	color: #000000;
	font-weight: 400;
	font-size: 1.125rem;
}
