.akkordeon label {
	padding: 0.5em 1em;
	margin-bottom: 0.2em;
	position: relative;
	display: block;
	height: 3em;
	cursor: pointer;
	background: #666666;
	color: white;
	font-size: 0.8em;
}


.akkordeon {
	width: 100%;
	padding: 0.2em;
	background: white;
	border: 0px solid #8a9da8;
}


.akkordeon label:hover {
	background: #cccccc;
	color: black;
}

.akkordeon input + label {
	transition: all 0.9s ease-in-out;
}

.akkordeon input:checked + label,
.akkordeon input:checked + label:hover {
	background: 666666;
}

.akkordeon input {
	display: none;
}

.akkordeon p {
	overflow: hidden;
	height: 0;
	margin: 0;
	transition: all 0.9s ease-in-out;
}

.akkordeon input:checked ~ p {
	transition: all 0.9s ease-in-out;
	overflow: auto;
    min-height: 14.5em;
    
}

/*.akkordeon label:before {
    content: '+';
    padding: 0 12px 0 5px;
}

.akkordeon [type=checkbox]:checked ~ label:before {
    content: '-';
    padding: 0 14px 0 7px;
}*/

.akkordeon label:after {
    content: "+";
    font-size: 1.2em;
    float: right;
    background: darkgrey;
    padding: 0px 4px 2px 4px;
}

.akkordeon [type=checkbox]:checked ~ label:after {
    content: '-';
    font-size: 1.2em;
    float: right;
    background: darkgray;
    padding: 0px 4px 2px 4px;
}

@media screen and (min-width: 320px) {

.akkordeon label {
	font-size: 0.9em;
	height: 2.2em;
}
}

@media screen and (min-width: 400px) {

.akkordeon label {
	font-size: 1.1em;
	height: 2.2em;
}
}

@media screen and (min-width: 800px) {

.akkordeon label {
	font-size: 1.3em;
}
}