@charset "utf-8";
/* bringing */

.mvTitle{
	background-image: url("../images/bg_title_bringing.jpg");
}
.mvTitle h1{
 letter-spacing: 0.29em;
}
/*.mvTitle h1{
    display: inline-block;
	min-width: 260px;
    height: 87px;
    padding: 24px 0 0;
    font-family: 'A+9rnz-凸版文久明朝 Pr6N R','Noto Serif JP',"ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
    font-size: 36px;
    font-weight: 500;
    letter-spacing: 0.29em;
    line-height: 1;
}
.mvTitle h1.txtWhite,
.mvTitle h1.white {
    color: #fff;
}
.mvTitle h1.txtWhite span {
    color: #fff;
}
.mvTitle h1 span {
    display: block;
    padding: 10px 0 0;
    color: #adadad;
    font-family: 'Fira Sans', sans-serif;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.24em;
    text-align: right;
    margin: 0 0 0 auto;
}*/
@media screen and (max-width: 768px) {
}/* //end for SP */
@media screen and (min-width: 769px) {
}/*-PC only-*/

/*----------- bringing トップ --------------*/
.bringingListArea{
 margin-top: -50px;
}
.bringingNav{
 justify-content: space-between;
 align-items: flex-end;
 padding: 25px 0 0;
}
.bringingNav li a{
 position: relative;
 display: flex;
 flex-flow: column;
 justify-content: center;
 align-items: center;
 align-content: center;
 border-radius: 8px 8px 0 0;
 background: #fff;
 height: 150px;
 text-align: center;
 line-height: 1;
}
.bringingNav li img{
 width: 40px;
}
.bringingNav li p{
 padding-top: 15px;
 color: #72af43;
 font-size: 16px;
 font-weight: 500;
 text-align: center; 
 line-height: 1;
}
.bringingNav li.current a{
 background:#72af43 ;
 height: 188px;
}
.bringingNav li.current img{
 display: none;
}
.bringingNav li.current p{
 padding-top: 20px;
 color: #fff;
 font-size: 20px;
}
.bringingNav li.current a::before{
 content: "";
 display: block;
 width: 50px;
 height: 50px;
 margin: 0 auto;
}
.bringingNav li:nth-of-type(1).current a::before{
 background: url("../images/bringing_ic-all_on.svg") no-repeat left top/100% auto;
}
.bringingNav li:nth-of-type(2).current a::before{
 background: url("../images/bringing_ic-building_on.svg") no-repeat left top/100% auto;
}
.bringingNav li:nth-of-type(3).current a::before{
 background: url("../images/bringing_ic-factory_on.svg") no-repeat left top/100% auto;
}
.bringingNav li:nth-of-type(4).current a::before{
 background: url("../images/bringing_ic-medical_on.svg") no-repeat left top/100% auto;
}
.bringingNav li:nth-of-type(5).current a::before{
 background: url("../images/bringing_ic-municipality_on.svg") no-repeat left top/100% auto;
}
@media screen and (min-width: 769px) {
 .bringingNav li{
  width:17.8% ;
  max-width: 192px;
 }
 .bringingNav li.current{
  width: 22.3%;
  max-width: 240px;
 }
.bringingNav li.current a::after{
 content: "";
	display: block;
	width: 0;
	height: 0;
	border:12px solid transparent;
	border-top:16px #72af43 solid;
 position: absolute;
 top: 100%;
 left: 0;
 right: 0;
 margin: auto;
}
}/*-PC only-*/
.bringingListArea div.bgW{
 padding: 60px;
}
.bringingListArea div.bgW + div.bgW{
 margin-top: 60px;
}
.bringingList h3{
 background: #bdbdbd;
 margin-bottom: 38px;
 padding: 12px;
 color: #fff;
 font-size: 24px;
 text-align: center;
}
.bringingList h3 span{
 margin-left: 30px;
 font-size: 16px;
 opacity: 0.6;
}
.bringingList ul li figure{
 margin-bottom: 15px;
	border-radius: 3px;
  overflow: hidden;
}
.bringingList ul li h4{
 position: relative;
 display: flex;
 align-items: center;
 justify-content: flex-start;
 width: 100%;
 padding-right: 25px;
 min-height: 46px;
 font-size: 18px;
 line-height: 1.3;
}
.bringingList ul li h4::before,
.bringingList ul li h4::after{
 content: "";
 display: block;
 background: #72af43;
 height: 2px;
 position: absolute;
 top: 50%;
 right: 3px;
}
.bringingList ul li h4::before{
 width: 25px;
}
.bringingList ul li h4::after{
 width: 7px;
 -webkit-transform: rotate(45deg);
transform: rotate(45deg);
 transform-origin: right bottom;
}
.bringingList ul li p{
 color: #858585;
}
@media screen and (min-width: 769px) {
.bringingList ul{
 justify-content: flex-start;
 margin-bottom: -20px;
}
 .bringingList ul li{
  width: 30.6%;
  max-width: 293px;
  margin-right: 4.09%;
  margin-bottom: 40px;
 }
 .bringingList li:nth-of-type(3n){
  margin-right: 0;
 }
 .bringingList ul li a:hover h4{
  color: #72af43;
 }
}/*-PC only-*/
.bringingContact{
 padding-bottom: 0;
}
.bringingContact h2{
 line-height: 1.5;
}
.bringingContact .pcflex p + p{
 margin-top: 30px;
}
.bringingContact .pcflex .btnArrow span{
 padding-left: 22px;
 font-size: 14px;
}
.bringingContact .pcflex .btnArrow img{
 vertical-align: middle;
}

