@charset "utf-8";

@font-face {
    font-family: 'Stretto';
    src: url('Stretto.woff2') format('woff2'),
         url('Stretto.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

html,
html * {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

header {
	width: 100%;
	background-image: none;
	position: relative;
	z-index: 500;
}

body {
	font-family: Google Sans Flex, sans-serif;
	font-weight: 600;
	font-size: 100%;
	background-color: #f6e9c0;
	background-image: url(bg_26_01.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-attachment: fixed;
	z-index: 0;
}

body.page-01 {
	background-image: url(bg_26_02.png);
	background-attachment: fixed;
}

img { 
	width: 100%;
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

footer {
	margin-top: 25px;
	padding-top: 4em;
	padding-bottom: 4em;
}

h1 {
	font-family: Stretto, sans-serif;
	font-weight: 400;
	font-size: 130px;
	color: #4e524f;
	letter-spacing: -1px;
	line-height: .8;
}

h2 {
	font-family: Google Sans Flex, sans-serif;
	font-weight: 800;
	font-size: 32px;
	text-transform: uppercase;
	color: #4e524f;
	letter-spacing: normal;
	line-height: 1;
}

h3 {
	font-family: Google Sans Flex, sans-serif;
	font-weight: 600;
	font-size: 24px;
	text-transform: uppercase;
	color: #4e524f;
	letter-spacing: normal;
	line-height: 1.5;
}

h4 {
	font-family: Google Sans Flex, sans-serif;
	font-weight: 500;
	font-size: 18px;
	color: #4e524f;
	letter-spacing: normal;
	line-height: 1.5;
	padding: 0 5vw;
}

p {
	font-family: Google Sans Flex, sans-serif;
	font-weight: 500;
	font-size: 14px;
	color: #4e524f;
	letter-spacing: normal;
	line-height: 1.5;
}

.star {
  	font-family: 'Material Symbols Outlined';
  	font-weight: normal;
  	font-size: 48px;
	color: #fd505d;
	line-height: 1.5;
	text-align: center;
}


.enter-grafik {
	height: 100vh;
	
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 20px;
}
.enter-grafik a img {
	display: inline;
	width: auto;
	max-height: 90vh;
}

#cssfade { 
	background-image: url(enter_logo_ovr.png);
	background-repeat: no-repeat;
	background-size: contain;
	
}
#cssfade img {
	-webkit-transition: all ease .3s;
	-moz-transition: all ease .3s;
	-o-transition: all ease .3s;
	-ms-transition: all ease .3s;
	transition: all ease .3s;
}
#cssfade img:hover {
	opacity: 0;
}


.site-logo-lg {
	display: none;
}

.site-logo-sm {
	display: block;
	position: relative;
	width: auto;
	padding: 3vw;
}
.site-logo-sm img {
	display: flex;
	width: auto;
	margin-left: auto;
	margin-right: auto;
	margin-top: 10px;
}
.logo {
	opacity: 1;
}

.site-nav ul {
	display: none;
	overflow: hidden;
}

#click {
	display: none;
}

#click:checked ~ .site-nav ul {
	display: block;
	position: fixed;
	z-index: 600;
	list-style-type: none;
	padding-top: 0px;
	animation: move .5s forwards;
}

@keyframes move {
	0% {width: 0;}
	100% {width: 100%}
}

.site-nav {
	margin-bottom: 66px;
}

.site-nav ul {
	background-color: #4e524f;
	background-image: none;
	background-repeat: no-repeat;
	background-size: cover;
	background-attachment: fixed;
}

.site-nav ul li {
	
	width: 95%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 5px;
	margin-bottom: 5px;
}

.site-nav ul li a {
	font-family: Google Sans Flex, sans-serif;
	font-weight: 700;
	font-size: 36px;
	color: #f6e9c0;
	line-height: 1.5;
	margin-left: 2vw;
	text-transform: uppercase;
	text-decoration: none;
	-webkit-transition: color .3s;
	transition: color .3s;
}
.site-nav ul li a:hover {
	color: #fd505d;
}

