

#contents {
	width:100%;
	font-size: 80%;
	text-align:center;
	flex:1;
}
#contents section {
	text-align:left;
}
#contents #main{
	text-align:left;
	max-width: 1080px;
	margin: 0 auto;
	padding: 3rem 20px 5rem 20px;
}

/*見出し*/
#contents h1:not(.not):not(.title),
#contents h2:not(.not):not(.title),
#contents h3:not(.not):not(.title),
#contents h4:not(.not):not(.title),
#contents h5:not(.not):not(.title){line-height:1.8em;}
#contents p{line-height:1.75em;}

#contents h1:not(.not):not(.title){font-size:clamp(21px, 4vw, 28px);font-weight:bold;}
#contents h2:not(.not):not(.title){font-size:clamp(18px, 3vw, 24px);font-weight:bold;}
#contents h3:not(.not):not(.title){font-size:clamp(15px, 2.5vw, 20px);font-weight:bold;color:#6db030;}
#contents h4:not(.not):not(.title){font-size:clamp(13px, 1.5vw, 16px);}
#contents p,
#contents a{font-size:clamp(11px, 1.25vw, 13px);}

#contents h1:not(.not):not(.title),
#contents h2:not(.not):not(.title),
#contents h3:not(.not):not(.title),
#contents h4:not(.not):not(.title){
	margin:1em auto 1em auto;
}

#contents p{
	margin:.8em auto 1.4em auto;
}

/*背景色がある見出し*/
#contents h2.tit-bg{
	padding: 0.5rem 20px;
	background: #6db030;
	color: #fff;
}




#contents img{
	vertical-align:top;
	max-width:100%;
	height:auto;
}

#contents .txt-center{text-align:center;}
#contents .txt-right{text-align:right;}



#contents #main .anchor ul {
	text-align:left;	
    margin-left: auto;
    margin-right: auto;
    font-size: 13px;
	display: flex;
	flex-flow: wrap;
	justify-content: space-between;
	justify-content: center;

}

/*共通tbl*/
table.w100p{
	width:100%;
}
table{
	box-sizing:border-box;
}
table th,
table td{
	line-height:1.75rem;
font-size:clamp(11px, 1.25vw, 13px);
}
table.tblGlay {
	margin: 0 0 20px; 
	width: 100%;
}
table.tblGlay  tr{
	border: solid 1px #ccc;
}
table.tblGlay th,
table.tblGlay td{
	padding: 15px;
}
table.tblGlay th{
	background-color:#ebebeb;
	min-width: 7em;
}
table.tblGlay td{
	background-color:#f9f9f9;
}

/*マップレスポンシブ*/
.gmap {
height: 0;
overflow: hidden;
padding-bottom: 56.25%;
position: relative;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}

.anc-list{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:1rem;
}
.anc-list li {
	width:calc(100% / 5);
	min-width:150px;
}
.anc-list li a{
	padding: 10px 0 10px 22px;
	display: block;
	position: relative;
	box-sizing:border-box;
	border:solid 1px #ccc;
	text-align:center;
}
.anc-list li a:before{
content: '';
	width: 14px;
	height: 14px;
	background: #999;
	border-radius: 50%;
	position: absolute;
	top: 0;
	left: 13px;
	bottom: 0;
	margin: auto;
}
.anc-list li a:after{
content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 3px 0 3px 5px;
	border-color: transparent transparent transparent #fff;
	position: absolute;
	top: 0;
	left: 18px;
	bottom: 0;
	margin: auto;
}
@media screen and (max-width: 580px){
.anc-list li {
	width:calc(100% / 3);
}
}

@media screen and (max-width: 420px){
	.anc-list li a:before{left:6px;}
	.anc-list li a:after{left:11px;}
}

#container-detail {
    /*width: 700px;*/
		max-width:700px;
    position: relative;
    height: auto !important;
    height: 100%;
    min-height: 100%;
	top:0;
}

#contents-detail {
    padding-bottom: 130px;
	width:100%;
	font-size: 80%;
}

#contents-product-detail {
	width:100%;
	font-size: 80%;
}



/* footer style */