.bringingContact h3{
 margin-bottom: 20px;
 line-height: 1.5;
}
.bringingContact .pcflex .bg{
 background: #f6f6f5;
 padding: 26px 0 40px 60px;
}
.bringingContact .pcflex .bg .btnArrow span{
 padding-left: 28px;
}
@media screen and (min-width: 769px) {
 .bringingContact .pcflex{
  align-items: flex-start;
 }
.bringingContact .pcflex > div{
 width: 46%;
 max-width: 485px;
 }
 .bringingContact .pcflex .bg{
  position: relative;
  width: 46%;
  max-width: 492px;
 }
 .bringingContact .pcflex .bg::before{
  content: "";
  display: block;
  background: #ededeb;
  position: absolute;
  top: 0;
  left: 0;
  width: 1000%;
  height: 100%;
  opacity: 0.5;
  z-index: -1;
 }
}/*-PC only-*/
@media screen and (max-width: 768px) {/*SP bringing top*/
.bringingListArea{
 margin-top: -20px;
}
 .bringingListArea h2{
  margin-bottom: 20px;
 }
 .bringingNav li{
  width: 48%;
  margin-bottom: 10px;
 }
.bringingNav li a{
 border-radius: 8px;
 height: 100px;
}
.bringingNav li img{
 width: 30px;
}
.bringingNav li p{
 padding-top: 10px;
 font-size: 14px;
}
.bringingNav li.current a{
 height: 100px;
}
.bringingNav li.current a::before{
 width:40px;
 height: 40px;
}
.bringingNav li.current p{
 padding-top: 10px;
 font-size: 16px;
}
 /**/
 .bringingListArea div.bgW{
 padding: 30px 5.3%;
}
.bringingListArea div.bgW + div.bgW{
 margin-top: 30px;
}
.bringingList h3{
 margin-bottom: 20px;
 padding: 8px;
 font-size: 20px;
}
 main .bringingList ul{
  justify-content: space-between;
  padding: 0;
 }
 .bringingList ul li{
  width: 48%;
  margin-bottom: 20px;
 }
.bringingList ul li figure{
 margin-bottom: 10px;
}
.bringingList ul li h4{
 min-height: 46px;
 font-size: 15px;
}
.bringingList ul li h4::before{
 width: 20px;
}
.bringingList ul li p{
 padding:5px 0 0;
 line-height: 1.4;
}
 /**/
 .bringingContact .pcflex .bg{
  margin-top: 30px;
  padding: 40px 0;
 }
}/* //end for SP */

