* {
	margin: 0px;
	padding: 0px;
}

html {
	overflow-y: scroll;
	width: 100%;
	height: 100%;
	background: #f5f5dc;
}

body {
	width: 100%;
	height: 100%;
//	background: url('/i/body_bg_grey.png') no-repeat center bottom;
	font-family: 'Arial';
	font-size: 14px;
	color: #ffffff;
	hyphens: auto;
}

a img {
	border: none;
}

a {
	color: #00ae42;
}

p {
	line-height: 20px;
	margin-bottom: 10px;
}

h1 {
	font-size: 36px;
	margin-top: 20px;
	margin-bottom: 10px;
	text-align: center;
}

h2 {
	font-size: 20px;
	margin-top: 10px;
	margin-bottom: 10px;
	text-align: center;
}

@media only screen and (max-width: 479px) {
	h2 {
		font-size: 20px;
	}

	.bar_inner_half_top h2, .bar_inner_half_bottom h2 {
		font-size: 18px;
		margin-top: 8px;
		margin-bottom: 8px;
	}
}

@media only screen and (min-width: 480px) and (max-width: 640px) {
	h2 {
		font-size: 16px;
	}

	.bar_inner_half_top h2, .bar_inner_half_bottom h2 {
		font-size: 14px;
		margin-top: 6px;
		margin-bottom: 6px;
	}
}

@media only screen and (min-width: 640px) {
	h2 {
		font-size: 20px;
	}

	.bar_inner_half_top h2, .bar_inner_half_bottom h2 {
		font-size: 18px;
		margin-top: 8px;
		margin-bottom: 8px;
	}
}

.clr {
	clear: both;
}

#page {
	width: 90%;
	min-height: 100%;
	padding-top: 74px;
	padding-bottom: 35px;
	margin: 5%;
	color: #404040;
}

.bar {
	position: relative;
}

@media only screen and (min-width: 480px) {
	.bar {
		width: 33.33%;
		float: left;
	}
}

.bar_inner {
	position: relative;
	width: 90%;
	margin: 5%;
	perspective: 1000px;
}

.bar_inner_half_top {
	position: relative;
	width: 90%;
	margin: 5%;
	margin-bottom: 1.5%;
	perspective: 1000px;
}

.bar_inner_half_bottom {
	position: relative;
	width: 90%;
	margin: 5%;
	margin-top: 1.5%;
	perspective: 1000px;
}

.bar_inner_flip {
	position: relative;
	width: 100%;
	height: 100%;
	transition: transform 0.3s cubic-bezier(0.1, 0.7, 0.5, 1.5);
	-webkit-transition: transform 0.3s cubic-bezier(0.1, 0.7, 0.5, 1.5);
	transform-style: preserve-3d;
	-webkit-transform-style: preserve-3d;
}

.bar_inner:hover .bar_inner_flip, .bar_inner_half_top:hover .bar_inner_flip, .bar_inner_half_bottom:hover .bar_inner_flip {
//	position: relative;
	transform: rotateY(-180deg);
	-webkit-transform: rotateY(-180deg);
}

.bar_inner_flip_front, .bar_inner_flip_back {
//	position: absolute;
	width: 100%;
	height: 100%;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	top: 0;
}

.bar_inner_flip_front {
}

.bar_inner_flip_back {
	position: absolute;
	transform: rotateY(-180deg);
	-webkit-transform: rotateY(-180deg);
	overflow: hidden;
	text-overflow: ellipsis;
}

.bar_inner p, .bar_inner_half_top p, .bar_inner_half_bottom p {
	color: #ffffff;
	text-decoration: none;
	margin-left: 10px;
}

.bar_inner_half_top p {
	line-height: 16px;
	font-size: 14px;
}

.bar_inner a, .bar_inner_half_top a, .bar_inner_half_bottom a {
	color: #ffffff;
	text-decoration: none;
}