#footer{background:#6db030;padding:0 1rem 2rem;}
.f-inner{
	max-width:1040px;
	margin:0 auto;
	display:flex;
	flex-wrap:wrap;
}
.f-logo{
	position:relative;
	margin-right: -60px;
}
.f-logo img{
	width: 100%;
	height: auto;
	max-width: 160px;
}
.f-cont{
	flex:1;
	padding-top:1.5rem;
	text-align:right;
}
.f-nav {
	font-size:0;/*余白対策*/
	padding-bottom:1.5rem;
}
.f-nav li{
	display:inline-block;
	border-right:solid 1px #333;
	margin-bottom:5px;
}
.f-nav li:first-child{
	border-left:solid 1px #333;
}
.f-nav li a{
	color:#fff;
	font-size:clamp(11px, 1.25vw, 12px);
	padding:2px 6px;
	
}
.f-nav li a:hover{
	color:#333;
}
.f-cont .copyright{
	color:#fff;
	font-size:10px;
}
@media screen and (max-width: 480px){
	.f-inner{display:block;}
	.f-logo{margin-right:0;}
	.f-cont{padding-top:0;}
}

/*header共通*/
header{
	background: #6db030;
	padding:0 1rem;
	position:fixed;
	left:0;
	top:0;
	width:100%;
	z-index: 999;
	min-height: 50px;
}
header .inner{
	max-width:1040px;
	display:flex;
	flex-wrap:wrap;
	margin: 0 auto;
}
header .inner .logo{
	padding-top:0px;
	width:280px;
}
header .inner .logo img{
	width:100%;
	height:auto;
}
header .inner .logo a{
	display:inline-block;}
header .inner .nav-wrap{
	margin-left:auto;
}

@media screen and (max-width: 680px){

nav.globalMenuSp {
	position: fixed;
	height: 100%;
	z-index: 99999;
	top: 50px;
	right: 0;
	background:#6db030;
	transform: translateY(calc(-100% - 50px));
	transition: all 0.6s;
	width:150px;
	height:200px;
	margin:0;
	padding-bottom:45px;
	box-sizing:border-box;
}
.globalMenuSp-in{
	position:fixed;
	padding:0 0 0 ;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	width:100%;
	box-sizing:border-box;
	display: flex;
	flex-direction: column;
}
/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
	transform: translateY(0%);
	display:block;
}
.navToggle {
	display: block;
	position: absolute;
	right: 0px;
	top: 0px;
	width: 50px;
	height: 50px;
	cursor: pointer;
	z-index: 999999;
	text-align: center;

}
.navToggle span {
	display: block;
	position: absolute;    /* .navToggleに対して */
	width: 30px;
	height:2px;
	background:#fff;
	border-radius:2px;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
	left: 10px;
}
.navToggle span:nth-child(1) {top: 13px;}
.navToggle span:nth-child(2) {top: 35px; }
.navToggle span:nth-child(3) {top: 24px;}
.navToggle span:nth-child(4) {
	display:none;
}
.navToggle.active{
	position:fixed;
	top: 0;
	right: 0;

}
/* 最初のspanをマイナス45度に */
.navToggle.active span:nth-child(1) {
	top: 20px;
	left: 10px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
/* 2番目と3番目のspanを45度に */
.navToggle.active span:nth-child(2),
.navToggle.active span:nth-child(3) {
	top: 20px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}
.navToggle.active span:nth-child(3),
.navToggle.active span:nth-child(4){display:none;}

/*ハンバーガー内のナビ*/
header .inner .h_nav li a{
	color:#fff;
	font-size:clamp(12px, 1.25vw, 15px);
	display:block;
	padding:0 20px;
	line-height:50px;
	text-align:center;
	background:#6db030;
}
header .inner .h_nav li a:hover{background-color:#333;}


}

@media screen and (min-width: 681px){
	.navToggle{display:none;}
	header .inner .h_nav{
		position: relative;
    right: -20px;
		}
	header .inner .h_nav{
	font-size:0;/*余白対策*/
}
header .inner .h_nav li{
	display:inline-block;
}
header .inner .h_nav li a{
	color:#fff;
	font-size:clamp(11px, 1.25vw, 13px);
	display:inline-block;
	padding:0 20px;
	line-height:50px;
}
header .inner .h_nav li a:hover{background-color:#333;}
}


@media screen and (max-width: 420px){
header .inner .logo{padding-top: 0px;width:240px;}

}

/* Button Hover */
#sub-global-nav ul li .on a{
	background:#000000;
	font-weight:bold;
	color:#333;
	height:50px;
	padding:0 20px 0 20px ;
	line-height:50px;
}

#sub-global-nav ul li a:hover {
	background:#333;
	color:#fff !important;
	height:50px;
	line-height:50px;
	display: block;
}

#sub-conts{
	font-size: 80%;
}

/* Sub Page background-image Area */
.sub-title-back{
	width: 100%;
	margin: 0 auto;
	background-image: url("../img/01sub.png");
}

/* Sub Page Title Area */
.sub-title{
	max-width: 1080px;
	margin: 0 auto;
	padding: 80px 20px 20px 20px;
}