#click:checked ~ label .twoham {
	opacity: 0;
}
#click:checked ~ label .oneham {
	transform: rotate(-45deg); top: 30px;
	transition: transform .3s;
}
#click:checked ~ label .thrham {
	transform: rotate(45deg); top: 30px;
	transition: transform .3s;
}
	
.line {
	width: 50px;
	height: 5px;
	background-color: #f6e9c0;
	border-radius: 2px;
	position: absolute;
}

.oneham {
	top: 15px;
}

.twoham {
	top: 30px;
}

.thrham {
	top: 45px;
}

.hamburger {
	width: 100%;
	height: 66px;
	background-color: #4e524f;
	background-image: none;
	background-repeat: no-repeat;
	background-size: cover;
	background-attachment: fixed;
	border-radius: 0px;
	margin: 0;
	padding-left: 10px;
	padding-right: 10px;
	position: fixed;
	top: 0;
	z-index: 1000;
	cursor: pointer;
}


.row {
	position: relative;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 25px;
	overflow: hidden;
}

.page {
	position: relative;
	display: block;
	line-height: 1;
	width: auto;
	max-width: 1100px;
	padding-left: 2vw;
	margin-bottom: 25px;
	overflow: hidden;
}

.page h1 {
	font-size: 32px;
	margin-top: 0px;
}

.col {
	display: flex;
	height: auto;
}

.left {
	display: block;
	padding: 0 2vw;
	width: 40%;
	text-align: right;
}

.right {
	display: block;
	padding: 0 2vw;
	width: 60%;
	text-align: left;
}

.tab {
	display: flex;
	background-color: #fd505d;
	height: auto;
	width: 280px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 25px;
}

.tick {
	vertical-align: middle;
	text-align: start;
	padding: 5px 5px 5px 15px;
	margin: 5px;
}
.tick h1 {
	font-size: 72px;
	color: #f6e9c0;
}
.tick h2 {
	color: #f6e9c0;
}
.tick h3 {
	color: #f6e9c0;
}
.tick p {
	color: #f6e9c0;
}

.col p {
	font-size: 20px;
}

.art img {
	position: relative;
	max-width: auto;
	vertical-align: middle;
}

.text {
	display: block;
	line-height: 1.5;
	width: auto;
	max-width: 800px;
	margin-bottom: 25px;
	margin-left: auto;
	margin-right: auto;
	color: #4e524f;
}

.text h3 {
	margin-top: 25px;
	margin-bottom: 25px;
	padding: 0 5vw;
}

.text p {
	text-align: justify;
	font-size: 18px;
	font-weight: 500;
	padding: 0 5vw;
}

.news {
	display: block;
	line-height: 1.5;
	width: auto;
	max-width: 1000px;
	margin-bottom: 25px;
	margin-left: auto;
	margin-right: auto;
}

.news img {
	margin-bottom: 50px;
	margin-top: 50px;
}

.news h1 {
	margin-top: 0px;
	margin-bottom: 0px;
	padding: 0 2vw;
	text-align: center;
}

.news h2 {
	margin-top: 25px;
	margin-bottom: 25px;
	padding: 0 2vw;
	text-align: center;
}

.news h3 {
	margin-top: 25px;
	margin-bottom: 25px;
	padding: 0 2vw;
	text-align: center;
	line-height: 1;
}

.news h4 {
	margin-top: 25px;
	margin-bottom: 25px;
	padding: 0 2vw;
	text-align: center;
}

.news p {
	text-align: justify;
	font-size: 20px;
	padding: 0 5vw;
}

.day {
	display: block;
	background-color: #fd505d;
	height: auto;
	width: auto;
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
	padding: 5px 0px;
}
.day h2 {
	text-align: center;
	color: #f6e9c0;
}