.bar_inner a:hover,.bar_inner_half_top a:hover, .bar_inner_half_bottom a:hover {
	text-decoration: underline;
}

@media only screen and (max-width: 479px) {
	.bar_inner img {
		visibility: hidden;
		width: 0px;
		height: 0px;
	}

	.bar_inner_half_top img {
		visibility: hidden;
		width: 0px;
		height: 0px;
	}

	.bar_inner_half_bottom img {
		visibility: hidden;
		width: 0px;
		height: 0px;
	}
}

@media only screen and (min-width: 480px) {
	.bar_inner img {
		visibility: visible;
		width: 100%;
	}

	.bar_inner_half_top img {
		visibility: visible;
		width: 100%;
	}

	.bar_inner_half_bottom img {
		visibility: visible;
		width: 100%;
	}
}

div.gp {
	background-color: #36c33b;
	border: 2px solid #36c33b;
}

div.bar_inner, div.bar_inner_flip, div.bar_inner_flip_front, div.bar_inner_flip_back {
	border-radius: 10px;
}

div.sp {
	background-color: #ffcc00;
	border: 2px solid #ffcc00;
}

div.nhp {
	background-color: #853b19;
	border: 2px solid #853b19;
}

div.eb {
	background-color: #ffa500;
	border: 2px solid #ffa500;
}

.box {
	margin: 0px auto;
	position: absolute;
	width: 80%;
	align: center;
}

.box_inner {
	padding-left: 120px;
	padding-top: 74px;
}

#header {
	position: fixed;
	left: 0px;
	right: 0px;
	top: 20px;
	background-color: #36c33b;
}

#header_inner {
	height: 54px;
	line-height: 54px;
	margin: 0px auto;
	text-align: center;
	color: #ffffff;
	font-weight: bold;
}

@media only screen and (max-width: 479px) {
	#header_inner {
		font-size: 20px;
	}
}

@media only screen and (min-width: 480px) and (max-width: 640px) {
	#header_inner {
		font-size: 24px;
	}
}

@media only screen and (min-width: 640px) {
	#header_inner {
		font-size: 36px;
	}
}

#header_inner a {
	color: #ffffff;
	text-decoration: none;
}

#header_inner a:hover {
	text-decoration: underline;
}

#header_menu {
	height: 54px;
	line-height: 54px;
	margin-left: 20px;
	text-align: left;
	color: #ffffff;
	float: left;
}

#header_news {
	height: 54px;
	line-height: 54px;
	margin-right: 20px;
	text-align: right;
	color: #ffffff;
	float: right;
}

@media only screen and (max-width: 479px) {
	#header_menu {
		visibility: visible;
		font-size: 20px;
	}
}

@media only screen and (min-width: 480px) {
	#header_menu {
		visibility: hidden;
	}
}

@media only screen and (max-width: 1099px) {
	#header_news {
		visibility: visible;
		font-size: 20px;
	}
}

@media only screen and (min-width: 1100px) {
	#header_news {
		visibility: hidden;
	}
}

#header_menu a {
	color: #ffffff;
	text-decoration: none;
}

#header_news a {
	color: #ffffff;
	text-decoration: none;
}

#footer {
	position: fixed;
	left: 0px;
	right: 0px;
	bottom: 20px;
	background-color: #36c33b;
}

#footer a {
	color: #ffffff;
	text-decoration: none;
}

#footer_inner {
	height: 35px;
	line-height: 35px;
	margin: 0px auto;
	text-align: center;
	color: #ffffff;
	font-weight: bold;
}

