/* main */
#main-bg {
	background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
	min-height: 400px;
}
@media (max-width: 575px) {
	#main-bg {
		height: calc(100vh - 74px);
	}
}
#main-bg-text {
	position: absolute;
	bottom: 30px;
	right: 20px;
	color: #fff;
}
/* main icons */
@media (max-width: 575px) {
	#quick-menu .fa-4x {
		font-size: 3em;
	}
}
.fas.fa-utensils:hover {
	color: #62c462;
}
.far.fa-calendar-alt:hover {
	color: #5bc0de;
}
.fas.fa-store:hover {
	color: #6f42c1;
}
.fas.fa-user-plus:hover {
	color: #007bff;
}
.fab.fa-instagram:hover {
	color: #f09433;
}
.fab.fa-facebook-square:hover {
	color: #3b5998;
}

/* footer */
footer p {
	margin-bottom: 0.2rem;
}
#other-coops-link-group {
	max-height: 300px;
	overflow: scroll;
}

/* member */
#member-join .join-flow {
	margin: 0 auto;
	display: flex;
}
#member-join .join-flow-item {
	width: 20%;
	position: relative;
    text-align: center;
}
#member-join.member-withdraw .join-flow-item {
	width: 25%;
}
#member-join .join-flow-item:not(:last-child):after {
	content: '→';
	position: absolute;
	right: -8px;
	top: 20%;
	font-size: 24px;
	font-weight: 100;
}
#member-join .join-description i {
	width: 2rem;
	text-align: center;
}
@media (max-width: 991px) {
	#member-join .join-flow {
		display: block;
	}
	#member-join .join-flow-item, #member-join.member-withdraw .join-flow-item {
		width: 100%;
		margin-bottom: 3rem;
	}
	#member-join .join-flow-item:not(:last-child):after {
		content: '↓';
		right: 48%;
		top: inherit;
		bottom: -2.5rem;
	}
}

/* history */
.main-timeline {
    position: relative;
    transition: all 0.4s ease 0s;
}

.main-timeline:before {
    content: "";
    width: 4px;
    height: 100%;
    background: #ccc;
    position: absolute;
    top: 0;
    left: 50%;
}

.main-timeline .timeline {
    position: relative;
}

.main-timeline .timeline:before,
.main-timeline .timeline:after {
    content: "";
    display: block;
    width: 100%;
    clear: both;
}
.main-timeline .timeline:before:last-child,
.main-timeline .timeline:after:last-child {
    display: none;
}

.main-timeline .timeline-icon {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #000;
    border: 2px solid #ccc;
    top: 0;
    position: relative;
    left: 2px;
    right: 0;
    margin: 0 auto;
    overflow: hidden;
}

.main-timeline .timeline-content{
    width: 45%;
    margin-top: -55px;
    padding: 20px;
    border-radius: 5px;
    text-align: right;
    -webkit-box-shadow: 0 3px 0 rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 3px 0 rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 0 3px 0 rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease 0s;
}

.main-timeline .date{
    display: inline-block;
    font-size: 20px;
    font-weight: 400;
    color: #fff;
    padding: 12px 33px;
    background: #0a90d7;
    border-radius: 30px;
}

.main-timeline .title{
    font-size: 24px;
    font-weight: 500;
    color: #5c5151;
    margin-top: 30px;
}

.main-timeline .description{
    font-size: 14px;
    color: #606060;
    line-height: 2;
    padding: 0 30px;
    margin-top: 30px;
}

.timeline-content .description li{
    list-style: disc;
    color: #ccc;
}

.timeline-content.left .description li{
    direction: rtl;
}

.main-timeline .timeline-content.right{
    float: right;
    text-align: left;
}

@media only screen and (max-width: 767px){
    .main-timeline .timeline-content {
        margin-top: 0;
    }
    .main-timeline:before{
        left: 0;
    }
    .main-timeline .timeline-icon{
        left: -8px;
        margin: 0;
        top: 56px;
    }
    .main-timeline .timeline-content{
        width: 90%;
        float: right;
    }
}


/* shops */
@media (max-width: 768px) {
	#intro-shops table th {
		display: none;
	}
	#intro-shops table tbody tr {
		display: block;
		margin-bottom: 15px;
		border: 1px solid;
		border-radius: 8px;
	}
	#intro-shops table tbody td {
		display: block;
		position: relative;
		padding: 0.25rem 0 0.25rem 50%;
	}
	#intro-shops table tbody td:before {
		position: absolute;
		left: 6px;
		width: 45%;
		text-align: right;
		padding-right: 10px;
		white-space: nowrap;
		font-size: 80%;
		line-height: 2;
	}
	#intro-shops table tbody td:nth-of-type(1):before {
		content: '매장 종류';
	}
	#intro-shops table tbody td:nth-of-type(2):before {
		content: '매장명';
	}
	#intro-shops table tbody td:nth-of-type(3):before {
		content: '위치';
	}
	#intro-shops table tbody td:nth-of-type(4):before {
		content: '전화번호';
	}
	#intro-shops table tbody td:nth-of-type(5):before {
		content: '수용인원';
	}
	#intro-shops table tbody td:nth-of-type(6):before {
		content: '규모';
	}
	#intro-shops table tbody td:nth-of-type(7):before {
		content: '운영시간(학기중)';
	}
	#intro-shops table tbody td:nth-of-type(8):before {
		content: '운영시간(방학중)';
	}
}
