/*
 * Menu Link › Kursangebote
 */
.fs_menu-link_kursangebote{
	cursor: pointer;
}
/*------------
 * Table Flex
 ------------*/
.fs_table {
  display: flex;
  flex-flow: column nowrap;
  font: 100% "Source Sans Pro", sans-serif;
  border: 0.5px solid #c9c9c9;
	margin-bottom:5%;
}

.fs_table-head_date,
.fs_table-head_btn,
.fs_table-body_date {
  flex: 1 2 15%;
}

.fs_table-head_description,
.fs_table-body_description {
  flex: 10;
}

.fs_table-head {
  background: #b4242d;
  font: 700 18px/1.6 "Source Sans Pro", sans-serif;
  color: #fefefe;
  display: flex;
  flex-flow: row wrap;
  align-items: stretch;
  justify-content: space-between;
}
.fs_table-head :nth-of-type(odd) {
  text-align: center;
}
.fs_table-head div:nth-child(1) {
  border-right: 0.5px solid #c9c9c9;
}
.fs_table-head div {
  padding: 15px 25px;
}

.fs_table-body {
  background: #f1f1f1;
  font: 400 16px/1.6 "Source Sans Pro", sans-serif;
  color: #4a4a4a;
  display: flex;
  flex-flow: row wrap;
  align-items: stretch;
  justify-content: space-between;
  transition: all 0.4s;
}
.fs_table-body div {
  padding: 15px 25px;
}
.fs_table-body div:nth-child(1) {
  border-right: 0.5px solid #c9c9c9;
}

/*-----
 * Date
 -----*/
.fs_table-body_date {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #b4242d;
  font-weight: bold;
}

/*------------
 * Description
 ------------*/
.fs_table-body_description {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
	background: #fff;
  /*background: linear-gradient(to right, #f1f1f1 50%, #fefefe 50%) right bottom/200% 100%;
  transition: all 0.4s ease-in-out;*/
}
/*.fs_table-body_description:hover {
  background-position: left bottom;
}*/
.fs_table-body_description .fs_table-body_description--text {
  flex: 8 2 auto;
  border: none !important;
  padding: 0px;
  margin-right: 4px;
}
.fs_table-body_description .fs_table-body_description--btn {
  flex: 1 2 auto;
  padding: 10px;
  border: 1px solid silver;
  text-align: center;
  border-radius: 4px;
}
.fs_table-body_description:hover .fs_table-body_description--btn {
  background: #303030;
  border-color: #303030;
  color: #fefefe;
}

/*------------
 * Button
 ------------*/
.fs_table-body_description--btn a {
  text-decoration: none;
  color: inherit;
  font-weight: bold;
  letter-spacing: 0.01em;
  font-size: 17px;
}

.fs_table-body_description--btn:hover {
  transform: translate(0, -1px);
  box-shadow: 0 4px 8px -1px rgba(0, 0, 0, 0.35);
	cursor: pointer;
  transition: all 0.1s ease-in;
}

/*------------
 * Media Query
 ------------*/
@media all and (max-width: 600px) {
  .fs_table-body_description {
    flex-flow: column wrap;
  }
  .fs_table-body_description :nth-child(n + 1) {
    margin: 8px 0;
  }

  .fs_table-body {
    flex-flow: column wrap;
  }

  .fs_table-body_date {
		background: #b4242d;
    color: #fefefe;
  }

  .fs_table-head {
    display: none;
  }
}
/*------------
 * Course Flex
-------------*/
.fs_course-container {
  font: 400 16px/1.6 "Source Sans Pro", sans-serif;
  color: #4a4a4a;
  display: flex;
  flex-flow: column nowrap;
  justify-content: space-between;
  align-items: stretch;
	padding: 5vh 7.5vw;
	max-width: 1366px!important;
}

.fs_course-title h1{
  font: 700 2.5em "NotoSerif", sans-serif;
  color: #b4242d;
  padding: 1rem 1.6rem;
}
@media all and (max-width:600px){
	.fs_course-title h1{
		font-size: 1.5em;
	}
}
.fs_course-content {
  display: flex;
  flex-flow: row nowrap;
  background: #fff;
}
@media all and (max-width:900px){
	.fs_course-content{
		flex-flow: column nowrap;
	}
	.em-location-map-container{
		max-width:100%;
	}
}
.fs_course-content .fs_course-content_text {
  flex: 3;
  padding: 1rem 1.6rem;
}
.fs_course-content .fs_course-content_map {
  flex: 1;
  padding: 1rem 1.6rem;
	background: #fafafa;
}

.fs_course-form {
  font: 400 16px/1.6 "Source Sans Pro", sans-serif;
  color: #4a4a4a;
  display: flex;
  flex-flow: column wrap;
}
.fs_course-form h3 {
  font: 700 1.5em "Noto Serif", sans-serif;
  color: #b4242d;
	max-width: 90%;
	margin-top:2rem;
}
.fs_course-form_booking .em-booking-form-details{
	display: flex;
	flex-flow:column wrap;
	align-items: flex-start;
	justify-content: flex-start;
}
@media all and (max-width:900px){
	.fs_course-form_booking .em-booking,
	.fs_course-form_booking{
		max-width:85%;
	}
	.fs_course-form_booking .em-booking-form-details{
		max-width:100%;
	}
	.fs_course-form_booking .em-booking-form-details label{
	max-width: 300px;
}
.fs_course-form_booking .em-booking-form-details input,
.fs_course-form_booking .em-booking-form-details select{
	max-width: 200px;
}
}
.fs_course-form .em-location-map-container{
	min-width: 100%;
}
.events {
  font: 700 2.5em "Noto Serif", sans-serif;
  color: #b4242d;
	margin-top:3rem;
}
@media all and (max-width:900px){
	.events{
		font-size: 1.5em;
	}
}
/*
 * Aufkleber Gutschein
 * bei "alle Kurstermine
 */
.fs-gutschein_button{
	position:fixed;
	display:flex;
	flex-flow: column nowrap;
	align-items:center;
	justify-content: center;
	z-index:9999;
	bottom: 20px;
	right: 20px;
	padding: 30px 30px;
	border-radius: 100px 100px 12px 100px;
	background:#333;
	box-shadow: 0 4px 12px -4px rgba(0,0,0,.55);
	border: 4px solid #fff;
}
.fs-gutschein_button a{
	color:#fff;
	text-align:center;
	font:700 15px/1.35 sans-serif;
}
.fs-gutschein_button i{
	font-size: 1.8em;
	color: #fff;
}
.fs-gutschein_button:hover{
	transform: translate(0, -1px);
  box-shadow: 0 4px 8px -1px rgba(0, 0, 0, 0.35);
	cursor: pointer;
  transition: all 0.1s ease-in;
}
@media all and (max-width:900px){
	.fs-gutschein_button{
		transform:scale(0.7);
		bottom:0;
		right:0px
	}
}