a { color: #666666; text-decoration: none; }
a:hover { color: red; }

nav ul
{
	margin: 0;
	padding: 0;
	list-style: none;
}

nav ul li a
{
	text-decoration: none;
}

#toggle-menu { display: none; margin: 20px; padding: 10px 0; }



/* navmain */
a#toggle-menu-button {
	font-size: 16px;
	padding: 10px;
	background-color: #eee;
	border-radius: 5px;
	width: auto;
}
nav#navmain { 
	padding-top: 38px;
	-webkit-transition: all 0.5s ease;  
	-moz-transition: all 0.5s ease;
	-ms-transition: all 0.5s ease;
	transition: all 0.5s ease; 
}
nav#navmain ul { 
	padding: 0px;
	margin: 0px;
	list-style: none;
	position: relative;
	display: inline-table;
}
nav#navmain > li > ul.sub-menu {
	min-width: 10em;
	padding: 4px 0;
	background-color: #f4f4f4;
	border: 1px solid #CCC;
}
nav#navmain ul li { padding: 0px; }
nav#navmain > ul > li { display: inline-block; }
nav#navmain > ul > li > ul { margin-left: 6px; }
nav#navmain > ul ul > li.has-submenu:after { content: '▸'; position: absolute; top: 0.2em; right: 0.5em; }
nav#navmain li a { display: block; text-decoration: none; }
nav#navmain li a { padding: 8px 17px 11px 17px; font-size: 20px; font-weight: 300; }
nav#navmain li a.current { color: #000; }
nav#navmain ul ul { 
	display: none; 
	position: absolute; 
	top:100%;
	min-width: 160px;
	background-color: #f4f4f4;
	border: 1px solid #CCC;
}
nav#navmain ul li:hover > ul { display: block; }
nav#navmain ul ul > li { position: relative; }
nav#navmain ul ul > li a { font-size: 16px; font-weight: 400; padding: 3px 15px 4px 10px; height: auto; background-color: #eee; }
nav#navmain ul ul > li a:hover { background-color: #ccc; color: #000; }
nav#navmain ul ul ul { position: absolute; left: 100%; top:0; }

nav#navmain a.plusminus { display: none; }

/* breadcrumbs */

#breadcrumbs ol {
	margin: 0 0 0 1em;
	padding: 0;
	list-style: none;
	display: inline;
}

#breadcrumbs ol li {
	display: inline-block;
	margin-right: 0.5em;
}

#breadcrumbs ol li a::after {
	margin-left: 0.5em;
	content: '>';
}

#breadcrumbs ol li:last-child a::after {
	margin-left: 0.5em;
	content: '';
}


/* nav legal */

nav#legal
{
	clear: left;
	max-width: 1024px;
	min-height: 60px;
	margin: 0 auto;
	padding: 0 20px;
}

nav#legal ul {  }
nav#legal ul li { box-sizing: border-box; padding: 4px 12px 4px 0; display: inline-block; }
nav#legal ul li a { font-size: 0.8em; }

/* nav support */

nav#navsupport
{
	clear: left;
	text-align: left;
	margin: 0 auto;
	padding-top: 20px;
	border-bottom: 1px solid #666666;
	overflow: auto;
}

nav#navsupport ul { list-style: none; margin: 0; padding: 0; }
nav#navsupport ul li { padding: 2px 12px 2px 0; display: inline-block; }
nav#navsupport ul li a { font-size: 1em; }
nav#navsupport ul li a:hover, nav#navsupport ul li a.current { color: black; }


/* Navi Bildschirmdiagonalen */

#navi_diagonalen { clear: left; padding-top: 20px; }

#navi_diagonalen ul { width: 100%; background-color: #ccc; overflow: auto; }

nav#navi_diagonalen ul li { float: left; }

#navi_diagonalen label { clear: left; float: left; display: block; padding: 4px 4px 4px 0; width: 90px; font-weight: bold; }

#navi_diagonalen a
{
	display: block;
	padding: 4px;
	background-color: #999;
	color: white;
	border-right: 2px solid #ccc;
	border-bottom: 2px solid #ccc;
}

#navi_diagonalen a:hover, #navi_diagonalen a.current { color: black; }

@media (max-width: 870px) {
	header { width: 100%; }

	#toggle-menu { display: block; }
	nav#navmain { clear: both; min-width: inherit; float: none; padding-top: 0; }
	nav#navmain, nav#navmain > ul ul { overflow: hidden; max-height: 0; background-color: #f4f4f4; }
	nav#navmain > li > ul.sub-menu { padding: 0px; border: none; }
	nav#navmain.active, nav#navmain > ul ul.active { max-height: 55em; }
	nav#navmain ul { display: inline; }
	nav#navmain > ul { border-top: 1px solid #808080; }
	nav#navmain li, nav#navmain > ul > li { display: block; position: relative; }
	nav#navmain li a { font-size: 16px; color: #000; display: block; padding: 0.8em; border-bottom: 1px solid #808080; position: relative; }
	nav#navmain li.has-submenu > a.plusminus {
		position: absolute;
		top: 0.7em;
		right: 1em;
		display: block;
		width: 1em;
		height: 1em;
		font-size: 1em;
		padding: 0.3em 0.5em 0.5em 0.5em;
		background-color: #ff1b00;
		color: white;
		border-radius: 1em;
		cursor: pointer;
	}
	nav#navmain > ul ul > li.has-submenu:after { content: ''; }
	nav#navmain li.has-submenu > a.plusminus.active {
		transform: rotate(180deg);
	}
	/*nav#navmain > ul ul > li.has-submenu:after { content: ''; }*/
	nav#navmain ul ul > li a { background-color: #e4e4e4; padding: 0.8em 2em; }
	nav#navmain ul ul ul > li a { background-color: #ccc; padding: 0.8em 3em; }
	nav#navmain ul ul, nav#navmain ul ul ul { display: inherit; position: relative; left: auto; top:auto; border:none; }
	#navsupport ul li { width: auto; } 
}