/* clearfix */
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

.clearfix {
	display: inline-block;
}
/* start commented backslash hack \*/
* html .clearfix {
	height: 1%;
}

.clearfix {
	display: block;
}
/* close commented backslash hack */

html {
	font-family: 'Raleway', sans-serif;
	font-size: 18px;
	text-align: center;
	color: #ffffff;
	font-weight: 300;
	line-height: 1.6;
}
body {
	background-color: #958e7a;
}
img {
	max-width: 100%;
	height: auto;
}
h1,
h2 {
	font-family: 'Gochi Hand', cursive;
	text-transform: uppercase;
}
h1 {
	font-size: 60px;
}
h2 {
	font-size: 30px;
	margin: 20px
}
a {
	transition: color 0.3s ease;
}
.wrapper {
	width: 100%;
	max-width: 1024px;
	margin: 110px auto 70px;
	padding: 0 20px;
	box-sizing: border-box;
}
.wrapper > .container {
	width: 100%;
	max-width: 768px;
	margin: 0 auto;
}
@media screen and (max-width: 1023px) {
	h1 {
		font-size: 40px;
	}
	h2 {
		font-size: 25px;
	}
}
@media screen and (max-width: 767px) {
	.wrapper {
		margin: 20px auto;
	}
	html {
		font-size: 14px;
	}
	h1 {
		font-size: 30px;
	}
	h2 {
		font-size: 18px;
	}
}
/*Liste (4 Spalten)*/
.rows-4 li {
	float: left;
	width: 25%;
}
/*Bilder Liste*/
.image-list {
	padding: 0;
	list-style: none;
}
.image-list a {
	display: block;
	position:relative;
}
.image-list a:before {
	content: "";
	background-color: #958e7a;
	opacity: 0;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	transition: opacity 0.3s ease;
}
.image-list img {
	display: block;
	width: 100%
}
.image-list a:hover:before,
.image-list a:focus:before {
	opacity: 0.4;
}
/*Öffnungszeiten*/
.opening {
	width: 100%;
	max-width: 450px;
	margin: 0 auto 70px;
}
.opening dl {
	margin-top: 26px;
	line-height: 1.4;
}
.opening dd {
	margin: 0;
	float: left;
	text-align: left;
	margin: 2px 0;
}
.opening dd:first-child,
.opening dd:nth-child(2n+1){
	width: 30%;
}
.opening dd:nth-child(2n){
	width: 70%;
	padding-left: 10px;
	box-sizing: border-box;
}
@media screen and (max-width: 767px) {
	.opening {
		margin-bottom: 20px;
	}
	.opening dd:first-child,
	.opening dd:nth-child(2n+1),
	.opening dd:nth-child(2n){
		width: 100%;
		padding-left: 0;
		box-sizing: border-box;
		text-align: center;
	}
	.opening dd:nth-child(2n){
		margin-bottom: 12px;
	}
}
/*Standort*/
.location a {
	color: #fff;
	text-decoration: none;
}
.location a:hover,
.location a:focus {
	color: #000;
}
/*Karte*/
.map {
	margin-top: 45px;
}
.google-map {
	height: 370px;
}
@media screen and (max-width: 767px) {
	.google-map {
		height: 250px;
	}
}