@charset "UTF-8";
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 400;
	src: local('Montserrat-Regular'), url(https://themes.googleusercontent.com/static/fonts/montserrat/v4/zhcz-_WihjSQC0oHJ9TCYL3hpw3pgy2gAi-Ip7WPMi0.woff) format('woff');
}

/* added */
html body {
		font-family: Montserrat, YuGothic, '游ゴシック', sans-serif;
}
figure {
	margin: 2em 0;
	text-align: center;
}
figure img {
	max-width: 100%;
	height: auto;
}
em {
	font-style: normal;
	font-size: 80%;
	margin-left: .5em;
	padding: .3em .5em;
	background-color: #c00;
	color: #fff;
}

#menu {
	background-color: rgba(0, 0, 0, .8);
	padding: 0;
	margin: 0;
	height: 2em;
}
#menu h1 {
	margin: 0;
	padding: .6em 1em 0;
	font-size: medium;
}
#menu nav {
	position: absolute;
	top: 0;
	right: 0;
	margin: 0;
	padding: 0;
}
#menu nav i {
	padding: .6em 1em 0 0;
}
#menu ul {
	margin: 0;
	padding: 0;
	overflow: hidden;
}
#menu a {
	text-decoration: none;
	border-bottom: none;
}
#menu ul.selected {
	position: absolute;
	z-index: 999;
	right: 0;
	width: 10em;
	list-style-type: none;
	background-color: rgba(0, 0, 0, .8);
}
#menu ul.selected a {
	display: block;
	padding: .5em .5em 0 .5em;
}
#menu ul.selected a:link,
#menu ul.selected a:visited {
	color: #ccc;
}
#menu ul.selected li:last-child a {
	padding-bottom: .8em;
}

#header p {
	margin: 1em 2em;
}
#header .button:hover {
	background-color: rgba(0, 0, 0, .5);
}

body.cat-services #header {
		background-image:
			url("images/overlay2.png"),
			url("../../images/cover02.jpg"),
			linear-gradient(45deg, #9dc66b 5%, #4fa49a 30%, #4361c2);
		background-position:
			top left,
			bottom center,
			center center;
}
body.cat-works #header {
		background-image:
			url("images/overlay2.png"),
			url("../../images/cover05.jpg"),
			linear-gradient(45deg, #9dc66b 5%, #4fa49a 30%, #4361c2);
		background-position:
			top left,
			bottom center,
			center center;
}
body.cat-corporate #header {
		background-image:
			url("images/overlay2.png"),
			url("../../images/cover04.jpg"),
			linear-gradient(45deg, #9dc66b 5%, #4fa49a 30%, #4361c2);
		background-position:
			top left,
			bottom center,
			center center;
}
body.cat-contact #header {
		background-image:
			url("images/overlay2.png"),
			url("../../images/cover07.jpg"),
			linear-gradient(45deg, #9dc66b 5%, #4fa49a 30%, #4361c2);
		background-position:
			top left,
			bottom center,
			center center;
}

.text-high {
	background-color: rgba(0, 0, 0, 0.7);
	padding: 0 .2em;
}
.s {
	font-size: 80%;
}
.ss {
	font-size: 60%;
}
.l {
	font-size: 140%;
}
.ll {
	font-size: 180%;
}
.error {
	color: #c00;
}
.text-right {
	text-align: right;
}
.text-left {
	text-align: left;
}
.text-center {
	text-align: center;
}
.img-hover {
	transition: all 0.5s ease-in-out;
}
a img:hover {
	opacity: 0.5;
}
.scrolly {
	background-color: rgba(0, 0, 0, 0.7);
}
.scrolly:hover {
	color: #000;
}

#bread-crumb {
	padding: .5em 0;
	border-bottom: 1px solid #666;
	background-color: #eee;
}
#bread-crumb ol {
	list-style: none;
	margin: 0;
	padding: 0;
}
#bread-crumb ol li {
	display: inline;
	font-size: 80%;
}

#back-to-top {
	padding: 0;
	margin-bottom: -2em;
	background-color: #eee;
}
#back-to-top a {
	padding: 0.5em;
	display: block;
	text-align: center;
	border-bottom: none;
}
#back-to-top a.scrolly {
	background-color: #eee;
}

.dl-general dd {
	margin-left: 2em;
	margin-bottom: 0.2em;
}
.dl-form label {
	margin: 0;
	padding: 0;
}
.dl-form dd {
	margin-bottom: 1em;
}

/* added by media */
@media screen and (max-width: 1140px) {
	#menu {
		height: 2.15em;
	}
}
@media screen and (max-width: 980px) {
	#bread-crumb {
		padding-left: .5em;
	}
	#one {
		text-align: left;
	}
}
@media screen and (max-width: 736px) {
	#menu {
		height: 2.3em;
	}
}
@media screen and (max-width: 480px) {
	#header br {
		display: inline;
	}
}