/*----------- bringing 共通 --------------*/
/* cmnLead */
.cmnLead {
 padding: 50px 20px 30px;
}
.cmnLead h2{
 margin-bottom: 30px;
 text-align: center;
 line-height: 1.75;
}
.cmnLead p{
 text-align: center;
}
.cmnLead .pageNav{
 margin-top: 50px;
 max-width: 950px;
 margin-left: auto;
margin-right: auto;
}
.cmnLead .pageNav li {
}
.cmnLead .pageNav li a{
	border-radius: 8px;
}
@media screen and (min-width: 769px) {
	.cmnLead .pageNav li {
		width: 178px;
		margin: 0 6px;
	}
}/* //end for PC */

@media screen and (max-width: 768px) {
	.cmnLead .pageNav {
		flex-flow: row wrap;
		padding: 0 5.3%;
		margin-bottom: 40px;
	}
	.cmnLead .pageNav li {
		min-width: 44%;
		width: auto;
		margin: 0 5px 10px;
	}
}/* //end for SP */

/**/
.bgGray,
.cmnBgGray{
	background: #f5f7f7;
}
@media screen and (min-width: 769px) {
	main section.cmnBgGray{
		padding-top: 80px;
	}
	main section.cmnBgGray + section.cmnBgGray{
		margin-top: -20px;
		padding-top: 0;
	}
}/* //end for PC */
.inBox {
    padding: 60px;
    margin-top: 35px;
}
.bgGray.inBox .pcflex{
	margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
.inBox {
    padding: 30px 10px;
    margin:35px 10px;
}
.bgGray.inBox {
    margin:35px 0px;
}
	.indent{
		margin-left: 20px;
margin-right: 10px;
	} 	
	
}/*-SP only-*/
/**/
.cmnItemList {
	margin: 50px auto 0;
	width: 90%
}
.cmnItemList li{
	background: #595757;
	color: #fff;
	font-size: 15px;
	padding: 3px;
	 -webkit-flex-grow : 1;
  -ms-flex-grow     : 1;
  flex-grow         : 1;
	margin: 0 4px;
	text-align: center;
	margin-bottom: 10px;
}
@media screen and (min-width: 769px) {
 .cmnItemList li:only-child{
  max-width: 478px;
  margin: 0 auto;
 }
}/*-PC only-*/

/**/
section .cmnImgTxtBox:first-of-type{
	margin-top: 50px;
}
section .cmnImgTxtBox:not(:first-of-type){
	margin-top: 20px;
}
.cmnImgTxtBox.bgW,
.cmnImgTxtBox.bgGray{
	border-radius: 4px;
	padding: 60px;
}
.cmnImgTxtBox p{
	margin-top: 30px;
}
.cmnImgTxtBox .btnNormal{
	display: inline-block;
	width: auto;
	border-radius: 8px;
    padding: 20px 70px 20px 20px;
}
.cmnImgTxtBox figure{
	border-radius: 7px;
	overflow: hidden;
}

section .cmnImgTxtBox .txt h4{
	margin-top: 40px;
}
.cGreen{
	color: #78b04a;
}
.cmnGboxList{
	margin-top: 20px;
	
}

.cmnGboxList li{
	display: inline-block;
	margin-right: 10px;
	background: #78b04a;
	color: #fff;
	font-size: 15px;
	padding: 10px;
 margin-bottom: 10px;
	text-align: center;
	border-radius: 4px;
	width: 180px;
}
.defineBlue{
	margin-top: 30px;
}
.defineBlue dt{
	border-right: 5px solid #00a0e9;
	display: inline-block;
	width: 4em;
	margin-right: 1.2em;
	margin-bottom: 1.2em;
	padding-right: 1em;
	color: #00a0e9;
	font-weight: bold;
	vertical-align: middle;
	line-height: 1.2;
}

.defineBlue dd{
	display: inline-block;
	vertical-align: middle;
	line-height: 1.2;
	margin-bottom: 1.2em;
}

.defineBlue dd span{
	font-size: 12px;
}
.cmnImgTxtBox .flex.cmnC3,
.cmnImgTxtBox .flex.cmnC40{
	margin-top: 30px;
}

