@charset "UTF-8";
/*reset*/
*{color:#333;margin:0;padding:0;font-size:14px;font-weight:normal;font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック","Yu Gothic","メイリオ",Meiryo,Osaka,sans-serif;border:0;background:none;transition:.2s}
body{min-width:1000px;border-top:3px solid #00a172}
body *{box-sizing:border-box}
p{margin-bottom:1em}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:none}
a.underline{text-decoration:underline}
a.underline:hover{text-decoration:none}
a:hover img{opacity:.8}
img{height:auto;max-width:100%;vertical-align:bottom;border:none}
ul{list-style-type:none}
ul.disc{list-style:disc inside}
ul.disc li{text-indent:-1em;padding-left:1em;margin-bottom:1em}
.list li{vertical-align:top;text-indent:-1em;padding-left:1em}
input{font-family:inherit}
input:focus{outline:0}
main{display:block}

/*common*/
.textLeft{text-align:left}
.textCenter{text-align:center}
.textRight{text-align:right}
.fl{float:left}
.fr{float:right}
.cf:after{content:".";display:block;clear:both;height:0;visibility:hidden}
.cf{min-height:1px}
* html .cf {height:1px;/*\*//*/height:auto;overflow:hidden;/**/}
.relative{position:relative}
.absoltute{position:absolute}
strong{font-weight:bold}
ol{counter-reset:li;list-style:none;padding-left:0}
ol li{position:relative;margin-bottom:.5em;padding-left:1.5em}
ol li:before{content:counter(li)"";counter-increment:li;position:absolute;left:0;height:1.8em;line-height:1.8;text-align:center;font-weight:bold}
table{width:100%;border-collapse:collapse}
tr{border-bottom:1px solid #ccc}
th,td{padding:1.5em;vertical-align:top}
table.responsive thead{float:left;display:block}
table.responsive tbody{display:block;}
table.responsive th{display:block;width:auto;background:#e4d9c6;color:#5f461c;font-weight:bold;text-align:left;padding:1em}
table.responsive td{display:block;padding:1em 0}
.table{display:table;width:100%}
.table.autoWidth{width:auto}
.table.fixed{table-layout:fixed}
.cell{display:table-cell}
.vaT{vertical-align:top}
.vaM{vertical-align:middle}
.vaB{vertical-align:bottom}
.mt1em{margin-top:1em!important}
.mt2em{margin-top:2em!important}
.mt3em{margin-top:3em!important}
.mt4em{margin-top:4em!important}
.mt5em{margin-top:5em!important}
.mb1em{margin-bottom:1em!important}
.mb2em{margin-bottom:2em!important}
.mb3em{margin-bottom:3em!important}
.mb4em{margin-bottom:4em!important}
.mb5em{margin-bottom:5em!important}
.ml1em{margin-left:1em!important}
.ml2em{margin-left:2em!important}
.ml3em{margin-left:3em!important}
.ml4em{margin-left:4em!important}
.ml5em{margin-left:5em!important}
.mr1em{margin-right:1em!important}
.mr2em{margin-right:2em!important}
.mr3em{margin-right:3em!important}
.mr4em{margin-right:4em!important}
.mr5em{margin-right:5em!important}

/*parts*/
.arrowRight{position:relative}
.arrowRight:after{font-family:FontAwesome;content:"\f061";position:absolute;right:5px;top:0;bottom:0;margin:auto;height:40px;line-height:40px}
.boxShadow{box-shadow: 0px 2px 10px 0px #ccc}
.oHidden{overflow:hidden}
.zoomTrigger img{transition:.2s}
.zoomTrigger:hover img{transform:scale(1.1);transition:.2s}
.textExpand:hover{letter-spacing:2px;transition:.2s}
.pannel ul{font-size:0;text-align:center}
/* .pannel li{display:inline-block;width:300px;height:120px;border:solid 1px #00a172;margin-left:30px;position:relative} */
.pannel li{display:inline-block;width:215px;height:120px;border:solid 1px #00a172;margin-left:25px;position:relative}
.pannel li:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;width:0;height:0;border-style:solid;border-width:14px 14px 0 0;border-color:#00a171 transparent transparent transparent}
.pannel li:after{content:"";position:absolute;top:0;right:15px;bottom:0;width:10px;height:9px;background:url(../images/common/arrowRightGreen.png)no-repeat;margin:auto}
.pannel li:first-child{margin-left:0}
/* .pannel a{display:block;font-size:17px;line-height:120px} */
.pannel a{display:block;font-size:15px;line-height:120px}
.pannel2>li{background:url(../images/common/texture01.jpg);padding:40px;margin-bottom:40px}
.pannel2 .title{font-size:20px;font-weight:bold;padding-bottom:10px;margin-bottom:10px}
.pannel2 .caption{text-align:center;color:#00a172}
.magazine{display:table;table-layout:fixed;width:100%}
.magazine>div{display:table-cell;vertical-align:top;line-height:1.7;position:relative;padding:1.5em}
.magazine>div:before{content:"";position:absolute;top:0;bottom:0;left:0;border-left:solid 1px #ccc}
.magazine>div:first-child:before{content:none}
.photoWithCaption{position:relative}
.photoWithCaption span{position:absolute;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);color:#fff;padding:.8em}
.card{font-size:0}
.card li{display:inline-block;width:460px;height:310px;margin-left:40px;background:#eee;vertical-align:top;padding:30px}
.card li:first-child{margin-left:0}
.card .title{font-size:20px;font-weight:bold;margin-bottom:20px;color:#fff}
.card .subTitle{font-size:14px;font-weight:bold;margin-bottom:15px;color:#fff}
.card p{color:#fff}
.pageTop{width:960px;height:40px;margin:0 auto;transition:none;position:relative}
.pageTop a{position:fixed;left:auto;margin-left:960px;bottom:10px;width:40px;height:40px;background:url(../images/common/pageTop.png)no-repeat right;z-index:1}
.pageTop.aboveFooter a{position:absolute;right:-40px;bottom:auto;left:auto}
/*base*/
.wrap{width:960px;margin:0 auto}
.wrap2{width:800px;margin:0 auto}
.siteLogo{position:absolute;top:30px;left:0;right:0;width:98px;margin:0 auto}
.lang{width:960px;margin:45px auto 0;text-align:right}
.lang a{background:url(../images/common/arrowRightGreen.png)no-repeat left center;padding-left:1em}
.gNav{width:960px;margin:30px auto 0}
.gNav ul{font-size:0;text-align:center}
.gNav li{display:inline-block;width:240px;position:relative}
.gNav li:after{content:"";position:absolute;top:35%;bottom:35%;right:0;border-right:1px solid #ccc}
.gNav li:first-child:before{content:"";position:absolute;top:35%;bottom:35%;left:0;border-left:1px solid #ccc}
.gNav li a:after{content:"";position:absolute;left:0;right:0;bottom:0;width:0;height:3px;background:#00a172;transition:.2s}
.gNav li:hover a:after,.gNav li.active a:after{width:100%;transition:.2s}
.gNav a{display:block;font-size:16px;padding:1em 0}
.top .mainVisual{width:960px;margin:0 auto 70px}

#main-visual{background:url(../images/top/bg_main.jpg) repeat-x 0 0;transition:none;position:relative;margin-bottom:70px}
#main-visual *{transition:none}
#main-visual p{position:absolute;top:80px;width:100%;z-index:100}
#main-visual p span{display:block;width:960px;margin:0 auto}
#main-visual li{text-align:center}
#main-visual .indicator{display:none}

.top .intro{width:800px;margin:0 auto 70px;text-align:center;padding-bottom:45px;border-bottom:solid 2px #e6e6e6}
.top .en_news{width:800px;margin:0 auto 70px;text-align:left;padding-top:30px;padding-bottom:45px;border-top:solid 2px #e6e6e6;border-bottom:solid 2px #e6e6e6;}
.top .en_news a {color:green;font-style:normal;}
.top .en_news dl.ymd_list {overflow: hidden;zoom: 1;}
.top .en_news dl.ymd_list dt {width: 100px;float: left;clear: both;font-weight: bold;}
.top .en_news dl.ymd_list dd {padding: 0 0 5px 120px;}

.top h2{font-size:24px;font-weight:bold;padding-bottom:15px;margin-bottom:40px;border-bottom:solid 2px #e6e6e6}
.top h4{font-size:18px;font-weight:bold;padding-bottom:15px;margin-bottom:0px;border-bottom:none;}
.subVisual{width:960px;margin:0 auto 40px}
.top .pannel{padding:70px 0;background:url(../images/common/texture01.jpg)}
footer{background:#333;padding:70px 0;text-align:center;position:relative}
.fNav{width:960px;margin:0 auto 40px}
.fNav ul{text-align:center}
.fNav li{display:inline-block}
.fNav a{color:#fff;padding:0 15px;margin:0 15px;background:url(../images/common/arrowRightGray.png)no-repeat center right}
small{color:#ccc}

/*under*/
.under .mainVisual{position:relative;text-align:center;padding:50px 0}
.under .mainVisual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:url(../images/common/texture01.jpg);width:auto;height:330px;z-index:-1}
.under h1{font-size:26px;font-weight:bold;padding-bottom:45px;margin-bottom:75px;position:relative;text-align:center}
.under h1:after{content:"";position:absolute;left:0;right:0;bottom:0;width:40px;height:2px;background:#00a172;margin:0 auto}
.under h2{font-size:20px;font-weight:bold;text-align:center;margin-bottom:40px}
.under h2:first-letter{color:#00a172}
.under section{margin-bottom:60px}

/*corporateInformation*/
.corporateInformation th{width:200px}
.toward .magazine p{margin-bottom:1em}
.toward .photoWithCaption{margin-bottom:1em}
.toward .photoWithCaption span{margin:5px}
.step{padding:60px 0;background:url(../images/common/texture01.jpg)}
.step .card li:first-child{background:url(../images/corporateInformation/managementPhilosophy.jpg)no-repeat center center;background-size:cover}
.step .card li:last-child{background:url(../images/corporateInformation/codeOfConduct.jpg)no-repeat center center;background-size:cover}
.step .card li:last-child .inner{height:200px;overflow-y:auto;margin-right:-15px;padding-right:15px}
.corporateInformation .pannel li{height:60px}
.corporateInformation .pannel li:after{width:21px;height:21px;background-image:url(../images/common/arrowCircleDown.png);transition:.2s}
.corporateInformation .pannel li:hover:after{transform:rotate(360deg);transition:.2s}
.corporateInformation .pannel a{line-height:60px}
.corporateInformation .pannel a:hover{letter-spacing:1px;transition:.2s}

.scrollBar{position:relative}
.ps-container>.ps-scrollbar-x-rail, .ps-container>.ps-scrollbar-y-rail{opacity:.6!important}
.ps-container.ps-active-y>.ps-scrollbar-y-rail{background-color:#fff!important;width:1px;right:3px!important}
.ps-container>.ps-scrollbar-y-rail>.ps-scrollbar-y{right:-3px!important;width:7px!important}

.under .groupCompanies{margin-bottom:150px}
.companies .title{border:1px solid #00a172;border-radius:5px;font-size:17px;padding:1em 0;text-align:center;margin-bottom:30px}
.companies p{line-height:1.7;margin-bottom:5em}

/*service*/
.service .pannel li{text-align:left}
.service .pannel li:after{width:21px;height:21px;background-image:url(../images/common/arrowCircleDown.png);transition:.2s}
.service .pannel li:hover:after{transform:rotate(360deg);transition:.2s}
.service .pannel li:first-child a{padding-left:2.5em}
.service .pannel li:nth-child(2) a{padding-left:.8em}
.service .pannel li:last-child a{letter-spacing:-1px;padding-left:.5em}
.under .basinOfLandDivision{margin-bottom:150px}

/*contactUs*/
.contactBox{padding:70px;background:url(../images/common/texture01.jpg);}
.contactBox address{font-style:normal;margin-bottom:3em;text-align:center}
.contactIcons{display:table;table-layout:fixed;width:100%;margin-bottom:30px}
.contactIcons li{display:table-cell;vertical-align:middle;text-align:center}
.contactIcons a{display:block}
.contactIcons img{display:inline-block;margin-bottom:1em}
.contactIcons span{display:block;color:#00a172}
.contactIcons li:hover span{letter-spacing:2px;transition:.2s}
.map{text-align:center}

.smartvision{max-width: 960px;margin: 0 auto 70px;}


@media (min-width: 768px){
	br.sp{display:none}
	.topMenu{display:block!important}
	.topMenu .title{display:none}
	.header .gNav.fixed{position:fixed;top:0;left:0;right:0;z-index:10000}
	.header .gNav.fixed ul{transition:.2s;transform:scale(.9)}
	.navs{display:block!important}
	.navs .title{display:none}
}
@media (min-width: 768px) and (max-width: 1024px){

	.siteLogo {
		position:relative;
		top:30px;
		left:auto;
		right:auto;
		width:100%;
		text-align:center;
		margin:0;
	}

	.pageTop,.pageTop a,.pageTop.aboveFooter a{display:none}
}
@media (max-width: 767px){
	/*reset*/
	*{font-size:12px}
	body{min-width:100%}
	br.pc{display:none}

	/*common*/
	table,tbody,tr,th,td{display:block}
	th{background:#eee}

	/*base*/
	.wrap{width:95%;margin:0 auto}
	.wrap2{width:95%}
	.siteLogo{position:static;margin:30px auto}
  #main-visual p{top:20%;}
  #main-visual p span{width:100%;}
  .toggle{position:absolute;top:5px;right:5px;width:44px;height:44px;background:url(../images/common/toggle.png)no-repeat;cursor:pointer;z-index:2}
	.toggle.tapped{position:fixed;background-image:url(../images/common/close.png)}
	.navs{position:absolute;top:0;background:rgba(0,0,0,.5);width:100%;display:none;transition:none;z-index:1}
	.navs .title{font-size:18px;font-weight:bold;padding:1em;color:#fff}
	.lang{width:auto;margin:0;text-align:center;border-top:1px solid rgba(255,255,255,.5);box-shadow:0 0 0 1px rgba(0,0,0,.5)}
	.lang a{font-size:16px;padding:1em;display:block;background:none;position:relative;color:#fff}
	.lang a:hover{letter-spacing:0}
	.lang a:after{content:"";position:absolute;top:0;bottom:0;right:1em;margin:auto 0;width:10px;height:9px;background:url(../images/common/arrowRightWhite.png)no-repeat}
	.gNav{width:auto;margin:0}
	.gNav li{display:block;width:auto;border-top:1px solid rgba(255,255,255,.5);box-shadow:0 0 0 1px rgba(0,0,0,.5)}
	.gNav li:before,.gNav li:after,.gNav li:first-child:before{content:none}
	.gNav li a{color:#fff;position:relative}
	.gNav li a:after{content:"";position:absolute;top:0;right:1em;bottom:0;left:auto;margin:auto 0;width:10px;height:9px;background:url(../images/common/arrowRightWhite.png)no-repeat}
	.gNav li:hover a:after{width:10px}
	.mainVisual{width:auto;overflow:hidden}
	.top .mainVisual{width:auto}
	.mainVisual.blur img{-webkit-filter: blur(5px)}
	.top .intro{width:95%;margin:0 auto 70px}
  .top .en_news{width:95%;}
	.subVisual{width:auto}
	.pannel ul{width:95%;margin:0 auto}
	.pannel li{margin:0 0 30px 0}
	.pannel2>li{padding:15px;margin-bottom:30px}
	.pannel2 .fl,.pannel2 .fr{float:none;text-align:center}
	.fNav{width:auto}
	.fNav li{display:block}
	.fNav a{display:block;padding:1em 0;font-size:16px}

	/*parts*/
	.magazine{display:block}
	.magazine>div{display: block}
	.magazine>div:before{content:none}
	.photoWithCaption img{width:100%}
	.card{width:95%;margin:0 auto}
	.card li{display:block;width:auto;height:auto;margin-left:0;margin-bottom:15px;background:#eee;padding:15px}
	.pageTop{width:auto;height:40px;}
	.pageTop a{position:fixed;right:5px;bottom:5px;margin-left:0;width:40px;height:40px;background:url(../images/common/pageTop.png)no-repeat right;z-index:1;opacity:.5}
	.pageTop.aboveFooter a{position:absolute;right:5px;bottom:auto;left:auto;opacity:1}

	/*corporateInformation*/
	.step .card li:last-child .inner{height:320px}
	.corporateInformation th{width:auto}

	/*service*/
	.under.service section{margin-bottom:50px}

	/*contactUs*/
	.contactBox{padding:30px}

  .smartvision{margin: 0 auto 40px;}

}
.wtm_svc_blk_waku {
	margin: 0px;
	padding: 0px;
	border: 2px solid #00A172;
	border-bottom: none;
	background-color: #ffffff;
}
ul.wtm_svc_blk { 
	display: table;
	table-layout: fixed;
	width: 100%;
	border-bottom: 2px solid #00A172;
}
ul.wtm_svc_blk h6 { 
	font-size: 13px;
	text-decoration: none;
	font-weight: bold;
}
ul.wtm_svc_blk h5 {
	padding-bottom: 4px; 
	font-size: 16px;
	text-decoration: underline;
	font-weight: bold;
}
ul.wtm_svc_blk img {
	padding-bottom: 10px; 
}
ul.wtm_svc_blk p { 
	line-height: 1.3em;
}
ul.wtm_svc_blk p.p17 { 
	font-size: 17px;
}
ul.wtm_svc_blk a { 
	padding-bottom: 4px; 
	font-size: 14px;
	text-decoration: none;
	font-style: italic;
	font-weight: normal;
}
ul.wtm_svc_blk a:hover { 
	text-decoration: underline;
	color: blue;
}
ul.wtm_svc_blk li {
	padding: 15px;
	display: table-cell;
	vertical-align: top;
	text-align: left;
}
ul.wtm_svc_blk li.key_services {
	width:260px;
	border-right:1px solid #333333;
}
ul.wtm_svc_blk li.key_projects {
	border:none;
}
ul.wtm_svc_blk li p {
}
ul.wtm_disc_rst {
	margin: 0;
	padding: 0;
	list-style-type: disc;
	display: list-style;
}
ul.wtm_disc_rst li {
	margin: 0px;
    margin-left: 1em;
	padding: 0px;
	display: list-item;
	line-height: 1.3em;
}

#logo_inline {
	text-align: center;
	list-style: none;
}
#logo_inline ul li {
    display: inline-block;
}
#logo_inline li {
    padding: 20px;
}