/* Sub Page Title */
.sub-title h1.title{
	font-size:200%;
	line-height:100%;
	position:relative;
}

.sub-title span.title-en{
	font-size:120%;
	color:#999;
	line-height:100%;
	position:relative;
}

/* Pan kuzu List */
.pan-list-area{
	width:100%;
	height:30px;
	z-index:100;
	background:#d9d8d3;
}

.pan-list{
	max-width:1080px;
	height:30px;
	line-height:30px;
	margin: 0 auto;
	padding: 0 20px 0 20px;
	position:relative;
}

.pan-list a:hover{
	color: #6db030;
}




/* Contact Us */

.contactus-area{
	max-width:1080px;
	margin: 0 auto;
	padding: 10px 20px 50px 20px;
}

.contactus-inner{
	max-width:1000px;
	margin: 0 auto;
	border:1px solid #d9d8d3;
}

.contactus-form{
	max-width:880px;
	padding: 0 10px 10px 10px;
	margin: 0 auto;
}

.contactus-text01{
	max-width:500px;
	margin: 0 auto;
	padding: 30px 0 30px 0;
}

.contactus-text02{
	width:100%;
	margin: 0 auto;
	background:#d9d8d3;
	padding: 1rem 1rem 2rem 1rem;
	
}

.contactus-text02 .bnt-wrap{
	display:flex;
	flex-wrap:wrap;
	justify-content: center;
}
.contactus-text02 .bnt-wrap > div{
	padding:0 1rem;
}
table .contactus{
	
}

.contactus-form .contactus-tbl{
	width: 100%;
}
.contactus-form .contactus-tbl tr{
	display:flex;
	flex-wrap:wrap;
}
.contactus-form .contactus-tbl tr th,
.contactus-form .contactus-tbl tr td{box-sizing:border-box;}
.contactus-form .contactus-tbl tr th{
	width:25%;
	padding:10px 0 10px 20px;
	position:relative;
}
.contactus-form .contactus-tbl tr td.input{
	width:calc(45% - 20px);
	padding:10px;
}
.contactus-form .contactus-tbl tr td.ex{
	width:30%;
	padding:10px 0;
	color: #777;
}
.contactus-form .contactus-tbl tr td.txt{
	flex:1;
	padding:10px;
}


.contactus-form .contactus-tbl tr th .hissu{
	position: absolute;
	top: 10px;
	left: 0px;
}
.contactus-form .contactus-tbl tr td.input input:not([type="checkbox"], [type="radio"], [type="submit"]){
	padding: 0.25em 0.25em;
	width: 100%;
	max-width: 400px;
	box-sizing: border-box;
}
.contactus-form .contactus-tbl tr td.input input[name="連絡時間＿まで"]{width:unset;}
.contactus-form .contactus-tbl tr td.txt textarea{
	padding: 0.25em 0.25em;
	width: calc(100% - 2rem);
	box-sizing: border-box;
}
.hissu{color: #6db030;}


@media screen and (max-width: 680px){
	.contactus-form .contactus-tbl tr{
		flex-direction:column;
	}
	.contactus-form .contactus-tbl tr th{
		width:calc(100% - 30px);
		min-height: 1.75rem;
		padding: 10px 0 0 20px;
	}
	.contactus-form .contactus-tbl tr td.input,
	.contactus-form .contactus-tbl tr td.ex,
	.contactus-form .contactus-tbl tr td.txt{
		width:calc(100% - 30px);
		padding:0 0 0 20px;
	}
	
}
@media screen and (max-width: 480px){
	.contactus-form .contactus-tbl tr td.input input:not([type="checkbox"], [type="radio"], [type="submit"]){
		max-width: 220px;
	}
	

}


.contactus-thanks-inner{
	max-width:900px;
	height:300px;
	margin: 0px auto;
	padding: 50px 20px 0 20px;
}

.contactus-thanks{
	max-width:940px;
	margin: 0px auto;
	text-align:center;
	vertical-align:middle;
	font-size:120%;
}

/* Product detail Style */

.product-detail-area {
	max-width:940px;
	margin: 0 auto;
}

.product-detail-title-area {
	max-width:940px;
	margin: 0 auto;
	padding: 20px 0 0 0;
}

.product-detail-inner {
	max-width:900px;
	margin: 0 auto;
	padding: 30px 0 0 0;
}

.product-detail-title{
	margin: 0 auto;
	padding: 0 40px;
	max-width:900px;
	/*height: 50px;*/
	background: #000;
	color: #fff;
	font-size: 200%;
	line-height: 50px;
}
.product-detail-img-area {
	max-width: 940px;
	margin: 0 auto;
	padding: 10px 5px 0 5px;
}

ul.product-detail-img {
  display: table;
  table-layout: fixed;
  text-align: center;
  width: 100%;
}
ul.product-detail-img li {
  display: table-cell;
  vertical-align: middle;
}

div.product-detail-text {
	padding:0 0 0 20px;
	max-width:500px;
}

div.product-detail-text dl {
	padding: 0 0 20px 0;
}

div.product-detail-text dt {
	font-size: 150%;
}

.product-detail-pdf {
	padding: 20px 0 0 0;
}

/* Product Style */
.product-area {
	max-width:1040px;
	/*height: 1350px;*/
	margin: 0 auto;
	padding: 0 0 0 0;
	position: relative;
}

.product-back-area {
	width:1000px;
	margin: 0 auto;
	z-index: -10;
	opacity: 1;
}


#product-menu {
	max-width: 1040px;
	/*height: 70px;*/
	margin: 0 auto;
	padding: 15px 20px 0 20px;
}
	#product-menu ul { margin:0px;}
	#product-menu li { float:left; line-height:0;}