.drive {
	display: block;
	background-color: #fd505d;
	height: auto;
	width: auto;
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 25px;
}
.car {
	vertical-align: middle;
	text-align: left;
	padding: 25px 25px;
}
.car h1 {
	color: #f6e9c0;
}
.car h2 {
	text-align: center;
	color: #f6e9c0;
}
.car h3 {
	color: #f6e9c0;
}
.car h4 {
	color: #f6e9c0;
}
.car p {
	color: #f6e9c0;
	font-size: 20px;
}

.autobahn {
	border-radius: 10px;
	background-color: #3192d0;
	padding: 0 10px;
}

.back {
	display: block;
	margin-top: 20px;
	max-width: 100px;
	margin-left: auto;
	margin-right: auto;
	font-family: Google Sans Flex, sans-serif;
	font-weight: 700;
	font-size: 24px;
	color: #f6e9c0;
	text-decoration: none;
	text-align: center;
	border-width: 2px;
	border-style: solid;
	border-radius: 20px;
	border-color: #4e524f;
	background-color: #4e524f;
	padding: 4px 14px 5px;
	transition: all .3s;
}

.back:hover {
	color: #f6e9c0;
	border-color: #fd505d;
	background-color: #fd505d;
}

.agb {
	display: block;
	margin-top: 20px;
	max-width: 95px;
	margin-left: auto;
	margin-right: auto;
	font-family: Google Sans Flex, sans-serif;
	font-weight: 700;
	font-size: 24px;
	color: #f6e9c0;
	border-color: #4e524f;
	background-color: #4e524f;
	text-decoration: none;
	text-align: center;
	border-width: 2px;
	border-style: solid;
	border-radius: 20px;
	padding: 4px 14px 5px;
	transition: all .3s;
}

.agb:hover {
	color: #f6e9c0;
	border-color: #fd505d;
	background-color: #fd505d;
}

.jp-audio {
	position: relative;
	max-width: auto;
	margin-left: auto;
	margin-right: auto;
	padding: 2vw 2vw 0 2vw;
}


.note {
	line-height: 1.25;
	font-size: 14px;
	text-align: right;
	float: right;
	margin-right: 50px;
}

.auto-resizable-iframe {
  max-width: 1000px;
  margin: 0px auto;
}

.auto-resizable-iframe > div {
  position: relative;
  padding-bottom: 56.25%;
  height: 0px;
}

.auto-resizable-iframe iframe {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
}

.video {
	display: block;
	width:auto;
	margin-left: auto;
	margin-right: auto;
	margin-top: 25px;
	margin-bottom: 25px;
}

.event {
	display: block;
	width: auto;
	height: auto;
	max-width: 500px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 0px;
	margin-bottom: 0px;
	padding: 0;
	
}

.band-link {
		position: relative;
		width: 100%;
		margin-bottom: 50px;
	}
	.band-link ul {
		display: block;
		list-style-type: none;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
		width: auto;
	}
	#click:checked ~ .band-link ul {
		padding-top: 0;
		padding-bottom: 0;
		position: relative;
		animation: none;
	}
	.band-link ul li {
		display: inline-block;
		border-bottom: none;
		width: auto;
		margin-bottom: 10px;
	}
	.band-link ul li a {
		font-family: Stretto, sans-serif;
		font-weight: 400;
		font-size: clamp(115px, 12vw, 160px);
		color: #4e524f;
		letter-spacing: -1px;
		line-height: 0.5;
		margin-right: 2vw;
		margin-left: 2vw;
		padding: 0, 2vw;
		text-decoration: none;
		-webkit-transition: color .3s;
		transition: color .3s;
	}
	.band-link ul li a:hover {
		color: #fd505d;
	}

