@charset "UTF-8";


/*=======================================================*/
/*      		セクション毎のCSS   			  		  */
/*======================================================*/

/**/
.tj2{
	text-align: center;
}
@media screen and (max-width: 668px) {
	.tj2 {
		text-align: justify;
	}
}
.lsp-05{
	letter-spacing: 0.5px;
}
/**/
.greeting {
	padding: clamp(40px, 6vw, 90px) 0;
	/*background-image: url(../img/bg_01.png);
	background-position: bottom center;
	background-size: cover;*/
}

/*TEL*/
div.habatel{
	margin: 0 7%;
}
@media (max-width: 768px)  {
	div.habatel{
		margin: 0;
	}
}
@media (max-width: 568px)  {
	div.habatel{
		margin: 0;
	}
}


/*業務案内*/
/*外構工事 section1*/
.sec1 {
	/*padding: 20px 0 clamp(50px, 6vw, 90px) 0;*/
	padding: 50px 0 clamp(40px, 6vw, 90px) 0;
	/*background-color: var(--main-color);
	background-image: url(../img/bg_03.png);
	background-position: top center;
	background-size: cover;
	background-repeat: no-repeat;*/
}
@media screen and (max-width: 768px) {
	.sec1 {

	}
}

/*imgtextセクションの下に同じ余白で展開する括り*/
.imgtx-douncont{
	margin: 0 4%;	/*92%の場合*/

}
/**/
table.services-tab th{
	width: 11em;
	text-align: left;
	border-bottom: 1px solid #ccc;
	padding: 2px;
}
table.services-tab td{
	border-bottom: 1px solid #ccc;
	/*vertical-align: top;*/
	padding: 2px;
}
@media screen and (max-width: 568px) {
	table.services-tab th{
		display: block;
		width: 100%;
		padding: 5px 2px;
		background-color: #dcf0f2;
	}
	table.services-tab td{
		display: block;
		width: 100%;
		padding: 5px 2px;
	}
}



/*アイコン画像*/
.i-icon01 {
	display: inline-block;
	width: 30px;
	vertical-align: middle;
	margin: 0 5px 1px 0;
}

