@charset "utf-8";

/* リセット
------------------------------------------------ */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
margin:0;
padding:0;
border:0;
outline:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
display:block;
}
ul,
nav ul {
list-style:none;
}
blockquote, q {
quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content:'';
content:none;
}
a {
margin:0;
padding:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
color:#3a3a3a;
}
a:hover {
	text-decoration: none;
}
table {
border-collapse:collapse;
border-spacing:0;
}
img {
	max-width: 100%;
	vertical-align: bottom;
}

/* 共通
------------------------------------------------ */
body {
	font-family: Avenir, "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #3a3a3a;
	line-height: 1.33em;
	letter-spacing: 0.02em;
}

/* clearfix */
section::after,
.clearfix::after,
.inner::after {
	content:"";
	display:block;
	clear:both;
}

/* 外部リンク */
.link_external i {
	font-size: 12px;
	padding-left: 4px;
}

/* 見出し */
h1 {
	font-size: 36px;
}
h2 {
	font-size: 18px;
}
.square {
	position: relative;
	padding-left: 27px;
}
.square::before {
	position: absolute;
	top: 5px;
	left: 6px;
	width: 10px;
	height: 10px;
	border: 2px solid #f78000;
	content: "";
}
.square::after {
	position: absolute;
	top: 0;
	left: 11px;
	width: 8px;
	height: 8px;
	border: 2px solid #ffa441;
	content: "";
}

.two_border {
	border-bottom: 1px solid #e5e5e5;
	margin-bottom: 24px;
}
.two_border h2 {
	margin-bottom: -1px;
	padding: 0 10px 6px;
	display: inline-block;
	border-bottom: 1px solid #009933;
}

/* フッターを固定 */
body,
.allwrap {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}
footer {
	margin-top: auto;
}

/* レイアウト */
.inner, .img_main, .img_products, .nav_sub, .breadcrumb {
	max-width: 1200px;
	margin: 0 auto;
}
.detail_item section {
	max-width: 720px;
	margin: 0 auto 20px;
}

/* table */
.nav_sub,
.col {
	display: flex;
}
.nav_sub div,
.col div {
}
.col-4 div {
	width: 23%;
	margin: 0 1% 20px;
}

/* パンくず */
.breadcrumb ul {
	display: flex;
	margin-left: 20px;
}
.breadcrumb ul li {
	padding-right: 10px;
	font-size: 14px;
	line-height: 50px;
}
.breadcrumb ul li:last-child {
	padding: 0;
}
.breadcrumb ul li i {
	margin-left: 12px;
}

/* hover */
.nav_sub a:hover {
	opacity: 0.7;
}

/* 汎用 */
.mb20 {
	margin-bottom: 20px;
}
/* ヘッダー・フッター
------------------------------------------------ */
header {
	height: 60px;
	margin-bottom: 7px;
	border-bottom: 3px solid #009933;
}
header nav ul {
	display: flex;
	margin-left: 20px;
	padding-top: 10px;
}
header nav ul li:first-child {
	width: 200px;
	padding-top: 10px;
	margin-right: auto;
}
header nav ul li:first-child a {
	display: block;
}
header nav ul li:first-child img {
	max-width: none;
	width: 100%;
}
header nav ul li a {
	display: inline-block;
	padding: 10px 20px;
	text-decoration: none;
}
header nav ul li:first-child a {
	padding: 0;
}
footer {
	padding: 10px 0 ;
	background: #009933;
	color: #ffffff;
	font-size: 14px;
	line-height: 24px;
}
footer .inner div {
	float: left ;
}
footer .inner div:first-child {
	width: 73%;
	margin: 0 1%;
}
footer .inner div:last-child {
	width: 23%;
	margin: 0 1%;
}
footer a {
	color: #ffffff;
}
footer .copyright {
	padding-top: 3em;
	font-size: 12px;
	text-align: center;
}

/* トップページ
------------------------------------------------ */
.img_main {
	margin-bottom: 20px;
}
.infomation {
	padding: 20px 0;
	background: #d0fbd0;
}
.infomation .inner {
	padding: 40px 0 26px;
	background: #ffffff;
}
.infomation h2 {
	margin-bottom: 20px;
	font-size: 24px;
	text-align: center;
}
.infomation dl {
	max-width: 920px;
	margin: 0 auto;
	font-size: 16px;
	line-height: 24px;
}
.infomation dl dt {
	margin-bottom: 4px;
}
.infomation dl dt time {
	font-size: 12px;
	color: #999999;
}
.infomation dl dd {
	margin-bottom: 16px;
	padding-bottom: 16px;
	border-bottom: 1px solid #efefef;
}
.infomation dl dd:last-child {
	margin-bottom: 0;
	border-bottom: none;
}

