@charset "utf-8";
/* CSS Document */

@media screen and (max-width: 899px) {
	.menu-trigger span { background-color: #009a5a; }
}
/*-- headline ------------------------------------------------------------*/
#headline { background:url("../img/second/headline.jpg") center center no-repeat; background-size: cover; }
#headline.headline-company { background:url("../img/second/headline-company.jpg") center center no-repeat; background-size: cover; }
#headline.headline-service { background:url("../img/second/headline-service.jpg") bottom center no-repeat; background-size: cover; }
#headline.headline-golf { background:url("../img/second/headline-golf.jpg") center center no-repeat; background-size: cover; }
#headline.headline-field { background:url("../img/second/headline-field.jpg") center center no-repeat; background-size: cover; }
#headline.headline-ground { background:url("../img/second/headline-ground.jpg") bottom center no-repeat; background-size: cover; }
#headline.headline-landscape { background:url("../img/second/headline-landscape.jpg") bottom center no-repeat; background-size: cover; }
#headline.headline-farm { background:url("../img/second/headline-farm.jpg") center center no-repeat; background-size: cover; }
#headline.headline-product { background:url("../img/second/headline-product.jpg") center center no-repeat; background-size: cover; }
#headline.headline-works { background:url("../img/second/headline-works.jpg") center center no-repeat; background-size: cover; }
#headline.headline-recruit { background:url("../img/second/headline-recruit.jpg") center center no-repeat; background-size: cover; }
#headline.headline-faq { background:url("../img/second/headline-faq.jpg") center center no-repeat; background-size: cover; }
#headline.headline-contact { background:url("../img/second/headline-contact.jpg") center center no-repeat; background-size: cover; }

#headline h2 { color: #fff; text-align: center; padding: 150px 0; line-height: 1.7;}
#headline h2 span { display: block; font-family:'Roboto Condensed', sans-serif; font-weight:bold; color: #fff; font-size: 0.9rem; opacity: 0.7;}
@media screen and (max-width: 899px) {
	#headline { background:url("../img/second/headline_sp.jpg") center center no-repeat; background-size: cover; }
	#headline.headline-company { background:url("../img/second/headline-company_sp.jpg") center center no-repeat; background-size: cover; }
	#headline.headline-company { background:url("../img/second/headline-service_sp.jpg") center center no-repeat; background-size: cover; }
	#headline.headline-golf { background:url("../img/second/headline-golf_sp.jpg") center center no-repeat; background-size: cover; }
	#headline.headline-field { background:url("../img/second/headline-field_sp.jpg") center center no-repeat; background-size: cover; }
	#headline.headline-ground { background:url("../img/second/headline-ground_sp.jpg") center center no-repeat; background-size: cover; }
	#headline.headline-landscape { background:url("../img/second/headline-landscape_sp.jpg") bottom center no-repeat; background-size: cover; }
	#headline.headline-farm { background:url("../img/second/headline-farm_sp.jpg") center center no-repeat; background-size: cover; }
	#headline.headline-product { background:url("../img/second/headline-product_sp.jpg") center center no-repeat; background-size: cover; }
	#headline.headline-works { background:url("../img/second/headline-works_sp.jpg") center center no-repeat; background-size: cover; }
	#headline.headline-recruit { background:url("../img/second/headline-recruit_sp.jpg") center center no-repeat; background-size: cover; }
	#headline.headline-faq { background:url("../img/second/headline-faq_sp.jpg") center center no-repeat; background-size: cover; }
	#headline.headline-contact { background:url("../img/second/headline-contact_sp.jpg") center center no-repeat; background-size: cover; }
	
	#headline h2 { font-size: 1.5rem; padding: 10vh 0;}
	#headline h2 span { font-size: 0.7rem; }
	
	#content aside { padding: 6% 6% 0; }
	#content aside h4 { background:#009a5a; text-align: center; color: #fff; padding: 5px 0; font-size: 0.9rem; position: relative;}
	#content aside h4:before { position: absolute; top: 50%; transform: translateY(-50%); right: 2%; content: "\f067" / ""; font-family: "Font Awesome 5 Free"; font-weight: 900; opacity: 0.5; }
	#content aside h4.active:before { position: absolute; top: 50%; transform: translateY(-50%); right: 2%; content: "\f068 / """; font-family: "Font Awesome 5 Free"; font-weight: 900; opacity: 0.5; }
	#content aside ul { margin:0 1% 20px; padding-top: 20px; }
	#content aside ul li { padding-bottom: 10px; margin-bottom: 10px; border-bottom: 1px dotted #dedede; font-size: 0.8rem; }
	#content aside ul li:before { content:"\f0da" / ""; font-family:"Font Awesome 5 Free"; font-weight: 900; margin-right:10px; color:#009a5a; }
	
	#content aside ul li.gear:before { content:""; background-image: url("../img/second/icon01.png"); background-size: contain; background-repeat: no-repeat; margin-right:10px; display: inline-block; vertical-align: middle; width: 20px; height: 20px; }
	#content aside ul li.spry:before { content:""; background-image: url("../img/second/icon02.png"); background-size: contain; background-repeat: no-repeat; margin-right:10px; display: inline-block; vertical-align: middle; width: 20px; height: 20px; }
	#content aside ul li.popup:before { content:""; background-image: url("../img/second/icon03.png"); background-size: contain; background-repeat: no-repeat; margin-right:10px; display: inline-block; vertical-align: middle; width: 20px; height: 20px; }
	#content aside ul li.valve:before { content:""; background-image: url("../img/second/icon04.png"); background-size: contain; background-repeat: no-repeat; margin-right:10px; display: inline-block; vertical-align: middle; width: 20px; height: 20px; }
	#content aside ul li.cntrl:before { content:""; background-image: url("../img/second/icon05.png"); background-size: contain; background-repeat: no-repeat; margin-right:10px; display: inline-block; vertical-align: middle; width: 20px; height: 20px; }
	#content aside ul li.impact:before { content:""; background-image: url("../img/second/icon06.png"); background-size: contain; background-repeat: no-repeat; margin-right:10px; display: inline-block; vertical-align: middle; width: 20px; height: 20px; }
	#content aside ul li.relat:before { content:""; background-image: url("../img/second/icon07.png"); background-size: contain; background-repeat: no-repeat; margin-right:10px; display: inline-block; vertical-align: middle; width: 20px; height: 20px; }
	
	.catDl { display: flex; justify-content: flex-start; align-items: center; margin-bottom: 10px; }
	.catDl dt { background: #333; color: #fff; padding: 1px 10px; text-align: center; font-size: 12px; }
	.catDl dd { background: #009a5a; color: #fff; padding: 1px 10px; text-align: center; font-size: 12px; }
}
@media screen and (min-width: 600px) and (max-width: 899px) {
	#content aside { padding: 20px 6% 6%; }
}
@media screen and (min-width: 900px) {
	#headline { margin: 0 2%; }
	#content { display: flex; justify-content: flex-start; margin: 0 2% 10vh; }
	#content main { width:80%; max-width: 1000px; }
	#content.singleSec main { margin: 0 auto;}
	#content main.sec988 { max-width: 1000px; width:100%; margin: 0 auto; }
	#content.is-fix main.sec988 { margin: 0 auto; }
	
	#content aside { width:16%; background: #fff; margin-right: 4%; }
	#content aside ul { border-top: 3px solid #009a5a; margin-bottom: 20px; padding: 20px 4%; }
	#content aside ul li { padding-top: 10px; padding-bottom: 10px; margin-bottom: 10px; border-bottom: 1px dotted #dedede; font-size: 0.9rem; padding-left: 2em; text-indent: -2em; }
	#content aside ul li:before { content:"\f0da" / ""; font-family:"Font Awesome 5 Free"; font-weight: 900; margin-right:10px; color:#009a5a; }
	#content aside h4.pc_tab { padding: 10px; text-align: center; color:#009a5a; }
	
	#content aside ul li.active { background:#009a5a; }
	#content aside ul li.active a         { resize: none; }
	#content aside ul li.active a:link    { color:#fff; text-decoration: none; }
	#content aside ul li.active a:visited { color:#fff; text-decoration: none; }
	#content aside ul li.active a:hover   { color:#fff; text-decoration: none; opacity: 0.7; }
	#content aside ul li.active a:active  { color:#fff; text-decoration: none; }
	#content aside ul li.active:before  { color:#fff; }

	#content aside ul li.current { background:#009a5a; }
	#content aside ul li.current a         { resize: none; }
	#content aside ul li.current a:link    { color:#fff; text-decoration: none; }
	#content aside ul li.current a:visited { color:#fff; text-decoration: none; }
	#content aside ul li.current a:hover   { color:#fff; text-decoration: none; opacity: 0.7; }
	#content aside ul li.current a:active  { color:#fff; text-decoration: none; }
	#content aside ul li.current:before  { color:#fff; }
	
	#content aside ul li.gear:before { content:""; background-image: url("../img/second/icon01.png"); background-size: contain; background-repeat: no-repeat; margin-right:10px; display: inline-block; vertical-align: middle; width: 20px; height: 20px; }
	#content aside ul li.spry:before { content:""; background-image: url("../img/second/icon02.png"); background-size: contain; background-repeat: no-repeat; margin-right:10px; display: inline-block; vertical-align: middle; width: 20px; height: 20px; }
	#content aside ul li.popup:before { content:""; background-image: url("../img/second/icon03.png"); background-size: contain; background-repeat: no-repeat; margin-right:10px; display: inline-block; vertical-align: middle; width: 20px; height: 20px; }
	#content aside ul li.valve:before { content:""; background-image: url("../img/second/icon04.png"); background-size: contain; background-repeat: no-repeat; margin-right:10px; display: inline-block; vertical-align: middle; width: 20px; height: 20px; }
	#content aside ul li.cntrl:before { content:""; background-image: url("../img/second/icon05.png"); background-size: contain; background-repeat: no-repeat; margin-right:10px; display: inline-block; vertical-align: middle; width: 20px; height: 20px; }
	#content aside ul li.impact:before { content:""; background-image: url("../img/second/icon06.png"); background-size: contain; background-repeat: no-repeat; margin-right:10px; display: inline-block; vertical-align: middle; width: 20px; height: 20px; }
	#content aside ul li.relat:before { content:""; background-image: url("../img/second/icon07.png"); background-size: contain; background-repeat: no-repeat; margin-right:10px; display: inline-block; vertical-align: middle; width: 20px; height: 20px; }
	
	section .in { margin: 0 2% 80px; }
	
	.menuList li a span { color: #666; }
	.menuList li a         { resize: none; display: block; }
	.menuList li a:link    { color:#333; text-decoration: none; }
	.menuList li a:visited { color:#333; text-decoration: none; }
	.menuList li a:hover   { color:#009a5a; text-decoration: none; }
	.menuList li a:active  { color:#333; text-decoration: none; }
	.menuList li a:hover span { color:#009a5a; text-decoration: none; opacity: 0.7; }
	
	#content.is-fix aside { width:16%; position: fixed; top: 8%; z-index: 1; }
	#content.is-fix main { margin-left: calc(100% - 80%);}
	
    aside ul.side-scroll {
        overflow-y: scroll;
        padding: 4%;
        margin-bottom: 60px;
        max-height: 50vh;
        scrollbar-width: thin;
        scrollbar-color: #d5cfcb #f4f4f4;
    }
	
	.newsList { max-width: 100%; }
	.catDl { display: flex; justify-content: flex-start; align-items: center; margin-right: 4%; margin-bottom: 20px; }
	.catDl dt { background: #333; color: #fff; padding: 1px 10px; text-align: center; font-size: 12px; }
	.catDl dd { background: #009a5a; color: #fff; padding: 1px 10px; text-align: center; font-size: 12px; }
}
@media screen and (min-width: 600px) and (max-width: 899px)  {
	#headline .in { margin:0 1%; }
	#headline h2 { font-size: 1.6rem;}
	#headline h2 span { font-size: 0.8rem; }
	
	/*#content main { width:74%; }
	#content aside { width:22%; }
	#content aside ul li { font-size: 0.8rem; }
	
	#content.is-fix aside { width:22%; position: fixed; top: 8%; }
	#content.is-fix main { margin-left: calc(100% - 74%);}*/
}
@media screen and (min-width: 900px) and (max-width: 1079px)  {
	#headline .in { margin:0 1%; }
	#headline h2 { font-size: 1.7rem;}
	#content aside ul li { font-size: 0.8rem; }
}
@media screen and (min-width: 1080px) and (max-width: 1199px)  {
	#headline .in { margin:0 2%; }
	#headline h2 { font-size: 1.8rem;}
	#content aside ul li { font-size: 0.85rem; }
}
@media screen and (min-width: 1200px) and (max-width: 1479px)  {
	#headline .in { width:1100px; margin:0 auto; }
	#headline h2 { font-size: 1.9rem; }
}
@media screen and (min-width: 1480px) {
	#headline .in { width:1200px; margin:0 auto; }
	#headline h2 { font-size: 2.0rem; }
}

.ttlBox.geardrive { border-top:1px solid #076ab6; }
.ttlBox.geardrive .ttl02 { background:url("../img/second/icon01.png") 0 center no-repeat; background-size: 30px; padding-left: 40px; color: #076ab6; margin-bottom: 0; text-align: left; }
.ttlBox.geardrive .ttl02 span { color: #076ab6; text-align: left; }
.ttlBox.geardrive .ttlBoxR ul li.current { background:#076ab6; border: 1px solid #076ab6; }

.ttlBox.spry { border-top:1px solid #06903a; }
.ttlBox.spry .ttl02 { background:url("../img/second/icon02.png") 0 center no-repeat; background-size: 30px; padding-left: 40px; color: #06903a; margin-bottom: 0px; text-align: left; }
.ttlBox.spry .ttl02 span { color: #06903a; text-align: left; }
.ttlBox.spry .ttlBoxR ul li.current { background:#06903a; border: 1px solid #06903a; }

.ttlBox.popup { border-top:1px solid #1e90bf; }
.ttlBox.popup .ttl02 { background:url("../img/second/icon03.png") 0 center no-repeat; background-size: 30px; padding-left: 40px; color: #1e90bf; margin-bottom: 0px; text-align: left; }
.ttlBox.popup .ttl02 span { color: #1e90bf; text-align: left; }
.ttlBox.popup .ttlBoxR ul li.current { background:#1e90bf; border: 1px solid #1e90bf; }

.ttlBox.valve { border-top:1px solid #b72f84; }
.ttlBox.valve .ttl02 { background:url("../img/second/icon04.png") 0 center no-repeat; background-size: 30px; padding-left: 40px; color: #b72f84; margin-bottom: 0px; text-align: left; }
.ttlBox.valve .ttl02 span { color: #b72f84; text-align: left; }
.ttlBox.valve .ttlBoxR ul li.current { background:#b72f84; border: 1px solid #b72f84; }

.ttlBox.cntrl { border-top:1px solid #e4007f; }
.ttlBox.cntrl .ttl02 { background:url("../img/second/icon05.png") 0 center no-repeat; background-size: 30px; padding-left: 40px; color: #e4007f; margin-bottom: 0px; text-align: left; }
.ttlBox.cntrl .ttl02 span { color: #e4007f; text-align: left; }
.ttlBox.cntrl .ttlBoxR ul li.current { background:#e4007f; border: 1px solid #e4007f; }

.ttlBox.impact { border-top:1px solid #6fb72b; }
.ttlBox.impact .ttl02 { background:url("../img/second/icon06.png") 0 center no-repeat; background-size: 30px; padding-left: 40px; color: #6fb72b; margin-bottom: 0px; text-align: left; }
.ttlBox.impact .ttl02 span { color: #6fb72b; text-align: left; }
.ttlBox.impact .ttlBoxR ul li.current { background:#6fb72b; border: 1px solid #6fb72b; }

.ttlBox.relat { border-top:1px solid #b9513b; }
.ttlBox.relat .ttl02 { background:url("../img/second/icon07.png") 0 center no-repeat; background-size: 30px; padding-left: 40px; color: #b9513b; margin-bottom: 0px; text-align: left; }
.ttlBox.relat .ttl02 span { color: #b9513b; text-align: left; }
.ttlBox.relat .ttlBoxR ul li.current { background:#b9513b; border: 1px solid #b9513b; }

/*-- コンテンツ -------------------------------------------------------------*/
.ttlBoxR ul li a         { resize: none; display: block; }
.ttlBoxR ul li a:link    { color:#333333; text-decoration: none; }
.ttlBoxR ul li a:visited { color:#333333; text-decoration: none; }
.ttlBoxR ul li a:hover   { color:#fff; text-decoration: none; }
.ttlBoxR ul li a:active  { color:#333333; text-decoration: none; }
.ttlBoxR ul li:hover { color:#fff; background: #009a5a; border: 1px solid #009a5a; }

.ttlBoxR ul li.current { color:#fff; background: #009a5a; border: 1px solid #009a5a; }
.ttlBoxR ul li.current a { color:#fff; pointer-events: none; }

@media screen and (max-width: 599px) {
	#content section { padding: 4%; }
	#content section .in { padding: 2%; }
	#content section#anch00 { padding: 4% 4% 0; }
	#content section#anch00 .in { padding: 0; margin: 0; }

	.ttlBox { border-top: 1px solid #009a5a; padding: 20px 0 0; margin-bottom: 20px;  }
	.ttlBoxL {  }
	.ttlBoxL h6 { margin-bottom: 0px;}
	.ttlBoxR { display: none; }
	
	.ttl03 { padding: 10px 20px; border-top: 1px solid #009a5a; margin-bottom: 20px; font-size: 1.0rem; background: #f4f4f4; }
	
	.gradTtl { background: rgb(148,196,176); background: linear-gradient(90deg, rgba(148,196,176,1) 0%, rgba(0,154,90,1) 50%, rgba(148,196,176,1) 100%); color: #fff; text-align: center; font-size: 1.0rem; padding: 10px; margin:0 1% 40px; }
	
	.in-flex { margin-bottom: 20px;  }
	.in-flex-Text { margin-bottom: 20px; }
	.in-flex-Img { width: 80%; margin: 0 10% 10px; }
	
	.flexListFourth { }
	.flexListFourth li { width: 80%; margin: 0 10% 10px; border-bottom: 1px solid #dedede; padding-bottom: 10px;}
	.flexListFourth li h4 { text-align: center; border-top: 3px solid #009a5a; padding: 10px; color:#000; margin-bottom: 10px; }
	.flexListFourth li p { font-size: 0.9rem; line-height: 1.7; }
	.flexListFourth li div { width: 60%; margin: 0 auto; }
	
	.flexListThird { }
	.flexListThird li { width: 80%; margin: 0 10% 10px; border-bottom: 1px solid #dedede; padding-bottom: 10px;}
	.flexListThird li h4 { text-align: center; border-top: 3px solid #009a5a; padding: 10px; color:#000; margin-bottom: 10px; }
	.flexListThird li p { font-size: 0.9rem; line-height: 1.7; }
	.flexListThird li div { width: 60%; margin: 0 auto; }
	
	.areaTbl th { padding: 10px 5px; width: 30%; }
	.areaTbl td { padding: 10px; }
	.areaTbl .kawaguchi { background: #009a5a; color: #fff; padding: 1px 5px; font-size: 0.7rem;}
	.areaTbl .osaka { background: #ff4f0b; color: #fff; padding: 1px 5px; font-size: 0.7rem;}
	.areaTbl .kyushu { background: #c95ddf; color: #fff; padding: 1px 5px; font-size: 0.7rem;}
	.areaTbl .okinawa { background: #017dfd; color: #fff; padding: 1px 5px; font-size: 0.7rem;}
	.areaTbl .igArea { color: #f9e2b6; font-size: 1.2rem;}
	.areaTbl .st { color: #e5181d; padding: 1px 5px; font-size: 0.9rem;}
	
	.serviceList { display: flex; justify-content: center; align-items: flex-start; flex-wrap: wrap; }
	.serviceList li { width: 28%; margin: 0 2% 20px;}
	.serviceList li div { margin-bottom: 10px; }
	.serviceList li h4 { text-align: center; font-size: 0.8rem;}
	
	.ttlList li { padding-bottom: 10px; margin-bottom: 10px; border-bottom: 1px dotted #dedede; font-size: 1.0rem; padding-left: 3.5em; text-indent: -3em; }
	.ttlList li span { background: #009a5a; color: #fff; font-family:'Roboto Condensed', sans-serif; font-weight:bold; padding: 5px 10px; margin-right: 10px; }
	
	.listCheck li { margin-bottom: 10px; padding-bottom: 10px; border-bottom: 1px dotted #dedede; padding-left: 2em; text-indent: -1.5em; font-size: 0.9rem; }
	.listCheck li:before { content: "\f00c" / ""; margin-right: 10px; color: #009a5a; font-family: "Font Awesome 5 Free"; font-weight: bold; }
	
	.tabs { display: flex; justify-content: flex-start; flex-wrap: wrap; }
	.tabs li { height: 25px; line-height: 25px; font-size: 0.7rem; padding: 0 10px; border-left: 1px solid #dedede; border-top: 1px solid #dedede; border-right: 1px solid #dedede; margin: 0 1px 5px; background: #dedede; }
	.tabs li.selected { border-left: 1px solid #009a5a; border-top: 1px solid #009a5a; border-right: 1px solid #009a5a; background: #009a5a; }
	
	.tabs li a         { resize: none; display: block; }
	.tabs li a:link    { color:#333333; text-decoration: none; }
	.tabs li a:visited { color:#333333; text-decoration: none; }
	.tabs li a:hover   { color:#333333; text-decoration: none; opacity: 0.7; }
	.tabs li a:active  { color:#333333; text-decoration: none; }
	
	.tabs li.selected a         { resize: none; display: block; pointer-events: none; }
	.tabs li.selected a:link    { color:#fff; text-decoration: none; }
	.tabs li.selected a:visited { color:#ffff; text-decoration: none; }
	.tabs li.selected a:hover   { color:#fff; text-decoration: none; background: #009a5a; }
	.tabs li.selected a:active  { color:#fff; text-decoration: none; }

	.categry { font-weight: bold; padding-left: 35px; margin: 0 0 10px;} 	
	.categry.cat01 {background:url(../img/second/product_cat01_ico.gif) no-repeat; background-size: 25px;}
	.categry.cat02 {background:url(../img/second/product_cat02_ico.gif) no-repeat;}
	.categry.cat03 {background:url(../img/second/product_cat03_ico.gif) no-repeat;}
	.categry.cat04 {background:url(../img/second/product_cat04_ico.gif) no-repeat;}
	.categry.cat05 {background:url(../img/second/product_cat05_ico.gif) no-repeat;}
	.categry.cat06 {background:url(../img/second/product_cat06_ico.gif) no-repeat;}
	.categry.cat07 {background:url(../img/second/product_cat07_ico.gif) no-repeat;}
	
	.in-flex-R .icon { text-align: left;}
	.in-flex-R .icon i { font-size: 0.7rem; text-align: center; font-style: normal; color: #fff; background: #0769d1; padding: 0 10px; }
	
	.productList { display: flex; justify-content: flex-start; flex-wrap: wrap; }
	.productList li { width: 46.0%; margin: 0 2% 20px; }
	.productList li .icon { text-align: center;}
	.productList li .icon i { font-size: 0.7rem; text-align: center; font-style: normal; color: #fff; background: #0769d1; padding: 0 10px; }
	.productList li .name { text-align: left; }
	.productList li .thumb { display: flex; justify-content: center; align-items: center; margin-bottom: 10px; }
	.productList li .thumb a { display: flex; justify-content: center; align-items: center; margin-bottom: 10px; }
	
	.ttlBox02 { background: #009a5a; color: #fff; padding: 5px 10px; }
	.ttlBox02 .ttl02 { margin-bottom: 0px; font-size: 1.1rem; }
	.title04 { margin-bottom: 20px; background: #f4f4f4; padding: 10px 20px; font-weight: bold; font-size: 1.0rem; border-left: 5px solid #009a5a; }
	#cmsContent { margin: 6% 2%; }
	#cmsContent p { margin-bottom: 20px; }
	
	.flexList { }
	.flexList li { margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px dotted #dedede; }
	.flexList li .flL { width: 50%;  margin:0 25% 20px; }
	.flexList li .flR { }
	
	.worksList li { margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px solid #dedede;  }
	.worksList li .wkL { width: 100%; margin:0 auto 10px; }
	.worksList li .wkL img { object-fit: cover; width: 100%; max-height: 180px;}
	.worksList li .wkR { }
	.wkDl { display: flex; justify-content: flex-start; align-items: center; margin-bottom: 10px; }
	.wkDl dt { background:#009a5a; color: #fff; font-size: 12px; padding: 2px 10px; border: 1px solid #009a5a; }
	.wkDl dd { background:#fff; color: #009a5a; font-size: 12px; padding: 2px 10px; border: 1px solid #009a5a; }
	
	.sign { font-size: 1.0em; font-weight: 600; }
	.sign span.president { margin-left: 1em; font-size: 1.2em; }
	
	.arrow-inline .arrow-button a { margin-bottom: 0;  }
	.flexList li .arrow-button { margin-top:20px; }
	.flexList li .arrow-inline .arrow-button { margin-top:0px; }
	.flexList li .subTtl02 { font-size: 1.1rem; margin-bottom: 20px; }
}
@media screen and (min-width: 600px) {
	#content section .in-in { margin: 0 2% 80px;}
	.ttlBox { border-top: 1px solid #009a5a; padding: 20px 0; margin-bottom: 40px; display: flex; justify-content: space-between; align-items: center; }
	.ttlBoxL { width: 40%; }
	.ttlBoxL70 { width: 70% !important; }
	.ttlBoxL70 .ttl02 { line-height: 1.2; }
	.ttlBoxL100 { width: 100% !important; }
	.ttlBoxL h6 { margin-bottom: 0px;}
	.ttlBoxR { width: 60%; }
	.ttlBoxR ul { display: flex; justify-content: flex-end; align-items: center; }
	.ttlBoxR ul li { font-size: 0.8rem; padding: 0 20px; height: 25px; line-height: 25px; border: 1px solid #ccc; margin-left: 5px;}
	
	.ttlBox02 { border-top: none; }
	
	.in-flex { display: flex; justify-content: flex-start; margin-bottom: 40px; }
	.in-flex-Text { width: 60%; margin-right: 4%;}
	.in-flex-Img { width: 36%; }
	
	.in-flex-Text02 { width: 50%; margin-right: 4%;}
	.in-flex-Img02 { width: 46%; }
	
	.ttl03 { padding: 10px 20px; border-bottom: 1px solid #dedede; margin-bottom: 40px; font-size: 1.2rem; background: #f4f4f4; position: relative;}
	.ttl03 span { position: relative; }
	.ttl03 span:after { content:""; background: #009a5a; height: 2px; width: calc(100% + 40px); position: absolute; left: -20px; bottom: -15px; }
	.gradTtl { background: rgb(148,196,176); background: linear-gradient(90deg, rgba(148,196,176,1) 0%, rgba(0,154,90,1) 50%, rgba(148,196,176,1) 100%); color: #fff; text-align: center; font-size: 1.1rem; padding: 10px; margin:0 1% 40px; }
	
	.flexListFourth { margin: 0 1% 40px; display: flex; justify-content: space-between; }
	.flexListFourth li { width: 23%; }
	.flexListFourth li h4 { text-align: center; border-top: 3px solid #009a5a; padding: 10px; color:#000; margin-bottom: 10px; line-height: 1.7; }
	.flexListFourth li p { font-size: 0.9rem; line-height: 1.7; }
	.flexListFourth li div { width: 60%; margin: 0 auto; }
	
	.flexListThird { margin: 0 1% 40px; display: flex; justify-content: space-between; }
	.flexListThird li { width: 31%; }
	.flexListThird li h4 { text-align: center; border-top: 3px solid #009a5a; padding: 10px; color:#000; margin-bottom: 10px; line-height: 1.7; }
	.flexListThird li p { font-size: 0.9rem; line-height: 1.7; }
	.flexListThird li div { width: 50%; margin: 0 auto; }
	
	.in-intend { margin: 0 1% 40px;}
	
	.areaTbl th { padding: 10px; }
	.areaTbl td { padding: 10px; }
	.areaTbl .kawaguchi { background: #009a5a; color: #fff; padding: 1px 5px; font-size: 0.9rem;}
	.areaTbl .osaka { background: #ff4f0b; color: #fff; padding: 1px 5px; font-size: 0.9rem;}
	.areaTbl .kyushu { background: #c95ddf; color: #fff; padding: 1px 5px; font-size: 0.9rem;}
	.areaTbl .okinawa { background: #017dfd; color: #fff; padding: 1px 5px; font-size: 0.9rem;}
	.areaTbl .igArea { color: #f9e2b6; font-size: 1.2rem;}
	.areaTbl .st { color: #e5181d; padding: 1px 5px; font-size: 0.9rem;}
	
	.serviceList { display: flex; justify-content: space-between; align-items: center; }
	.serviceList li { width: 18%;}
	.serviceList li div { margin-bottom: 10px; }
	.serviceList li h4 { text-align: center;}
	
	.ttlList li { padding-bottom: 10px; margin-bottom: 10px; border-bottom: 1px dotted #dedede; font-size: 1.1rem; }
	.ttlList li span { background: #009a5a; color: #fff; font-family:'Roboto Condensed', sans-serif; font-weight:bold; padding: 5px 10px; margin-right: 10px; }
	
	.listCheck li { margin-bottom: 10px; padding-bottom: 10px; border-bottom: 1px dotted #dedede; padding-left: 2em; text-indent: -1.5em; }
	.listCheck li:before { content: "\f00c" / ""; margin-right: 10px; color: #009a5a; font-family: "Font Awesome 5 Free"; font-weight: bold; }
	
	.tabs { display: flex; justify-content: center; flex-wrap: wrap; border-bottom: 1px solid #009a5a; }
	.tabs li { height: 40px; line-height: 40px; font-size: 0.9rem; padding: 0 20px; border-left: 1px solid #dedede; border-top: 1px solid #dedede; border-right: 1px solid #dedede; margin: 0 1px 0px; background: #dedede; }
	.tabs li.selected { padding: 0 20px; border-left: 1px solid #009a5a; border-top: 1px solid #009a5a; border-right: 1px solid #009a5a; margin: 0 1px 0px; background: #009a5a; }
	
	.tabs li a         { resize: none; display: block; }
	.tabs li a:link    { color:#333333; text-decoration: none; }
	.tabs li a:visited { color:#333333; text-decoration: none; }
	.tabs li a:hover   { color:#333333; text-decoration: none; opacity: 0.7; }
	.tabs li a:active  { color:#333333; text-decoration: none; }
	
	.tabs li.selected a         { resize: none; display: block; pointer-events: none; }
	.tabs li.selected a:link    { color:#fff; text-decoration: none; }
	.tabs li.selected a:visited { color:#ffff; text-decoration: none; }
	.tabs li.selected a:hover   { color:#fff; text-decoration: none; background: #009a5a; }
	.tabs li.selected a:active  { color:#fff; text-decoration: none; }
	
	.productList { display: flex; justify-content: flex-start; flex-wrap: wrap; position: relative; z-index: 5;}
	.productList li { width: 31.0%; margin: 0 3.5% 20px 0; }
	.productList li:nth-child(3n) { margin-right: 0; }
	.productList li .icon { text-align: center;}
	.productList li .icon i { font-size: 0.7rem; text-align: center; font-style: normal; color: #fff; background: #0769d1; padding: 0 10px; }
	.productList li .name { text-align: center; }
	.productList li .thumb { display: flex; justify-content: center; align-items: center; margin-bottom: 20px; }
	.productList li .thumb a { display: flex; justify-content: center; align-items: center; margin-bottom: 10px; }
	
	.in-flex { display: flex; justify-content: space-between; /*align-items: center;*/ }
	.in-flex-L { width: 30%;}
	.in-flex-R { width: 66%;}
	
	.categry { font-weight: bold; padding-left: 35px; margin: 0 0 10px;} 	
	.categry.cat01 {background:url(../img/second/product_cat01_ico.gif) no-repeat; background-size: 25px;}
	.categry.cat02 {background:url(../img/second/product_cat02_ico.gif) no-repeat;}
	.categry.cat03 {background:url(../img/second/product_cat03_ico.gif) no-repeat;}
	.categry.cat04 {background:url(../img/second/product_cat04_ico.gif) no-repeat;}
	.categry.cat05 {background:url(../img/second/product_cat05_ico.gif) no-repeat;}
	.categry.cat06 {background:url(../img/second/product_cat06_ico.gif) no-repeat;}
	.categry.cat07 {background:url(../img/second/product_cat07_ico.gif) no-repeat;}
	
	.in-flex-R .icon { text-align: left;}
	.in-flex-R .icon i { font-size: 0.7rem; text-align: center; font-style: normal; color: #fff; background: #0769d1; padding: 0 10px; }
	
	.ttlBox02 { background: #009a5a; color: #fff; padding: 10px 20px; }
	.ttlBox02 .ttl02 { margin-bottom: 0px; }
	.title04 { margin-bottom: 20px; background: #f4f4f4; padding: 10px 20px; font-weight: bold; font-size: 1.2rem; border-left: 8px solid #009a5a; }
	#cmsContent { /*display: flex; justify-content: flex-start; flex-wrap: wrap;*/ margin: 0 0 0 2%; max-width: 960px; }
	#cmsContent p { /*width: 48%; margin-right: 2%; margin-bottom: 40px;*/ }
	#cmsContent p .arrow-button { margin-bottom: 20px; }
	
	.worksList li { margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px solid #dedede; display: flex; justify-content: flex-start; }
	.worksList li .wkL { width: 36%; margin-right: 4%; }
	.worksList li .wkL img { object-fit: cover; width: 100%; max-height: 200px;}
	.worksList li .wkR { width: 80%; }
	.wkDl { display: flex; justify-content: flex-start; align-items: center; margin-bottom: 10px; }
	.wkDl dt { background:#009a5a; color: #fff; font-size: 12px; padding: 2px 10px; border: 1px solid #009a5a; }
	.wkDl dd { background:#fff; color: #009a5a; font-size: 12px; padding: 2px 10px; border: 1px solid #009a5a; }
	
	.flexList { }
	.flexList li { display: flex; justify-content: flex-start; margin-bottom: 20px; }
	.flexList li .flL { width: 150px;  margin-right: 40px; }
	.flexList li .flR { width: calc(100% - 190px);}
	
	.sign { font-size: 1.1em; font-weight: 600; }
	.sign span.president { margin-left: 1em; font-size: 1.3em; }
	
	.arrow-inline { display: flex; justify-content: flex-start; flex-wrap: wrap; }
	.arrow-inline .arrow-button { margin-right: 3em; }
	
	.flexList li .subTtl02 { margin-bottom: 10px; }
}
@media screen and (min-width: 600px) and (max-width: 899px)  {
	#content section { padding: 4%; }
	.ttlBoxL { width: 40%; }
	.ttlBoxR { width: 60%; }
	.ttlBoxR ul li { font-size: 0.7rem; }
	#cmsContent p { width: 100%; margin-right: 0%; }
}
@media screen and (min-width: 900px) and (max-width: 1079px)  {
	.ttlBoxL { width: 40%; }
	.ttlBoxR { width: 60%; }
	.ttlBoxR ul li { font-size: 0.7rem; }
}
@media screen and (min-width: 1080px) and (max-width: 1279px)  {
	.ttlBoxL { width: 40%; }
	.ttlBoxR { width: 60%; }
}
@media screen and (min-width: 1280px) and (max-width: 1479px)  {

}
@media screen and (min-width: 1480px) {

}

.img960 { max-width: 960px; margin: 0 0 20px; }

/*-- Table -------------------------------------------------------------*/
@media screen and (max-width: 599px) {
	#content .tbl01 { width: 100%; }
	#content .tbl01 th,#content .tbl01 td { padding: 20px; }
	#content .tbl01 th { border-bottom: 3px solid #dedede; font-size: 0.9rem; }
	#content .tbl01 td { border-bottom: 1px solid #dedede; font-size: 0.9rem; }
	
	.tbl01sp { width: 100%; border-top: 1px solid #dedede; }
	.tbl01sp th,.tbl01sp td { padding: 10px 20px; display: block; }
	.tbl01sp th { border-bottom: 1px dotted #dedede; font-size: 0.9rem; background: #f4f4f4; }
	.tbl01sp td { border-bottom: 1px solid #dedede; font-size: 0.9rem; }
	
	#content .tbl02 { width: 100%; }
	#content .tbl02 th,#content .tbl02 td { padding: 10px 20px; border: 1px solid #dedede; background: #fff;}
	#content .tbl02 th { border-bottom: 1px solid #dedede; background: #f4f4f4; text-align: center; }
	#content .tbl02 td { border-bottom: 1px solid #dedede; }
}
@media screen and (min-width: 600px) {
	#content .tbl01 { width: 100%; }
	#content .tbl01 th,#content .tbl01 td { padding: 20px; }
	#content .tbl01 th { border-bottom: 3px solid #dedede; }
	#content .tbl01 td { border-bottom: 1px solid #dedede; }
	
	#content .tbl02 { width: 100%; }
	#content .tbl02 th,#content .tbl02 td { padding: 10px 20px; border: 1px solid #dedede; background: #fff;}
	#content .tbl02 th { border-bottom: 1px solid #dedede; background: #f4f4f4; text-align: center; }
	#content .tbl02 td { border-bottom: 1px solid #dedede; }
}

/*-- FAQ -------------------------------------------------------------*/
@media screen and (max-width: 767px) {
	.qa_dl { margin: 0 2%; }
	.qa_dl dt { background:#009a5a; color: #fff; font-size: 16px; font-weight: bold; padding: 10px 30px 10px 10px; border-radius: 4px; margin-bottom: 10px; position: relative;}
	.qa_dl dt:hover { cursor: pointer; }
	.qa_dl dt:after { position: absolute; top: 25%; right: 2%; content: "\f067" / ""; font-family: "Font Awesome 5 Free"; font-weight: 900; }
	.qa_dl dt.active:after { position: absolute; top: 25%; right: 2%; content: "\f068" / ""; font-family: "Font Awesome 5 Free"; font-weight: 900;  }
	.qa_dl dd { margin-bottom: 20px; padding: 0 2%; font-size: 14px; }
	.qa_dl dt:before { content: "Q."; margin-right: 5px; font-family: 'Roboto Condensed', sans-serif; font-weight: bold; }
}
@media screen and (min-width: 768px) {
	.qa_dl { width: 100%; margin: 0 auto; }
	.qa_dl dt { background:#009a5a; color: #fff; font-size: 16px; font-weight: bold; padding: 10px 20px; border-radius: 4px; margin-bottom: 10px; position: relative;}
	.qa_dl dt:hover { cursor: pointer; }
	.qa_dl dt:after { position: absolute; top: 20%; right: 2%; content: "\f067" / ""; font-family: "Font Awesome 5 Free"; font-weight: 900;  }
	.qa_dl dt.active:after { position: absolute; top: 20%; right: 2%; content: "\f068" / ""; font-family: "Font Awesome 5 Free"; font-weight: 900;  }
	.qa_dl dd { margin-bottom: 20px; padding: 0 2%; font-size: 15px; }
	.qa_dl dt:before { content: "Q."; margin-right: 5px; font-family: 'Roboto Condensed', sans-serif; font-weight: bold; font-size: 1.2rem; }
}



/*-- breadcrumbs ------------------------------------------------------------*/
#breadcrumbs { /*background: #1cad71;*/ }
#breadcrumbs ul { display: flex; justify-content: flex-start; align-items: center; }
@media screen and (max-width: 899px) {
	#breadcrumbs .in { margin:0 0%;}
}
@media screen and (min-width: 900px) {
	#breadcrumbs { margin-bottom: 40px;}
	#breadcrumbs .in { margin:0 2%; }
}

#breadcrumbs li a {display:block;}

#breadcrumbs li a         { resize: none; }
#breadcrumbs li a:link    { color:#fff; text-decoration: none; }
#breadcrumbs li a:visited { color:#fff; text-decoration: none; }
#breadcrumbs li a:hover   { color:#fff; text-decoration: none; opacity:0.7; }
#breadcrumbs li a:active  { color:#fff; text-decoration: none; }

#breadcrumbs li:nth-child(2) { background:#888; }
#breadcrumbs li:nth-child(2):after { border-color: transparent transparent transparent #888; }
#breadcrumbs li:nth-child(3) { background:#777; }
#breadcrumbs li:nth-child(3):after { border-color: transparent transparent transparent #777; }
#breadcrumbs li:nth-child(4) { background:#666;}
#breadcrumbs li:nth-child(4):after { border-color: transparent transparent transparent #009a5a; }
#breadcrumbs li.current { background:#009a5a; }

@media screen and (max-width: 599px) {
	#breadcrumbs li {
		font-size:11px;
		color:#fff;
		height:18px;
		line-height:18px;
		background:#999999;
		padding:0 10px;
		position:relative;
	}
	#breadcrumbs li:after {
		position:absolute;
		top:0px;
		right:-5px;
		content:"";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 9px 0 9px 5px;
		border-color: transparent transparent transparent #999999;
		z-index:100;
	}
	#breadcrumbs li.current:after {
		position:absolute;
		top:0px;
		right:-5px;
		content:"";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 9px 0 9px 5px;
		border-color: transparent transparent transparent #009a5a;
		z-index:100;
	}
}
@media screen and (min-width: 600px) {
	#breadcrumbs li {
		font-size:12px;
		color:#fff;
		height:18px;
		line-height:18px;
		background:#999999;
		padding:0 10px;
		position:relative;
	}
	#breadcrumbs li:after {
		position:absolute;
		top:0px;
		right:-5px;
		content:"";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 9px 0 9px 5px;
		border-color: transparent transparent transparent #999999;
		z-index:100;
	}
	#breadcrumbs li.current:after {
		position:absolute;
		top:0px;
		right:-5px;
		content:"";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 9px 0 9px 5px;
		border-color: transparent transparent transparent #009a5a;
		z-index:100;
	}
}


/*-- second_base------------------------------------------------------------*/
.rainbow {
		height:1px; 
		/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ecf4a1+0,b3ece9+100 */
		background: #ecf4a1; /* Old browsers */
		background: -moz-linear-gradient(left, #ecf4a1 0%, #b3ece9 100%); /* FF3.6-15 */
		background: -webkit-linear-gradient(left, #ecf4a1 0%,#b3ece9 100%); /* Chrome10-25,Safari5.1-6 */
		background: linear-gradient(to right, #ecf4a1 0%,#b3ece9 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ecf4a1', endColorstr='#b3ece9',GradientType=1 ); /* IE6-9 */
}
@media screen and (max-width: 767px) {
	.rainbow { display: none; }
	.rainbow-sp {
		height:1px; 
		/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ecf4a1+0,b3ece9+100 */
		background: #ecf4a1; /* Old browsers */
		background: -moz-linear-gradient(left, #ecf4a1 0%, #b3ece9 100%); /* FF3.6-15 */
		background: -webkit-linear-gradient(left, #ecf4a1 0%,#b3ece9 100%); /* Chrome10-25,Safari5.1-6 */
		background: linear-gradient(to right, #ecf4a1 0%,#b3ece9 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ecf4a1', endColorstr='#b3ece9',GradientType=1 ); /* IE6-9 */		
	}
}
@media screen and (min-width: 768px) {
	.rainbow-sp { display: none; }
}
@media screen and (min-width: 768px) and (max-width: 959px)  {
	.rainbow {height:1px; margin-top:60px; }
}
@media screen and (min-width: 960px) and (max-width: 1024px)  {
	.rainbow {height:1px; margin-top:60px; }
}
@media screen and (min-width: 1025px) and (max-width: 1259px) {
	.rainbow {height:1px; margin-top:70px; }
}
@media screen and (min-width: 1260px) and (max-width: 1479px)  {
	.rainbow {height:1px; margin-top:80px; }
}
@media screen and (min-width: 1480px) {
	.rainbow {height:1px; margin-top:80px; }
}

