@media screen and (max-width: 768px) {
	.cmnImgTxtBox a{
	   word-break: break-all;
	}
	.cmnImgTxtBox.bgW,
.cmnImgTxtBox.bgGray{
		margin-right: 20px;
		margin-left: 20px;
		padding: 20px;
	}
	main .inner .cmnImgTxtBox.bgW > h3,
	main .inner .cmnImgTxtBox.bgW > p,
	main .inner .cmnImgTxtBox.bgW > ul,
	main .inner .cmnImgTxtBox.bgGray > h3,
	main .inner .cmnImgTxtBox.bgGray > p,
	main .inner .cmnImgTxtBox.bgGray > ul,
	main .inner .cmnImgTxtBox .txt h3,
	main .inner .cmnImgTxtBox .txt p,
	main .inner .cmnImgTxtBox .txt ul{
		padding-left: 0px;
		padding-right: 0px;
	}
	.cmnImgTxtBox .btnNormal{
    	padding: 20px 50px 20px 15px;
	}
	.cmnImgTxtBox .txt{
		margin-top: 20px;
	}
	.cmnImgTxtBox .flex.cmnC3 li + li,
	.cmnImgTxtBox .flex.cmnC40 > figure + figure{
		margin-top: 20px;
	}
	.defineBlue dt{
		width: auto;
		margin-bottom: 0.6em
	}
	.defineBlue dd{
		margin-bottom: 1.8em;
	}
}/* //end for SP */
@media screen and (min-width: 769px) {
	.cmnImgTxtBox.pcflex{		
		flex-direction:row-reverse;
	}
	.cmnImgTxtBox.pcflex > .txt,
	.cmnImgTxtBox .pcflex > .txt{
		width: 46.88%;
	}
	.cmnImgTxtBox.pcflex > figure,
	.cmnImgTxtBox .pcflex > figure{
		width: 46.88%;
		
	}
	.cmnImgTxtBox.pcflex > figure img,
	.cmnImgTxtBox .pcflex > figure img{
		margin-bottom: 20px;
		border-radius: 7px;
	}
	.cmnImgTxtBox .flex.cmnC3 li{
		width: 33%;
		padding: 10px;
	}
	.cmnImgTxtBox .flex.cmnC40 > figure{
		width: 40%;
	}
	.cmnImgTxtBox .flex.cmnC40 > figure + figure{
		margin-left: 10px;
	}
}/*-PC only-*/

/**/
.btnList .btnNormal{
	border-radius: 8px;
}
.btnListSubTi{
	font-size: 18px;
	font-weight: 500;
}
.btnList .btnNormal{
	border-radius: 8px;
}

/**/
.cmnImgTxtBoxVer figure{
	margin-bottom: 30px;
}
.cmnImgTxtBoxVer figure{
	margin-bottom: 30px;
}
.cmnImgTxtBoxVer h3{
	margin-bottom: 20px;
	font-size: 22px;
	line-height: 1.5em;
	letter-spacing: 0.08em;
}
.cmnImgTxtBoxVer .btnNormal{
	display: inline-block;
	margin-top: 30px;
	width: auto;
	border-radius: 8px;
    padding: 22px 40px 22px 20px;
}
@media screen and (min-width: 769px) {
	.pcflex.cmnC3 .cmnImgTxtBoxVer{
		width: 29%;
	}
	.pcflex.cmnC3::after{
		  content:"";
		  display: block;
		  width:30%;
	}
	.cmnImgTxtBoxVer h3{
		min-height: 3em;
		display: flex; 
		-ms-flex-align: center;
		align-items: center;   
		-ms-flex-pack: center;
		justify-content: center;
	}
}/*-PC only-*/

@media screen and (max-width: 768px) {
	.cmnImgTxtBoxVer{
		margin-top: 60px;
		margin-right: 20px;
		margin-left: 20px;
	}
	.cmnImgTxtBoxVer:first-of-type{
		margin-top: 0;
	}
	main .inner .cmnImgTxtBoxVer h3,
	main .inner .cmnImgTxtBoxVer p{
		padding-left: 0px;
		padding-right: 0px;
	}
	.cmnImgTxtBoxVer .btnNormal{
		padding: 22px 50px 22px 15px;
	}
}/* //end for SP */

