@charset "utf-8";
/* ===================================================================
CSS information

 file name  : page.css
 style info : 各ページ
=================================================================== */

/* 2018/4/16 2379行目 セレクトボックス不具合のためいったん隠す */

/* -----------------------------------------------------------
    TOP
----------------------------------------------------------- */
#top #main {
	position: relative;
	height: 70vh;
	z-index: 50;
}

#top #main > div {
	text-align: center;
}

#top #main > div h1 {
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 50px;
	font-size: 5.0rem;
	color: #328cc1;
	text-shadow: 0px 0px 10px #ffffff, 0px 0px 10px #ffffff, 0px 0px 10px #ffffff;
}

#top #main > div p {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bolder;
	line-height: 2;
	letter-spacing: 0.1em;
	text-shadow: 0px 0px 5px #ffffff, 0px 0px 5px #ffffff, 0px 0px 5px #ffffff;
	margin: 5px 0 0;
}

#top main > section {
	padding: 100px 0;
}

#top main > #housing .heading01 {
	margin: 0 0 40px;
}

#top main > section .inner > div {
	margin: 35px 0 0;
}

#top main > #housing .inner > div {
	margin: 15px 0 0;
}

#top main > #housing .inner > div h3 {
	font-size: 20px;
	font-size: 2.0rem;
	color: #0b3c5d;
	text-indent: -0.5em;
}

#top main > #housing .inner > div > p {
	margin: 15px 0 0;
}

#top main > #housing .inner > div > div {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	margin: 35px 0 0;
}

#top main > #housing .inner > div > div article {
	width: 230px;
}

#top main > #housing .inner > div > div article img {
	opacity: 1;
}

#top main > #housing .inner > div > div article div {
	border-right: 1px solid #e6e6e6;
	border-bottom: 1px solid #e6e6e6;
	border-left: 1px solid #e6e6e6;
	padding: 1em 1.5em;
}

#top main > #housing .inner > div > div article div h4 {
	font-size: 15px;
	font-size: 1.5rem;
	color: #0b3c5d;
	text-align: center;
}

#top main > #housing .inner > div > div article div p {
	margin: 0.5em 0 0;
}

#top main > #strength {
	background: #f5f5f5;
}

#top main > #strength .inner:nth-of-type(1) > div {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	justify-content: space-between;
	-webkit-justify-content: space-between;
}

#top main > #strength .inner:nth-of-type(1) > div article {
	width: 300px;
	border: 1px solid #e6e6e6;
	background: #ffffff;
	padding: 30px;
}

#top main > #strength .inner:nth-of-type(1) > div article h3 {
	font-size: 18px;
	font-size: 1.8rem;
	color: #0b3c5d;
	text-align: center;
}

#top main > #strength .inner:nth-of-type(1) > div article p {
	margin: 10px 0 0;
}

#top main > #strength .inner:nth-of-type(1) > div article img {
	margin: 15px 0 0;
}

#top main > #strength .inner:nth-of-type(1) > p {
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	-webkit-justify-content: center;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bolder;
	margin: 40px 0 0;
}

#top main > #works .inner:nth-of-type(1) > div {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	margin: 35px 0 0;
}

#top main > #works .inner:nth-of-type(1) > div article {
	width: 230px;
}

#top main > #works .inner:nth-of-type(1) > div article img {
	opacity: 1;
}

#top main > #works .inner:nth-of-type(1) > div article p {
	font-weight: bolder;
	color: #0b3c5d;
	text-align: center;
	margin: 10px 0 0;
}

#top main > #works .inner:nth-of-type(1) > p {
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	-webkit-justify-content: center;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bolder;
	margin: 35px 0 0;
}

#top main > #news {
	background: #f5f5f5;
}

#top main > #news .inner #catNav {
	margin: 35px 0 0;
}

#top main > #news .inner #catNav ul {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	justify-content: space-between;
	-webkit-justify-content: space-between;
}

#top main > #news .inner #catNav ul li {
	text-align: center;
	width: 15%;
}

#top main > #news .inner #catNav ul li a {
	display: block;
	padding: 0.5em;
	color: #ffffff;
}


#top main > #news .inner #catNav ul li:nth-child(1) a,
#top main > #news .inner > div article a > div > div:nth-child(1) p.cat01 {
	background: #0b3c5d;
}

#top main > #news .inner #catNav ul li:nth-child(2) a,
#top main > #news .inner > div article a > div > div:nth-child(1) p.cat02 {
	background: #328cc1;
}

#top main > #news .inner #catNav ul li:nth-child(3) a,
#top main > #news .inner > div article a > div > div:nth-child(1) p.cat03 {
	background: #245d0b;
}

#top main > #news .inner #catNav ul li:nth-child(4) a,
#top main > #news .inner > div article a > div > div:nth-child(1) p.cat04 {
	background: #489426;
}

#top main > #news .inner #catNav ul li:nth-child(5) a,
#top main > #news .inner > div article a > div > div:nth-child(1) p.cat05 {
	background: #d95210;
}

#top main > #news .inner #catNav ul li:nth-child(6) a,
#top main > #news .inner > div article a > div > div:nth-child(1) p.cat06 {
	background: #d9b310;
}




/* カテゴリページの表示 */
#catNav ul li a {
	display: block;
	padding: 0.5em;
	color: #ffffff;
}

#catNav ul li {
    text-align: center;
    width: 15%;
}

#catNav ul {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
    justify-content: space-between;
    -webkit-justify-content: space-between;
}

#catNav ul li:nth-child(1) a{
background: #0b3c5d;
}
#catNav ul li:nth-child(2) a{
background: #328cc1
}
#catNav ul li:nth-child(3) a{
background: #245d0b;
}
#catNav ul li:nth-child(4) a{
background: #489426;
}
#catNav ul li:nth-child(5) a{
background: #d95210;
}
#catNav ul li:nth-child(6) a{
background: #d9b310;
}



#top main > #news .inner > div {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-direction: row;
	-webkit-flex-direction: row;
	margin: 40px 0 0;
}

#top main > #news .inner > div article {
	width: 230px;
	background: #ffffff;
	margin: 20px 20px 0 0;
}

#top main > #news .inner > div article:nth-child(-n+4) {
	margin: 20px 20px 0 0;
}

#top main > #news .inner > div article:nth-child(4n) {
	margin: 20px 0 0 0;;
}



#top main > #news .inner > div article a {
	display: block;
	border: 1px solid #e6e6e6;
	padding: 20px;
	height: 100%;
}

#top main > #news .inner > div article a img {
	opacity: 1;
}

#top main > #news .inner > div article a > div {
	margin: 1em 0 0;
}

#top main > #news .inner > div article a > div > div:nth-child(1) {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	justify-content: space-between;
	-webkit-justify-content: space-between;
}

#top main > #news .inner > div article a > div > div:nth-child(1) time {
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: bolder;
}

#top main > #news .inner > div article a > div > div:nth-child(1) p {
	font-size: 11px;
	font-size: 1.1rem;
	color: #ffffff;
	min-width: 85px;
	text-align: center;
	padding: 0.2em 0;
	padding: 0.2em 0 0\0;/* IE */
}

#top main > #news .inner > div article a > div > div:nth-child(2) {
	margin: 1em 0 0;
}

#top main > #news .inner > div article a > div > div:nth-child(2) h2 {
	color: #328cc1;
}

#top main > #news .inner > div article a > div > div:nth-child(2) p {
	margin: 1em 0 0;
}

#top main > #news .inner > p {
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	-webkit-justify-content: center;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bolder;
	margin: 35px 0 0;
}

#top main > #strength .inner:nth-of-type(2) {
    margin-top: 50px;
}

#top main > #strength .inner:nth-of-type(2) > div h3 {
    font-size: 20px;
    font-size: 2.0rem;
    color: #0b3c5d;
    text-indent: 0;
}

#top main > #strength .inner:nth-of-type(2) > div ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-top: 30px;
}

#top main > #strength .inner:nth-of-type(2) > div  ul li {
    width: 48%;
}