.product-title-area {
	max-width:1040px;
	margin: 0 auto;
}
.product-title{
	margin: 0 auto;
	padding: 0 40px;
	max-width:1000px;
	height: 50px;
	background: #000;
	color: #fff;
	font-size: 200%;
	line-height: 50px;
}

div.product-inner{
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 0 0 0;
}
.product-img-area {
	max-width: 1040px;
	margin: 0 auto;
	padding: 20px 10px 0 10px;
	position: absolute;
	top:0;
}

ul.product-img {
  display: table;
  table-layout: fixed;
  text-align: center;
  width: 100%;
  margin-right: -10px;
  padding: 0 0 15px 0;
}

ul.product-img li {
  display: table-cell;
  vertical-align: middle;
}

#product-banner {
	max-width: 1080px;
	height: 70px;
	margin: 0 auto;
	padding: 30px 20px 0 20px;
}
	#product-banner ul { margin:0px;}
	#product-banner li { padding: 0 20px 0 0; float:left; line-height:0;}


/* recruit */
.recruit .information{
	border: solid 1px #ccc;
}
.saiyouform{
	margin:0 auto;
}


/* recruit end */

/* privecy sitepolisy */
#sitePolicy ul{
margin:1.5rem auto 2rem auto;	
}
#sitePolicy ul li{
	line-height:3em;
	list-style-type:disc;
	margin-left:1rem;
}	

/* privecy sitepolisy end */

/* News Style */

.news-area {
	max-width:1080px;
	height:auto;
	margin: 0 auto;
	padding: 0 20px 0 20px;
}

