.Solution.AgedMaterial .bottomLinks ul .AgedMaterialB,
.Solution.Facility .bottomLinks ul .FacilityB,
.Solution.Flamebond2 .bottomLinks ul .Flamebond2B,
.Solution.OuterWall .bottomLinks ul .OuterWallB,
.Solution.Outdoor .bottomLinks ul .OutdoorB,
.Solution.VendingMachine .bottomLinks ul .VendingMachineB{
 color: #fff;
 background-color: #e60012;
}

main {
	color: #333;
}
main img{
	display: block;
}

.headtxt{
	width: 1180px;
 margin: 80px auto 75px auto;
}
.headtxt span{
	    font-size: 1.2rem;
    line-height: 23px;
    border: 1px solid #e9ecee;
    padding: 0 10px;
    color: #666;
    margin-bottom: 6px;
    display: inline-block;
}
.headtxt h2{
	font-size: 2.8rem;
	font-weight: normal;
	color: #000;
}


main section{}

.Garea{
	background-color: #f3f5f7;
}

main section > dl dt{
	width: 100%;
}
main section > dl dd{
}
main section > dl dd p{
	font-size: 1.4rem;
	line-height: 2.8rem;
}
main section > dl dd img{
	width: 100%;
}




/* common */
main .Content dd,
main .innerContent dd{
	width:calc(100% / 2 - 20px);
	font-size: 1.4rem;
	line-height: 2.4rem;
}
main .Content dd.wful,
main .innerContent dd.wful{
	width: 100%;
}
main .Content{
	width: 1180px;
 margin: 0 auto;
	padding-bottom: 60px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
main .Content h3{
	    font-size: 2.8rem;
	line-height: 2.8rem;
    color: #000;
    font-weight: normal;
    padding: 35px 0 60px 0;
}
main h3.bgTtl{
	width: 1180px;
 margin: 0 auto;
	    font-size: 2.8rem;
	line-height: 2.8rem;
    color: #000;
    font-weight: normal;
    padding: 60px 0;
}
main .Content h4{
	font-size: 2.1rem;
	line-height: 2.1rem;
	margin-bottom: 20px;
}

main .innerContent{
	width: 980px;
	margin: 0 auto;
	padding-bottom: 60px;
	padding-top: 40px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
main .innerContent .ttl{
	font-size: 2.1rem;
	margin-bottom: 35px;
}

main .borTop{
	border-top: 1px solid #d0d5da;
}
main .borBtm{
	border-bottom: 1px solid #e1e5e8;
}
main .innerContent .borTop{
	border-bottom: 1px solid #e1e5e8;
}
main .hikaku strong{
	text-align: center;
	font-weight: bold;
	padding: 6px;
	display: block;
}
main .hikaku strong.before{
	background-color: #e9ecee;
}
	main .hikaku strong.before.two-line{
		display: flex;
			justify-content: center;
			align-items: center;
		min-height: 60px;
	}
main .hikaku strong.after{
	background-color: #e60012;
color: #FFF;}




/*
ChallengeBGWrap
---------------------------*/
.ChallengeBGWrap{
}
.ChallengeBGWrap ul{
	margin-top: 45px;
}
.ChallengeBGWrap li{
	font-size: 1.4rem;
}
	
/*.solutionWrap*/
.solutionWrap{
	padding-top: 22px;
}
/*特長*/
	ul.tokutyou{
	display: flex;
	justify-content: space-between;
		flex-wrap: wrap;
}
ul.tokutyou li{
	text-align: center;
	background: linear-gradient(to bottom,  #fff7f8 0%,#ffffff 100%);
	border: 1px solid #e1e5e8;
	font-size: 1.4rem;
	line-height: 2.1rem;
	padding: 50px 10px;
}
ul.tokutyou li h5{
	font-size: 2.8rem;
	line-height: 2.8rem;
	display: block;
	margin-bottom: 20px;
	color: #e60012;
	font-weight: normal;
}


/*
links*/
.solutionWrap dl ul.links{
	width: 275px;
	margin-top: 15px;
}
.solutionWrap dl ul.links li{
	margin-top: 15px;
	margin-bottom: 20px;
}

.solutionWrap dl ul.links li a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 39px;
    box-sizing: border-box;
    border: 1px solid #e60012;
    color: #e60012 !important;
    font-size: 1.2rem;
	line-height: 1.2rem;
    position: relative;
	background-color: #FFF;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.solutionWrap dl ul.links li a .redArrowS{ right: 15px; transition-property: border-color, margin-right;}
.solutionWrap dl ul.links li a.hover{
 color: #fff !important;
 background-color: #e60012;
}
.solutionWrap dl ul.links li a.hover .redArrowS{ border-color: #fff; margin-right: -5px;}
.solutionWrap dl ul.links li img{
	margin: 0 auto;
}


/*
IntroductionResultWrap
--------------------------------*/
.IntroductionResultWrap{
	padding-top: 107px;
	padding-bottom: 30px;
}
.IntroductionResultWrap a{
	color: #e60012;
	text-decoration: underline;
}
.IntroductionResultWrap a.hover{
	text-decoration:none;
}

/*
.relatedInformation
--------------------------------------*/


.relatedInformation {
	border-top: 1px solid #d0d5da;
width: 1180px;
 margin: 20px auto 130px auto;}
.relatedInformation h3{
 font-size: 2.8rem;
 color: #000;
 font-weight: normal;
 margin-bottom: 35px;
 margin-top: 40px;
}
.relatedInformation a{ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
.relatedInformation > div{
 width: 980px;
 margin: 0 auto;
}
.relatedInformation dl{
 border-bottom: 1px solid #e9ecee;
 color: #333;
}
.relatedInformation dl:first-of-type{ border-top: 1px solid #e9ecee;}
.relatedInformation dl a{
 display: flex;
 align-items: center;
 padding: 23px 50px 23px 0;
 position: relative;
 transition-property: color, box-shadow;
}
.relatedInformation dl .redArrowL{ right: 20px;}
.relatedInformation dl a.hover{
 color: #e60012;
 box-shadow: 0 10px 10px -4px rgba(0,0,0,0.1);
}
.relatedInformation dt{
 font-size: 1.6rem;
 width: 275px;
 box-sizing: border-box;
 padding: 0 30px 0 20px;
 position: relative;
}
.relatedInformation dt::after{
 content: '';
 position: absolute;
 display: inline-block;
 width: 1px;
 height: 10px;
 background-color: #e9ecee;
 top: calc(50% - 5px);
 right: 0;
}
.relatedInformation dd{
 font-size: 1.4rem;
 padding-left: 30px;
}



/*
table.txtList border
------------------------------*/
section table.txtList{
			border-top:1px solid #e9ecee;
			border-left:1px solid #e9ecee;
	width: 100%;
			}
section table.txtList tr th{
	width: 50%;
	font-size: 1.4rem;
	font-weight: bold;
	text-align: center;
		border-bottom:1px solid #e9ecee;
			border-right:1px solid #e9ecee;
		padding:5px;
}

section table.txtList tr td{
			border-bottom:1px solid #e9ecee;
			border-right:1px solid #e9ecee;
	font-size: 1.6rem;
	line-height: 2.4rem;
	padding:12px 5px 12px 30px;
	vertical-align: top;
		}

/*
table counter
--------------------------------*/
section table.countTB tr:nth-of-type(1){
			counter-reset: section 0;
		}
section table.countTB tr:nth-of-type(2){
			counter-reset: section2 0;
		}
section table.countTB tr th:nth-of-type(1){
			background-color: #e9ecee;
		}
section table.countTB tr th:nth-of-type(2){
	background-color: #e60012;
	color: #FFF;
		}
section table.countTB tr td:nth-of-type(1){
			counter-increment: section;
		}
section table.countTB tr td:nth-of-type(1)::before{
  content: counter(section) ". ";
	font-weight: bold;
}
section table.countTB tr td:nth-of-type(2){
			counter-increment: section2;
		}
section table.countTB tr td:nth-of-type(2)::before{
  content: counter(section2) ". ";
	font-weight: bold;
			color: #e60012;
}


/*
.ConstructionResultsWrap
-------------------------------------*/
.ConstructionResultsWrap{
	width: 1180px;
 margin: 0 auto;
}
.ConstructionResultsWrap .Content{
	padding-bottom: 0;
}
.ConstructionResultsWrap > dl{
	border-top: 1px solid #d0d5da;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.ConstructionResultsWrap > dl dt{
	width: 100%;
}
.ConstructionResultsWrap > dl dd{
	width: 374px;
}
.ConstructionResultsWrap > dl dd img{
	width: 100%;
}

.ConstructionResultsWrap dl dl {
	color: #555;
	margin-bottom: 60px;
	margin-top: 5px;
}
.ConstructionResultsWrap dl dl dt,
.ConstructionResultsWrap dl dl dd {
	padding-top: 10px;
}
.ConstructionResultsWrap dl dl dt {
  width: 100px;
  float: left;
	font-size: 1.2rem;
	font-weight: bold;
	line-height: 1.2rem;
}
.ConstructionResultsWrap dl dl dd {
  background: #fff;
  margin-left: 110px;
	font-size: 1.2rem;
	line-height: 1.2rem;
}
.ConstructionResultsWrap dl dl dd:after {
  content: '';
  display: block;
  clear: both;
}