#top main > #strength .inner:nth-of-type(2) > div ul li a span {
    display: block;
    background: #0b3c5d;
    color: #FFF;
    padding: 20px;
    text-align: center;
}
/* -----------------------------------------------------------
    住宅事業
----------------------------------------------------------- */

/* トップ
----------------------------------------------------------- */
.housing main > #housing > div h3 {
    font-size: 20px;
    font-size: 2.0rem;
    color: #0b3c5d;
    text-indent: -0.5em;
}

.housing main > #housing > div > p {
    margin: 15px 0 36px;
}

.housing main .bannerBox {
	text-align: center;
	width: 100%;
	height: 260px;
	background: url(../img/housing/top/bg_banner.jpg) no-repeat;
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-align-items: center; /* Safari */
	align-items:         center;
	margin-bottom: 40px;
}

.housing main .bannerBox div{
	width: 316px;
	margin: 0 auto;
}

.housing main .bannerBox h2 {
	font-size: 24px;
	font-size: 2.4rem;
	line-height: 24px;
	margin: 0 auto 14px;
	color: #FFF;
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-justify-content: space-between; /* Safari */
	justify-content:         space-between;
}

.housing main .bannerBox span {
	background: #328cc1;
	padding: 12px;
	display: block;
}

.housing main .bannerBox div p {
	text-align: left;
	margin: 0 auto 14px;
}

.housing main .bannerBox .detailBtn a{
	display: block;
	text-align: center;
	font-size: 15px;
	font-size: 1.5rem;
	color: #FFF;
	background: #0b3c5d;
	margin: 14px auto ;
	padding: 14px;
}

.housing main .housing_Cbox{
	width: 100%;
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between; /* Safari */
	justify-content:         space-between;
}

.housing main .housing_Cbox article {
	width: 470px;
	margin-bottom: 40px;
}

.housing main .housing_Cbox article h4{
	font-size: 18px;
	font-size: 1.8rem;
	color: #0b3c5d;
	text-align: center;
	padding: 0px 0 20px;
}

.housing main .housing_Cbox article > div{
	padding: 30px 0;
	border-bottom: 1px solid #e6e6e6;
	border-left: 1px solid #e6e6e6;
	border-right: 1px solid #e6e6e6;
}

.housing main .housing_Cbox article > div p{
	width: 410px;
	margin: 0 auto 26px;
}

.housing main .housing_Cbox article > div a{
	display: block;
	width: 410px;
	margin: 0 auto;
	color: #FFF;
	font-size: 15px;
	font-size: 1.5rem;
	background: #0b3c5d;
	padding: 16px 0;
	text-align: center;
}

.housing main .housing_Cbox article > div a{
	display: block;
	width: 410px;
	margin: 0 auto;
	color: #FFF;
	font-size: 15px;
	font-size: 1.5rem;
	background: #0b3c5d;
	padding: 16px 0;
	text-align: center;
}


/* ZEH（ゼッチ）
----------------------------------------------------------- */
.zeh main section{
    margin-bottom: 90px;
}

.zeh main section#zehBox > h2 {
    text-align: center;
    font-size: 24px;
    line-height: 24px;
    font-weight: bold;
    margin-bottom: 40px;
}

.zeh main section > .descriptionBox img {
    float: right;
    margin-left: 50px;
}

.zeh main section > .descriptionBox div h2{
    text-align: left;
    font-size: 24px;
    font-weight: bold;
    color: #d9b310;
    margin-bottom: 24px;
}

.zeh main section > .descriptionBox div h3 {
    font-size: 15px;
    font-weight: bold;
    color: #383838;
    margin-bottom: 24px;
}

.zeh main section > .descriptionBox div p {
	line-height: 26px;
}

.zeh main section > .descriptionBox div dl {
    clear: both;
    width: 100%;
    border: 1px solid #328cc1;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    margin: 40px 0 10px;
}

.zeh main section > .descriptionBox div dt {
    width: 200px;
    text-align: center;
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: bold;
    padding: 40px 0px;
    background: #328cc1;
    color: #FFF;
}

.zeh main section > .descriptionBox div dd {
    font-size: 13px;
    font-size: 1.3rem;
    padding: 0px 30px;
}

.zeh main section > .descriptionBox > p {
	display: block;
	text-align: right;
}

.zeh main section:nth-of-type(3) > h3 {
    font-size: 22px;
    font-size: 2.2rem;
	margin-bottom: 22px;
}

.zeh main section:nth-of-type(3) > h3 span{
	color: #0075c1;
}

.zeh main section:nth-of-type(3) > p {
	margin-bottom: 30px;
}

.zeh main section:nth-of-type(3) > ul {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	-webkit-justify-content: space-between;
}

.zeh main section:nth-of-type(3) > div {
	margin-bottom: 30px;
}



.zeh main section:nth-of-type(4) > p {
	margin-bottom: 30px;
}

.zeh main section:nth-of-type(4) > ul {
	padding: 40px;
	background: #f5f5f5;
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between; /* Safari */
	justify-content:         space-between;
}

.zeh main section:nth-of-type(4) > ul a{
	display: block;
	width: 430px;
	padding: 20px;
	text-align: center;
	background: #0b3c5d;
	color: #FFF;
	font-size: 15px;
	font-size: 1.5rem;
}

.zeh main section.popularTarget table {
	border-collapse: collapse;
	border: solid 1px #bbb;
	text-align: center;
	font-weight: bold;
	font-size: 1.8rem;
	color: #555;
	margin: 20px auto 0 auto ;
	}
	
.zeh main section.popularTarget table tr.year {
	background: #ededed;
	}

.zeh main section.popularTarget table th {
	border: solid 1px #bbb;
	padding: 4px 8px;
	}
	
.zeh main section.popularTarget table th.orange {
	background: #fff5e5;
	color:#FF9800;
	}

.zeh main section.popularTarget table td {
	border: solid 1px #bbb;
	padding: 10px;
	}

/* テクストラクチャー
----------------------------------------------------------- */
.technostructure main section{
    margin-bottom: 90px;
}

.technostructure main section#technostructureBox > h2 {
    text-align: center;
    font-size: 24px;
    line-height: 24px;
    font-weight: bold;
    margin-bottom: 40px;
}

.technostructure main section > .descriptionBox img {
    float: right;
    margin-left: 50px;
}

.technostructure main section > .descriptionBox div h2{
    text-align: left;
    font-size: 24px;
    font-weight: bold;
    color: #d9b310;
    margin-bottom: 24px;
}

.technostructure main section > .descriptionBox div h3 {
    font-size: 15px;
    font-weight: bold;
    color: #383838;
    margin-bottom: 24px;
}

.technostructure main section > .descriptionBox div p {
	line-height: 26px;
}

.technostructure main section:nth-of-type(2) > div {
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between; /* Safari */
	justify-content:         space-between;
}

.technostructure main section:nth-of-type(2) > div article {
	width: 310px;
	padding: 30px;
	border: solid 1px #e6e6e6;
	margin-bottom: 40px;
}

.technostructure main section:nth-of-type(2) > div article > div {
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bold;
	color: #0b3c5d;
	text-align: center;
	margin-bottom: 14px;
}

.technostructure main section:nth-of-type(2) > div article > div span {
	display: block;
}

.technostructure main section:nth-of-type(2) > div article > h3 {
	font-weight: bold;
	font-size: 22px;
	font-size: 2.2rem;
	color: #0b3c5d;
	width: 90%;
	margin: 0 auto;
	display: flex;
    display: -webkit-flex;
	justify-content: center;
    align-items: center;
    -webkit-align-items: center;
	margin-bottom: 20px;
}

.technostructure main section:nth-of-type(2) > div article > h3::after, .technostructure main section:nth-of-type(2) > div article > h3::before {
    content: "";
    background: #0b3c5d;
    height: 1px;
    display: inline;
    flex: 1;
    -webkit-flex: 1;
    margin: 0 1em;
}

.technostructure main section:nth-of-type(2) > div article > p {
	margin-bottom: 20px;
	line-height: 26px;
}

.technostructure main section:nth-of-type(3) > p {
	margin-bottom: 30px;
}