.news-inner{
	max-width: 1000px;
	margin: 0 auto;
}
/* News Style内 追加バナー用 */
.news-table-wrap{
	max-width: 1040px;
	margin: 0 auto 10px;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.fm-blog{
	max-width:360px;
	/*height:120px;
	float: right;*/
	padding: 10px 0px 0px 0px;;
}

.news-table{
	padding: 40px 0px 10px 0px;
	color: #000;
}

/* News Style内 追加バナー用　ここまで */


.news-table dl {
	display:table;
}
 
.news-table dt {
	vertical-align:middle;
	display:table-cell;
	width: 50px;
	padding: 0 0 5px 0;
}

.news-table dd {
	display:table-cell;
	vertical-align:middle;
	padding: 0 0 5px 20px;
}
.news-table dd.name {
	font-size:150%;
}


.news {
	max-width:760px;
}

.news ul{
	/*display:table;*/
	display:flex;
	flex-wrap:wrap;
}

.news li.date {
	max-width: 240px;
	width:34%;
	padding: 15px 0 5px 0px;
	/*display:table-cell;*/
	vertical-align:top;
	
}

.news li.title {
	flex:1;
	max-width:750px;
	padding: 15px 0 5px 10px;
	display:table-cell;
	vertical-align:top;
	font-weight: bold;
	word-wrap: break-word;
}

.news li.photo {
	max-width: 240px;
	width:34%;
	padding: 0 0 5px 0px;
	vertical-align:top;
	text-align:center;
}

.news li.detail {
	flex:1;
	max-width:750px;
	padding: 0 0 10px 10px;
	display:table-cell;
	vertical-align:top;
	word-wrap: break-word;
}

/* Products Q&A Style */
.qa-area {
	max-width:1040px;
	margin: 0 auto;
	padding: 0 0 0 0;
}

.qa-table{
	color: #333;
	line-height:120%;
}

.qa-table-pd{
	padding: 20px 40px 20px 100px;
}

.qa-table dl {
	display:table;
	width:99%;
}
 
.qa-table dt {
	vertical-align:top;
	display:table-cell;
	width: 50px;
	padding: 0 0 10px 0;
}

.qa-table dd {
	display:table-cell;
	vertical-align:top;
	padding: 0 0 0 20px;
}

.qa-table dd span{
	padding: 0 5px 0 0;
}

div.qa-img {
	margin: 20px auto 0px;
	height: 200px;
}
	div.qa-img ul { margin:0px;}
	div.qa-img li { padding: 0 5px 0 0; float:left; line-height:0;}

/* Product quality Style */
.quality-area {
	max-width:1040px;
	height: 1050px;
	margin: 0 auto;
}

.quality-inner{
	max-width: 1000px;
	margin: 0 auto;
}

.quality-text {
	padding: 0 40px 0 40px;
}

.quality-img-area {
	max-width: 1040px;
	margin: 0 auto;
	padding: 20px 15px 0 15px;
}

ul.quality-img {
  display: table;
  table-layout: fixed;
  text-align: center;
  width: 100%;
  margin-right: -10px;
}
ul.quality-img li {
  display: table-cell;
  vertical-align: middle;
}

/* Pamphlet Style*/
.pamphlet-area {
	max-width:1040px;
	height: 1650px;
	margin: 0 auto;
}
.pamphlet-inner{
	width: 1000px;
	margin: 0 auto;
}
.pamphlet-img-area {
	max-width: 1000px;
	margin: 0 auto;
	padding: 50px 15px 0 15px;
}
ul.pamphlet-img {
  display: table;
  table-layout: fixed;
  text-align: center;
  width: 100%;
}
ul.pamphlet-img li {
  display: table-cell;
  vertical-align: middle;
  width: 190px;
}
ul.pamphlet-text {
  display: table;
  table-layout: fixed;
  width: 100%;
  padding: 0 0 50px 0;
}
ul.pamphlet-text li {
  display: table-cell;
  vertical-align: top;
  text-align: left;
  padding: 0 0 0 30px;
}
/* service menu */
.service h2,
.service h3{
	font-size:24px;
	color: #6db030;
}
.service h2 span{
		font-size:36px;
}
.service .clm2,
.service .clm3{
 display: flex; 
}

.service .clm2 .inner,
.service .clm3 .inner{
  flex:1;
}
.service .planning {
	   gap: 160px; 
}
.service .planning .inner{
	  padding: 20px;
}
.before-after{
margin-top:6rem !important;	
}

.service_menu {
	display:none;
background: #7bbb2d;
padding: 24px;
width: 760px;
}
.service_menu .grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 18px;
}

.service_menu .card {
background: #f6f7f2;
border-radius: 8px;
padding: 18px 20px;
color: #7bbb2d;
}
.service_menu .card a{
	display: block;
	width:100%;
	height:auto;
}
.service_menu .card h3 {
margin: 0 0 6px 0;
font-size: 20px !important;
font-size: clamp(11px, 2vw, 20px) !important;
font-weight: 700;
letter-spacing: 0px;
line-height:1.1em !important;
    margin: 0px auto !important;
}
.service_menu .card p {
margin: 0;
font-size: 15px !important;
font-size: clamp(8px, 2vw, 16px) !important;
color: #6aa326;
line-height:1em !important;
font-weight: 400;
    margin: 0px auto !important;
}

@media (max-width: 1055px) {
.company-title {
	padding:0 20px;
}
}

@media (max-width: 680px) {
.company-title {
	padding:0px;
}

.company-title-area-back .pc {
	display:none;
}
	
.service_menu {
		display:block;
width: 100%;
}

}

/* service menu end */

/* New Company Style */

.company-7works {
  color: #FFF;
}

.company-7works:hover {
  color: #333;
}

/* Company Style */

.company-area {
	max-width:1080px;
	margin: 0 auto;
	padding: 0 20px;
}


#company-menu {
	max-width: 1080px;
	height: 70px;
	margin: 0 auto;
	padding: 15px 20px 0 20px;
}
	#company-menu ul { margin:0px;}
	#company-menu li { float:left; line-height:0;}


.company-title-area-back {
	max-width:100%;
	margin: 0 auto;
	background-color: #6db030;
}
.company-title-area {
	max-width:1040px;
	width:100%;
	margin: 0 auto;
	background-image: url("../img/7works.png");
	background-position: center -35px;

}
.company-title{
	margin: 0 auto;
	max-width:1040px;
	/*height: 700px;*/
	color: #fff;
	font-size: 200%;
	line-height: 40px;
	font-weight: bold;
}


