@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(https://fonts.googleapis.com/css?family=Noto+Serif+JP&display=swap);
@import url(https://fonts.googleapis.com/css?family=Modern+Antiqua);

/* reset */
body ,div ,dl ,dt ,dd ,ul ,ol ,li ,h1 ,h2 ,h3 ,h4 ,h5 ,h6 ,pre ,form ,fieldset ,input ,textarea ,p ,blockquote ,th ,td {
	margin: 0;
	padding: 0;
}
address ,caption ,cite ,code ,dfn ,em ,strong ,th ,var { font-style: normal; }
ul { list-style: none; }
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption ,th { text-align: left; }
q:before ,q:after { content: ''; }
object ,embed { vertical-align: top; }
legend { display: none; }
h1 ,h2 ,h3 ,h4 ,h5 ,h6 { font-size: 100%; }
img ,abbr ,acronym ,fieldset { border: 0; }

body {
	font: 14px/1.9 'Noto Serif JP', Arial, Verdana, 游ゴシック, YuGothic ,'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', メイリオ, Meiryo ,serif;
	font-weight: 200;
	-webkit-text-size-adjust: 100%;
	overflow-x: hidden;
	color: #000;
	background: #fff;
}

#content {
	width: 100%;
	margin-top: 60px;
	/* border: 1px solid #f00; */
}

a {
	color: #000;
	text-decoration: none;
}

a:hover, .active {
	text-decoration: underline;
}

a:active, a:focus, input:active, input:focus { 
	outline: 0; 
}


/* ヘッダー
------------------------------------------------------------*/
#mainnav a {
	color: #000;
	font-family: 'Modern Antiqua', 'Noto Serif JP' ,serif;
}


/* フッター
------------------------------------------------------------*/
#footer {
	clear: both;
	background-color: #000;
	color: #fff;
	padding: 50px 10px 50px 0;
	text-align: center;
	font-size: 12px;
}


/* 共通
------------------------------------------------------------*/
h1, h2 {
	font-family: 'Modern Antiqua', 'Noto Serif JP' ,serif;
}

img {
	max-width: 100%;
	height: auto;
}

section {
 clear: both;
}

section h2 {
	width: 60%;
	margin: 0 auto;
	font-size: 22px;
	font-weight: bold;
	text-align: center;
}

section h2 span {
	padding-bottom: 20px;
	border-bottom: 3px solid #000;
}

.inner {
	width: 80%;
	margin: 0 auto;
	padding-bottom: 50px;
	/* border:1px solid #000; */
}

#company .inner, #motto .inner, #business .inner, #office .inner {
	border-bottom: 1px solid #a0a0a0;
}

th, td { padding:10px; }

th.h1, td.d1 {
	background:#000;
	color:#fff;
}



/* motto
------------------------------------------------------------*/
.col3 .img, .col4 .img {
	margin: 0 auto;
}

.motto01, .motto02 {
	text-align: center;
}

.motto01 { padding-bottom: 20px; }
.motto02 { padding-bottom: 50px; }



/* business
------------------------------------------------------------*/
#business {
	padding-bottom: 0 !important;
}

.article, .item {
	clear: both;
	overflow: hidden;
	padding-bottom: 50px;
}

.article img, .item img {
	float: left;
	margin: 5px 10px 5px;
}

.article p {
	margin-bottom: 20px;
}

.item {
	padding-bottom: 10px;
}
.item p {
	margin-bottom: 10px;
}

ul.itemList {
	list-style: disc;
	padding-left: 28px;
}



/* office COMPANY
------------------------------------------------------------*/
#office p {
	margin-bottom: 5px;
}

.col2 li {
	display: inline-block;
/*	width: 100%; */
 	margin: 20px 0;
/*	border:1px solid #000; */
}



/* RESPONSIVE 設定
------------------------------------------------------------*/