/*----------- bringing 下層 factory --------------*/
/*factory / tracking */
.trackingUse{
 margin-top: 30px;
  justify-content: space-between;
}
.trackingUse li p{
 margin: 15px 0 0;
 font-size: 16px;
 font-weight: 500;
 text-align: center;
}
.trackingCost{
 justify-content: space-between;
 margin-top: 30px;
}
.trackingCost dt{
 font-size: 18px;
 font-weight: 500;
}
.trackingCost dd{
 padding: 0 0 10px;
 font-size: 13px;
 line-height: 1.75;
}
.imgsCenter{
 justify-content: center;
 margin-top: 45px;
}
.imgsCenter li{
 margin: 0 13px;
}
@media screen and (min-width: 769px) {
 .trackingUse li{
  width: 23%;
  max-width: 221px;
 }
.trackingCost li{
 width: 18%;
 max-width: 173px;
 }
 .trackingCost dd{
  min-height: 8.5em;
 }
}/*-PC only-*/
@media screen and (max-width: 768px) {
 main .inner .trackingUse,
 main .inner .trackingCost{
  padding: 0;
 }
 .trackingUse li{
  width: 48%;
  max-width: none;
 }
.trackingCost li{
  width: 48%;
  max-width: none;
 
 }
.imgsCenter{
 margin-top: 15px;
}
.imgsCenter li{
 margin: 15px auto 0;
}
}/* //end for SP */

/*factory / dins*/
.dinsStandard{
 justify-content: flex-start;
 margin: 40px -5px 60px;
}
.dinsStandard li{
 display: flex;
 align-items: center;
 justify-content: center;
 border: 1px #78b04a solid;
  width: 110px;
  height: 110px;
  margin: 0 5px 5px;
 color: #78b04a;
 font-weight: 500;
 text-align: center;
 line-height: 1.5;
}
@media screen and (max-width: 768px) {
main .inner .dinsStandard{
 padding: 0;
 margin: 30px -10px 40px;
 justify-content: center;
}
.dinsStandard li{
  margin: 0 10px 20px;
 font-size: 12px;
}
}/*spOnly*/
/*factory / rcf*/
 @media screen and (min-width: 769px) {
 .rcfImgs{
  justify-content: flex-start;
  margin-top: 35px;
  margin-bottom: 60px;
 }
  .rcfImgs img{
   margin-right: 20px;
  }
}/*-PC only-*/
@media screen and (max-width: 768px) {
 .rcfImgs{
  margin-top: 10px;
 }
 .rcfImgs img{
  margin-top: 20px;
 }
}/*-SP only-*/

