.checkbox-wrapper-31:hover .check {
  stroke-dashoffset: 0;
}

.checkbox-wrapper-31 {
  position: relative;
  display: inline-block;
  width: 25px;
  height: 25px;
}

.checkbox-wrapper-31 .background {
  fill: #ccc;
  transition: ease all 0.6s;
  -webkit-transition: ease all 0.6s;
}

.checkbox-wrapper-31 .stroke {
  fill: none;
  stroke: #fff;
  stroke-miterlimit: 10;
  stroke-width: 2px;
  stroke-dashoffset: 100;
  stroke-dasharray: 100;
  transition: ease all 0.6s;
  -webkit-transition: ease all 0.6s;
}

.checkbox-wrapper-31 .check {
  fill: none;
  stroke: #fff;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2px;
  stroke-dashoffset: 22;
  stroke-dasharray: 22;
  transition: ease all 0.6s;
  -webkit-transition: ease all 0.6s;
}

.checkbox-wrapper-31 input[type=checkbox] {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  margin: 0;
  opacity: 0;
  -appearance: none;
  
}

.checkbox-wrapper-31 input[type=checkbox]:hover {
  cursor: pointer;
}

.checkbox-wrapper-31 input[type=checkbox]:checked + svg .background {
  fill: #6cbe45;
}

.checkbox-wrapper-31 input[type=checkbox]:checked + svg .stroke {
  stroke-dashoffset: 0;
}

.checkbox-wrapper-31 input[type=checkbox]:checked + svg .check {
  stroke-dashoffset: 0;
}
.list-group-item-action{
  border-left: 1px solid rgba(79,123,170,.4);
  border-right: 1px solid rgba(231,231,231,.3);
  border-bottom: 2px solid rgba(0,0,0,0.5);
  display: block;
  border-left: none;
  border-radius:10px 10px 10px 10px;
  background: #ffffff;
  text-decoration: none;
  padding: 10px 10px 10px 10px;
  border: 1px solid rgba(0,0,0,0.1);
  
  border-radius: 5px;
  text-shadow: 0 1px 0 rgba(0,0,0,0.15);
  background: rgba(212,250,217,1);
  background: -webkit-gradient(linear, 0 0, 0 10%, from(rgba(231,231,231,1)), to(rgba(212,250,217,1)));
  background: -webkit-linear-gradient(rgba(231,231,231,1) 0%, rgba(212,250,217,1) 100%);
  background: -moz-linear-gradient(rgba(231,231,231,1) 0%, rgba(212,250,217,1) 100%);
  background: -o-linear-gradient(rgba(231,231,231,1) 0%, rgba(212,250,217,1) 100%);
  background: linear-gradient(rgba(231,231,231,1) 0%, rgba(212,250,217,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#1bbcc2', endColorstr='#18a3a8', GradientType=0);
}

.course {
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 10px 10px rgba(0, 0, 0, 0.2);
	display: flex;
	max-width: 100%;
	margin: 20px;
	overflow: hidden;
}

.course h4 {
	margin: 0;
	letter-spacing: 1px;
	text-transform: uppercase;
    font-weight:600;
}

.course h3 {
	letter-spacing: 1px;
    opacity: 0.6;
    padding:-5px;
    font-weight:bold;
}

.course-preview {
	background-color: #2A265F;
	color: #fff;
	padding: 30px;
	max-width: 250px;
}

.course-info {
	padding: 10px;
	position: relative;
	width: 100%;
  
}

.course-btn {
	background-color: #2A265F;
	border: 0;
	border-radius: 50px;
	box-shadow: 0 10px 10px rgba(0, 0, 0, 0.2);
	color: #fff;
	font-size: 8px;
	position: absolute;
	bottom: 10px;
	right: 10px;
	letter-spacing: 1px;
    width:70px; height:30px;
}

/* 화살표 */
.arrow,
.arrow:before{
  position: absolute;
  left: 50%;
}
.arrow{
  width: 40px;
  height: 40px;
  top: 50%;
  margin: -20px 0 0 -20px;
  -webkit-transform: rotate(45deg);
  border-left: none;
  border-top: none;
  border-right: 2px #fff solid;
  border-bottom: 2px #fff solid;
}
  
.arrow:before{
  content: '';
  width: 20px;
  height: 20px;
  top: 50%;
  margin: -10px 0 0 -10px;
  border-left: none;
  border-top: none;
  border-right: 1px #fff solid;
  border-bottom: 1px #fff solid;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-name: arrow;
}
@keyframes arrow{
  0%{
    opacity: 1;}
  100%{
    opacity: 0;
  
    transform: translate(-10px, -10px);}
}  
  