@charset "UTF-8";
/* CSS Document */

#construction .main_box {
	width: 96%;
	max-width: 1200px;
	margin: 0 auto;
}

/* 施工事例　4列
 ------------------------------------- */
ul.flexWorks {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	margin-bottom: 30px;
}
.flexWorks li {
	width: 24.5%;
	box-sizing: border-box;
	margin-bottom: 50px;
	margin-left: 0.5%;
	position: relative;
	transition: 0.3s;
}
.flexWorks li:nth-child(4n+1) {
	margin-left: 0;
}
.flexWorks li:hover {
	transform: translate(-5px, -5px);
	box-shadow: 5px 5px 10px 0px #f0f0f0;
}
.flexWorks li a:hover {
	text-decoration: none;
}
.flexWorks li > a {
	display: block;
}
.flexWorks li dl {
	box-sizing: border-box;
	padding-bottom: 33px;
}
.flexWorks li dt {
	width: 100%;
	position: relative;
	overflow: hidden;
}
.flexWorks li dt:before {
	content: '';
	display: block;
	padding-top: 100%;
}
.flexWorks li dt img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.flexWorks li dd {
	padding: 8px 0;
}
.sub section#subContainer div.main_box .flexWorks li dd h4 {
	height: 3.32em;
	overflow: hidden;
	font-size: 14px;
	font-weight: 700;
	border: none;
	padding: 0;
	margin: 0 0 0.5em;
}
.flexWorks li .more {
	width: 100%;
	box-sizing: border-box;
	font-size: 11px;
	font-weight: 700;
	line-height: 32px;
	border-top: 1px dotted #cccccc;
	padding: 0 0px;
	position: absolute;
	bottom: 0;
	left: 0;
	font-family: 'Jost', sans-serif;
}
.flexWorks li .more .fa {
	line-height: inherit;
	position: absolute;
	top: 0;
	right: 20px;
}
.flexWorks li .location {
	color: #000;
	font-size: 12px;
	font-weight:bold;
}

	/* tagページ　ページタイトルにタグ名表示 */
.sub section#subContainer .container .homeHead_subText_wrapper .homeHead_subText.tag {
	font-size: 19px;
	letter-spacing: inherit;
	display: flex;
	justify-content: center;
	align-items: center;
}
.sub section#subContainer .container .homeHead_subText_wrapper .homeHead_subText.tag > span {
	color: #fff;
	font-size: 15px;
	line-height: 1;
	letter-spacing: 0.2em;
	background: #000;
	padding: 0.2em 0.4em 0.15em 0.6em;
	margin-right: 0.5em;
}

	/* tagリスト */
#construction .tagList {
	width: 100%;
	padding: 70px 30px 50px;
	box-sizing: border-box;
}
#construction .tagList .sectionInner {
	width: 100%;
	max-width: 1200px;
	margin: auto;
}
#construction .tagList h4 {
	font-size: 150%;
	font-weight: bold;
	letter-spacing: 0.1em;
	border-bottom: 1px solid #aaa;
	padding: 0 0 5px;
	margin: 0 auto 30px;
	position: inherit;
	font-family: 'Jost', sans-serif;
}
#construction .tagList h5 {
	font-size: 120%;
	margin-bottom: 15px;
}
#construction .tagList h5:after {
	content: '';
	width: 100px;
	height: 1px;
	display: inline-block;
	background: #000;
	margin-left: 0.5em;
	margin-bottom: 0.3em;
}
#construction .tagList ul {
	margin: auto;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 30px;
}
#construction .tagList ul li {
	font-size: 90%;
	line-height: 1;
	border: 1px solid #ccc;
	padding: 0.1em 0.5em 0.05em;
	margin-right: 1.0em;
	margin-bottom: 1.0em;
}
#construction .tagList ul li:before {
	content: '#';
	display: inline;
	margin-right: 3px;
}