@media only screen and (min-width: 800px) {
	body {
		font-size: 14px;
	}

	header {
		padding: 30px 0 70px;
	}	
	
	#wrapper {
		width: 100%;
	}
	
	#sidebar {
		width: 100%;
		height: 60px;
		position: fixed;
		top: 0;
		/* right: 4%; */
		background: #fff;
		/* opacity: .8; */
		border-bottom: 1px solid #ccc;
	}
	
	#sidebarWrap {
		width: 100%;
		margin: 0 auto;
	}
	
	#mainnav {
		position: absolute;
		top: 0px; right: 30px;
		padding: 15px 0;		
	}

 	a#menu {
		display: none;
	}	

	.panel {
		display: block !important;
		float: right;
	}
	
	#sidebar h1 {
		padding: 0 0 0 15px;
	}

	#mainnav li {
		font-size: 14px;
		padding: 0 10px;
		display: inline-block;
	}
	
	/* motto BRAND
	-----------------*/
	.col2, .col3, .col4 {
		text-align: left;
	}

	.col3 li {
		display: inline-block;
		width: 32%;
		padding: 0 1.42% 0 0;
		vertical-align: top;
		text-align: left;
	}
	
	.col4 li {
		display: inline-block;
		width: 23%;
		padding: 0 2.05% 0 0;
		vertical-align: top;
		text-align: left;
	}	
	
	.col3 li:last-child, .col4 li:last-child {
		padding: 0;
	}
	
	.col2 li {
		width: 24.5%;
		vertical-align: top;
	}
	
	.col4 p {
		text-align: center;
	}
	
	.inner>ul>li {
		padding-bottom: 20px;
	}

 	#footer {
		padding: 50px 10px 50px 0;
	}
}


@media only screen and (min-width: 641px) {
	#map { width:100% }

	#map iframe {
		width: 100% !important;
/*		left: 2%; */
	}	
}

@media only screen and (max-width: 640px) {
	.article img, .item img {
		float: none;
		display: block;
		margin: 0 auto 10px;
	}

	#map iframe {
		width: 100% !important;
/*		left: 2%; */
	}
}

@media only screen and (max-width: 799px) {
	header {
		padding: 30px 0 70px;
	}	

	#sidebar {
		position: fixed;
		top: 0px;
		width: 100%;
		z-index: 500;
	}
	
	#sidebarWrap {
		position: relative;
		width: 100%;
		height: 60px;
		background: #fff;
		border-bottom: 1px solid #ccc;
	}
	
	#sidebar h1 {
		text-align: center;
		padding-top: 10px;
	}
	
	#sidebar h1 img {
		width: auto !important;
		max-height: 40px;
	}
	
 	a#menu {
		display: inline-block;
		position: relative;
		width: 40px;
		height: 40px;
		margin: 10px;
	}

	#menuBtn {
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		width: 18px;
		height: 2px;
		margin: -1px 0 0 -7px;
		background: #000;
		transition: .2s;
	}

	#menuBtn:before, #menuBtn:after {
		display: block;
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		width: 18px;
		height: 2px;
		background: #000;
		transition: .3s;
	}

	#menuBtn:before {
 		margin-top: -7px;
	}

	#menuBtn:after {
 		margin-top: 5px;
	}

	a#menu .close {
 		background: transparent;
	}

	a#menu .close:before, a#menu .close:after {
 		margin-top: 0;
	}

	a#menu .close:before {
		transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
	}

	a#menu .close:after {
		transform: rotate(-135deg);
		-webkit-transform: rotate(-135deg);
	}

	.panel {
		width: 100%;
		display: none;
		overflow: hidden;
		position: relative;
		left: 0;
		top: -10px;
		z-index: 100;
	}

	#mainnav {
		position: absolute;
		top: 0;
		width: 100%;
		text-align: right;
	}

	#mainnav ul {
		border-bottom: 1px solid #ccc;
		background: #fff;
		text-align: left;
	}

	#mainnav li a {
		position: relative;
		display: block;
		padding: 15px 25px;
		border-bottom: 1px solid #ccc;
		color: #000;
		font-weight: 400;
	}

	#mainnav li a:before {
		display: block;
		content: "";
		position: absolute;
		top: 50%;
		left: 5px;
		width: 6px;
		height: 6px;
		margin: -4px 0 0 0;
		border-top: solid 2px #000;
		border-right: solid 2px #000;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	#mainnav #sns li {
		display: inline-block;
	}

	#mainnav #sns li a {
		position: relative;
		display: inline-block;
		padding: 15px 10px 0;
		border: 0;
	}

	#mainnav #sns li a:before {
		border: 0;
	}

	.col3 li, .col4 li {
		margin: 0 auto;
		display: block;
		text-align: center;
	}
	
	.col2 li {
		margin: 0 auto 50px;
		display: block;
		text-align: center;
	}
	
	.item p {
    	margin-bottom: 0px;
	}
	
	.inner>ul>li {
		padding-bottom: 20px;
	}
	
	.inner h1 {
		text-align: center;
	}	
}