.technostructure main section:nth-of-type(3) > ul {
    padding: 40px;
    background: #f5f5f5;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.technostructure main section:nth-of-type(3) > ul a {
    display: block;
    width: 270px;
    padding: 20px;
    text-align: center;
    background: #0b3c5d;
    color: #FFF;
    font-size: 15px;
    font-size: 1.5rem;
}

.technostructure main section:nth-of-type(3) > ul li:nth-child(1) a::before {
    font-family: FontAwesome;
    content: "\f015";
    margin: 0 10px 0 0;
}

.technostructure main section:nth-of-type(3) > ul li:nth-child(2) a::before {
    font-family: FontAwesome;
    content: "\f03d";
    margin: 0 10px 0 0;
}

.technostructure main section:nth-of-type(3) > ul li:nth-child(3) a::before {
    font-family: FontAwesome;
    content: "\f086";
    margin: 0 10px 0 0;
}


/* 家づくりの流れ
----------------------------------------------------------- */
.flow main > section {
	margin-bottom: 100px;
}

.flow main > article {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	flex-direction: row-reverse;
	-webkit-flex-direction: row-reverse;
	padding: 40px;
	border-top: 1px solid #e6e6e6;
	border-right: 1px solid #e6e6e6;
	border-left: 1px solid #e6e6e6;
}

.flow main > article:last-child {
	border-top: 1px solid #e6e6e6;
	border-right: 1px solid #e6e6e6;
	border-bottom: 1px solid #e6e6e6;
	border-left: 1px solid #e6e6e6;
}

.flow main > article figure {
	flex: 0 1 250px;
	-webkit-flex: 0 1 250px;
}

.flow main > article figure img {
	width: 100%;
}

.flow main > article > div {
	flex: 1 1;
	-webkit-flex: 1 1;
	margin: 0 0 0 40px;
}

.flow main > article > div p.step {
	font-weight: bolder;
	background: #d9b310;
	color: #ffffff;
	display: inline-flex;
	display: -webkit-inline-flex;
	align-items: center;
	-webkit-align-items: center;
	justify-content: center;
	-webkit-justify-content: center;
	min-width: 120px;
	padding: 0 1em;
}

.flow main > article > div p.step span:nth-child(1) {
	font-size: 16px;
	font-size: 1.6rem;
}

.flow main > article > div p.step span:nth-child(2) {
	font-size: 28px;
	font-size: 2.8rem;
	margin: 0 0 0 0.3em;
}

.flow main > article > div h3 {
	font-size: 22px;
	font-size: 2.2rem;
	margin: 15px 0 0;
}

.flow main > article > div p.flowTxt {
	margin: 10px 0 0;
}

/* 保守とメンテナンス
----------------------------------------------------------- */
.maintenance main section#maintenanceBox{
    margin-bottom: 90px;
}

.maintenance main section#maintenanceBox > h2 {
    text-align: center;
    font-size: 24px;
    line-height: 24px;
    font-weight: bold;
    margin-bottom: 40px;
}

.maintenance main section > .descriptionBox img {
    float: right;
    margin-left: 50px;
}

.maintenance main section > .descriptionBox div h2{
    text-align: left;
    font-size: 24px;
    font-weight: bold;
    color: #d9b310;
    margin-bottom: 24px;
}

.maintenance main section > .descriptionBox div h3 {
    font-size: 15px;
    font-weight: bold;
    color: #383838;
    margin-bottom: 24px;
}

.maintenance main section > .descriptionBox div p {
	line-height: 26px;
}

.maintenance main section.maintenanceFlowBox {
	margin-bottom: 100px;
}

.maintenance main section.maintenanceFlowBox > p {
	margin-bottom: 30px;
}

.maintenance main section.maintenanceFlowBox > div {
	background: #f5f5f5;
	padding: 50px;
}

.maintenance main section.maintenanceFlowBox > div h2 {
	color: #0b3c5d;
    text-align: center;
    font-size: 22px;
	font-size: 2.2rem;
    line-height: 22px;
    font-weight: bold;
    margin-bottom: 40px;
}

.maintenance main section.maintenanceFlowBox > div h2 span {
	color: #393939;
    margin-top: 10px;
    display: block;
    font-size: 16px;
	font-size: 1.6rem;
    font-weight: normal;
    padding: 0px 16px;
}

.maintenance main section.maintenanceFlowBox > div h2 span::before, .maintenance main section.maintenanceFlowBox > div h2 span::after {
    content: "―";
    margin: 0 10px;
}

/* 私たちの強み
----------------------------------------------------------- */
.strength main section {
    margin-bottom: 100px;
}

.strength main > h2 {
    text-align: center;
    font-size: 24px;
    line-height: 24px;
    font-weight: bold;
    margin-bottom: 40px;
}

.strength main > h2 span {
    margin-top: 10px;
    display: block;
    font-size: 13px;
    font-weight: normal;
    padding: 0px 16px;
}

.strength main > h2 span::before, .strength main > h2 span::after {
    content: "―";
    margin: 0 10px;
}

.strength main section:nth-of-type(2) > div img {
    float: right;
    margin-left: 50px;
}

main section > h2 span.item_box01 {
    margin-top: 0px;
	margin-right: 14px;
    display: block;
    font-size: 13px;
    font-weight: normal;
    padding: 0px 16px;
	background: #008C46;
	color: #FFF;
}

main section > h2 span.item_box02 {
    margin-top: 0px;
	margin-right: 14px;
    display: block;
    font-size: 13px;
    font-weight: normal;
    padding: 0px 16px;
	background: #FFBF00;
	color: #FFF;
}

main section > h2 span.item_box03 {
    margin-top: 0px;
	margin-right: 14px;
    display: block;
    font-size: 13px;
    font-weight: normal;
    padding: 0px 16px;
	background: #0085B2;
	color: #FFF;
}

.strength main section:nth-of-type(2) > div h3 {
    font-size: 18px;
    font-weight: bold;
    color: #0b3c5d;
    margin-bottom: 24px;
}

.strength main section:nth-of-type(2) > div p {
    font-size: 13px;
    line-height: 24px;
}

.strength main section:nth-of-type(3) > div img {
    float: right;
    margin-left: 50px;
}

.strength main section:nth-of-type(3) > div h3 {
    font-size: 18px;
    font-weight: bold;
    color: #0b3c5d;
    margin-bottom: 24px;
}

.strength main section:nth-of-type(3) > div p {
    font-size: 13px;
    line-height: 24px;
}

.strength main section:nth-of-type(3) > div ul{
	display: flex;
	justify-content: space-between;
	margin: 20px 0 0 0;
}

.strength main section:nth-of-type(3) > div ul li{
	width: 180px;
	text-align: center;
	padding: 10px;
	background: #EB6740;
	color: #FFF;
}

.strength main section:nth-of-type(3) > h3 {
	clear: both;
    font-size: 18px;
    font-weight: bold;
    color: #0b3c5d;
	margin-top: 30px;
    margin-bottom: 24px;
}

.strength main section:nth-of-type(3) > p {
    font-size: 13px;
    line-height: 24px;
}

.strength main section:nth-of-type(3) > img {
	margin-top: 30px;
}

.strength main section:nth-of-type(4) > div img:nth-of-type(1) {
    float: right;
    margin-left: 50px;
}

.strength main section:nth-of-type(4) > div img:nth-of-type(2) {
    margin-top: 14px;
}

.strength main section:nth-of-type(4) > div h3 {
    font-size: 18px;
    font-weight: bold;
    color: #0b3c5d;
    margin-bottom: 24px;
}

.strength main section:nth-of-type(4) > div p {
    font-size: 13px;
    line-height: 24px;
}

.strength main section:nth-of-type(4) > div ul{
	display: flex;
	justify-content: space-between;
	margin: 20px 0 0 0;
}

.strength main section:nth-of-type(4) > div ul li{
	width: 180px;
	text-align: center;
	padding: 10px;
	background: #328cc1;
	color: #FFF;
}

.strength main section:nth-of-type(4) > h3 {
	clear: both;
    font-size: 18px;
    font-weight: bold;
    color: #0b3c5d;
	margin-top: 30px;
    margin-bottom: 24px;
}

.strength main section:nth-of-type(4) > p {
    font-size: 13px;
    line-height: 24px;
}