/*----------- bringing 下層 municipality --------------*/
/* municipality / administrative_task / disaster */
.administrarive-case{
	margin-top: 30px;
}
.administrarive-case li{
	margin-bottom:40px; 
	display: flex;
}
.administrarive-case li figure{
	width: 19%;
	margin-right: 20px;
}
.administrarive-case li .txt-box{
	width: calc(81% - 20px);
}
.administrarive-case li h4{
	font-size: 16px;
	color:#333333;
	margin-bottom: 10px;
	margin-top: 0;
}
.administrarive-outline dt{
	font-size: 12px;
	color:#78b04a
}
.administrarive-outline dd{
	font-size: 12px;
	color:#000;
	margin-bottom: 10px;
	line-height: 1.4
}
.administrarive-case-s{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.administrarive-case-s li{
	display: flex;
	width: 49%;
	align-items: center;
	margin-bottom: 10px;
}
.administrarive-case-s li h5{
	border: 1px solid #78b04a;
	width: 160px;
	text-align: center;
	font-size: 14px;
	padding: 10px;
	line-height: 1;
	margin-right: 20px;
}
.administrarive-case-s li dl{
	width: calc(100% - 180px)
}
.administrarive-risk{
	margin-top: 30px;
	justify-content: flex-start
}
.administrarive-risk li{
	margin-right: 20px
}
.administrarive-risk li figcaption{
	font-size: 13px;
	line-height: 1.6;
	margin-top: 10px;
}
.administrarive-staff{
	border: 1px solid #ccc;
	width: 100%;
	
}
.administrarive-staff td{
	padding: 5px 10px;
		border: 1px solid #ccc;
}
.administrarive-staff caption{
	margin-bottom: 10px;
}
.administrarive-cost{
	border: 1px solid #78b04a;
	margin: 20px auto;
}
.administrarive-cost th{
	background: #78b04a;
	color: #fff;
	border: 1px solid #78b04a;
	border-bottom: 1px solid #fff;
	padding: 5px 10px;
	width: 115px;
}
.administrarive-cost td{
	border: 1px solid #78b04a;
	padding: 5px 10px;
	width: 590px;
}
.administrarive-flow{
	width: 80%;
	margin: 40px auto
}
.administrarive-flow figcaption{
	text-align: center;
	margin-top: 20px;
}
.administrarive-flow p{
	margin-top: 20px;
}
@media screen and (max-width: 768px) {
	.administrarive-case-s li{
		width: 100%;
		margin-bottom: 10px;
	}

	.administrarive-case-s li h5{
		width: 10em;
		font-size: 14px;
		padding: 10px;
		margin-right: 20px;
	}

	.administrarive-case-s li dl{
		width: calc(100% - 10em - 20px);
	}
	.administrarive-risk li + li{
		margin-top: 20px;
	}
}/* //end for SP */
@media screen and (min-width: 769px) {	
	.administrarive-risk li{
		width: 30%
	}
}/* //end for PC */



.achievementList{
	margin-top: 30px;
}
.achievementList dt,
.achievementList dd{
	display: inline-block;
	font-size: 20px;
	font-weight: 500;
	padding-bottom: 5px;
}
.achievementList dt{
	vertical-align: top;
	width: 20%;
}
.achievementList dd{
	line-height: 1.75;
	width: 80%;
}
@media screen and (max-width: 768px) {
.achievementList dt,
.achievementList dd{
	display: block;
	font-size: 18px;
	width: 100%;
}
.achievementList dt{
	line-height: 1.5;
	padding-bottom: 0;
}
.achievementList dd{
padding-bottom: 10px;
}
}/* //end for SP */
/*--municipality >construction--*/
/* municipality / democratic */
.triList{
    margin-top: 30px;
}
.triList li{
	margin-right: 1em;
	display: inline-block;
	color: #72af43;
}
.triList li::before{
	content: "\025b6";
	margin-right: 0.5em;
}

/*--municipality / democratic-- */
.cResultsList{
 margin-top: 30px;
}
.cResultsList li figure{
 margin-bottom: 15px;
}
.cResultsList li figcaption{
 display: block;
 font-size: 13px;
 line-height: 1.75;
}
.cResultsList li figcaption span{
 display: block; 
 margin-bottom: 15px;
 font-weight: 500;
 font-size: 13px;
}
.cResultsTable{
 width: 100%;
 border: 1px #000000 solid;
 margin-top: 20px;
 margin-bottom: 50px;
}
.cResultsTable th{
 border: 1px #000000 solid;
 text-align: center;
}
.cResultsTable td{
 border: 1px #000000 solid;
 padding: 5px 10px;
 text-align: left;
 line-height: 1.75;
 vertical-align: middle;
}
.beforeAfter{
 justify-content: flex-start;
 margin: 35px 0 50px;
}
.beforeAfter figcaption{
 display: block;
 text-align: center;
}
@media screen and (min-width: 769px) {
 .cResultsList li{
  width: 32.4%;
 }
 .cResultsTable tbody td:first-child{
  white-space: nowrap;
 }
.beforeAfter figure{
 position: relative;
 max-width: 238px;
}
 .beforeAfter figure img{
  max-height: 179px;
	 border-radius: 7px
 }
 .beforeAfter figure + figure{
  max-width: 330px;
  margin-left: 44px;
  padding-left: 70px;
 }
 .beforeAfter figure + figure::before{
  content: "";
  display: block;
	width: 0;
	height: 0;
 border-width: 20px 0 20px 34px;
 border-color: transparent transparent transparent #78b04a;
	border-style: solid;
  position: absolute;
  top: 70px;
  left: 0;  
 }
}/*-PC only-*/
/*----------- bringing 下層 building --------------*/
#buildingCollapse.mvTitle{
 background-image: url("../images/building_collapse_MV.png");
}
#buildingGypsumboard.mvTitle{
 background-image: url("../images/building_gypsumboard_MV.png");
}
#buildingWood.mvTitle{
 background-image: url("../images/building_wood_MV.png");
}
#buildingPlastic.mvTitle{
 background-image: url("../images/building_wasteplastic_MV.png");
}
#buildingAsbestos.mvTitle{
 background-image: url("../images/building_asbestos_MV.png");
}
#buildingSoil.mvTitle{
 background-image: url("../images/building_soil_MV.png");
}