.menu_main {
	position: fixed;
	width: 248px;
	padding: 3px 3px 0px 3px;
	margin-bottom: 20px;
	overflow: hidden;
	background-color: #f4f4f4;
	background: -moz-linear-gradient(top, #f4f4f4 0%, #fbfbfb 100%);
	background: -o-linear-gradient(top, #f4f4f4 0%, #fbfbfb 100%);
	background: -webkit-linear-gradient(top, #f4f4f4 0%, #fbfbfb 100%);
	background: -ms-linear-gradient(top, #f4f4f4 0%, #fbfbfb 100%);
	background: linear-gradient(top, #f4f4f4 0%, #fbfbfb 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f4f4f4', endColorstr='#fbfbfb', GradientType=0);
}

@media only screen and (max-width: 479px) {
	.menu_main {
		visibility: hidden;
	}
}

@media only screen and (min-width: 480px) {
	.menu_main {
		visibility: visible;
	}
}

.menu_main ul.menu li {
	list-style: none;
	background-color: #ffffff;
	margin-bottom: 3px;
	border-width: 3px;
	border-style: solid;
}

.menu_main ul.menu li.gp {
	border-color: #36c33b;
}

.menu_main ul.menu li.sp {
	border-color: #ffcc00;
}

.menu_main ul.menu li.nhp {
	border-color: #853b19;
}

.menu_main ul.menu li.eb {
	border-color: #ffa500;
}

.menu_main ul.menu li a {
	display: block;
	height: 29px;
	line-height: 29px;
	text-decoration: none;
	text-transform: uppercase;
	background: url('/i/arrow.png') no-repeat 5px center;
	padding-left: 36px;
	color: #9c9e9f;
	font-size: 15px;
}

.menu_main ul.menu li a:hover {
	text-decoration: underline;
}

.menu_main ul.menu li.active a {
	background: url('/i/arrow_active.png') no-repeat 5px center;
	color: #00AE42;
}

.menu_main ul.sub_menu li {
	list-style: none;
	background-color: #ffffff;
	margin-bottom: 3px;
	border-style: none;
}

.menu_main ul.sub_menu li a {
	display: block;
	height: 25px;
	line-height: 25px;
	text-decoration: none;
	text-transform: uppercase;
	padding-left: 48px;
	font-size: 12px;
}

.menu_main ul.sub_menu li a:hover {
	text-decoration: underline;
}

.menu_main ul.sub_menu li.sub_passive a {
	background: url('/i/sub_arrow.png') no-repeat 5px center;
	color: #9c9e9f;
}

.menu_main ul.sub_menu li.sub_active a {
	background: url('/i/sub_arrow_active.png') no-repeat 5px center;
	color: #00AE42;
}

#menu_overlay {
	left: 10px;
	visibility: hidden;
	z-index: 10;
	border: 2px solid #36c33b;
	border-radius: 8px;
	box-shadow: 3px 3px rgba(0, 0, 0, 0.3);
}

@media only screen and (max-width: 479px) {
	#menu_overlay:target {
		visibility: visible;
	}
}

.closer {
	position: relative;
	top: 0px;
	right: 5px;
	float: right;
	height: 15px;
	color: #000000;
	text-decoration: none;
}

#content_main {
	padding-right: 20px;
	width: 50%;
	float: left;
}

#content_main ul li {
	list-style: none;
	padding-left: 15px;
	margin-bottom: 10px;
}

#content_main ul li.gp {
	background: url('/i/list-gp.png') no-repeat 0px 3px;
}

#content_main ul li.sp {
	background: url('/i/list-sp.png') no-repeat 0px 3px;
}

#content_main ul li.eb {
	background: url('/i/list-eb.png') no-repeat 0px 3px;
}

#content_main ul li.nhp {
	background: url('/i/list-nhp.png') no-repeat 0px 3px;
}

#content_main a {
	text-decoration: none;
}

#content_news {
	position: fixed;
/*	padding-left: 20px; */
	padding-bottom: 2px;
	width: 248px;
	right: 20px;
/*	float: right; */
	border-width: 3px;
	border-style: solid;
	background-color: #ffffff;
}

@media only screen and (max-width: 479px) {
	#content_news:target {
		visibility: visible;
	}
}

