@charset "utf-8";
/* CSS Document */

@media only screen and (min-width: 980px) {    /* ---- Smaller Screens ---- */

	#navigation_background {
		position:	fixed;
		z-index:	10;
		width:		100%;
	}
	
}

@media only screen and (min-width: 980px) and (max-width: 1279px) {    /* ---- Smaller Screens ---- */
	#content_wrapper {
		width: 940px;
	}
	
	#content_main {
		width: 685px;
	}
	#keyvisual {
		height: 500px;
	}
}

@media only screen and (min-width: 10px) and (max-width: 979px) {    /* ---- Mobile ---- */

	#content_main {
		padding: 40px 0;
		width: 100%;
		min-width: 250px;
	}
	
	#head_wrapper_background {
		background: transparent;
	}
	
	#head_wrapper {
		height: auto;
		background: transparent;
	}
	
	#logo {
		margin-bottom: 10px;
		margin-top: 10px;
	}
	
	#navigation_background {
	}
	
	#navigation_wrapper {
		margin: auto;
		float: none;
		text-align: center;
		max-width: none;
		padding: 0;
		height: auto;
	}
	
	#navigation_wrapper .nav-menu-position {
		display: none;
	}
	
	#content_sidebar {
		float: none;
		margin: 0;
		width: auto;
		padding: 0 0 40px 0;
	}
	
	#header_wrapper {
		margin-top: 0;
	}
	
	#keyvisual {
		height: 300px;
	}
	
	#content_wrapper {
		width: auto;
		float: none;
	}
	
	#footer_wrapper {
		line-height:	3em;
	}
	#footer_wrapper a {
   	 	margin: 0 10px;
	}
	
	#container_content {
		margin: 0 15px;
	}
	
	#title_wrapper {
		text-align: center;
		float: none;
		margin: 0;
		padding-top: 20px;
		height: auto;
		position: relative;
		line-height: 2em;
	}
	
	#title_separator_normal {
		display: none;
	}
	
	#title_separator_mobile {
		display: inline;
	}
	
	#head_wrapper #subtitle_wrapper {
		display: block;
		text-align: center;
		width: auto;
		max-width: none;
	}
#title_wrapper .title, #title_wrapper .subtitle {
	font-size: inherit;
}

#title_wrapper p#big_title {
	font-size: inherit;
}

	
	#nav-dropdown-area {
		position: inherit;
		height: auto;
		width: auto;
		overflow-x: visible;
	}
	
	#head_wrapper h2#subtitle {
		display: block;
		margin-top: 42px;
	}
	
	#navigation_wrapper #cm_navigation {
		display: none;
		height: auto;
		margin: 0 auto;
		max-width: 300px;
		vertical-align: inherit;
		float: none;
	}
	
	#navigation_wrapper:hover #cm_navigation {
		display: inline-block;
	}
	
	#navigation_wrapper #nav-mobile-heading {
		display: block;
	}
	
	#cm_navigation > ul {
		position:	relative;
		width:		100%;
		margin: 0;
	}
	
	#cm_navigation > ul > li {
		display:		block;
		margin: 0;
		padding: 0;
	}
	
	#cm_navigation ul > li {
		padding: 0;
	}

	#cm_navigation > ul > li > a {
		display:		block;
		font-weight: bold;
		padding: 5px 20px;
	}
	
	#cm_navigation > ul > li.cm_has_subnavigation > ul {
		position:		relative;
		display:		none;
		text-align:				center;
		top: 0;
		left: 0;
		margin: 0;	
		min-width: inherit;
		max-width: none;
		width: auto;
		padding: 0;
	}

	#cm_navigation > ul > li.cm_has_subnavigation > ul > li {
		margin: 0;
		padding: 0;
	}

	#cm_navigation > ul > li.cm_has_subnavigation > ul > li > a {
		padding:	5px 20px;
		width:		auto;
		display: block;
	}
	
	#cm_navigation > ul > li > ul > li > ul { 
		padding:	0px;
		margin:		0px;
	}
	
	#cm_navigation > ul > li.cm_has_subnavigation:hover > ul {
		display: block;
	}
	
	#cm_navigation > ul > li > ul > li:hover > ul,
	#cm_navigation > ul > li > ul > li.subopen > ul {
		padding: 0;
		margin: 0px 0px;
	}
	
	#cm_navigation > ul > li > ul > li > ul > li {
		margin: 0;
		padding: 0;
	}
	
	#cm_navigation > ul > li > ul > li > ul > li > a {
		padding: 5px 20px;
		width:		auto;
		display: block;
	}
	
	#big_title {
		display: none;
	}

}



@media only screen and (max-width: 479px) { 
	#keyvisual {
		height: 200px;
	}
}