/* 一覧
------------------------------------------------ */
.img_products {
	margin-bottom: 20px;
}
.img_products .breadcrumb {
	background: #ffffff;
	opacity: 0.7;
}
.img_products h1 {
	padding: 30px 0 0 20px;
}
.products01 {
	height: 300px;
	background: url(/images/products/01/main.jpg) no-repeat top left;
}
.products02 {
	height: 300px;
	background: url(/images/products/02/main.jpg) no-repeat top left;
}
.products03 {
	height: 300px;
	background: url(/images/products/03/main.jpg) no-repeat top left;
}
.products04 {
	height: 300px;
	background: url(/images/products/04/main.jpg) no-repeat top left;
}


/* 詳細
------------------------------------------------ */

/* 会社概要 */
.company h2 {
	margin-bottom: 20px;
	padding-left: 1em;
	border-left: 4px solid #009933;
}
.company table {
	margin-bottom: 20px;
	border-right: 1px solid #dfdfdf;
	border-bottom: 1px solid #dfdfdf;
}
.company table th,
.company table td {
	padding: 4px 1em;
	border-top: 1px solid #dfdfdf;
	border-left: 1px solid #dfdfdf;
}
.company table th {
	background: #cccccc;
	font-weight: normal;
}
.cn ul {
	display: flex;
}
.cn ul li {
	padding: 0 4px;
}
.page_title {
	margin-bottom: 20px;
	background: #d0fbd0;
}
.page_title h1 {
	text-align: center;
	line-height: 100px;
}
.detail_item p,
.detail_item ul li {
	font-size: 14px;
	line-height: 1.5em;
}