.media-link {
		position: relative;
		width: 100%;
	}
	.media-link ul {
		display: block;
		list-style-type: none;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
		width: auto;
	}
	#click:checked ~ .media-link ul {
		padding-top: 0;
		padding-bottom: 0;
		position: relative;
		animation: none;
	}
	.media-link ul li {
		display: inline-block;
		border-bottom: none;
		width: auto;
		margin-bottom: 50px;
	}
	.media-link ul li a {
		font-family: Stretto, sans-serif;
		font-weight: 400;
		font-size: clamp(100px, 12vw, 140px);
		color: #4e524f;
		letter-spacing: -1px;
		line-height: 0.5;
		margin-right: 2vw;
		margin-left: 2vw;
		padding: 0, 2vw;
		text-decoration: none;
		-webkit-transition: color .3s;
		transition: color .3s;
	}
	.media-link ul li a:hover {
		color: #fd505d;
	}

.map-link {
		position: relative;
		width: 100%;
	}
	.map-link ul {
		display: block;
		list-style-type: none;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
		width: auto;
	}
	#click:checked ~ .map-link ul {
		padding-top: 0;
		padding-bottom: 0;
		position: relative;
		animation: none;
	}
	.map-link ul li {
		display: inline-block;
		border-bottom: none;
		width: auto;
		margin-bottom: 0;
	}
	.map-link ul li a {
		font-family: Stretto, sans-serif;
		font-weight: 400;
		font-size: clamp(80px, 5vw, 90px);
		color: #4e524f;
		letter-spacing: -1px;
		line-height: 0.5;
		margin-right: 2vw;
		margin-left: 2vw;
		padding: 0, 2vw;
		text-decoration: none;
		-webkit-transition: color .3s;
		transition: color .3s;
	}
	.map-link ul li a:hover {
		color: #fd505d;
	}

	
.googlemap-responsive{
    overflow:hidden;
    padding-bottom:56.25%;
    position:relative;
    height:0;
}
.googlemap-responsive iframe{
    left:0;
    top:0;
    height:100%;
    width:100%;
	max-width: 1000px;
    position:absolute;
}

.legal {
	display: block;
	line-height: 1.5;
	width: auto;
	max-width: 800px;
	margin-bottom: 5px;
	margin-left: auto;
	margin-right: auto;
}

.legal p {
	text-indent: 25px;
	text-align: justify;
	font-size: 14px;
	padding: 0 5vw;
}

.imp {
	display: block;
	line-height: 1.5;
	width: auto;
	max-width: 400px;
	margin-bottom: 5px;
	margin-left: auto;
	margin-right: auto;
}

.imp p {
	text-indent: 25px;
	text-align: justify;
	font-size: 14px;
	padding: 0 5vw;
}

hr.solid {
	height: 2px;
	background-color: #a39f88;
	border: none;
	position: relative;
	width: 85%;
	max-width: 1000px;
	margin: 50px auto 50px auto;
}


.footer-content {
	width: 85%;
	margin: 0 auto;
}
.footer-social {
	display: block;
	width: 100%;
	list-style-type: none;
	text-align: center;
}
.footer-social li {
	line-height: 4.5em;
	display: inline-block;
	margin: 0 1.2em;
}
.footer-social li a {
	line-height: 3em;
	display: inline-block;
	width: 3.5em;
	height: 3.5em;
	text-align: center;
	border: 2px solid #4e524f;
	background-color: #4e524f;
	border-radius: 50%;
	transition: all .3s;
}
.footer-social li a:hover {
	border-color: #fd505d;
	background-color: #fd505d;
}
.footer-social li a img {
	width: auto;
	height: auto;
}
.footer-social li a .social-hover {
	display: none;
}
.footer-social li a:hover .social-default {
	display: none;
}
.footer-social li a:hover .social-hover {
	display: inline;
}

.footer-info {
	padding-top: 3em;
	line-height: 1.25;
	margin-bottom: 50px;
	clear: both;
}
.footer-info p {
	font-size: .8em;
	color: #4e524f;
	max-width: 36em;
	margin-bottom: .5em;
}

.footer-right {
	float: right;
	width: 40%;
	text-align: right;
	position: relative;
	line-height: 1.5;
}
.footer-right a {
	text-decoration: none;
	color: #4e524f;
}
.footer-right a:hover {
	color: #fd505d;
}

