@charset "UTF-8";

.main-program__board{
	position: relative;
	width:100%;
	overflow: hidden;
}

.program__title{
	margin-bottom: 4px;
	text-align: center
}

.program__txt{
	margin-bottom: 40px;
	text-align: center;
	color:var(--color-gray-60);
}

.program__empty-data{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 400px;
	text-align: center
}

.program__grid{
	position: relative;
	width: 100%;
}

.program__item,.program__item a{
	width: 100%;
	height: 100%;
}

.program__img{
	position: relative;
	width: 100%;
	height: 0;
	margin-bottom: 20px;
	padding-bottom: 100%;
	overflow: hidden;
	border-radius: 8px;
	background-color: var(--color-gray-00);
	box-shadow: inset 0 0 0 1px var(--color-gray-10);
}

.program__img img{
	position: absolute;
	top:50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: 0.3s
}

.program__img img:hover{
	transform: translate(-50%,-50%) scale(1.1);
	transition: 0.3s
}

.no_image{
	position: absolute;
	top:50%;
	left: 50%;
	transform: translate(-50%,-50%);
	color: var(--color-gray-50)
}

.program__name{
	height: 5.6rem;
	word-break: break-word;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical
}

@media all and (max-width:1024px) {

}

@media all and (max-width:768px) {
	.program-btn-next, .program-btn-prev{
		width:44px;
		height:44px;
		background-color: var(--color-gray-00);
		position: absolute;
		top:50%;
		z-index: 90;
		transform: translateY(calc(-50% - 5.6rem));
		border-radius: 100px;
		box-shadow: 0 9px 20px 0 rgba(0,0,0,0.08);
		cursor: pointer;
		transition: 0.3s
	}

	.program-btn-prev{
		left:8px;
		opacity: 0.5;
	}

	.program-btn-prev::after{
		content: '';
		position: absolute;
		top:50%;
		left:50%;
		transform: translate(-50%,-50%);
		width:24px;
		height: 24px;
		background: url(../../../img/ico_banner_prev.svg) no-repeat center;
		transition: 0.3s
	}

	.program-btn-prev:hover{
		opacity: 1
	}

	.program-btn-next{
		right:8px;
		opacity: 0.5;
	}

	.program-btn-next::after{
		content: '';
		position: absolute;
		top:50%;
		left:50%;
		transform: translate(-50%,-50%);
		width:24px;
		height: 24px;
		background: url(../../../img/ico_banner_next.svg) no-repeat center;
		transition: 0.3s
	}

	.program-btn-next:hover{
		opacity: 1
	}

}

@media all and (max-width:500px) {

}