/*3つ*/
.top_bnrsec1-item-container {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 15px 10px;
}
@media (max-width: 768px) {
	.top_bnrsec1-item-container {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 568px) {
	.top_bnrsec1-item-container {
		grid-template-columns: repeat(1, 1fr);
	}
}
.top_bnrsec1-item {
	/*padding-bottom: 2vw;*/
	box-sizing: border-box;
	/*background-color: rgba(36, 36, 36, 0.2);*/
	/*border-radius: 5px;*/
	margin-top: 10px;
}








/*エクステリア工事 section2*/
.sec2 {
	padding: clamp(40px, 6vw, 90px) 0;
	background-color: var(--main-color);
	/*background-image: url(../img/bg_03.png);
	background-position: top center;
	background-size: cover;
	background-repeat: no-repeat;*/
}

/* タイトルとサブタイトル（短い線で装飾） */
.heading-decoration2 {
	font-size: clamp(25px, 2.3vw, 30px);
	min-height: 0vw;
	font-weight: 400;
	color: #fff;
	/*text-align: center;*/	/*下層ページがあって、真ん中寄せの場合*/
}
.heading-decoration2::after {
	display: block;
	content: '';
	width: 160px;
	height: 0px;
	border-top: solid 2px var(--accent-color1);
	margin-top: 0.3em;
}
.heading-decoration2 + p {
	margin-top: 0.5em;
	margin-bottom: 1em;
	color: #d5d5d5;
	font-family: "Montserrat", sans-serif;
	font-size: 15px;
}
@media screen and (max-width: 568px) {
	.heading-decoration2 {
		text-align:center;
	}
	.heading-decoration2::after {
		margin-right:auto;
		margin-left:auto;
	}
	.heading-decoration2 + p {
		text-align:center;
	}
}



/*建築工事 section3*/
.sec3 {
	padding: clamp(40px, 6vw, 90px) 0;
}

/*土木工事 section4*/
.sec4 {
	padding: clamp(40px, 6vw, 90px) 0;
	background-color: var(--main-color);
}
/**/
table.services-tab2 th{
	width: 9em;
	text-align: left;
	border-bottom: 1px solid #134f59;
	padding: 2px;
	color: #fff;
}
table.services-tab2 td{
	border-bottom: 1px solid #134f59;
	/*vertical-align: top;*/
	padding: 2px;
	color: #fff;
}

@media screen and (max-width: 568px) {
	table.services-tab2 th{
		display: block;
		width: 100%;
		padding: 5px 2px;
		background-color: #23646f;
	}
	table.services-tab2 td{
		display: block;
		width: 100%;
		padding: 5px 2px;
	}
}






/* 下層 */
.lowerPage-heading-decoration2{
	font-size: clamp(25px, 2.5vw, 30px);
	min-height: 0vw;
	text-align: center;
	font-weight: 400;
	line-height: 1.3;
	color: #343434;
	margin-top: 2em;
	font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',arial,helvetica,clean,sans-serif;
}
.lowerPage-heading-decoration2::after {
	display: block;
	content: '';
	width: 160px;
	height: 0px;
	border-top: solid 1px var(--main-color);
	margin-top: 0.2em;
	margin-right:auto;
	margin-left:auto;
}
.lowerPage-heading-decoration2 + p {
	margin-top: 0.5em;
	margin-bottom: 2em;
	color: var(--main-color);
	text-align:center;
	font-family: "Montserrat", sans-serif;
	font-size: 15px;
}


/**/
.tellink{
	display: inline-block;
	color: #2297aa;

}
.tellink a{
	font-size: clamp(17px, 1.8vw, 20px);

}




/*セクションの間イメージ画像*/
.sec-adimg{
	padding: 0;
}
.sec-adimg-container {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	grid-template-rows: 1fr;
	grid-column-gap: 0px;
	grid-row-gap: 0px;
}
.sec-adimg-container-item1 { grid-area: 1 / 1 / 2 / 2; }
.sec-adimg-container-item2 { grid-area: 1 / 2 / 2 / 3; }
.sec-adimg-container-item3 { grid-area: 1 / 3 / 2 / 4; }
.sec-adimg-container-item4 { grid-area: 1 / 4 / 2 / 5; }
.sec-adimg-container-item5 { grid-area: 1 / 5 / 2 / 6; }

@media (max-width: 568px) {
	.sec-adimg-container {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: 1fr;
		grid-column-gap: 0px;
		grid-row-gap: 0px;
	}
}



/* FAQ */
.faq_sec1 {
	/*padding: clamp(50px, 4vw, 50px) 0;*/	/*ページ内カテゴリーの場合*/
	padding: var(--v-space) 0;
	/*padding: 0px 0 100px 0;*/	/*別ページの場合*/
	background-color: #fff;
}
/*通常デザイン*/
div.faq p.b {
	font-weight: 600;
	font-size: clamp(16px, 1.7vw, 17px);
	color: #000;
}
div.faq p.b::first-letter {
	color: var(--main-color);
	/*font-size: 110%;*/
	font-weight: 600;
}
div.faq p {
	margin-top: 5px;
	line-height: 1.4;
	text-align: left;
	text-indent: -1em;
	padding-left: 1em;
	display: block;
	font-size: clamp(16px, 1.7vw, 17px);
	color: #454545;
	letter-spacing: 0.3px;
}
div.faq p::first-letter {
	color: #fbc400;
	/*font-size: 110%;*/
	font-weight: 600;
}



/*======= info ======*/
/*案内*/
.info_sec1{
	padding: var(--v-space) 0;
	background-image: url(../img/bg_01.jpg);
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
}
/**/
.bg_b {
	/*background: rgb(230, 240, 240, 0.5);*/
	padding: 30px;
}
/* 概要・アクセス部分のテーブル */
.info1 {
	font-weight: 600;
	border-bottom: 1px dashed #999;
	padding: 10px 5px;
	width: 7em;
	/*font-family: "Zen Old Mincho", serif;*/
	font-size: 105%;
}
.info2 {
	border-bottom: 1px dashed #999;
	padding: 10px 5px;
	/*width: 400px;*/
	/*font-family: "Zen Old Mincho", serif;*/
	font-size: 105%;
	letter-spacing: 0.5px;
}
.info3 {
	font-weight: bold;
	border-bottom: 1px dashed #999;
	padding: 5px;
	width: 9em;
	color: #000;
	/*font-family: "Zen Old Mincho", serif;*/
}
.info4 {
	border-bottom: 1px dashed #999;
	padding: 5px;
	/*font-family: "Zen Old Mincho", serif;*/
}
@media screen and (max-width: 568px) {
	.info1 {
		display: block;
		padding: 8px 2px 2px 2px;
		width: 100%;
		border-bottom: 1px solid rgba(255,255,255,0);
	}
	.info2 {
		display: block;
		padding: 2px;
		width: 99%;
		font-size: 95%;
	}
	.info3 {
		display: block;
		padding: 8px 2px 8px 2px;
		width: 100%;
		background-color: #0000000f;
	}
	.info4 {
		display: block;
		padding: 8px 2px;
		width: 99%;
	}
}
/*アクセス*/
.access_sec1 {
	padding: var(--v-space) 0;
	/*background-color: #f5f5f5;*/
}