.strength main section:nth-of-type(5) > div img:nth-of-type(1) {
    float: right;
    margin-left: 50px;
}

.strength main section:nth-of-type(5) > div img:nth-of-type(2) {
    margin-top: 14px;
}

.strength main section:nth-of-type(5) > div h3 {
    font-size: 18px;
    font-weight: bold;
    color: #0b3c5d;
    margin-bottom: 24px;
}

.strength main section:nth-of-type(5) > div p {
    font-size: 13px;
    line-height: 24px;
}

.strength main section:nth-of-type(5) > div ul{
	display: flex;
	justify-content: space-between;
	margin: 20px 0 0 0;
}

.strength main section:nth-of-type(5) > div ul li{
	width: 180px;
	text-align: center;
	padding: 10px;
	background: #328cc1;
	color: #FFF;
}

.strength main section:nth-of-type(5) > h3 {
	clear: both;
    font-size: 18px;
    font-weight: bold;
    color: #0b3c5d;
	margin-top: 30px;
    margin-bottom: 24px;
}

.strength main section:nth-of-type(5) > p {
    font-size: 13px;
    line-height: 24px;
}

.strength main section:nth-of-type(5) > img {
	margin-top: 30px;
}

.strength main section:nth-of-type(6) > div h3 {
    font-size: 18px;
    font-weight: bold;
    color: #0b3c5d;
    margin-bottom: 24px;
}

.strength main section:nth-of-type(6) > div p {
    font-size: 13px;
    line-height: 24px;
}

.strength main section:nth-of-type(6) > div {
    display: block;
}

.strength main section:nth-of-type(6) > div ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
	margin-top: 30px;
}

.strength main section:nth-of-type(6) > div ul li {
    width: 48%;
}

.strength main section:nth-of-type(6) > div ul li a span{
    display: block;
    background: #0b3c5d;
	color: #FFF;
	padding: 20px;
	text-align: center;
}
.strength main section:nth-child(1) > section:nth-of-type(3) > img {
	margin-top: 0px;
}

.plan main > div {
	text-align: center;
}

.plan main > div > section {
	margin: 90px 0 0;
}

.plan main > div > section:nth-child(1) {
	margin: 0;
}

.plan main > div > section:nth-child(1) > h3 {
	color: #d9b310;
}

.plan main > div > section:nth-child(1) > h3 span:nth-child(1) {
	font-size: 34px;
	font-size: 3.4rem;
}

.plan main > div > section:nth-child(1) > h3 span:nth-child(2) {
	font-size: 20px;
	font-size: 2.0rem;
}

.plan main > div > section:nth-child(1) > h3 span:nth-child(3) {
	font-size: 34px;
	font-size: 3.4rem;
}

.plan main > div > section:nth-child(1) > p {
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bolder;
	color: #0b3c5d;
}

.plan main > div > section:nth-child(1) > section {
	margin: 50px 0 0;
}

.plan main > div > section:nth-child(1) > section:nth-of-type(1) {
	margin: 20px 0 0;
}

.plan main > div > section:nth-child(1) > section:nth-of-type(4) > div{
	text-align: left;
	display: flex;
	justify-content: space-between;
}

.plan main > div > section:nth-child(1) > section:nth-of-type(4) > div > div{
	width: 48%;
}

.plan main > div > section:nth-child(1) > section:nth-of-type(4) > div > div img{
	margin-top: 22px;
}

.plan main > div > section:nth-child(1) > section h4 {
	font-size: 20px;
	font-size: 2.0rem;
}

.plan main > div > section:nth-child(1) > section:nth-of-type(1) > p:nth-of-type(1) {
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bolder;
	margin: 10px 0 0;
}

.plan main > div > section:nth-child(1) > section:nth-of-type(5) {
    text-align: left;
}

.plan main > div > section:nth-child(1) > section:nth-of-type(5) > div {
    background: #EDEDED;
	padding: 36px;
	margin-bottom: 36px;
}

.plan main > div > section:nth-child(1) > section:nth-of-type(5) > div > h4 {
    font-size: 16px;
	margin-bottom: 8px;
}

.plan main > div > section:nth-child(1) .titleBox {
    display: flex;
	display: -webkit-flex;
	align-items: center;
	margin-bottom: 30px;
}

.plan main > div > section:nth-child(1) .titleBox > div:nth-child(1) {
	margin-right: 26px;
}

.plan main > div > section:nth-child(1) .titleBox > div > h3 {
	font-size: 24px;
	margin-bottom: 4px;
}

.plan main > div > section:nth-child(1) .titleBox > div > h3 span {
	font-size: 16px;
	color: #0b3c5d;
	display: block;
}

.plan main > div > section:nth-child(1) .figureBox {
    display: flex;
	display: -webkit-flex;
	margin-top: 24px;
}

.plan main > div > section:nth-child(1) .figureBox figure {
	width: 280px;
	margin-right: 20px;
}

.plan main > div > section:nth-child(1) .figureBox figure figcaption {
	margin-top: 16px;
	font-size: 15px;
	font-weight: bold;
	margin-bottom: 4px;
}

.plan main > div > section:nth-child(1) > section > p:nth-of-type(2) {
	margin: 20px 0 0;
}

.plan main > div > section:nth-child(1) > section:nth-of-type(1) > img {
	margin: 50px 0 0;
}

.plan main > div > section:nth-child(1) > section:nth-of-type(2) > img {
	margin: 30px 0 0;
}

.plan main > div > section:nth-child(1) > section:nth-of-type(2) > p:nth-of-type(1) {
	margin: 30px 0 0;
}

.plan main > div > section:nth-child(2) {
	text-align: left;
}

.plan main > div > section:nth-child(2) > div h3 {
	font-size: 20px;
	font-size: 2.0rem;
	margin: 0 0 20px;
}

.plan main > div > section:nth-child(2) > div > div {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	margin: 30px 0 0;
}

.plan main > div > section:nth-child(2) > div > div article {
	flex: 0 1 180px;
	border: 1px solid #e6e6e6;
	margin-top: 20px;
	margin-left: 20px;
}

.plan main > div > section:nth-child(2) > div > div article:nth-child(-n+5) {
	margin-top: 0;
}

.plan main > div > section:nth-child(2) > div > div article:nth-child(5n+1) {
	margin-left: 0;
}

.plan main > div > section:nth-child(2) > div > div article a {
	display: block;
	padding: 20px;
}

.plan main > div > section:nth-child(2) > div > div article p {
	font-weight: bolder;
	line-height: 1.5;
	margin: 10px 0 0;
}

.plan main > div > section:nth-child(2) > div > div article img {
	float: none;
	margin: 0;
}

.plan main > div > section:nth-child(2) > div > div article img:hover {
	opacity: 1;
}

.plan main > div > section:nth-child(2) > div.catBtn {
	margin-top: 40px;
}

.plan main > div > section:nth-child(2) > div.catBtn a {
	display: block;
	text-align: center;
	font-size: 16px;
	font-size: 1.6rem;
	padding: 30px;
	width: 100%;
	background: #0b3c5d;
	color: #ffffff;
}

.plan main > div > section:nth-child(2) > div.catBtn a i {
	margin-right: 12px;
}
/* -----------------------------------------------------------
    リフォーム
----------------------------------------------------------- */
.reform main #descriptionBox dl {
	clear: both;
	width: 100%;
	border: 1px solid #328cc1;
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-align-items: center; /* Safari */
	align-items:         center;
	margin: 40px 0 100px;
}

.reform main #descriptionBox dl dt {
	width: 200px;
	text-align: center;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bold;
	padding: 60px 0px;
	background: #328cc1;
	color: #FFF;
}

.reform main #descriptionBox dl dd {
	font-size: 13px;
	font-size: 1.3rem;
	padding: 0px 30px;
}

.reform main #reformPlan > div {
	margin-bottom: 100px;	
}

.reform main #reformPlan > div.catBtn {
	margin-top: 40px;
	margin-bottom: 0px;
}

.reform main #reformPlan > div.catBtn a {
	display: block;
	text-align: center;
	font-size: 16px;
	font-size: 1.6rem;
	padding: 30px;
	width: 100%;
	background: #0b3c5d;
	color: #ffffff;
}