#content_news .gp {
	border-color: #36c33b;
}

#content_news .sp {
	border-color: #ffcc00;
}

#content_news .nhp {
	border-color: #853b19;
}

#content_news .eb {
	border-color: #ffa500;
}

@media only screen and (max-width: 1099px) {
	#content_news {
		visibility: hidden;
	}
}

@media only screen and (min-width: 1100px) {
	#content_news {
		visibility: visible;
	}
}

#news_overlay {
	left: 10px;
	visibility: hidden;
	z-index: 10;
	border: 2px solid #36c33b;
	border-radius: 8px;
	box-shadow: 3px 3px rgba(0, 0, 0, 0.3);
}

#news_overlay:target {
	visibility: visible;
	opacity: 1;
	transition: opacity 0.5s;
}

h3.news_title {
	height: 29px;
	line-height: 29px;
	padding-left: 36px;
	text-transform: uppercase;
	margin-bottom: 0px;
	color: #00ae42;
}

ul.news_header li {
	list-style: none;
	background-color: #ffffff;
	margin-bottom: 3px;
	border-width: 3px;
	border-style: none;
}

ul.news_header li.gp {
	border-color: #36c33b;
}

ul.news_header li.sp {
	border-color: #ffcc00;
}

ul.news_header li.nhp {
	border-color: #853b19;
}

#news_main ul li {
	list-style: none;
	padding-left: 15px;
	margin-bottom: 10px;
}

#news_main ul li.gp {
	background: url('/i/list-gp.png') no-repeat 0px 3px;
}

#news_main ul li.sp {
	background: url('/i/list-sp.png') no-repeat 0px 3px;
}

#news_main ul li.eb {
	background: url('/i/list-eb.png') no-repeat 0px 3px;
}

#news_main ul li.nhp {
	background: url('/i/list-nhp.png') no-repeat 0px 3px;
}

@media only screen and (max-width: 479px) {
	#content_main {
		padding-left: 20px;
	}
}

@media only screen and (min-width: 480px) {
	#content_main {
		padding-left: 274px;
	}
}

fieldset {
	border: 1px solid #CCCCCC;
	padding: 10px;
	margin-bottom: 15px;
}

fieldset legend {
	font-weight: bold;
}

.field_wrapper {
	margin-bottom: 10px;
}

.label_wrapper {
	margin-bottom: 2px;
}

label .star {
	color: red;
}

label.required {
	font-weight: bold;
}

label.invalid {
	color: red;
}

input, textarea {
	border-left: 1px solid #CCCCCC;
	border-top: 1px solid #CCCCCC;
	border-right: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	padding: 5px 5px 5px 5px;
	width: 350px;
	font-family: 'Arial';
	font-size: 12px;
	color: #58585A;
}

textarea {
	height: 100px;
	resize: none;
}

input:focus, textarea:focus {
	background-color: #E5F6EC;
}

button::-moz-focus-inner {
	border: none;
	padding: 0px;
}