@media screen and (max-width: 768px) {
	.beforeAfter figure{
		margin-bottom: 30px;
	}
	.beforeAfter figcaption{
		margin-top: 10px;
	}
}/* //end for SP */

/*----------- bringing 下層 medical --------------*/

@media screen and (min-width: 769px) {
}/*-PC only-*/
@media screen and (max-width: 768px) {
}/* //end for SP */




/*----------- bringing 下層 business --------------*/

@media screen and (min-width: 769px) {
}/*-PC only-*/
@media screen and (max-width: 768px) {
}/* //end for SP */


/*----------- bringing 下層 about --------------*/
.aboutList{}
.aboutList li{
 position: relative;
 padding: 0 0 15px 20px;
}
.aboutList li a{
 text-decoration: underline;
}
.aboutList li::before{
 content: "";
 display: block;
 border-radius: 50%;
 width: 10px;
 height: 10px;
 background: #72af43;
 position: absolute;
 top: 0.5em;
 left: 0;
}
/**/
.overvieMapInner {
    position: relative;
    width: 856px;
    padding: 0 75px 44px 10px;
    margin: 0 auto 80px;
    box-sizing: content-box;
}
.overvieMapLinks{
}
.overvieMapLinks li{
	position: absolute;
	display: inline-block;
}
.overvieMapLinks a{
	display: block;
	border: 1px solid;
	background: #fff;
 font-size: 16px;
	padding: 16px 15px 16px 30px;
	line-height: 1;
}
.overvieMapLinks a::after{
	content: "";
	display: inline-block;
	border-style: solid;
	border-width: 0 2px 2px 0;
	margin-left: 14px;
	width: 6px;
	height: 6px;
	-webkit-transform: rotate(45deg);
   transform: rotate(45deg) translate(-2px, -2px);
}
.colHokkaido{
	top: 32px;
    left: 482px;
}
.colTohoku{
	top: 275px;
	left: 780px;
	display: none !important;
}
.colKoshinetsu{
	top: 190px;
	left: 438px;
	display: none !important;
}
.colKanto{	
    top: 476px;
    left: 782px;}
.colHokuriku{
	top: 266px;
	left: 334px;
display: none !important;}
.colTokai{
	top: 598px;
	left: 570px;
display: none !important;}
.colKinki{
 top: 650px;
 left: 400px;
}
.colChugoku{
	top: 320px;
	left: 162px;
display: none !important;}
.colShikoku{
	top: 688px;
	left: 228px;
display: none !important;}
.colKyusyu{
	top: 400px;
	left: 0px;
display: none !important;}