.reform main #reformPlan > div.catBtn a i {
	margin-right: 12px;
}

.reform main #reformPlan h3{
	color: #0b3c5d;
	font-size: 20px;
	font-size: 2.0rem;
	margin-bottom: 30px;	
}

.reform main #reformPlan .heading03{
	font-size: 20px;
	font-size: 2.0rem;	
}

.reform main #reformPlan > div p {
	margin: 0 0 30px;
}

.reform main #reformPlan > div ul {
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-justify-content: space-between; /* Safari */
	justify-content:         space-between;
	margin: 30px 0;
}

.reform main #reformPlan > div dl {
	display: -webkit-flex; /* Safari */
	display: flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	background: #ddf1f4;
	padding: 30px;
}

.reform main #reformPlan > div dl dt {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	width: 100%;
	margin-bottom: 10px;
}

.reform main #reformPlan > div dl dt:before {
	content: "■";
}

.reform main #reformPlan > div dl dd {
	font-size: 13px;
	font-size: 1.3rem;
	margin-right: 24px;
	margin-top: 12px;
}

.reform main #reformPlan > div dl dd:before {
	content: "・";
}


/* -----------------------------------------------------------
    建設工事
----------------------------------------------------------- */
.construction main section:after {
	content: "";
	padding-bottom: 100px;
	width: 50px;
	margin: 0 auto 100px;
	display: block;
	border-bottom: 1px solid #393939;
}

.construction main section:nth-of-type(2) p {
	line-height: 22px;
	margin-bottom: 34px;
}

.construction main section:nth-of-type(2) ul {
	display: flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap: wrap;
	justify-content: space-between;
}

.construction main section:nth-of-type(2) li {
	width: 300px;
	margin-bottom: 40px;
}

.construction main section:nth-of-type(2) > div {
	display: flex;
	justify-content: center;
	background: #f5f5f5;
	padding : 40px 0;
}

.construction main section:nth-of-type(2) > div a{
	font-size: 15px;
	width: 430px;
	margin-right: 40px;
	display: block;
	text-align: center;
	background: #0b3c5d;
	padding: 16px 0;
	color: #FFF;
}

.construction main section:nth-of-type(2) > div a:nth-child(2){
	margin-right: 0px;
}

.construction main section:nth-of-type(2)::after {
    content: "";
    padding-bottom: 0px;
    width: 50px;
    margin: 0;
    display: block;
    border-bottom: none;
}

/* -----------------------------------------------------------
    施工事例
----------------------------------------------------------- */

/* 一覧
----------------------------------------------------------- */
.works main section .worksBox {
	display: flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap: wrap;
}

.works main section:nth-of-type(2) {
	margin-top: 60px;
}

.works main section:nth-of-type(2) .worksBox article {
	position: relative;
	margin: 20px 20px 0px 0px;
}

.works main section:nth-of-type(2) .worksBox article:nth-of-type(5n) {
	position: relative;
	margin: 20px 0px 0px 0px;
}


.works main section:nth-of-type(2) .worksBox article:nth-of-type(-n+5) {
	position: relative;
	margin-top: 0px;
}

.works main section:nth-of-type(2) .worksBox article.housingbox span {
    background: #328cc1;
}

.works main section:nth-of-type(2) .worksBox article a figure img {
    width: 180px;
}

.works main section:nth-of-type(2) .worksBox article span {
    font-size: 15px;
    display: block;
    text-align: center;
    padding: 17px 0;
    background: #328cc1;
    color: #FFF;
}

.works main > #tabNav li a{
	width: 180px;
}


.works main section:nth-of-type(1) .worksBox article {
	position: relative;
	margin: 30px 40px 0px 0px;
}

.works main section:nth-of-type(1) .worksBox article:nth-of-type(3n) {
	position: relative;
	margin: 30px 0px 0px 0px;
}


.works main section:nth-of-type(1) .worksBox article:nth-of-type(-n+3) {
	position: relative;
	margin-top: 0px;
}

.works main section .worksBox article span {
	font-size: 15px;
	display: block;
	text-align: center;
	padding: 17px 0;
	background: #328cc1;
	color: #FFF;
	width: 300px;
}

.works main section .worksBox article figure {
	vertical-align: bottom;
	}

.works main section .worksBox article figcaption {
	text-align: center;
	color: #ffffff;
	font-size: 16px;
	font-size: 1.6rem;
	letter-spacing: 0.2em;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 3;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.9);
	-webkit-transition: .3s;
	transition: .3s;
	opacity: 0;
}

.works main section .worksBox article a {
	opacity: 1;
}

.works main section .worksBox article.housingbox span {
	background: #328cc1;
}

.works main section .worksBox article.housingbox figcaption {
	background: rgba(4, 43, 69, 0.85);
}

.works main section .worksBox article.reformbox span {
	background: #d9b310;
}

.works main section .worksBox article.reformbox figcaption {
	background: rgba(217, 179, 16, 0.85);
}

.works main section .worksBox article.constructionbox span {
	background: #245d0b;
}

.works main section .worksBox article.constructionbox figcaption {
	background: rgba(36, 93, 11, 0.85);
}

.works main section .worksBox article.civilbox span {
	background: #773F3C;
}

.works main section .worksBox article.civilbox figcaption {
	background: rgba(119, 63, 60, 0.85);
}

.works main section .worksBox article figcaption::before {
    content: "";
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}

.works main section .worksBox article:hover figcaption {
	opacity: 1;
}

/* 詳細
----------------------------------------------------------- */
.works main section div.worksDetailBox > h2,
.works main section div.reformDetailBox > h2 {
    text-align: center;
    font-size: 24px;
    line-height: 24px;
    font-weight: bold;
    margin-bottom: 40px;
}

.works main section div.worksDetailBox > h2 span,
.works main section div.reformDetailBox > h2 span {
    margin-top: 10px;
    display: block;
    font-size: 13px;
    font-weight: normal;
    padding: 0px 16px;
}

.works main section div.worksDetailBox > div {
	width: 800px;
	margin: 0 auto;
}

.works main section div.reformDetailBox > div {
	width: 980px;
	margin: 0 auto;
}

.works main section div.worksDetailBox > div ul:nth-of-type(2),
.works main section div.reformDetailBox > div ul:nth-of-type(2) {
	margin-bottom: 100px;
}

.works main section div.worksDetailBox > div .commentBox p,
.works main section div.reformDetailBox > div .commentBox p{
	padding: 30px 0;
}

.works main section div:nth-of-type(2) {
	width: 300px;
	margin: 100px auto 0;
}

.works main section div:nth-of-type(2) a {
	font-size: 15px;
	font-size: 1.5rem;
	display: block;
	background: #0b3c5d;
	text-align: center;
	color: #ffffff;
	padding: 20px 0;
}

.works main section div.worksDetailBox > h2 span::before, .works main section div.worksDetailBox > h2 span::after,
.works main section div.reformDetailBox > h2 span::before, .works main section div.reformDetailBox > h2 span::after {
    content: "―";
    margin: 0 10px;
}

.slick-track > li {
	padding-right: 10px;
}

.slick-track > li div {
	text-align: center;
	padding: 10px;
	border: 1px solid #D4D4D4;
	background: #F1F1F1;
	margin: 10px 0 10px 0;
}

.works main section .commentBox {
	background: #f5f5f5;
	padding: 30px 38px;
}

.works main section div.reformDetailBox dl.readBox dt {
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bolder;
}

.works main section div.reformDetailBox .baMain {

	margin: 40px 0 0;
}

.works main section div.reformDetailBox .baMain figure {
	flex: 0 1 470px;
	-webkit-flex: 0 1 470px;
}

.works main section div.reformDetailBox .baMain figure figcaption {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bolder;
}

.works main section div.reformDetailBox .afterComment {
	background: #f5f5f5;
	margin: 40px 0 0;
	padding: 30px;
}

.works main section div.reformDetailBox #thumbBox {
	margin: 20px 0 0;
}

.works main section div.reformDetailBox #thumbBox ul {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
}