.company-title2{
	margin: 0 auto;
	width:100%;
	height: 50px;
	background: #6db030;
	color: #fff;
	font-size: 160%;
	line-height: 50px;
}
.company-title-g{
	margin: 0 auto;
	width:100%;
	height: 50px;
	background: #999999;
	color: #fff;
	font-size: 160%;
	line-height: 50px;
}


div.company-inner{
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 0 0 0;

}

div.company-inner .photo-map{
	width: 100%;
	height: 260px;
}


.company-table{
	padding: 20px 40px 10px 40px;
	color: #000;
}

.company-table-pd{
	padding: 30px 40px 20px 40px;
}

.company-table dl {
	display:table;
	width:99%;
}
 
.company-table dt {
	vertical-align:middle;
	display:table-cell;
	width: 220px;
	padding: 0 0 5px 0;
}

.company-table dt.name {
	font-size:150%;
	font-weight:400;
}

 
.company-table dd {
	display:table-cell;
	vertical-align:middle;
	padding: 0 0 5px 20px;
}

.company-table dd.name {
	font-size:150%;
}
	
div.company-photo{
	float: left;
}

div.company-map{
	float: left;
}

.nengo {
	 font-size:90%;
}


div.company04-detail {
	background: #c6e1fc;
	max-width:1000px;
	margin: 0 auto;
	position:relative;
	top:15px;
	padding:20px;
}

div.company04-detail .inner {
	border:1px solid #fff;
	padding: 30px 25px;
	line-height: 150%;
}

div.company05-detail {
	background: #d9d8d3;
	max-width:1000px;
	margin: 0 auto;
	position:relative;
	top:15px;
	padding:20px;
}

div.company05-detail .inner {
	border:1px solid #fff;
	padding: 30px 25px;
	line-height: 150%;
}


.company04-text01{
	max-width:1000px;
	margin:0 auto;
	padding:30px 25px;
}

.company04-table{
	color: #333;
}

.company04-table-pd{
	padding: 30px 40px 20px 40px;
}

.company04-table dl {
	display:table;
	width:99%;
}
 
.company04-table dt {
	vertical-align:middle;
	display:table-cell;
	width: 100px;
	padding: 0 0 5px 0;
}

.company04-table dt.name {
	font-size:150%;
	padding: 0 0 20px 0;
	font-weight:400;
}


.company04-table dt.smallname {
	width:100%;
	vertical-align:middle;
	padding: 0 0 5px 0;
}

 
.company04-table dd {
	display:table-cell;
	vertical-align:middle;
	padding: 0 0 5px 20px;
}

.company04-table dd.name {
	font-size:150%;
}



.company-ent-inner{
	max-width:1000px;
	margin: 0 auto;
	border:1px solid #d9d8d3;
	position:relative;
	top: 60px;
}

.company-ent-form{
	max-width:800px;
	padding: 0 10px 10px 10px;
	margin: 0 auto;
}

.company-ent-text01{
	/*width:500px;*/
	margin: 0 auto;
	padding: 30px 0 30px 0;
}

.company-ent-text02{
	width:100%;
	/*height:150px;*/
	margin: 0 auto;
	background:#d9d8d3;
}

.company-ent-tbl th{
	width: 220px;
	padding:10px 0;
}

.company-ent-tbl td.input{
	width: 400px;
	padding:10px 0;
}

.company-ent-tbl td.ex{
	width: 300px;
	color: #777;
	padding:10px 0;
}


.company03-history{
	max-width:1000px;
	margin: 0 auto;
}

.company03-table{
	color: #333;
	line-height:250%;
}

.company03-table-pd{
	padding: 30px 40px 20px 40px;
}

.company03-table dl {
	display:table;
	width:99%;
}
 
.company03-table dt {
	vertical-align:middle;
	display:table-cell;
	width: 150px;
	padding: 0 0 5px 0;
}

.company03-table dt.name {
	font-size:150%;
	max-width:500px;
	padding: 0 0 20px 0;
	font-weight:400;
}

 
.company03-table dd {
	display:table-cell;
	vertical-align:middle;
	padding: 0 0 5px 20px;
}

.company03-table dd span{
	padding: 0 5px 0 0;
}

.company03-table dd.name {
	font-size:150%;
}



div.company01-philosophy{
	max-width:1000px;
	/*height:470px;*/
	margin: 0 auto;
	padding: 70px 0px;
}

div.company01-philosophy .text01{
	max-width:600px;
	/*height:470px;*/
	line-height:185%;
	padding:0 0 0 0px;
}



/* Company Thanks */
.company-thanks-inner{
	max-width:900px;
	/*height:300px;*/
	margin: 0px auto;
	padding: 20px 20px 0 20px;
}

