@charset "utf-8";
/************************************************************************************
CONTANTS
*************************************************************************************/
#contents #kv {
	margin-bottom:20px;
}

#contents .txt {
	margin-bottom:20px;
}

#contents .be-af {
	margin-right: auto;
	margin-bottom:20px;
	margin-left: auto;
	width: 85%;
}
#contents .after {
	float:right;
	width:30%;
	margin-bottom:20px;
	margin-left:10px;
}

#contents #box {
	width:90%;
	margin:0 auto 10px;
}

#contents h3 {
	clear:both;
	position: relative;
	background: #268c43;
	color:#fff;
	font-size:18px;
	font-weight:bold;
	text-align:center;
	padding:5px 0;
	margin:20px 0;
}
#contents h3:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(38, 140, 67, 0);
	border-top-color: #268c43;
	border-width: 15px;
	margin-left: -15px;
}

#contents .left,
#contents .right {
	width:20%;
}

#contents .right_large {
	width: 30%;
}

#contents .left {
	float:left;
	margin:0 10px 80px 0;
}
#contents .right {
	float:right;
	margin:0 0 10px 10px;
}

#contents #box {
	clear:both;
}

#contents #box ul.outer{
	padding:20px;
	border:2px solid #6f9509;
	margin:20px 0;
}

#contents #box li {
	list-style:disc;
	margin:10px 0 10px 20px;
	clear:both;
	border-bottom:1px dotted #6f9509;
	padding-bottom:10px;
}
#contents #box ul.outer li:last-child {
	border-bottom:none;
	padding-bottom:0;
}
#contents #box li img {
	width:20%;
	float:right;
}


#price {
	clear:both;
}

#price .btn {
	float:left;
	width:345px;
}
#price .staff {
	float:right;
}
#price .staff img {
	width:330px;
	margin:30px 0 0 10px;
}

#staff {
	width:50%;
	margin:0 auto;
}

#flow {
	clear:both;
	margin:20px 0;
}

#flow h4 {
	text-align:center;
	font-size:30px;
	color:#6f9509;
	font-family:'tetsu';
	margin:20px 0;
	border-top:3px solid #6f9509;
	padding:20px 0;
}

#flow .content li{
	background:#eee;
	padding:20px;
}
#flow .hide {
	display:none;
}
#flow .content p {
	clear:both;
	padding-bottom:20px;
	margin-bottom:20px;
	border-bottom:2px dotted #6f9509;
}
#flow .content p:last-child {
	border-bottom:0;
	padding:0;
	margin:0;
}
#flow .content span {
	color:#268c43;
	font-size:18px;
	font-weight:bold;
	clear:both;
}
#flow .content img {
	float:left;
	width:40%;
	margin-right:10px;
}

.bordered {
	padding: 20px;
	border: 2px solid #618100;
	border-radius: 5px;
}

.t_center {
	text-align: center;
}

.t_tiny {
	font-size: 80%;
}

.f_left,
.f_right {
	margin-bottom: 40px;
	width: 50%;
	text-align: center;
}
.f_left {
	float: left;
}
.f_right {
	float: right;
}

/************************************************************************************
FOOTER
*************************************************************************************/


/*******************************************************************
********************************************************************

smaller than 768

********************************************************************
*******************************************************************/
@media screen and (max-width: 768px) {

/*::::::::::::::::::::::::::::::::::::
 CONTENTS
::::::::::::::::::::::::::::::::::::*/
#contents .inner {
	width:90%;
	margin:0 auto 5%;
}

#contents .txt {
	float:none;
	width:100%;
}
#contents .be-af {
	float:none;
	width:100%;
	margin:0 auto 5%;
}
#contents .after {
	width:60%;
	margin:0 auto 5%;
	float:none;
}

#contents #box {
	width:100%;
}

#contents h3 {
	margin:5% -6%;
	font-size:16px;
}

#contents .left {
	margin:0 5% 5% 0;
	width:40%;
}
#contents .right {
	width:40%;
	margin:0 0 5% 5%;
}

#contents #box li img {
	width:40%;
	float:right;
}

#price .btn {
	float:none;
	width:100%;
	line-height:0;
}
#price .staff {
	float:none;
	width:100%;
	height:auto;
	text-align:center;
}
#price .staff img {
	width:90%;
	margin:5% auto 0;
}