.works main section div.reformDetailBox #thumbBox ul li {
	flex: 0 1 230px;
	-webkit-flex: 0 1 230px;
	margin-top: 20px;
	margin-left: 20px;
}

.works main section div.reformDetailBox #thumbBox ul li:nth-child(-n+4) {
	margin-top: 0;
}

.works main section div.reformDetailBox #thumbBox ul li:nth-child(4n+1) {
	margin-left: 0;
}

.works main section div.reformDetailBox > ul {
    width: 100%;
    margin: 0 auto;
}

#reformData {
	margin: 80px 0 0;
}

#reformData h3 {
	font-size: 20px;
	font-size: 2.0rem;
	background: #0b3c5d;
	color: #ffffff;
	padding: 1% 2%;
}

#reformData > div {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	margin: 40px 0 0;
}

#reformData > div > dl {
	flex: 0 1 470px;
	-webkit-flex: 0 1 470px;
	margin-top: 40px;
	margin-left: 40px;
}

#reformData > div > dl:nth-child(-n+2) {
	margin-top: 0;
}

#reformData > div > dl:nth-child(2n+1) {
	margin-left: 0;
}

#reformData > div > dl dt {
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bolder;
}

#reformData > div > dl dt:before {
	content: "■";
}

#reformData > div > dl dd {
	margin: 5px 0 0;
}

#reformData > div > dl:nth-child(1) dd table {
	width: 100%;
}

#reformData > div > dl:nth-child(1) dd table th,
#reformData > div > dl:nth-child(1) dd table td {
	border: 1px solid #e6e6e6;
	padding: 2%;
}

#reformData > div > dl:nth-child(1) dd table th {
	text-align:  left;
	width: 28%;
}

#reformData > div > dl:nth-child(1) dd,
#reformData > div > dl:nth-child(2) dd {
	border: 1px solid #e6e6e6;
}

#reformData > div > dl:nth-child(1) dd {
	padding: 5% 7% 8%;
}

#reformData > div > dl:nth-child(1) dd span {
	line-height: 3.5;
	border-bottom: 1px dashed #e6e6e6;
	padding: 0 0 15px;
}

#reformData > div > dl:nth-child(2) dd {
	padding: 7%;
}

#reformData > div > dl:nth-child(2) dd ul li {
	border-bottom: 1px solid #e6e6e6;
	margin: 5px 0 0;
	padding: 0 0 5px;
}

#reformData > div > dl:nth-child(2) dd ul li:first-child {
	margin: 0;
}

#reformData > div > dl:nth-child(2) dd ul li:last-child {
	border-bottom: none;
	padding: 0;
}

.works main section div.reformDetailBox .reformcommentBox {
	background: #f5f5f5;
	margin: 100px 0 0;
	padding: 30px 40px;
}

.works main section div.reformDetailBox .reformcommentBox p {
	margin: 20px 0 0;
}

/* -----------------------------------------------------------
    物件情報
----------------------------------------------------------- */

.estate .estateBox {
	display: flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap: wrap;
}

.estate .estateBox article {
	width: 300px;
	margin: 0px 40px 40px 0px;
}

.estate .estateBox article:nth-child(3n) {
	margin: 0px 0px 40px 0px;
}

.estate .estateBox article > div {
	padding: 20px;
	border-bottom: solid 1px #e6e6e6;
	border-left: solid 1px #e6e6e6;
	border-right: solid 1px #e6e6e6;
}

.estate .estateBox article > div .adressName{
	display: flex;
	justify-content: space-between;
	align-items: center; 
	padding-bottom: 10px;
	border-bottom: solid 1px #e6e6e6;
}

.estate .estateBox article > div h3 {
	font-size: 14px;	
}

.estate .estateBox article > div .adressName span{
	font-size: 11px;
	width: 100px;
	text-align: center;
	color: #FFF;
	background: #d9b310;
	padding: 5px 8px;
}

.estate .estateBox article > div dl {
	font-size: 13px;
	line-height: 24px;
	padding: 18px 0;
	overflow: hidden;
}

.estate .estateBox article > div dl dt {
	float:left;
	clear:left;
	width: 56px;
}

.estate .estateBox article > div dl dt:nth-of-type(3) {
	text-align:justify;
	text-justify:inter-ideograph; 
	line-break: strict;
}	

.estate .estateBox article > div dl dd::before {
	content: ":";
	margin: 0 10px;
}

.estate .estateBox article > div dl dd {
	float:left;
}

.estate .estateBox article div.detailBtn a {
	display: block; 
	padding: 14px;
	background: #0b3c5d;
	color: #FFF;
	font-size: 15px;
	text-align: center;
}

/* -----------------------------------------------------------
    会社案内
----------------------------------------------------------- */
.company main section {
	margin-bottom: 100px;
}

.company main > #tabNav li a{
	font-size: 15px;
	letter-spacing: 3px;
	width: 180px;
	padding: 22px 0;
	background: #FFF;
	border: solid 1px #e6e6e6;
	display: block;
	text-align: center;
}

.company main #philosophy > .philosophyBox {
	overflow: hidden;
	margin-bottom: 70px;
}

.company main #philosophy > .philosophyBox > img {
	float: right;
	margin-left: 44px;
}

.company main #philosophy > .philosophyBox > div h3 {
	font-size: 24px;
	font-weight: bold;
	color: #d9b310;
	margin-bottom: 32px;
}

.company main #philosophy > .philosophyBox > div p {
	font-size: 13px;
	line-height: 28px;
	margin-bottom: 32px;
}

.company main #philosophy > .philosophyBox > div p {
	font-size: 13px;
	line-height: 28px;
	margin-bottom: 32px;
}

.company main #philosophy > .philosophyBox > div h4 {
    font-size: 16px;
	font-size: 1.6rem;
	color: #0b3c5d;
    margin-bottom: 12px;
}

.company main #philosophy > h4 {
	font-size: 26px;
	display: block;
	text-align: center;
    position: relative;
}

.company main #philosophy > h4 span {
    background: #FFF;
    padding: 0 20px;
    position: relative;
    z-index: 2;
}

.company main #philosophy > h4::before {
    content: "";
    display: block;
    border-top: solid 1px #b6bac0;
    width: 100%;
    height: 1px;
    position: absolute;
    top: 50%;
    z-index: 1;
}

.company main #philosophy > ul {
	font-size: 15px;
	font-size: 1.5rem;
	text-align: center;
	margin-bottom: 20px;
}

.company main #philosophy > ul li {
	margin-bottom: 16px;
}

.company main #philosophy > .mottoBox {
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin: 0 auto;
}

.company main #philosophy > .mottoBox dl{
	width: 300px;
}

.company main #philosophy > .mottoBox dl dt{
	background: #d9b310;
	color: #FFF;
	font-weight: bold;
	border-radius: 50%;
	width: 200px;
	height: 200px;
	display: table;
	margin: 30px auto;
}

.company main #philosophy > .mottoBox dl dd{
	font-size: 13px;
	font-weight: bold;
	text-align: center;
}

.company main #philosophy > .mottoBox dl dt span{
	font-size: 30px;
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}

.company main #philosophy > .mottoBox dl:nth-child(1) dt span:before{
	display: block;
	content: "01";
}

.company main #philosophy > .mottoBox dl:nth-child(2) dt span:before{
	display: block;
	content: "02";
}

.company main #philosophy > .mottoBox dl:nth-child(3) dt span:before{
	display: block;
	content: "03";
}

.company main .tableBox > dl{
	border-top: 1px solid #e6e6e6;
	position: relative;
	font-size: 13px;
}

.company main .tableBox > dl dd:nth-of-type(2) span{
	margin-right: 16px;
}

.company main .tableBox > dl dt{
	font-weight: bold;
	position: absolute;
	left: 0;
	width: 170px;
	padding-top: 30px;
	padding-left: 24px;
}

.company main .tableBox > dl dd{
	border-bottom: 1px solid #e6e6e6;
	padding: 30px 0 30px 170px;
}

.company main .accessBox > div a{
	width: 300px;
	padding: 15px 0;
	margin: 40px auto 0 auto;
	display: block;
	color: #FFF;
	background: #0b3c5d;
	text-align: center;
	font-size: 15px;
}