.company-thanks{
	max-width:940px;
	margin: 0px auto;
	text-align:center;
	vertical-align:middle;
	font-size:120%;
}


/* Form Button */

.submit-button input{
	width:100px;
	margin:auto;
	display:block;
	margin-top:20px;
	padding:10px 10px 10px 10px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
	color:#FFFFFF;
	text-decoration:none;
	font-size:100%;
	font-weight:bold;
	background:url(../img/btn_icon.png) 20px center  no-repeat #6db030;
	-webkit-box-shadow: 0px 2px 2px rgba(51,51,51,0.5);
	-moz-box-shadow: 0px 2px 2px rgba(51,51,51,0.5);
	-ms-box-shadow: 0px 2px 2px rgba(51,51,51,0.5);
	box-shadow: 0px 2px 2px rgba(51,51,51,0.5);
	border:none;
	cursor:pointer;
}

.submit-button input:hover{
	background:url(../img/btn_icon.png) 20px center  no-repeat #fa6c55;
}

.confirm .submit-button input {
	display: inline-block;
}
.confirm .submit-button input:first-child {
	margin-right: 20px;
}

.cancel-button input{
	width:100px;
	margin:auto;
	display:block;
	margin-top:20px;
	padding:10px 10px 10px 10px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
	color:#FFFFFF;
	text-decoration:none;
	font-size:100%;
	font-weight:bold;
	background:url(../img/btn_icon.png) 20px center  no-repeat #999;
	-webkit-box-shadow: 0px 2px 2px rgba(51,51,51,0.5);
	-moz-box-shadow: 0px 2px 2px rgba(51,51,51,0.5);
	-ms-box-shadow: 0px 2px 2px rgba(51,51,51,0.5);
	box-shadow: 0px 2px 2px rgba(51,51,51,0.5);
	border:none;
	cursor:pointer;
}

.cancel-button input:hover{
	background:url(../img/btn_icon.png) 20px center  no-repeat #fa6c55;
}

.confirm .cancel-button input {
	display: inline-block;
}
.confirm .cancel-button input:first-child {
	margin-right: 20px;
}


.f80{
	font-size: 80%;
}

.f150{
	font-size: 150%;
}

.blue{
	color: #6db030;
}

.fl {
	float:left;
}

.fr {
	float:right;
}

.pdl20 {
	padding: 0 0 0 20px;
}

/* After Clear */
.clearfix:after{
	content: "";
	clear: both;
	display: block;
}

.clear {
	clear: both;
}


html {
  /*scroll-behavior: smooth;*/
	scroll-behavior: auto;
}


/*============ section別 =================*/
/*業務*/
.com-area{
	max-width: 1080px;
	margin: 0 auto;
	padding: 3rem 20px 3rem;
}
.com-area .com-head{
	display:flex;
	flex-wrap:wrap;
	/*margin-bottom: 1rem;*/
}
.com-area .com-head.img-left{
	flex-direction: row-reverse;
}
.com-area .com-head .item-txt{
	padding-right:10px;
	flex:1;
}
.com-area .com-head.img-left .item-txt{margin:0 0 0 10px;}
.com-area .com-head .item-img{
	max-width:600px;
	width:60%;
}


@media screen and (max-width: 768px){
	
	
	
.com-area .com-head .item-img{width:50%;}
}
.com-area .com-head .tit{
	margin-bottom:1rem;
}
.com-area .com-head .tit h2{
	color:rgb(109, 176, 48);
	font-size:clamp(24px, 5vw, 48px);
	font-weight:bold;
}
.com-area .com-head .tit span{
	color:rgb(109, 176, 48);
	display:block;
	font-size:clamp(12px, 2vw, 18px);
}
#contents .com-area .com-head .item-txt p{
	font-size:clamp(12px, 2vw, 18px);
}
/*開閉のところ*/
details.reverse {
	display: flex;
	flex-direction: column-reverse; /* 上下逆に並べる */
	margin-top:-4px;
}
summary {
	display: block;         /* ブロック表示に変更 */
	padding: 1rem 12px;      /* 余白 */
	background: rgb(109, 176, 48);    /* 閉じているときの背景 */
	cursor: pointer;
	text-align:center;
color:#fff;
}

/* 閉じているときは「詳細を見る」だけ表示 */
summary .close-text { display: none; }

/* 開いているとき */
details[open] summary {
	background: #999;
}
details[open] summary .open-text { display: none; }
details[open] summary .close-text { display: inline; }

/* 中身の部分をちょっと見やすく */
.com-cont {
	padding: 2rem 0px;
	max-width:1040px;
}


/*レイアウトのリスト*/