#staff {
	width:90%;
}

#flow h4 {
	border-top:none;
}


#flow .content span {
	clear:both;
	font-size:20px;
}
#flow .content img {
	float:none;
	width:100%;
	margin:10px 0;
}
.f_left,
.f_right {
	width: 100%;
}

#contents .right {
	width: 100%;
}
#contents .right img {
	width: 100%;
}




}
.businessline { padding-left: 20px; }

.businessline li {
	padding-left: 15px;
	list-style: disc;
	padding-bottom: 10px;
}

.cont__item {
	position: relative;
	margin-bottom: 20px;
	width: 100%;
	height: 350px;
	max-width: 100%;
	overflow: hidden;
}

.cont__item img {
	position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
}

@media screen and (max-width: 768px) {
	.cont__item {
		height: 200px;
	}
}

#caseStudy {
	margin: 60px 0;
}

#caseStudy li {
	padding: 5px;
	border: 1px solid #268c43;
}

#caseStudy a {
	text-decoration: none;
}

#caseStudy a:hover {
	color: #d07340;
}

#caseStudy small {
	color: #9c9c9c;
}

#caseStudy .title {
	overflow: hidden;
	color: #268c43;
	font-size: 18px;
	font-weight: bold;
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

#caseStudy .title:hover {
	color: #d07340;
}

#caseStudy .readMore {
	display: inline-block;
	margin: 20px 0;
	padding: 2%;
	background: #c3d94d;
	border-radius: 5px;
	box-shadow: 0 2px 0 #9fb819;
}

#caseStudy .toCat {
	margin: 10px 0;
}

.blog_description {
	margin-top: .5em;
}

.blog__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	margin: -.5em;
}

@media screen and (max-width: 768px) {
	.blog__list {
		width: 98% !important;
	}
}

.blog__list__item {
	-webkit-box-flex:1;
	-ms-flex: 0 0;
	flex: 0 0;
	-ms-flex-preferred-size: calc(100% / 2 - .5em * 2);
	flex-basis: calc(100% / 2 - .5em * 2);
	margin: .5em;
	box-sizing: border-box;
}

@media screen and (max-width: 768px) {
	.blog__list__item {
		-ms-flex-preferred-size: calc(100% / 2 - .5em * 2);
		flex-basis: calc(100% / 2 - .5em * 2);
	}
}

.blog__img {
	position: relative;
	width: 100%;
  padding-top: 75%;
  overflow: hidden;
}

.blog__img img {
	position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: none;
  min-width: 100%;
  min-height: 1px;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.blog__cat {
	margin: 5px auto;
}

.blog__cat__item {
	display: none;
}

.blog__cat__item:nth-child(n + 4) {
	margin-top: .25em;
}

.jirei,
.wall,
.roof,
.bankin,
.reform,
.copper,
.draipspout,
.leak {
	display: inline-block;
	margin-bottom: .25em;
	padding: .1em .15em;
	font-size: .95em;
	color: #fff;
	background-color: #d07340;
}

/* 11/22追加分 */

.service-drainspout #caseStudy {
	margin-top: 168px;
}

.service-drainspout #contents #box li,
.service-interior #contents #box li,
.service-wall #contents #box li,
.service-roof #contents #box li {
	margin: 0.5em;
	list-style: none;
}

/* /11/22追加分 */

@media screen and (max-width: 768px) {
	.jirei,
	.wall,
	.roof,
	.bankin,
	.reform,
	.draipspout {
		font-size: .9em;
	}
}

.blog__readmore {
	text-align: right;
}

@media screen and (max-width: 768px) {
	.blog__readmore {
		margin-top: .5em;
		font-size: .9em;
	}
}


/* 営業品目 */
#contents #box ul.c-wrap {
    padding: 0;
    margin: 0;
    border: none;
    display: flex;
    flex-wrap: wrap;
}
#contents #box ul.c-wrap li {
    border-bottom: none;
    width: 29%;
    margin: 0 0 10px 20px;
    font-size: 14px;
    padding-bottom: 0;
}
.u-mt5 {
	margin-top: 5px;
}
.u-mt10 {
	margin-top: 10px;
}
.u-mt10 .lead_txt {
	font-weight: 600;
	color:#d2302f;
}
.txt_bold {
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	#contents #box ul.c-wrap li {
	    width: 100%;
	}
}