.company main section:nth-of-type(4)::after {
    content: "";
    padding-bottom: 0px;
    width: 50px;
    margin: 0;
    display: block;
    border-bottom: none;
}

.company main section div.paperBox {
    margin: 30px 0;
}

.company main section div.paperBox h2 {
    margin: 0 0 14px 0;
	font-size: 15px;
}

.company main section div.paperBox ul {
    display: flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap: wrap;
	align-items: center;
	-webkit-align-items: center;
	justify-content: space-evenly;
	-webkit-justify-content: space-evenly;
	padding: 20px 0 40px;
}

.company main section div.paperBox li img {
    width: 300px;
}

/* -----------------------------------------------------------
    ショールーム
----------------------------------------------------------- */

/* -----------------------------------------------------------
    お知らせ
----------------------------------------------------------- */

/* 一覧
----------------------------------------------------------- */
.news #heading > div nav ul li {
	background: #ffffff;
	position: relative;
}

.news #heading > div nav ul li:after,
.news main > ul#catBox li:after {
	font-size: 18px;
	font-size: 1.8rem;
	font-family: FontAwesome;
	font-weight: normal;
	content: "\f107";
	color: #393939;
	position: absolute;
	top: 50%;
	right: 15px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	pointer-events: none;
}

.news #heading > div nav ul li select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
	padding: 0 0 0 10px;
	border: 2px solid #57bbee;
	font-weight: bolder;
	color: #57bbee;
	height: 40px;
	width: 15em;
}

.news #heading > div nav ul li select::-ms-expand,
.news main >  ul#catBox li select::-ms-expand {
	display: none;
}

.news #heading > div nav ul li select:-moz-focusring,
.news main >  ul#catBox li select:-moz-focusring { 
    color: transparent; 
    text-shadow: 0 0 0 #57bbee;
}

.news #heading > div nav ul li select option,
.news main >  ul#catBox li select option {
	font-weight: normal;
	background: #ffffff;
	color: #393939;
	padding: 0 0 0 10px;
}

.news main > ul#catBox {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	background: #f5f5f5;
	margin: 100px 0 0;
	padding: 40px;
	display: none;		/*　カテゴリボックス・月別ボックスを仮に隠す（表示が解決しないため） */
}

.news main > ul#catBox li {
	background: #ffffff;
	position: relative;
	width: 430px;
}

.news main > ul#catBox li select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
	padding: 0 0 0 10px;
	border: 2px solid #e6e6e6;
	font-weight: bolder;
	color: #393939;
	height: 40px;
	width: 100%;
}

.news main > div {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	-webkit-justify-content: flex-start;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-direction: row;
	-webkit-flex-direction: row;
	margin: 40px 0 0;
}

.news main > div article {
	width: 230px;
	background: #ffffff;
	margin: 20px 20px 0 0;
}

.news main > div article:nth-child(4n) {
	margin-right: 0;
}

.news main > div article a {
	display: block;
	border: 1px solid #e6e6e6;
	padding: 20px;
	height: 100%;
}

.news main > div article a img {
	opacity: 1;
}

.news main > div article a > div {
	margin: 1em 0 0;
}

.news main > div article a > div > div:nth-child(1) {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	justify-content: space-between;
	-webkit-justify-content: space-between;
}

.news main > div article a > div > div:nth-child(1) time {
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: bolder;
}

.news main > div article a > div > div:nth-child(1) p {
	font-size: 11px;
	font-size: 1.1rem;
	color: #ffffff;
	min-width: 85px;
	text-align: center;
	padding: 0.2em 0;
	padding: 0.2em 0 0\0;/* IE */
}

.news main > div article a > div > div:nth-child(2) {
	margin: 1em 0 0;
}

.news main > div article a > div > div:nth-child(2) h2 {
	color: #328cc1;
}

.news main > div article a > div > div:nth-child(2) p {
	margin: 1em 0 0;
}

.news main > div article a > div > div:nth-child(1) p.cat01 {
	background: #0b3c5d;
}

.news main > div article a > div > div:nth-child(1) p.cat02 {
	background: #328cc1;
}

.news main > div article a > div > div:nth-child(1) p.cat03 {
	background: #245d0b;
}

.news main > div article a > div > div:nth-child(1) p.cat04 {
	background: #489426;
}

.news main > div article a > div > div:nth-child(1) p.cat05 {
	background: #d95210;
}

.news main > div article a > div > div:nth-child(1) p.cat06 {
	background: #d9b310;
}

.news.list main #pagination {
	font-size: 15px;
	font-size: 1.5rem;
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	justify-content: center;
	-webkit-justify-content: center;
	margin: 80px 0 0;
}

.news.list main #pagination li {
	margin: 0 0.5em;
}

.news.list main #pagination li i {
	line-height: 0.1;
}

.news.list main #pagination li:first-child i {
	margin: 0 0.5em 0 0;
}

.news.list main #pagination li:last-child i {
	margin: 0 0 0 0.5em;
}

.news.list main #pagination li.current {
	font-weight: bolder;
	padding: 0.5em 0.7em;
	color: #FFF;
	background: #0b3c5d;
}

.news.list main #pagination li a,
.news.list main #pagination li span {
	padding: 0.7em;
	border: 1px solid #929292;
}

.news.list main #pagination li a:hover {
	opacity: 0.6;
}
/* 詳細
----------------------------------------------------------- */
.detail main > article #title {
	border-bottom: 1px dashed #d6d6d6;
	margin: 0 0 50px;
	padding: 0 0 15px;
}

.detail main > article #title h2 {
	font-size: 22px;
	font-size: 2.2rem;
	line-height: 1.4;
}

.detail main > article #title div {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	font-weight: bolder;
	margin: 10px 0 0;
}

.detail main > article #title div time {
	margin: 0 2em 0 0;
}

.detail main > article #title div dl {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
}

.detail main > article #title div dl dt:after {
	content: "：";
}

.detail main > article #mainArea {
	line-height: 1.8;
}

.detail main > article #mainArea img {
	max-width: 100%;
}

.detail main > article #mainArea p {
	margin: 35px 0 0;
}

.detail main > ul#pagination {
	font-size: 14px;
	font-size: 1.4rem;
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	justify-content: space-between;
	-webkit-justify-content: space-between;

	margin: 50px 0 0;
	padding: 50px 0 0;
}

.detail main > ul#pagination li i {
	line-height: 0.5;
}

.detail main > ul#pagination li:first-child i {
	margin: 0 0.5em 0 0;
}

.detail main > ul#pagination li:last-child i {
	margin: 0 0 0 0.5em;
}

.detail main > ul#pagination li a {
	font-size: 15px;
	font-size: 1.5rem;
	padding: 1em 3em;
	background: #0b3c5d;
	color: #FFF;
}

.detail main > ul#pagination li a:hover {
	opacity: 0.6;
}


/* -----------------------------------------------------------
    個人情報保護方針
----------------------------------------------------------- */
.privacy main > div {
	margin: 90px 0 0;
}

.privacy main > div dl {
	margin: 40px 0 0;
}

.privacy main > div dl:first-child {
	margin: 0;
}

.privacy main > div dl dt {
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bolder;
	color: #0b3c5d;
}

.privacy main > div dl dt:before {
	margin: 0 0.2em 0 0;
}

.privacy main > div dl:nth-child(1) dt:before {
	content: "1.";
}

.privacy main > div dl:nth-child(2) dt:before {
	content: "2.";
}

.privacy main > div dl:nth-child(3) dt:before {
	content: "3.";
}

.privacy main > div dl:nth-child(4) dt:before {
	content: "4.";
}

.privacy main > div dl:nth-child(5) dt:before {
	content: "5.";
}

.privacy main > div dl:nth-child(6) dt:before {
	content: "6.";
}

.privacy main > div dl:nth-child(7) dt:before {
	content: "7.";
}

.privacy main > div dl:nth-child(8) dt:before {
	content: "8.";
}

.privacy main > div dl dd {
	margin: 0.5em 0 0;
}

.privacy main > div dl dd ul {
	margin: 0.5em 0 0;
}

.privacy main > div dl dd ul li {
	text-indent: -0.2em;
}