.num-list .box{

	margin: 2rem 10px 1rem 0;
}
.num-list .box h3{
	color: #333333;
		font-weight: bold;

}
.num-list .box h3 span{

	font-size: clamp(30px, 7vw, 40px);
	line-height: 1em;

}
.service .layout{
   margin:20px 0;
}
.interior .read01{
	width:100%;
	max-height:402px;
	background:url('../../service/img/interior01.jpg') no-repeat center center;
	background-size: cover;
	margin-bottom:10rem;
}
.interior .read01 .inner{
	padding:3em;

}
.interior .read01 .inner p{
	font-size:clamp(9px, 1.5vw, 16px) !important;
}
.interior .clm3{
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 3カラム */
  gap: 3vw; 
}

.clm3 .inner img {
  width: 100%;
  height: auto;
  display: block;
}
.interior .clm3 .inner p {
	background-color:#fff;
	text-align:center;
	margin:0px !important;
	min-height:4rem !important;
	padding-top:0.9em;
	font-size:clamp(10px, 1.5vw, 18px)  !important;
}
.interior .clm3 .inner p span{
 vertical-align: middle;
 line-height:1em;
}
.interior .clm3 .inner p .sp{
	display:none; 
 }
.interior .clm3 .inner p .tailc{
	letter-spacing:-2px;
}
@media screen and (min-width: 621px){

.num-list .box:nth-child(3n),
.num-list .box:last-child{margin-right:0;}
}
@media screen and (max-width: 620px){
.num-list .box{
	width: calc((100% - 10px) / 2);
}
.num-list .box:nth-child(2n),
.num-list .box:last-child{margin-right:0;}
.num-list .box h3 span{top:-1rem;}
.interior .clm3 .inner p {
		padding-top:2em;
}
.interior .clm3 .inner p .sp{
	display:inline-block; 
 }
	
}

.service .moving{
	display: grid;
	  grid-template-columns: repeat(2, 1fr); /* 2カラム */
	    gap: 30px; 
}
.moving .inner img {
  width: 100%;
  height: auto;
  display: block;
}
 .moving h3{
 color:#333333 !important;
 }
.moving h3 span {
     font-size: clamp(30px, 7vw, 40px);
    line-height: 1em;
}

.service .network {
		display: grid;
	  grid-template-columns: repeat(2, 1fr); /* 2カラム */
	    gap: 2vw; 
}
.service .network .inner h3{
	margin: .2em 1em 0em 1em !important; 
		color:#336600 !important; 
		font-size: clamp(10px, 2vw, 30px) !important; 
		padding-bottom:.8em;
}
.service .network .inner h3 span{
		color:#333333;
		display:block;
		font-size:70%;
		line-height:1em;

}
.service .network .inner a{
	border:solid 1px #282828;
	color:#333333;
	display:block;
}
.service .network .inner a:hover{
background-color:#fff;
	border:solid 1px #fff;	
}

.service .mt_r{
	margin-top:5rem !important;
}
.service .mt_r2{
	margin-top:3rem !important;
}


@media screen and (max-width: 480px){
	.num-list {display:block;}
	.num-list .box{
		width: unset;
		margin-right:0;
	}
}

/*会社*/

.container {
display: flex;
}
.container .item-left{
width:744px;
}
.container .item-right{
width:276px;
padding:0px 0px 0px 20px;
}
@media screen and (max-width: 700px){
.container {
display:block;
}	
.container .item-left{
width:auto;
}
.container .item-right{
width:100%;
padding:0px 20px 0px 20px;
text-align:center;
}
}
/*map*/
#comp03 .map{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:2rem;
}
#comp03 .map .item-txt{
	width:40%;
	max-width:240px;
}
#comp03 .map .gmap{
	flex:1;
	padding-bottom: 36.25%;
}

/*沿革のテーブル*/
table.tbl-enkaku {
	margin: 0 0 20px; 
	width: 100%;
}

table.tbl-enkaku th,
table.tbl-enkaku td{
	padding: 15px 5px;
	border-bottom:solid 1px #ccc;
}
table.tbl-enkaku td:nth-child(2){text-align:right;}

/*取扱いメーカーのリスト*/
.list-mfr{
	display:flex;
	flex-wrap:wrap;
	margin-bottom: 4rem;
}

.list-mfr li{
	width:calc((100% - 2rem) / 3);
	margin-right:1rem;
	margin-bottom:1rem;
	padding-left: 1rem;
	position:relative;
	line-height:1.5;
}
.list-mfr li:nth-child(3n){margin-right:0;}

.list-mfr li:before{
	content:"";
	position:absolute;
	left:0;
	top:4px;
	width:10px;
	height:10px;
	background-color:#6db030;
}