button.button_submit {
	font-family: 'Arial';
	font-size: 12px;
	color: #FFFFFF;
	background-color: #04B040;
	background: -moz-linear-gradient(top, #04B040 0%, #36C43C 100%);
	background: -o-linear-gradient(top, #04B040 0%, #36C43C 100%);
	background: -webkit-linear-gradient(top, #04B040 0%, #36C43C 100%);
	background: -ms-linear-gradient(top, #04B040 0%, #36C43C 100%);
	background: linear-gradient(top, #04B040 0%, #36C43C 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#04B040', endColorstr='#36C43C', GradientType=0);
	border: none;
	padding: 5px 10px 5px 10px;
	font-weight: bold;
	cursor: pointer;
}

.overlay {
	box-sizing: border-box;
	background-color: #fff;
	border: 2px solid #c0c0c0;
	border-radius: 10px;
	visibility: hidden;
	display: inline-block;
	width: 570px;
	height: auto;
	position: fixed;
	left: 50%;
	margin-left: -205px;
	top: 220px;
	padding: 5px 20px 25px;
	z-index: 10;
	opacity: 0;
	transition: opacity 0.5s;
}

.overlay:target {
	visibility: visible;
	opacity: 1;
	transition: opacity 0.5s;
}

.ri {
	float: right;
}

.arrow {
	position: absolute;
	bottom: 0;
	right: 0;
}

.user {
}

.domain:before {
	content: "@";
}

table.kursplan, th.kursplan, td.kursplan {
	border: 1px solid #000000;
/*	border-collapse: collapse; */
}

th.event, td.event {
	background-color: #ffffff;
	width: 18%;
	height: 20px;
}

td.clock, th.clock {
	background-color: #ffffff;
	width: 10%;
	height: 20px;
}

td.odd {
	background-color: #ffffff;
}

td.even {
	background-color: #e5e5e5;
}

td.reha-plus {
	border: 1px solid #000000;
	border-radius: 5px;
	background-color: #95c11f;
}

td.reha-basis {
	border: 1px solid #000000;
	border-radius: 5px;
	background-color: #4cbbec;
}

td.reha-premium {
	border: 1px solid #000000;
	border-radius: 5px;
	background-color: #ffed00;
}

td.tanz-gym {
	border: 1px solid #000000;
	border-radius: 5px;
	background-color: #eebbcc;
}

td.indoor-cycling {
	border: 1px solid #000000;
	border-radius: 5px;
	background-color: #d3d3d3;
}

td.pilates {
	border: 1px solid #000000;
	border-radius: 5px;
	background-color: #b277e8;
}

td.video {
	border: 1px solid #000000;
	border-radius: 5px;
	background-color: #ffffff;
}

td.kito {
	border: 1px solid #000000;
	border-radius: 5px;
	background-color: #ffffff;
}

td.yoga {
	border: 1px solid #000000;
	border-radius: 5px;
	background-color: #f5f5dc;
}

td.bbp {
	border: 1px solid #000000;
	border-radius: 5px;
	background-color: #d2b48c;
}

td.kraft {
	border: 1px solid #000000;
	border-radius: 5px;
	background-color: #ffffff;
}

td.kraft-bt {
	border: 1px solid #000000;
	border-radius: 5px;
	background-color: #4cbbec;
}

td.kraft-ub {
	border: 1px solid #000000;
	border-radius: 5px;
	background-color: #eebbcc;
}

td.gks {
	border: 1px solid #000000;
	border-radius: 5px;
	background-color: #009999;
}

td.zumba {
	border: 1px solid #000000;
	border-radius: 5px;
	background-color: #ffa500;
}

td.rbg {
	border: 1px solid #000000;
	border-radius: 5px;
	background-color: #ffff80;
}

@media only screen and (max-width: 479px) {
	span.small {
		visibility: visible;
	}

	span.big {
		visibility: hidden;
	}
}

@media only screen and (min-width: 480px) {
	span.small {
		visibility: hidden;
	}

	span.big {
		visibility: visible;
	}
}

table.pricelist {
	width: 100%;
	border: 1px solid #000000;
}

td.product, th.product {
	text-align: left;
	vertical-align: top;
	width: 40%;
}

td.description, th.dexcription {
	text-align: left;
	vertical-align: top;
	width: 40%;
}

td.price, th.price {
	text-align: left;
	vertical-align: top;
	width: 20%;
}

td.subtitle {
	text-align: center;
	background-color: #ffffff;
}

td.kurs, th.kurs {
	text-align: left;
	vertical-align: top;
	width: 60%;
}

td.duration, th.duration {
	text-align: left;
	vertical-align: top;
	width: 20%;
}

th.product, th.description, th.price, th.kurs, th.duration {
	background-color: #ffffff;
}

td.news {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 150px;
}