.set_photo div {
	float: left;
}
.set_photo div:first-child {
	width: 23%;
	margin: 0 1%;
}
.set_photo div:last-child {
	width: 73%;
	margin: 0 1%;
}
.set_list ul li {
	padding-left: 28px;
	text-indent: -14px;
}
.set_list ul li::before {
	content: "● ";
	color: #f78000;
}
.item .img {
	float: left;
	width: 320px;
}
.item .info {
	padding-left: 350px;
}
.item dl {
	border: 1px solid #dfdfdf;
}
.item dl dt {
	padding: 4px 1em;
	background: #cccccc;
	border-bottom: 1px solid #dfdfdf;
}
.item dl dd {
	padding: 4px 2em;
	border-bottom: 1px solid #dfdfdf;
}
.item dl dd:last-child {
	border-bottom: none;
}
.link_back {
	margin: 3em 0;
	text-align: center;
}
@media only screen and (max-width: 750px) {
	
	/* 共通
------------------------------------------------ */
	/* clearfix */
	header ul::after {
		content:"";
		display:block;
		clear:both;
	}
	
	/* table */
	.nav_sub {
		display: block;
	}
	.col-4 div{
		width: 92%;
		margin: 0 4% 20px;
		text-align: center;
	}
	.col-4 div a{
		max-width: 100%;
		height: auto;
	}
	.col-4 div a img{
		height: auto;
	}
	.col-4:last-of-type{
		margin-bottom: 3em;
	}
	
	/* 見出し */
	
	/* レイアウト */
	
	/* table */
	
	/* パンくず */
	.breadcrumb ul{
		flex-wrap: wrap;
		padding: 2px 0 10px;
	}
	.breadcrumb	ul li {
		font-size: 12px;
		line-height: 18px;
	}
	/* ヘッダー・フッター
------------------------------------------------ */
	header {
		height: auto;
		margin-bottom: 6px;
		border-bottom: 3px solid #009933;
	}
	header nav ul {
		display: block;
		margin-left: 0;
	}
	header nav ul li {
		float: left;
		width: 50%;
	}
	header nav ul li:first-child {
		width: 100%;
		padding: 0;
		border-bottom: 1px solid #cccccc;
	}
	header nav ul li a {
		display: block;
		padding: 20px;
		text-decoration: none;
		background: #efefef;
	}
	header nav ul li:first-child a {
		width: 200px;
		padding: 10px 0 10px 20px;
		background: #ffffff;
	}
	header nav ul li:first-child a::before {
		content: none;
	}
	header nav ul li:nth-child(2) {
		display: none;
	}
	header nav ul li:nth-child(3) a {
		border-right: 1px solid #cccccc;
		border-bottom: 1px solid #cccccc;
	}
	header nav ul li:nth-child(4) a {
		border-bottom: 1px solid #cccccc;
	}
	header nav ul li:nth-child(5) a {
		border-right: 1px solid #cccccc;
	}
	footer{
		padding: 0 0 10px 0;
	}
	footer .inner{
		display: flex;
		margin-bottom: 24px;
		padding: 20px 10% 0;
	}
	footer .inner div:first-child{
		width: 48%;
	}
	footer .inner div:last-child{
		width: 48%;
	}
	footer .inner div ul li,
	footer .inner div p{
		font-size: 12px;
		line-height: 3em;
	}
	footer .copyright {
		padding: 2em 4% 1em;
	}
	.menu_btn{
		display: block;
	}
	/* トップページ
------------------------------------------------ */
	.img_main{
		max-width: 100%;
		margin-bottom: 40px;
	}
	.infomation {
		padding: 20px 4% 3em;
	}
	.infomation h2 {
		margin-bottom: 32px;
	}
	.infomation dl dt {
		float: none;
		width: auto;
		padding: 0 20px 8px;
	}
	.infomation dl dd {
		margin-bottom: 32px;
		padding: 0 20px 20px;
	}
	.infomation {
	}
	
	/* 一覧
------------------------------------------------ */
	.img_products{
		height: auto;
		margin-bottom: 3em;
		background-size: cover;
		background-position: center;
	}
	.img_products .breadcrumb ul li{
		line-height: 2em;
	}
	.img_products h1{
		padding: 30px 0 30px 20px;
	}
	.img_products h1 img{
		width: 45%;
	}
	/* 詳細
------------------------------------------------ */
	
	.page_title{
		height: 60px;
		margin-bottom: 3em;
		padding: 21px 0;
		box-sizing: border-box;
	}
	.page_title h1{
		font-size: 18px;
		line-height: 18px;
	}
	.detail_item .col-4 div{
		width: 42%;
		height: auto;
		text-align: center;
	}
	.detail_item .col-4{
		flex-wrap: wrap;
	}
	.detail_item .col-4 div span{
		font-size: 14px;
		word-wrap: break-word;
	}
	.set_photo{
		margin-bottom: 1.5em;
	}
	.set_photo div {
		float: none;
	}
	.set_photo div h2{
		margin-bottom: 1em;
	}
	.set_photo div:first-child{
		width: 92%;
		margin: 0 4% 20px;
	}
	.set_photo div:last-child{
		width: 92%;
		margin: 0 4%;
	}
	.set_photo div img{
		width: 100%;
		margin-bottom: 12px;
	}
	.set_list h2,
	.set_text h2,
	.set_text p{
		width: 92%;
		margin: 0 4% 20px;
	}
	.set_list ul{
		width: 92%;
		margin: 0 4%;
	}
	.set_list ul li{
		padding-left: 14px;
	}
	.detail_item section{
		max-width: 92%;
		margin: 0 4% 32px;
	}
	.item .img{
		width: 100%;
		margin-bottom: 24px;
		float: none;
	}
	.item .info{
		padding-left: 0;
	}
	.item .info dl dt,
	.item .info dl dd{
		padding: 1em;
	}
	.item	.info dl dd{
		padding: 1em 1em 1em 1.5em;
	}
	.detail_item .company {
		max-width: 92%;
		margin: 0 4% 20px;
	}
	.company table th,.company table td{
		display: block;
		padding: 1em;
		text-align: left;
	}
	.company h2{
		margin: 0 0 20px;
	}
	.company table{
		margin: 0 0 20px;
	}
	.company p{
		margin: 0 0 20px;
	}
	.company ul{
		margin: 0 0 20px;
		flex-wrap: wrap;
	}
	.company ul li{
		width: 100%;
		margin-bottom: 20px;
	}
	.company ul li img{
		width: 100%;
	}
	.detail_item .link_back{
		font-size: 18px;
	}
	/* 会社
	/* 会社概要 */
	
}