@media only screen and (min-width: 980px) { .mobile-only { display: none !important; } }
@media only screen and (max-width: 979px) { .desktop-only { display: none !important; } }

@media only screen and (min-width: 1460px) {
	body > * > .cols { width: 1440px; }
}

/*
@media only screen and (max-width: 1439px) {
	.cols { width: 1200px; }
	#keyvisual { height: 350px; }
}
*/

@media only screen and (max-width: 1459px) {
	body > * > .cols { width: 960px; }
	#logo { width: auto; padding: 5px; }
	#logo img { max-height: 160px; }
	#headerbox { width: 83.3334%; }
	#meganav { width: 83.3334%; }
	#meganav .level1 ul { top: 77px; padding: 1.75rem; font-size: 1rem; }
	#meganav .level1 > li > a { width: 125px; font-size: 1rem; padding-right: 10px; }
	#meganav .level1 > li:first-child > a { width: 90px; }
	.home #keyvisual, .simple #keyvisual { height: 300px; }
	.news-list-view .article { float: none; width: auto; }
	.news-list-view .article:nth-child(2n+1) { margin-right: 0; clear: none; }
}

@media only screen and (max-width: 979px) {
	html { overflow-y: scroll; }
	html.no-scroll { overflow-y: hidden; }
	/*body { margin-top: 70px; }*/
	body > * > .cols { width: 100%; }
	header { padding: 10px 1rem; }
	#logo { padding: 0 1rem 10px 0; }
	#logo img { max-width: none; height: 80px; }
	#headerbox { width: 100%; padding: 0; }
	#headerbox > * { flex: 0 0; }
	#headerbox > *:last-child { flex: 1 1; }
	#search { width: auto; }
	#search form > * { flex: 0 0; }
	#search form > *:first-child { flex: 1 1; }
	#search input { width: 100%; }
	#submenu { display: none; }
	.home #keyvisual, .simple #keyvisual { height: 0; padding-bottom: 31.25%; }
	.default #keyvisual { margin-top: 0; }
	.home main { padding-top: 0; padding-bottom: 0; }
	#breadcrumbmenu { display: none; }
	main .cols > * { width: 100%; float: none; text-align: left; }
	#bottom .cols, footer .cols { text-align: center; }
	#bottom .cols > *, footer .cols > * { width: 100%; float: none; text-align: center; }
	#shortcuts, #categorymenu, #externalsitesmenu, footer { padding-top: 1.25rem; padding-bottom: 0.5rem; text-align: center; }
	#shortcuts, #categorymenu, #externalsitesmenu { background: #E9E7D7; }
	#shortcuts > li, #categorymenu > li, #externalsitesmenu > li, footer > .cols > * { width: auto; display: inline-block; padding: 0 .5rem .5rem .5rem; }
	#shortcuts > li i { display: inline-block; float: none; vertical-align: middle; width: 24px; height: 24px; line-height: 24px; font-size: 14px; margin-right: 3px; }
	#partner img { max-height: 80px; max-width: 180px; }
	footer { padding-bottom: 3rem; }
}

@media only screen and (max-width: 639px) {
	#mobilemenu { width: 100vw; right: -100vw; }
	#logo { padding: 0 1rem 5px 0; }
	#logo img { max-width: none; height: 60px; }
	
	.navigation-block .image-layout .cols-2 .image,
	.navigation-block .image-layout .cols-3 .image { width: 100%; }
	.navigation-block .image-layout .cols-4 .image,
	.navigation-block .image-layout .cols-5 .image,
	.navigation-block .image-layout .cols-6 .image,
	.navigation-block .image-layout .cols-7 .image,
	.navigation-block .image-layout .cols-8 .image { width: 50%; }
	
}

@media only screen and (max-width: 479px) {
	#search button { display: none; }
	
	.navigation-block .image-layout .cols-2 .image,
	.navigation-block .image-layout .cols-3 .image,
	.navigation-block .image-layout .cols-4 .image { width: 100%; }
	.navigation-block .image-layout .cols-5 .image,
	.navigation-block .image-layout .cols-6 .image,
	.navigation-block .image-layout .cols-7 .image,
	.navigation-block .image-layout .cols-8 .image { width: 50%; }

}