.colHokkaido a{border-color: #6C69AF;color: #6C69AF;}
.colTohoku a{border-color: #389F8E;color: #389F8E;}
.colKoshinetsu a{border-color: #975995;color: #975995;}
.colKanto a{border-color: #237A9D;color: #237A9D;}
.colHokuriku a{border-color: #C88D66;color: #C88D66;}
.colTokai a{border-color: #389F8E;color: #389F8E;}
.colKinki a{border-color: #70B240;color: #70B240;}
.colChugoku a{border-color: #dabf26;color: #dabf26;}
.colShikoku a{border-color: #ea8e32;color: #ea8e32;}
.colKyusyu a{border-color: #CF5B5B;color: #CF5B5B;}
.nolink a{border-color: #b0b0b0;color: #b0b0b0;
pointer-events: none;}
/**/
.overviewArea{
}
#hokkaido.overviewArea{background-color: #ECEBF1;}
#tohoku.overviewArea{background-color: #E6F2F2;}
#koshinetsu.overviewArea{background-color: #f0e6ef;}
#kanto.overviewArea{background-color: #deebf0;}
#hokuriku.overviewArea{background-color: #f7eee8;}
#tokai.overviewArea{background-color: #e1f1ee;}
#kinki.overviewArea{background-color: #eaf4e3;}
#chugoku.overviewArea{background-color: #f9f5df;}
#shikoku.overviewArea{background-color: #fceee0;}
#kyusyu-okinawa.overviewArea{background-color: #f8e7e7;}
.overviewArea h2{
	letter-spacing: 0.12em;
}
#hokkaido.overviewArea h2{color: #6C69AF;}
#tohoku.overviewArea h2{color: #389F8E;}
#koshinetsu.overviewArea h2{color: #975995;}
#kanto.overviewArea h2{color: #237A9D;}
#hokuriku.overviewArea h2{color: #C88D66;}
#tokai.overviewArea h2{color: #389F8E;}
#kinki.overviewArea h2{color: #70B240;}
#chugoku.overviewArea h2{color: #B0B0B0;}
#shikoku.overviewArea h2{color: #B0B0B0;}
#kyusyu-okinawa.overviewArea h2{color: #CF5B5B;}
.overviewBox{
	width: 100%;
	margin: 0 auto;
	padding: 60px;
}
.overviewBox + .overviewBox{
	margin-top: 40px;
}
.overviewBox h3 {
	font-size: 22px;
	letter-spacing: 0.06em;
}
.overviewBox h3::before {
    content: "";
    display: inline-block;
    margin-right: 1em;
    width: 15px;
    height: 4px;
    background: #72AF43;
    vertical-align: middle;
}
.overviewBox dl{
	margin-top: 10px;
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
}
.overviewBox dt{
	position: relative;
	width: 5.5em;
	margin-bottom: 10px;
}
.overviewBox dt:after{
	content: ":";
	position: absolute;
	right: 0.5em;
}
.overviewBox dd{
	width: calc(100% - 5.5em);
	margin-bottom: 10px;
}
.overviewBox dd .btnNormal{
	width: 178px;
	margin-bottom: 10px;
    padding: 14px 10px 14px 20px;
	text-align: left;
}
@media screen and (min-width: 769px) {
.overviewBox.pcflex{		
		flex-direction:row-reverse;
	}
	.overviewBox.pcflex > figure + .txt{
		width: calc(100% - 41.67% - 20px);
	}
	.overviewBox.pcflex > figure{
		width: 41.67%;
	}
}/*-PC only-*/
@media screen and (max-width: 820px) {
.overvieMapInner{
		width: 360px;
    padding: 50px 0 30px;
	}
	.overvieMapLinks a{
		padding: .5em 1em;
		width: 3em;
  font-size: 14px;
		-webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -ms-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
white-space: pre;
	}
	.overvieMapLinks a::after{
		margin-left: .2em;
	}
	.colHokkaido {
    top: 0;
    left: 230px;
}
	.colTohoku {
  top: 140px;
  left: 315px;
}
	.colKanto {
    top: 250px;
    left: 315px;
}
	.colKoshinetsu {
  top: 50px;
  left: 182px;
}
	.colKyusyu {
  top: 120px;
	}
	.colShikoku {
  top: 310px;
  left: 110px;
}
	.colChugoku {
  top: 110px;
  left: 70px;
  }
	.colHokuriku {
  top: 110px;
  left: 132px;
  }
	.colTokai {
  top: 300px;
  left: 250px;
  }
	.colKinki {
    top: 310px;
    left: 170px;
  }
	.overviewBox{
		padding: 20px 20px 1px;
	}
	main .inner .overviewBox h3{
	padding-left: 0;
}
	.overviewBox figure{
		margin-bottom: 20px;
	}

}/*-SP only-*/

/* 202411 Add */
main section .frm{
  align-items:center;
  width:90%;
  margin:0 auto;
}
main section .frm figcaption{
  text-align: center;
}