.privacy main > div dl dd ul li:before {
	content: "・";
}

/* -----------------------------------------------------------
    採用情報
----------------------------------------------------------- */

/* 採用トップページ
----------------------------------------------------------- */
.recruit #career {
	margin: 90px 0 0;
}

.recruit #career ul {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	margin: 30px 0 0;
}

.recruit #career ul li {
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bolder;
	width: 49%;
	margin-top: 15px;
	margin-left: 2%;
}

.recruit #career ul li:nth-child(-n+2) {
	margin-top: 0;
}

.recruit #career ul li:nth-child(2n+1) {
	margin-left: 0;
}

.recruit #career ul li a {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	justify-content: center;
	-webkit-justify-content: center;
	color: #ffffff;
	min-height: 60px;
	height: 60px\0;/* IE */
}

.recruit #career ul li:nth-child(1) a {
	background: #773f3c;
}

.recruit #career ul li:nth-child(2) a {
	background: #245d0b;
}

.recruit #career ul li:nth-child(3) a {
	background: #d9b310;
}

.recruit #career ul li:nth-child(4) a {
	background: #d95210;
}

.recruit #career ul li:nth-child(5) a {
	background: #328cc1;
}

/* 採用下層ページ
----------------------------------------------------------- */
.recruitLower main > section > section {
	margin: 50px 0 0;
}

.recruitLower main > section > section h3 {
	font-size: 20px;
	font-size: 2.0rem;
	text-align: center;
}

.recruitLower main > section > section > p#read {
	margin: 30px 0 0;
}

.recruitLower main > section > section > section {
	margin: 30px 0 0;
}

.recruitLower main > section > section > section h4 {
	font-size: 16px;
	font-size: 1.6rem;
}

.recruitLower main > section > section > section table {
	width:  100%;
	margin: 10px 0 0;
}

.recruitLower main > section > section > section table th,
.recruitLower main > section > section > section table td {
	border: 1px solid #e6e6e6;
	padding: 2%;
}

.recruitLower main > section > section > section table th {
	background: #f5f5f5;
	text-align: left;
	width: 15%;
}

.recruitLower main > section > section > section table td {
}

.recruitLower main > section > section > p#entryBtn {
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	-webkit-justify-content: center;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bolder;
	margin: 40px 0 0;
}

/* -----------------------------------------------------------
    お問い合わせ
----------------------------------------------------------- */
.contact main #container > ol {
    display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	margin: 40px 0;
}

.contact main #container > ol li {
	list-style: none;
    background: #e6e6e6;
    height: 70px;
    line-height: 70px;
    position: relative;
    min-width: 310px;
}

.contact main #container > ol li:after {
    background: #ffffff;
    border-color: transparent transparent transparent #e6e6e6;
    border-style: solid;
    border-width: 35px 0 35px 25px;
    content: "";
    display: block;
    height: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.contact main #container > ol li:last-child {
    margin: 0;
}

.contact main #container > ol li:last-child:after {
    content: none;
}

.contact main #container > ol li.is_current {
    background: #927442;
    position: relative;
}

.contact main #container > ol li.is_current p:nth-child(1),
.contact main #container > ol li.is_current p:nth-child(2),
.contact main #container > ol li.is_current p:nth-child(3) {
    color: #ffffff;
}

.contact main #container > ol li.is_current:after {
    border-left-color: #927442;
}

.contact main #container > ol li p:nth-child(1) {
    float: left;
	font-size: 15px;
    font-size: 1.5rem;
    padding: 0 5px 0 20px;
    position: relative;
}

.contact main #container > ol li p:nth-child(2) {
    float: left;
	font-size: 30px;
    font-size: 3.0rem;
    position: relative;
}

.contact main #container > ol li p:nth-child(3) {
    float: right;
	font-size: 15px;
    font-size: 1.5rem;
    padding: 0 40px 0 0;
    position: relative;
}

.contact main #container #contents #formBox {
	font-size: 14px;
	font-size: 1.4rem;
	border-top: 2px solid #e6e6e6;
	border-bottom: 2px solid #e6e6e6;
	padding: 40px 0;
}

.contact main #container #contents #formBox dl {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	border-top: 1px dashed #d6d6d6;
	padding: 20px 30px;
}

.contact main #container #contents #formBox dl:first-child {
	border: none;
	padding: 0 30px 20px;
}

.contact main #container #contents #formBox dl:last-child {
	align-items: flex-start;
	-webkit-align-items: flex-start;
	padding: 20px 30px 0;
}

.contact main #container #contents #formBox dl dt {
	width: 25%;
}

.contact main #container #contents #formBox dl dd {
	flex: 1;
	-webkit-flex: 1;
}

.contact main #container #contents #formBox dl dt span:before {
	content: "必須";
	background: #b5150d;
    color: #ffffff;
	font-size: 11px;
    font-size: 1.1rem;
    margin: 0 1em 0 0;
    padding: 0.3em 0.5em;
}

.contact main #container #contents #formBox dl:last-child dt {
	padding: 9px 0 0;
}

/* トップ
----------------------------------------------------------- */
.contact main #container #contents #formBox dl dd select {
	background: url(../img/contact/down_type.png) no-repeat right center, url(../img/contact/line.gif) no-repeat right 41px center;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	padding: 0 0 0 10px;
	border: 1px solid #d6d6d6;
	font-size: 14px;
    font-size: 1.4rem;
	color: #333333;
	height: 40px;
	width: 25em;
}

.contact main #container #contents #formBox dl dd select::-ms-expand {
	display: none;
}

.contact main #container #contents #formBox dl dd select option {
	padding: 0 0 0 10px;
}

.contact main #container #contents #formBox input,
.contact main #container #contents #formBox textarea {
	border: 1px solid #d6d6d6;
	font-size: 14px;
    font-size: 1.4rem;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
}

.contact main #container #contents #formBox input {
	padding: 0 15px;
	height: 40px;
}

.contact main #container #contents #formBox textarea {
	padding: 10px 15px;
}

.contact main #container #contents #btnBox {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	justify-content: center;
	-webkit-justify-content: center;
	margin: 50px 0 0;
}

.contact main #container #contents button,
.contact main #container #contents #btnBox p a {
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bolder;
	border: none;
    -webkit-transition: all .3s;
	transition: all .3s;
	text-align: center;
	background: #927442;
	color: #ffffff;
	min-height: 50px;
	height: 50px\0;/*IE*/
	cursor: pointer;
	min-width: 250px;
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	justify-content: center;
	-webkit-justify-content: center;
}

.contact main #container #contents button:hover,
.contact main #container #contents #btnBox p a:hover {
	background: #927442;
	opacity: 0.8;
}

/*    入力内容の確認ページ
----------------------------------------------------------- */
.confirm main #container #contents #formBox dl:last-child dt {
	padding: 0;
}

.confirm main #container #contents #btnBox button {
	min-width: 250px;
}

.confirm main #container #contents #btnBox button:last-child {
	margin: 0 0 0 40px;
}

/*    送信完了ページ
----------------------------------------------------------- */
.complete main #container #contents #formBox {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 2;
	text-align: center;
}

.complete main #container #contents #formBox p:last-child {
	margin: 20px 0 0;
}


/*    セミナー特設ページ
----------------------------------------------------------- */

#wpcf7-f1086-p1087-o1 {
	width: 80%;
	margin: 0 auto;
	}
	
p.center {
	text-align: center;
	}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 select,
.wpcf7 textarea {
	margin-bottom: 10px;
	}
	
.wpcf7 .wpcf7-response-output {
    margin: 10px 0 0;
    padding: 8px 35px 8px 14px;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}
    .wpcf7 .wpcf7-validation-errors {
        color: #B94A48;
        background-color: #F2DEDE;
        border: 1px solid #EED3D7;
    }
    .wpcf7 .wpcf7-mail-sent-ok {
        color: #3A87AD;
        background-color: #D9EDF7;
        border: 1px solid #BCE8F1;
    }
.wpcf7 ul li {
	list-style-type: square;
	}
.wpcf7 .screen-reader-response {
	color: #D12C2C;
	margin-bottom: 20px;
	}