.footer-legal {
	opacity: 1;
	float: left;
	width: 60%;
	position: relative;
	line-height: 1.5;
}


/*Tablet View*/

@media (min-width: 768px){
		
	.site-logo-sm {
	display: none;
	}
	
	.site-logo-lg {
	display: block;
	position: relative;
	width: auto;
	padding: 15px;
	margin-top: 75px;
	}
	
	.site-logo-lg img {
	display: flex;
	width: auto;
	margin-left: auto;
	margin-right: auto;
	}
	
	h1 {
		font-size: 72px;
	}
	
	h2 {
		font-size: 36px;
	}
	
	h3 {
		font-size: 26px;
	}
	
	h4 {
		font-size: 22px;
		padding: 0;
	}
	
	.star {
  	font-size: 60px;
	}
	
	.line {
		display: none;
	}
	.hamburger {
		display: none;
	}
	
	.site-nav {
		position: fixed;
		top: 0;
		width: 100%;
		z-index: 1000;
	}
	.site-nav ul {
		display: block;
		list-style-type: none;
		background-color: #4e524f;
		background-image: none;
		background-repeat: no-repeat;
		background-size: cover;
		background-attachment: fixed;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 100px;
		text-align: center;
		width: auto;
		height: 50px;
	}
	#click:checked ~ .site-nav ul {
		padding-top: 0;
		padding-bottom: 0;
		position: relative;
		animation: none;
	}
	.site-nav ul li {
		display: inline-block;
		padding-top: 7px;
		border-bottom: none;
		width: auto;
		margin: 0;
	}

	.site-nav ul li a {
		font-size: 21px;
		margin-right: 2vw;
	}
	
	.row {
		max-width: 900px;
	}
	
	.page h1 {
		font-size: 42px;
		margin: 0;
		margin-top: 0px;
		width: 100%;
	}
	
	.tab {
		margin: 0 25px;
	}
	
	.tick {
		display: inline-block;
	}
	
	.col-md-one-half {
		float: left;
		position: relative;
  		left: 19%;
  		transform: translateX(-21%);
	}
	
	.text {
		margin-top: 0px;
		vertical-align: middle;
	}
	
	.text h1 {
		font-size: 40px;
		text-align: left;
	}
	
	.text h2 {
		font-size: 36px;
		text-align: left;
	}
	
	.news h1 {
		font-size: 150px;
		padding: 0 2vw;
	}
	
	.car {
	padding: 25px 50px;
	}

	.footer-info {
		margin-bottom: 25px;
	}
	
	.footer-content {
		width: 85%;
		margin: 0 auto;
	}

}

/*Desktop View*/

@media (min-width: 1008px){
	
	.site-logo-lg {
		padding: 30px 2vw 20px;
		margin-top: 75px;
	}
	
	.row {
		max-width: 1100px;
	}
	
	h1 {
		font-size: 72px;
	}
	
	h2 {
		font-size: 44px;	
	}
	
	h3 {
		font-size: 28px;	
	}
	
	h4 {
		font-size: 24px;	
	}
	
	.star {
  		font-size: 72px;
	}

	.site-nav ul {
		height: 60px;
	}
	
	.site-nav ul li a {
		font-size: 28px;
	}
	
	.page h1 {
		font-size: 60px;
		margin-top: 0px;
		margin-bottom: 0px;
	}
	
	.tab {
		width: 300px;
	}
	
	.col-md-one-half {
		left: 25%;
  		transform: translateX(-27%);
	}
	
	.tick {
	padding: 5px 5px 5px 25px;
	}
	
	.tick h1 {
		font-size: 80px;
	}
	
	.text h3 {
		padding: 0;
	}
	
	.text p {
		padding: 0;
	}
	
	.news h1 {
		font-size: 160px;
		padding: 0 2vw;
	}

	.news p {
		padding: 0;
	}
	
	.car {
	padding: 25px 35px;
	}
	
	.legal p {
	padding: 0;
	}
	
	.footer-content {
		width: 64%;
	}
	
}


