@charset 'UTF-8';
/*************
/* 100%表示用
*************/
/* 基本設定 */
#page-main {
  width: 100%;
}
#page-main img {
  max-width: 100%;
  height: auto;
}
#page-main a img {
  transition: .3s;
}

/********************
/* 下層ページ共通
********************/
/***** ph_main *****/
.ph_main{
	width: 100%;
}
.ph_img{
	width: 100%;
	height: 250px;
	margin-bottom: 3.91rem;
	position: relative;
}
#page-main .ph_img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.ph_maintxt{
	width: 92.3%;
	margin-right: auto;
	margin-left: auto;
}
.ph_big{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 1.53rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	margin-bottom: 1.39rem;
}
.ph_txt{
	text-align: justify;
	font-size: 1.15rem;
	line-height: 2;
	letter-spacing: 0.08em;
	margin-bottom: 0;
}
.ph_txt + .ph_txt{
	margin-top: 1.39rem;
}
@media screen and (min-width: 576px){
	.ph_img{
		height: auto;
	}
}
@media screen and (min-width: 768px){
	.ph_main{
		width: 93.33%;
		margin-right: auto;
		margin-left: auto;
	}
	.ph_img{
		margin-bottom: 5.65rem;
	}
	.ph_maintxt{
		width: 100%;
		margin: 0;
	}
	.ph_txt{
		text-align: center;
	}
}
@media screen and (min-width: 1200px){
	.ph_img{
		margin-bottom: 7.4rem;
	}
	.ph_big{
		font-size: 1.6rem;
		margin-bottom: 2.03rem;
	}
	.ph_txt{
		font-size: 1.13rem;
	}
	.ph_txt + .ph_txt{
		margin-top: 2.13rem;
	}
}
@media screen and (min-width: 1600px){
	.ph_img{
		height: 840px;
	}
}
/***** p_reg *****/
.p_reg{
	margin-top: 4.1rem;
	margin-bottom: 0;
}
.p_reg li{
	list-style: none;
	position: relative;
	padding: 4.61rem 0;
}
.p_reg li:last-child{
	padding-bottom: 0;
}
.p_reg li:nth-child(odd)::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background-color: #f8f8f8;
	top: 0;
	z-index: -1;
}
.p_reg li:nth-child(1)::before{
	right: 0;
}
.p_reg li:nth-child(3)::before{
	left: 0; 
}
.p_regflex{
	display: flex;
	flex-direction: column;
}
.p_regimg{
	width: 93.585%;
	margin-bottom: 2.37rem;
}
.p_reg li:nth-child(even) .p_regimg{
	margin-left: auto;
}
.p_regtxtArea{
	width: 87.17%;
	margin: 0 auto;
}
.reg_en{
	font-size: 1.38rem;
	letter-spacing: 0.03em;
	margin-bottom: 1.57rem;
}
.reg_tit{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 1.76rem;
	font-weight: 500;
	line-height: 1.76;
	letter-spacing: 0.08em;
	text-decoration: underline;
	margin-bottom: 1.1rem;
}
.p_regtxtArea .txt_block{
	text-align: justify;
	line-height: 1.86;
	letter-spacing: 0.02em;
}
.reg_btn{
	display: inline-flex;
	align-items: center;
	color: #000;
	margin-top: 2.09rem;
}
.reg_btn .txt{
	display: block;
	font-size: 1.07rem;
	letter-spacing: 0.08em;
}
.reg_btn .arrow{
	display: block;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background-color: #192f60;
	position: relative;
	left: 20px;
	transition: .3s;
}
.reg_btn .arrow::after{
	position: absolute;
	content: "";
	width: 8px;
	height: 7px;
	background-image: url("../images/arrow_w.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.reg_btn:hover{
	text-decoration: none;
	color: #000;
}
.reg_btn:hover .arrow{
	left: 30px;
}
@media screen and (min-width: 768px){
	.p_reg li:nth-child(odd)::before{
		width: 95.55%;
	}
	.p_regflex{
		width: 82.2%;
		max-width: 1320px;
		margin-right: auto;
		margin-left: auto;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
	}
	.p_reg li:nth-child(even) .p_regflex{
		flex-direction: row-reverse;
	}
	.p_regimg{
		width: 48.81%;
		margin: 0 !important;
	}
	.p_regtxtArea{
		width: 41.06%;
		margin: 0;
		align-self: center;
	}
}
@media screen and (min-width: 992px){
	.p_reg{
		margin-top: 5.86rem;
	}
	.p_reg li{
		padding: 6.3rem 0;
	}
	.p_regimg{
		width: 56.81%;
	}
	.p_regtxtArea{
		width: 34.08%;
	}
}
@media screen and (min-width: 1200px){
	.p_reg{
		margin-top: 7.63rem;
	}
	.p_reg li{
		padding: 8rem 0;
	}
	.p_regimg{
		width: 49.81%;
	}
	.p_regtxtArea{
		width: 41.08%;
	}
	.reg_en{
		font-size: 1.46rem;
		margin-bottom: 3.63rem;
	}
	.reg_tit{
		font-size: 2.26rem;
		margin-bottom: 2.7rem;
	}
	.reg_btn{
		margin-top: 4.16rem;
	}
	.reg_btn .txt{
		font-size: 0.93rem;
	}
}
@media screen and (min-width: 1400px){
	.p_regimg{
		width: 56.81%;
	}
	.p_regtxtArea{
		width: 35.06%;
	}
}
@media screen and (min-width: 1600px){
	.p_regtxtArea{
		width: 31.06%;
	}
}

/********************
/* 家づくりへの想い
********************/
.ph_img.house{
	position: relative;
}
.ph_img.house span{
	position: absolute;
	color: #fff;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 1.25rem;
	font-weight: 500;
	letter-spacing: 0.26em;
	line-height: 1.57;
	writing-mode: vertical-rl;
	margin: 0;
	height: 185px;
	top: 50%;
	left: 9.57%;
	transform: translateY(-50%);
}
@media screen and (min-width: 576px){
	.ph_img.house span{
		font-size: 1.55rem;
		height: 230px;
	}
}
@media screen and (min-width: 768px){
	.ph_img.house span{
		font-size: 1.85rem;
		height: 275px;
	}
}
@media screen and (min-width: 992px){
	.ph_img.house span{
		font-size: 2.15rem;
		height: 320px;
	}
}
@media screen and (min-width: 1200px){
	.ph_img.house span{
		font-size: 2.53rem;
		height: 435px;
		top: calc(50% - 15px);
	}
}
@media screen and (min-width: 1400px){
	.ph_img.house span{
		top: calc(50% - 20px);
	}
}
@media screen and (min-width: 1600px){
	.ph_img.house span{
		top: calc(50% - 50px);
	}
}

/********************
/* こだわりをていねいに叶える設計
********************/
@media screen and (min-width: 768px) and (max-width: 991px){
	.p_reg.plan li:nth-child(2) .p_regtxtArea{
		width: 45.06%;
	}
}
@media screen and (min-width: 1200px) and (max-width: 1399px){
	.p_reg.plan li:nth-child(2) .p_regtxtArea{
		width: 45.08%;
	}
}
@media screen and (min-width: 1400px) and (max-width: 1529px){
	.p_reg.plan li:nth-child(2) .p_regtxtArea{
		width: 39.06%;
	}
}
@media screen and (min-width: 1600px){
	.p_reg.plan li:nth-child(2) .p_regtxtArea{
		width: 33.3%;
	}
}

/********************
/* 自社大工で建てる安心の施工品質
********************/
.p_reg.quality li:last-child{
	padding-bottom: 4.61rem;
}
@media screen and (min-width: 992px){
	.p_reg.quality li:last-child{
		padding-bottom: 6.3rem;
	}
}
@media screen and (min-width: 1200px){
	.p_reg.quality li:last-child{
		padding-bottom: 8rem;
	}
}

/********************
/* 安心安全の暮らしを届ける性能
********************/
/***** perf_index *****/
.perf_index{
	width: 92.3%;
	margin-top: 4.26rem;
	margin-right: auto;
	margin-left: auto;
}
.perf_index ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 0;
}
.perf_index ul li{
	list-style: none;
	width: calc((100% - 15px)/2);
}
.perf_index ul li:nth-child(3), .perf_index ul li:nth-child(4){
	margin-top: 1.53rem;
}
.perf_index ul li a{
	display: block;
	text-align: center;
}
.perf_index ul li a:hover{
	text-decoration: none;
}
.pi_img{
	margin-bottom: 1.03rem;
}
.pi_tit{
	color: #000;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 1.23rem;
	letter-spacing: 0.08em;
	margin-bottom: 0.5rem;
}
.perf_index .arrow{
	position: relative;
	width: 12px;
	height: 6px;
	display: block;
	margin: 0 auto;
	background-image: url("../images/page/index_arrow.svg");
	background-position: top center;
	background-size: contain;
	background-repeat: no-repeat;
	top: 0;
	transition: .3s;
}
.perf_index ul li a:hover .arrow{
	top: 5px;
}
@media screen and (min-width: 768px){
	.perf_index{
		width: 82.2%;
		max-width: 1320px;
	}
	.perf_index ul li{
		width: calc((100% - 66px)/4);
	}
	.perf_index ul li:nth-child(3), .perf_index ul li:nth-child(4){
		margin-top: 0;
	}
	.pi_img{
		margin-bottom: 1.06rem;
	}
	.pi_tit{
		margin-bottom: 0.53rem;
	}
}
@media screen and (min-width: 992px){
	.perf_index{
		margin-top: 6.43rem;
	}
	.perf_index ul li{
		width: calc((100% - 99px)/4);
	}
}
@media screen and (min-width: 1200px){
	.perf_index{
		margin-top: 8.6rem;
	}
	.perf_index ul li{
		width: calc((100% - 132px)/4);
	}
	.pi_img{
		margin-bottom: 1.1rem;
	}
	.pi_tit{
		font-size: 1.2rem;
		margin-bottom: 0.56rem;
	}
}
/***** perf_block *****/
.perf_block{
	margin-top: 3.73rem;
	margin-bottom: 0;
	width: 100%;
}
.perf_block > li{
	list-style: none;
	position: relative;
	padding: 6.15rem 0 5.61rem;
	margin-top: 6.15rem;
}
.perf_block > li:first-child{
	margin-top: 0;
}
.perf_block > li::before{
	position: absolute;
	content: "";
	background-color: #f8f8f8;
	width: 96.15%;
	height: 100%;
	top: 0;
	z-index: -1;
}
.perf_block > li:nth-child(odd)::before{
	left: 0;
}
.perf_block > li:nth-child(even)::before{
	right: 0;
}
.perf_block > li .inner{
	width: 84.6%;
	margin-right: auto;
	margin-left: auto;
}
@media screen and (min-width: 768px){
	.perf_block > li::before{
		width: 95.55%;
	}
	.perf_block > li .inner{
		width: 82.2%;
		max-width: 1320px;
	}
}
@media screen and (min-width: 992px){
	.perf_block{
		margin-top: 5.09rem;
	}
	.perf_block > li{
		padding: 8.4rem 0 7.87rem;
		margin-top: 8.4rem;
	}
}
@media screen and (min-width: 1200px){
	.perf_block{
		margin-top: 6.46rem;
	}
	.perf_block > li{
		padding: 10.66rem 0 10.13rem;
		margin-top: 10.66rem;
	}
}
/* pb_main */
.pb_main{
	display: flex;
	width: 100%;
}
.pb_main_tit{
	width: 20%;
}
.pb_main_tit h3{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 1.92rem;
	font-weight: 500;
	letter-spacing: 0.26em;
	line-height: 1.57;
	margin: 0;
	writing-mode: vertical-rl;
}
.pb_main_tit h3 span{
	background-color: #192f60;
	color: #fff;
	padding: 1.14rem 0.44rem;
}
.pb_main_con{
	width: 80%;
}
.pb_main_con .txt_block{
	text-align: justify;
	letter-spacing: 0.02em;
	line-height: 2;
}
.pb_main_img{
	margin-top: 2.57rem;
}
@media screen and (min-width: 768px){
	.pb_main{
		width: 85.75%;
		margin-right: auto;
		margin-left: auto;
	}
	.pb_main_tit h3{
		font-size: 2.15rem;
	}
	.pb_main_tit h3 spna{
		padding: 1.3rem 0.46rem;
	}
}
@media screen and (min-width: 992px){
	.pb_main_img{
		margin-top: 3.65rem;
	}
}
@media screen and (min-width: 1200px){
	.pb_main_tit h3{
		font-size: 2.53rem;
	}
	.pb_main_tit h3 span{
		padding: 1.5rem 0.54rem;
	}
	.pb_main_img{
		margin-top: 4.73rem;
	}
}
@media screen and (min-width: 1400px){
	.pb_main{
		width: 75.75%;
		max-width: 1000px;
	}
}
/* pb_list */
.pb_list{
	margin-top: 3.84rem;
	margin-bottom: 0;
}
.pb_list li{
	list-style: none;
	margin-top: 2.47rem;
}
.pb_list li:first-child{
	margin-top: 0;
}
.pb_list_img{
	margin-bottom: 1.62rem;
}
.pb_tit{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 1.38rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	line-height: 1.4;
	margin-bottom: 0.63rem;
}
.pb_list .txt_block{
	text-align: justify;
	line-height: 2;
	letter-spacing: 0.02em;
}
@media screen and (min-width: 768px){
	.pb_list{
		display: flex;
		flex-wrap: wrap;
	}
	.pb_list li{
		width: calc((100% - 60px)/3);
		margin-right: 30px;
	}
	.pb_list li:nth-child(2), .pb_list li:nth-child(3){
		margin-top: 0;
	}
	.pb_list li:nth-child(3n){
		margin-right: 0;
	}
}
@media screen and (min-width: 992px){
	.pb_list{
		margin-top: 5.25rem;
	}
	.pb_list li{
		width: calc((100% - 90px)/3);
		margin-top: 3.65rem;		
		margin-right: 45px;
	}
	.pb_list_img{
		margin-bottom: 2.11rem;
	}
	.pb_tit{
		margin-bottom: 1.01rem;
	}
}
@media screen and (min-width: 1200px){
	.pb_list{
		margin-top: 6.66rem;
	}
	.pb_list li{
		width: calc((100% - 120px)/3);
		margin-top: 4.83rem;
		margin-right: 60px;
	}
	.pb_list_img{
		margin-bottom: 2.6rem;
	}
	.pb_tit{
		font-size: 1.53rem;
		margin-bottom: 1.4rem;
	}
}
@media screen and (max-width: 767px){
	.pb_list li{
		position: relative;
		padding-top: 3.07rem;
	}
	.pb_list li::before{
		position: absolute;
		content: "";
		width: 100%;
		height: 1px;
		top: 0;
		left: 0;
		background-color: rgba(198,198,198,0.5);
	}
}

/********************
/* 家づくりの流れ
********************/
.flow_block{
	margin-bottom: 0;
}
.flow_block > li{
	list-style: none;
	position: relative;
	padding-bottom: 5.69rem;
}
.flow_block > li + li{
	padding-top: 5.38rem;
}
.flow_block > li::before{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	background-color: #f8f8f8;
	z-index: -1;
}
.flow_block > li:nth-child(2)::before{
	content: "";
	left: 0;
}
.flow_block > li:nth-child(4)::before{
	content: "";
	right: 0;
}
.flow_inner{
	width: 92.3%;
	margin-right: auto;
	margin-left: auto;
}
.flow_list{
	position: relative;
}
.flow_line{
	position: absolute;
	content: "";
	width: 1px;
	background-color: rgba(25,47,96,0.5);
	top: 0;
	left: 30px;
	z-index: -1;
}
.flow_list ul{
	margin-bottom: 0;
}
.flow_list li{
	list-style: none;
	display: flex;
	justify-content: space-between;
	margin-top: 3.24rem;
}
.flow_list li:first-child{
	margin-top: 0;
}
.flow_list li .no{
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background-color: #192f60;
	color: #fff;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 1.53rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0;
}
.flow_list li .no .f-eng{
	font-size: 0.69rem;
	margin-bottom: 0.23rem;
}
.flow_flex{
	width: calc((100% - 60px) - 20px);
}
.flow_txtArea{
	padding-top: 1.3rem;
}
.flow_tit{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 1.38rem;
	font-weight: 500;
	line-height: 1.43;
	letter-spacing: 0.08em;
	position: relative;
	padding-bottom: 0.6rem;
	margin-bottom: 1rem;
}
.flow_tit::after{
	position: absolute;
	content: "";
	width: 100%;
	height: 1px;
	background-color: #192f60;
	bottom: 0;
	left: 0;
}
.flow_txtArea .txt_block{
	text-align: justify;
	line-height: 2;
	letter-spacing: 0.02em;
}
.flow_btn{
	margin-top: 1.32rem;
}
.flow_btn a{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	background-color: #192f60;
	border: 1px solid rgba(25,47,96,0.5);
	color: #fff;
	font-size: 0.92rem;
	letter-spacing: 0;
	width: 100%;
	max-width: 222px;
	height: 46px;
	transition: .3s;
}
.flow_btn a + a{
	margin-top: 5px;
}
.flow_btn a:hover{
	text-decoration: none;
	background-color: #fff;
	color: #192f60;
}
@media screen and (min-width: 768px){
	.flow_block > li::before{
		width: 95.55%;
	}
	.flow_inner{
		width: 82.2%;
		max-width: 1320px;
	}
	.flow_line{
		left: 40px;
	}
	.flow_list li .no{
		width: 80px;
		height: 80px;
		font-size: 1.69rem;
	}
	.flow_list li .no .f-eng{
		font-size: 0.84rem;
		margin-bottom: 0.34rem;
	}
	.flow_flex{
		width: calc((100% - 80px) - 55px);
		display: flex;
		justify-content: space-between;
	}
	.flow_img{
		width: 49.54%;
	}
	.flow_txtArea{
		width: 43.11%;
	}
	.img_none .flow_txtArea{
		width: 49.54%;
	}
}
@media screen and (min-width: 992px){
	.flow_block > li{
		padding-bottom: 8.4rem;
	}
	.flow_block > li + li{
		padding-top: 7.69rem;
	}
	.flow_line{
		left: 50px;
	}
	.flow_list li{
		margin-top: 4.95rem;
	}
	.flow_list li .no{
		width: 100px;
		height: 100px;
		font-size: 2.3rem;
	}
	.flow_list li .no .f-eng{
		font-size: 1.07rem;
	}
	.flow_flex{
		width: calc((100% - 100px) - 65px);
	}
	.flow_txtArea{
		padding-top: 2.33rem;
	}
	.flow_tit{
		margin-bottom: 1.12rem;
	}
	.flow_btn{
		margin-top: 2.07rem;
	}
	.flow_btn a + a{
		margin-top: 7px;
	}
}
@media screen and (min-width: 1200px){
	.flow_block > li{
		padding-bottom: 10.66rem;
	}
	.flow_block > li + li{
		padding-top: 10rem;
	}
	.flow_line{
		left: 70px;
	}
	.flow_list li{
		margin-top: 6.66rem;
	}
	.flow_list li .no{
		width: 140px;
		height: 140px;
		font-size: 2.26rem;
	}
	.flow_list li .no .f-eng{
		font-size: 1.06rem;
		margin-bottom: 0.46rem;
	}
	.flow_flex{
		width: calc((100% - 140px) - 90px)
	}
	.flow_txtArea{
		padding-top: 3.36rem;
	}
	.flow_tit{
		font-size: 1.53rem;
		padding-bottom: 1rem;
		margin-bottom: 2rem;
	}
	.flow_btn{
		margin-top: 2.83rem;
	}
	.flow_btn a{
		max-width: 260px;
		height: 54px;
		font-size: 0.93rem;
	}
	.flow_btn a + a{
		margin-top: 10px;
	}
}

/********************
/* 商品ラインナップ共通
********************/
/*** lineup_position ***/
.lineup_position{
	margin-top: 3.91rem;
	padding: 5.46rem 0 5.76rem;
}
.lineup_position .c-title1{
	margin-bottom: 0.54rem;
}
@media screen and (min-width: 1200px){
	.lineup_position .c-title1{
		margin-bottom: 1.26rem;
	}
	.lineup_position{
		margin-top: 7.5rem;
		padding: 10rem 0 9.66rem;
	}
}
/*** lineup_perf ***/
.lineup_perf{
	width: 82.3%;
	max-width: 1000px;
	margin-top: 5.45rem;
}
.lineup_perf .table{
	text-align: center;
	margin-bottom: 0;
}
.lineup_perf .table th, .lineup_perf .table td{
	line-height: 1.28;
	padding: 0.95rem 1.5rem;
}
.lineup_perf .table th{
	width: 25%;
	border-top: none;
	border-bottom: none;
	border-right: 1px solid rgba(255,255,255,0.5);
	border-left: 1px solid rgba(255,255,255,0.5);
}
.lineup_perf .table th span{
	display: block;
	font-size: 0.769rem;
	margin-top: 0.269rem;
}
.lineup_perf .table tr th:first-child{
	border-left: none;	
}
.lineup_perf .table tr th:last-child{
	border-right: none;	
}
.lineup_perf .table td{
	background-color: #f8f8f8;
	color: #000;
	font-size: 0.92rem;
	letter-spacing: 0;
	vertical-align: middle;
	border-top: none;
	border-left: 1px solid rgba(160,160,160,0.25); 
	border-right: 1px solid rgba(160,160,160,0.25); 
	border-bottom: 1px solid rgba(160,160,160,0.25); 
}
.lineup_perf .table tr td:first-child{
	border-left: none;	
}
.lineup_perf .table tr td:last-child{
	border-right: none;	
}
.lineup_perf .table tr:last-child td{
	border-bottom: none;	
}
.lineup_perf .table td a{
	display: block;
	color: #000;
	text-decoration: underline;
	transition: .3s;
}
.lineup_perf .table td a:hover{
	opacity: 0.7;
}
.lp_item{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: 500;
	font-size: 1.15rem !important;
	letter-spacing: 0.08em !important;
}
.bk192f60{
	background-color: #192f60 !important;
	color: #fff;
}
.bk415788{
	background-color: #415788 !important;
	color: #fff;
}
.bk697fb0{
	background-color: #697fb0 !important;
	color: #fff;
}
@media screen and (min-width: 1200px){
	.lineup_perf{
		margin-top: 10rem;
	}
	.lineup_perf .table th, .lineup_perf .table td{
		padding: 1.2rem 0.75rem;
	}
	.lineup_perf .table th span{
		font-size: 0.86rem;
		margin-top: 0.16rem;
	}
	.lineup_perf .table td{
		font-size: 0.93rem;
	}
	.lp_item{
		font-size: 1.2rem !important;
	}
}
/*** lineup_price ***/
.lineup_price_outer{
	overflow: hidden;
}
.lineup_price{
	width: 82.3%;
	max-width: 1000px;
	margin-top: 3.91rem;
} 
.lineup_price_block + .lineup_price_block{
	margin-top: 2.69rem;
}
.lineup_price_block .after_tit span{
	font-size: 0.84rem;
}
.lineup_price_img{
	margin: 0 -3%;
	padding-bottom: 15px;
}
.lineup_price_img .scroll-hint-icon{
	height: 25px;
	padding: 0;
	top: 4px;
}
.lineup_price_img .scroll-hint-icon::before{
	position: absolute;
	width: 10px;
	height: 10px;
	top: 50%;
	left: calc(50% - 10px);
	margin-left: 0;
	background-image: url("../images/arrow_w.svg");
	transform: translate(-50%, -50%) rotate(180deg);
	transition-delay: unset;
}
.lineup_price_img .scroll-hint-icon-wrap.is-active .scroll-hint-icon::before{
	animation: unset;
}
.lineup_price_img .scroll-hint-icon::after{
	width: 10px;
	height: 10px;
	top: 50%;
	left: calc(50% + 10px);
	margin-left: 0;
	background-image: url("../images/arrow_w.svg");
	transform: translate(-50%, -50%);
	transition-delay: unset;
}
.lineup_price_img .scroll-hint-text{
	display: none;
}
@media screen and (min-width: 768px){
	.lineup_price_img{
		margin: 0 -3.1%;
	}
}
@media screen and (min-width: 992px){
	.lineup_price_img{
		margin: 0 -2.9%;
	}
}
@media screen and (min-width: 1200px){
	.lineup_price{
		margin-top: 7.3rem;
	}
	.lineup_price_block + .lineup_price_block{
		margin-top: 5.33rem;
	}
	.lineup_price_block .after_tit{
		margin-bottom: 2rem;
	}
	.lineup_price_block .after_tit span{
		font-size: 0.86rem;
	}
	.lineup_price_img{
		margin: 0 -30px;
		padding-bottom: 0;
	}
}
/*** lineup_fv_slider ***/
.lineup_fv_slider, .lineup_fv_slider .slick-list, .lineup_fv_slider .slick-track{
	height: 100%;
}
.lu_arrows{
	position: absolute;
	right: 0;
	bottom: 0;
	background-color: #fff;
	display: flex;
	justify-content: center;
	width: 100px;
	height: 35px;
}
.lu_arrows::after{
	position: absolute;
	content: "";
	width: 1px;
	height: 26.923%;
	background-color: #000;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.lu_arrows .arrows-left, .lu_arrows .arrows-right{
	width: 43px;
	height: 100%;
	display: block;
	position: relative;
	cursor: pointer;
	z-index: 1;
}
.lu_arrows .arrows-left::after, .lu_arrows .arrows-right::after{
	position: absolute;
	content: "";
	width: 9px;
	height: 7px;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	background-image: url("../images/w_arrows.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.lu_arrows .arrows-left::after{
	transform: translate(-50%,-50%) rotate(180deg);
}
@media screen and (min-width: 1200px){
	.lu_arrows{
		width: 130px;
		height: 45px;
	}
	.lu_arrows .arrows-left, .lu_arrows .arrows-right{
		width: 56px;
	}
	.lu_arrows .arrows-left::after, .lu_arrows .arrows-right::after{
		width: 12px;
		height: 9.5px;
	}
}
@media screen and (min-width: 1400px){
	.lu_arrows{
		width: 150px;
		height: 52px;
	}
	.lu_arrows .arrows-left, .lu_arrows .arrows-right{
		width: 65px;
	}
	.lu_arrows .arrows-left::after, .lu_arrows .arrows-right::after{
		width: 14px;
		height: 11px;
	}
}
/*** lu_features ***/
.lu_features{
	position: relative;
	padding: 7.07rem 0 8.46rem;
	margin-top: 4.68rem;
}
.lu_features::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: #f8f8f8;
	z-index: -1;
}
.lu_features .inner{
	width: 82.2%;
    max-width: 1320px;
    margin-right: auto;
    margin-left: auto;
}
.lf_list{
	margin-bottom: 0;
}
.lf_list li{
	list-style: none;
	margin-top: 4.21rem;
}
.lf_list li:first-child{
	margin-top: 0;
}
.lf_img{
	margin-bottom: 1.95rem;
}
.lf_tit{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 1.53rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	line-height: 1.37;
	margin-bottom: 1.5rem;
}
.lf_tit span{
	display: block;
	font-size: 1.03rem;
	margin-bottom: 0.13rem;
}
.lf_list .txt_block{
	line-height: 1.66;
	letter-spacing: 0.02em;
}
.lu_features .vm{
	margin-top: 4.31rem;
}
@media screen and (min-width: 768px){
	.lf_list{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.lf_list li{
		width: calc((100% - 40px)/2);
	}
	.lf_list li:nth-child(2){
		margin-top: 0;
	}
}
@media screen and (min-width: 1200px){
	.lu_features{
		padding: 10rem 0 12rem;
		margin-top: 7.3rem;
	}
	.lf_list li{
		width: calc((100% - 60px)/2);
		margin-top: 4.93rem;
	}
	.lf_img{
		margin-bottom: 2.56rem;
	}
	.lf_tit{
		font-size: 1.6rem;
		margin-bottom: 2rem;
	}
	.lf_tit span{
		font-size: 1.06rem;
		margin-bottom: 0.23rem;
	}
	.lu_features .vm{
		margin-top: 5.03rem;
	}
}
/*** lf_perf ***/
.lf_perf{
	position: relative;
	margin-top: 7.23rem;
	padding-top: 7rem;
}
.lf_perf::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 1px;
	top: 0;
	left: 0;
	background-color: rgba(198,198,198,0.5);
}
.lf_perf1_list, .lf_perf2_list{
	margin-bottom: 0;
}
.lf_perf1_list li, .lf_perf2_list li{
	list-style: none;
	letter-spacing: 0;
	height: 65px;
	background-color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 8px;
	text-align: center;
}
.lf_perf1_list li:first-child{
	margin-top: 0;
}
.lf_perf1_list li{
	font-size: 1.23rem;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: 500;
}
.lf_perf1_list li a, .lf_perf2_list li a{
	display: block;
	color: #000;
	text-decoration: underline;
	transition: .3s;
}
.lf_perf1_list li a:hover, .lf_perf2_list li a:hover{
	opacity: 0.7;
}
.lf_perf2_list{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.lf_perf2_list li{ 
	font-size: 0.92rem;
	width: calc((100% - 8px)/2);
	margin-right: 8px;
}
.lf_perf2_list li:nth-child(2n){
	margin-right: 0;
}
@media screen and (min-width: 768px){
	.lf_perf1_list{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.lf_perf1_list li{
		width: calc((100% - 16px)/3);
		margin-right: 8px;
	}
	.lf_perf1_list li:nth-child(2), .lf_perf1_list li:nth-child(3){
		margin-top: 0;
	}
	.lf_perf1_list li:nth-child(3n){
		margin-right: 0;
	}
	.lf_perf2_list li{
		width: calc((100% - 24px)/4);
		margin-right: 8px;
	}
	.lf_perf2_list li:nth-child(2n){
		margin-right: 8px;
	}
	.lf_perf2_list li:nth-child(4n), .lf_perf2_list li:last-child{
		margin-right: 0;
	}	
}
@media screen and (min-width: 1200px){
	.lf_perf{
		margin-top: 10.26rem;
		padding-top: 9.93rem;
	}
	.lf_perf1_list li, .lf_perf2_list li{
		height: 100px;
		margin-top: 18px;
	}
	.lf_perf1_list li:first-child, .lf_perf1_list li:nth-child(2), .lf_perf1_list li:nth-child(3){
		margin-top: 0;
	}
	.lf_perf1_list li{
		font-size: 1.33rem;
		width: calc((100% - 36px)/3);
		margin-right: 18px;
	}
	.lf_perf2_list li{
		font-size: 0.93rem;
		width: calc((100% - 54px)/4);
		margin-right: 18px;
	}
	.lf_perf2_list li:nth-child(2n){
		margin-right: 18px;
	}
	.lf_perf2_list li:nth-child(4n), .lf_perf2_list li:last-child{
		margin-right: 0;
	}
}
/*** lf_works ***/
.lf_works{
	margin-top: 4.68rem;
}
.lf_works .vm{
	margin-top: 3.24rem;
}
@media screen and (min-width: 1200px){
	.lf_works{
		margin-top: 9.96rem;
	}
	.lf_works .vm{
		margin-top: 4.93rem;
	}
}
/*** p_lineup ***/
.p_lineup{
	margin-top: 6.89rem;
}
.p_lineup ul{
	margin-bottom: 0;
}
.p_lineup ul li{
	list-style: none;
	position: relative;
	padding: 3.075rem 0;
}
.p_lineup ul li + li{
	margin-top: 5.38rem;
}
.p_lineup ul li::before{
	position: absolute;
	content: "";
	width: 95%;
	height: 100%;
	top: 0;
	background-color: #f8f8f8;
	z-index: -1;
}
.p_lineup ul li:first-child::before{
	left: 0;
}
.p_lineup ul li:nth-child(2)::before{
	right: 0;
}
.p_lineup_flex{
	width: 76%;
	margin: 0 auto;
}
.p_lineup_img{
	margin-bottom: 1.3rem;
}
.p_lineup_txtArea .t_lineup_tit{
	text-align: center;
}
.p_lineup_txtArea .t_lineup_tit .logo{
	width: 100px;
	margin: 0 auto 1.323rem;
}
.p_lineup_txtArea .txt_block{
	text-align: justify;
}
@media screen and (min-width: 768px){
	.p_lineup ul li{
		padding: 4.61rem 0;
	}
	.p_lineup ul li::before{
		width: 96.665%;
	}
	.p_lineup_flex{
		width: 82.2%;
		margin-right: auto;
		margin-left: auto;
		display: flex;
		justify-content: space-between;
	}
	.p_lineup_img{
		width: 55%;
		margin: 0;
	}
	.p_lineup_txtArea{
		width: 36%;
		align-self: center;
	}
}
@media screen and (min-width: 1200px){
	.p_lineup{
		margin-top: 9.86rem;
	}
	.p_lineup ul li{
		padding: 8rem 0;
	}
	.p_lineup ul li + li{
		margin-top: 8rem;
	}
	.p_lineup_img{
		width: 60.60%;
	}
	.p_lineup_txtArea{
		width: 30.30%;
	}
	.p_lineup_txtArea .t_lineup_tit .logo{
		width: 150px;
	}
}
@media screen and (min-width: 1800px){
	.p_lineup ul li{
		padding: 9.33rem 0;
	}
	.p_lineup_flex{
		width: 73.33%;
	}
	.p_lineup_img{
		width: 60.60%;
	}
	.p_lineup_txtArea{
		width: 30.30%;
	}
}

/********************
/* 会社概要
********************/
.company_main{
	position: relative;
	overflow: hidden;
}
.company_main::before{
	content: "";
	position: absolute;
	left: 0;
	width: 100%;
	background-color: #f8f8f8;
	z-index: -1;
	top: var(--bg-start, 0px);
	height: var(--bg-height, 100px);
}
.ph_co_big{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 1.53rem;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: 0.03em;
	margin-bottom: 0;
}
.co_inner{
	padding-bottom: 7.69rem;
}
@media screen and (min-width: 768px){
	.ph_co_big{
		font-size: 1.769rem;
	}
}
@media screen and (min-width: 1200px){
	.co_inner{
		padding-bottom: 10.66rem;
	}
	.ph_co_big{
		font-size: 2rem;
	}
}
.co_message{
	position: relative;
	width: 92.3%;
	margin: 5.45rem auto 0;
	padding: 3.075rem 0;
}
.co_message::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background-color: #fff;
	top: 0;
	left: 0;
	z-index: -1;
}
.cm_img, .cm_txtArea{
	width: 84.61%;
	margin: 0 auto;
}
.cm_img{
	margin-bottom: 3.24rem;
}
.cm_txtArea .txt_block{
	font-size: 1.07rem;
	letter-spacing: 0.08em;
	line-height: 2;
	text-align: justify;
}
.cm_txtArea .txt_block p + p{
	margin-top: 3.51rem;
}
@media screen and (min-width: 768px){
	.co_message{
		width: 82.2%;
		max-width: 1320px;
		padding: 0;
		display: flex;
		justify-content: space-between;
	}
	.co_message::before{
		left: 6.6%;
	}
	.cm_img{
		width: 37.93%;
		margin: 0;
	}
	.cm_txtArea{
		width: 52.45%;
		margin: 0;
		padding: 4.07rem 0;
	}
}
@media screen and (min-width: 992px){
	.cm_img{
		width: 38.93%;
	}
	.cm_txtArea{
		width: 50.45%;
		padding: 5.61rem 0;
	}
	.cm_txtArea .txt_block p + p{
		margin-top: 4.95rem;
	}
}
@media screen and (min-width: 1200px){
	.co_message{
		margin-top: 8.43rem;
	}
	.co_message::before{
		left: 12.12%;
	}
	.cm_img{
		width: 35.93%;
	}
	.cm_txtArea{
		width: 54.45%;
		padding: 7.4rem 0;
	}
	.cm_txtArea .txt_block{
		font-size: 1.13rem;
	}
	.cm_txtArea .txt_block p + p{
		margin-top: 7.23rem;
	}
}
@media screen and (min-width: 1400px){
	.cm_img{
		width: 40.93%;
	}
	.cm_txtArea{
		width: 48.45%;
	}
	.cm_txtArea .txt_block p + p{
		margin-top: 11.23rem;
	}
}
@media screen and (min-width: 1600px){
	.cm_img{
		width: 43.93%;
	}
	.cm_txtArea{
		width: 45.45%;
	}
}
/* PROFILE */
.co_pro{
	width: 84.61%;
	margin-top: 6.99rem;
	margin-right: auto;
	margin-left: auto;
}
@media screen and (min-width: 768px){
	.co_pro{
		width: 82.2%;
		max-width: 1000px;
	}
}
@media screen and (min-width: 1200px){
	.co_pro{
		margin-top: 9.96rem;
	}
}
/* TV CM */
.co_tv{
	width: 84.61%;
	max-width: 640px;
	margin-top: 6.99rem;
	margin-right: auto;
	margin-left: auto;
}
@media screen and (min-width: 1200px){
	.co_tv{
		margin-top: 9.86rem;
	}
}
/* ACCESS */
.co_access{
	margin-top: 6.99rem;
}
.access_block{
	margin-bottom: 0;
}
.access_block li{
	list-style: none;
	position: relative;
	padding: 3.075rem 0;
}
.access_block li + li{
	margin-top: 5.38rem;
}
.access_block li::before{
	position: absolute;
	content: "";
	width: 95%;
	height: 100%;
	background-color: #f8f8f8;
	top: 0;
	z-index: -1;
}
.access_block li:first-child::before{
	left: 0;
}
.access_block li:nth-child(2)::before{
	right: 0;
}
.ac_flex, .ac_map{
	width: 76%;
	margin-right: auto;
	margin-left: auto;
}
.ac_img{
	margin-bottom: 2.96rem;
}
.ac_office{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 1.53rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-decoration: underline;
	margin-bottom: 1.2rem;
}
.ac_dial{
	display: inline-block;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 1.53rem;
	font-weight: 500;
	letter-spacing: 0;
	color: #000;
	transition: .3s;
	position: relative;
	padding-left: 42px;
	margin-bottom: 0.738rem;
}
.ac_dial::before{
	position: absolute;
	content: "";
	background-image: url("../images/page/free_dial.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center left;
	top: 50%;
	left: 0;
	width: 30px;
	height: 20px;
	transform: translateY(-50%);
}
.ac_dial:hover{
	text-decoration: none;
	color: #000;
	opacity: 0.7;
}
.ac_txtArea #form{
	background-color: transparent;
}
.ac_txtArea #form th{
	font-weight: 500;
}
.ac_txtArea #form th, .ac_txtArea #form td{
	padding: 1.53rem 0;
}
.ac_map{
	margin-top: 3.46rem;
}
@media screen and (min-width: 768px){
	.access_block li{
		padding: 6.15rem 0;
	}
	.access_block li::before{
		width: 96.665%;
	}
	.ac_flex, .ac_map{
		width: 82.2%;
	}
	.ac_flex{
		display: flex;
		justify-content: space-between;
	}
	.ac_img{
		width: 52.27%;
		height: auto;
		margin-bottom: 0;
	}
	#page-main .ac_img img{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.ac_txtArea{
		width: 40.9%;
	}
	.ac_office{
		font-size: 1.769rem;
		margin-bottom: 2.83rem;
	}
	.ac_dial{
		font-size: 1.769rem;
	}
	.ac_map .youtube{
		padding: 0;
		aspect-ratio: 22 / 9;
	}
}
@media screen and (min-width: 1200px){
	.co_access{
		margin-top: 9.86rem;
	}
	.access_block li{
		padding: 9.33rem 0;
	}
	.access_block li + li{
		margin-top: 8rem;
	}
	.ac_office{
		font-size: 2rem;
		margin-bottom: 4.83rem;
	}
	.ac_dial{
		font-size: 2rem;
		padding-left: 54px;
		margin-bottom: 1.1rem;
	}
	.ac_dial::before{
		width: 40px;
		height: 26px;
	}
	.ac_map{
		margin-top: 5.33rem;
	}
}
@media screen and (min-width: 1400px){
	.ac_flex{
		align-items: flex-end;
	}
}
@media screen and (min-width: 1800px){
	.ac_flex, .ac_map{
		width: 73.33%;
	}
}
@media only screen and (max-width: 479px){
	.ac_txtArea #form th{
		padding: 1.03rem 0 0;
	}
	.ac_txtArea #form td{
		padding: 0.5rem 0 1.03rem;
	}
}

/********************
/* プライバシーポリシー
********************/
.policy_block{
	position: relative;
	padding: 2.69rem 0;
}
.policy_block:first-of-type{
	padding-top: 0;
}
.policy_block:last-of-type{
	padding-bottom: 0;
}
.policy_block::after{
	position: absolute;
	content: "";
	width: 100%;
	height: 1px;
	background-color: rgba(198,198,198,0.5);
	bottom: 0;
	left: 0;
}
.policy_block:last-of-type::after{
	display: none;
}
.policy_block + .policy_block{
	
}
#main .policy_block .policy_tit{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	letter-spacing: 0.05em;
	line-height: 1.5;
	font-weight: 500;
	font-size: 1.38rem;
	border: none;
	padding: 0;
	margin-bottom: 1.5rem;
}
.policy_block ul{
	margin-bottom: 0;
}
.policy_block ul li{
	list-style: none;
	padding-left: 1em;
	text-indent: -1em;
}
@media screen and (min-width: 1200px){
	.policy_block{
		padding: 3.6rem 0;
	}
	#main .policy_block .policy_tit{
		font-size: 1.53rem;
	}
}

/********************
/* 保証とアフターメンテナンス
********************/
.after .ph_maintxt{
	max-width: 750px;
	margin-right: auto;
	margin-left: auto;
}
/* 道下工務店の長期保証 */
.after_tyouki{
	margin-top: 4.01rem;
}
.after_tit{
	background-color: #192f60;
	color: #fff;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: 500;
	font-size: 1.23rem;
	letter-spacing: 0.08em;
	line-height: 1.9;
	padding: 0.76rem;
	margin-bottom: 1.52rem;
}
.tyouki_img{
	margin-top: 1.42rem;
	margin-bottom: 2.47rem;
	overflow: hidden;
}
.after_txt{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: 500;
	font-size: 1.23rem;
	letter-spacing: 0.03em;
	line-height: 1.9;
	margin-bottom: 0;
}
@media screen and (min-width: 1200px){
	.after_tyouki{
		margin-top: 7.6rem;
	}
	.after_tit{
		font-size: 1.33rem;
		padding: 1.07rem 1rem;
		margin-bottom: 2.26rem;
	}
	.tyouki_img{
		margin-top: 2.16rem;
		margin-bottom: 3.4rem;
	}
	.after_txt{
		font-size: 1.33rem;
	}
}
@media screen and (max-width: 767px){
	#page-main .tyouki_img img{
		max-width: 800px;
	}
}
/* 保証 */
.after_hosyo{
	padding: 6.15rem 0 5.69rem;
	margin-top: 5.45rem;
}
.after_hosyo ul{
	margin-bottom: 0;
}
.after_hosyo ul li{
	list-style: none;
	background-color: #fff;
	padding: 2rem;
}
.hosyo_img{
	margin-bottom: 1.91rem;
}
.hosyo_tit{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: 500;
	letter-spacing: 0.08em;
	font-size: 1.38rem;
	margin-bottom: 1.32rem;
}
.after_hosyo .txt_block{
	letter-spacing: 0.02em;
	text-align: justify;
}
@media screen and (min-width: 768px){
	.after_hosyo ul{
		display: flex;
		justify-content: space-between;
	}
	.after_hosyo ul li{
		width: calc((100% - 60px)/3);
	}
}
@media screen and (min-width: 992px){
	.after_hosyo ul li{
		width: calc((100% - 100px)/3);
		padding: 2rem 3rem;
	}
}
@media screen and (min-width: 1200px){
	.after_hosyo{
		padding: 10.66rem 0 10.33rem;
		margin-top: 9.96rem;
	}
	.after_hosyo ul li{
		width: calc((100% - 120px)/3);
		padding: 3rem 4rem;
	}
	.hosyo_img{
		margin-bottom: 2.8rem;
	}
	.hosyo_tit{
		font-size: 1.53rem;
		margin-bottom: 1.73rem;
	}
}
@media screen and (max-width: 767px){
	.after_hosyo ul li + li{
		margin-top: 2.676rem;
	}
}

/********************
/* お問い合わせ
********************/
.contact_block{
	padding: 4.61rem 0;
	margin-top: 4.01rem;
}
.contact_block .inner{
	width: 86%;
	max-width: 1000px;
	margin-right: auto;
	margin-left: auto;
}
@media screen and (min-width: 1200px){
	.contact_block{
		padding: 8rem 0;
		margin-top: 7.3rem;
	}
}


/********************
/* 資料請求
********************/
.catalog_main{
	position: relative;
	overflow: hidden;
}
.catalog_main::before{
	content: "";
	position: absolute;
	left: 0;
	width: 100%;
	background-color: #f8f8f8;
	z-index: -1;
	top: var(--bg-start, 0px);
	height: var(--bg-height, 100px);
}
.catalog_main .ph_main{
	width: 100%;
	margin: 0;
}
.catalog_main .ph_img{
	width: 100%;
	margin-bottom: 0;
}
.catalog_main_box{
	position: relative;
	width: 92.3%;
	margin-right: auto;
	margin-left: auto;
	padding: 4.11rem 0 3.46rem;
}
.catalog_main_box::before{
	position: absolute;
	content: "";
	background-color: #fff;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -1;
}
.catalog_main .ph_maintxt{
	margin-bottom: 3.46rem;
}
.catalog_main .ph_txt{
	text-align: center;
}
.catalog_main h2{
	margin-bottom: 5px;
}
.catalog_main h2 .ph_big{
	display: inline-block;
	background-color: #192f60;
	color: #fff;
	font-size: 1.38rem;
	padding: 0.5rem 1rem;
	margin-bottom: 8px;
}
.catalog_main h2 .ph_co_big{
	display: inline-block;
	background-color: #192f60;
	color: #fff;
	font-size: 1.53rem;
	padding: 0.25rem 1rem;
}
.catalog_all_img{
	width: 100%;
	max-width: 280px;
	margin-right: auto;
	margin-left: auto;
}
.catalog_cap{
	text-align: center;
}
@media screen and (min-width: 768px){
	.catalog_main .ph_img{
		width: 93.33%;
		margin-right: auto;
		margin-left: auto;
	}
	.catalog_main_box{
		width: 82.3%;
		max-width: 1320px;
	}
	.catalog_main h2 .ph_big{
		font-size: 1.53rem;
	}
	.catalog_main h2 .ph_co_big{
		font-size: 1.76rem;
	}
}
@media screen and (min-width: 1200px){
	.catalog_main_box{
		padding: 7.3rem 0 6.6rem;
	}
	.catalog_main .ph_maintxt{
		margin-bottom: 4.63rem;
	}
	.catalog_main h2{
		margin-bottom: 10px;
	}
	.catalog_main h2 .ph_big{
		padding: 0.77rem 2rem;
		margin-bottom: 12px;
		font-size: 1.6rem;
	}
	.catalog_main h2 .ph_co_big{
		padding: 0.33rem 2rem;
		font-size: 2rem;
	}
	.catalog_all_img{
		margin-bottom: 10px;
	}
}
.catalog_list{
	width: 92.3%;
	margin: 4.61rem auto 0;
	padding-bottom: 6.15rem;
}
.catalog_list li{
	list-style: none;
	position: relative;
	padding: 2.3rem 0 2.69rem;
}
.catalog_list li + li{
	margin-top: 20px;
}
.catalog_list li::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: #fff;
	z-index: -1;
}
.catalog_list .no{
	width: 40px;
	height: 45px;
	color: #fff;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: 500;
	letter-spacing: 0;
	font-size: 1.15rem;
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 0;
	left: 0;
}
.catalog_list li:first-child .no{
	background-color: #000;
}
.catalog_list li:nth-child(2) .no{
	background-color: #192f60;
}
.catalog_list li:nth-child(3) .no{
	background-color: #9b7e3b;
}
.catalog_list li .inner{
	text-align: center;
}
.catalog_name{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: 500;
	letter-spacing: 0.08em;
	font-size: 1.23rem;
	margin-bottom: 0.92rem;
}
.catalog_img{
	width: 65.95%;
	margin-top: 1.67rem;
	margin-right: auto;
	margin-left: auto;
}
.catalog_list .txt_block{
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	letter-spacing: 0.02em;
}
@media screen and (min-width: 768px){
	.catalog_list{
		width: 82.3%;
		max-width: 1320px;
		display: flex;
		justify-content: space-between;
	}
	.catalog_list li{
		width: calc((100% - 20px)/3);
	}
	.catalog_list li + li{
		margin-top: 0;
	}
}
@media screen and (min-width: 768px) and (max-width: 991px){
	.catalog_list .txt_block{
		font-size: 0.86rem;
	}
}
@media screen and (min-width: 992px){
	.catalog_list li{
		width: calc((100% - 40px)/3);
	}
	.catalog_list li .inner .txt_block{
		font-size: 0.92rem;
	}
}
@media screen and (min-width: 1200px){
	.catalog_list{
		margin-top: 8rem;
		padding-bottom: 10.66rem;
	}
	.catalog_list li{
		width: calc((100% - 60px)/3);
		padding: 3.6rem 0 4rem;
	}
	.catalog_list .no{
		width: 60px;
		height: 60px;
		font-size: 1.2rem;
	}
	.catalog_name{
		font-size: 1.33rem;
		margin-bottom: 1.1rem;
	}
	.catalog_img{
		margin-top: 2.06rem;
	}
}
@media screen and (min-width: 1400px){
	.catalog_list li .inner .txt_block{
		font-size: 1rem;
	}
}
.catalog_promise{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: 500;
	margin-top: 5.85rem;
}
.c_promise_tit{
	font-size: 2.46rem;
	letter-spacing: 0.04em;
	text-align: center;
	text-decoration: underline;
	margin-bottom: 1.99rem;
}
.c_promise_tit span{
	font-size: 1.3rem;
}
.catalog_promise ul{
	width: 100%;
	max-width: 460px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 0;
}
.catalog_promise ul li{
	list-style: none;
	position: relative;
	font-size: 1.15rem;
	letter-spacing: 0.08em;
	padding-bottom: 0.61rem;
	margin-bottom: 1.26rem;
}
.catalog_promise ul li:last-child{
	margin-bottom: 0;
}
.catalog_promise ul li span{
	color: #9b7e3b;
	text-decoration: underline;
}
.catalog_promise ul li::after{
	position: absolute;
	content: "";
	width: 100%;
	height: 1px;
	background-color: rgba(198,198,198,0.5);
	bottom: 0;
	left: 0;
}
@media screen and (min-width: 768px){
	.catalog_promise ul li{
		font-size: 1.3rem;
	}
}
@media screen and (min-width: 1200px){
	.catalog_promise{
		margin-top: 10.26rem;
	}
	.c_promise_tit{
		font-size: 3rem;
		margin-bottom: 3.2rem;
	}
	.c_promise_tit span{
		font-size: 1.6rem;
	}
	.catalog_promise ul{
		max-width: 660px;
	}
	.catalog_promise ul li{
		font-size: 1.6rem;
		padding-bottom: 0.73rem;
		margin-bottom: 1.66rem;
	}
}
.catalog_form{
	margin-top: 5.45rem;
}
.catalog_form .contact_block{
	margin-top: 0;
}
@media screen and (min-width: 1200px){
	.catalog_form{
		margin-top: 10.33rem;
	}
}


/********************
/* 家づくりにおける家計のこと
********************/
.money_main{
	position: relative;
	overflow: hidden;
}
.money_main::before{
	content: "";
	position: absolute;
	left: 0;
	width: 100%;
	background-color: #f8f8f8;
	z-index: -1;
	top: var(--bg-start, 0px);
	height: var(--bg-height, 100px);
}
.money_main .ph_main{
	width: 100%;
	margin: 0;
}
.money_main .ph_img{
	width: 100%;
	margin-bottom: 0;
}
.money_main_box_outer{
	padding-bottom: 6.15rem;
}
.money_main_box{
	position: relative;
	width: 92.3%;
	margin-right: auto;
	margin-left: auto;
	padding: 4.11rem 0 3.46rem;
}
.money_main_box::before{
	position: absolute;
	content: "";
	background-color: #fff;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -1;
}
.money_main_box_inner{
	width: 92.3%;
	margin-top: 3.46rem;
	margin-right: auto;
	margin-left: auto;
}
.money_main h2{
	margin-bottom: 1.32rem;
}
.money_main h2 .ph_co_big{
	display: inline-block;
	background-color: #192f60;
	color: #fff;
	font-size: 1.53rem;
	padding: 0.25rem 1rem;
}
.money_img{
	margin-top: 2.09rem;
}
/* modal */
.st_modal{
    display: none;
    height: 100vh;
    position: fixed;
	bottom: 0;
	right: 0;
	left: 0;
    top: 0;
    width: 100%;
	z-index: 999999;
}
.modal__bg{
    background: rgba(0,0,0,0.5);
    height: 100vh;
    position: absolute;
    width: 100%;
}
.modal__content{
    background: #fff;
    left: 50%;
    padding: 1rem;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 92.3%;
	max-width: 1200px;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	max-height: 80%;
	color: #000;
}
.money_img .modal__content{
	overflow: unset;
}
.modal__content a{
	color: #fff;
	font-size: 2em;
	display: block;
	position: absolute;
	right: 20px;
	top: 10px;
	text-decoration: none;
}
.money_img .modal__content a{
	top: -2rem;
	right: 0;
	line-height: 1;
}
@media screen and (min-width: 768px){
	.money_main .ph_img{
		width: 93.33%;
		margin-right: auto;
		margin-left: auto;
	}
	.money_main_box{
		width: 82.3%;
		max-width: 1320px;
	}
	.money_main_box_inner{
		width: 84.02%;
	}
}
@media screen and (min-width: 1200px){
	.money_main_box_outer{
		padding-bottom: 10.66rem;
	}
	.money_main_box{
		padding: 7.3rem 0 6.6rem;
	}
	.money_main_box_inner{
		width: 75.75%;
		margin-top: 4.63rem;
	}
	.money_main h2{
		margin-bottom: 2.06rem;
	}
	.money_main h2 .ph_co_big{
		padding: 0.33rem 2rem;
		font-size: 2rem;
	}
	.money_img{
		margin-top: 3.3rem;
	}
}
@media screen and (max-width: 767px){
	.money_img_scroll {
		overflow-x: auto;
		white-space: nowrap;
		position: relative; /* ← ScrollHintの影が正しく表示される */
		max-width: 100%;
	}
	#page-main .money_img_scroll img{
		width: 700px;
		max-width: unset;
	}
}
.money_cost_block{
	margin-top: 3.24rem;
}
.money_cost_block .item + .item{
	position: relative;
	margin-top: 1.9rem;
	padding-top: 2.15rem;
}
.money_cost_block .item + .item::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 1px;
	background-color: rgba(198,198,198,0.5);
	top: 0;
	left: 0;
}
.money_cost_block .item ul{
	margin-bottom: 0;
}
.money_cost_block .item ul li{
	list-style: none;
}
.mc_tit{
	font-size: 1.15rem;
	letter-spacing: 0.04em;
	line-height: 2;
	position: relative;
	padding-left: 20px;
	margin-bottom: 1.22rem;
}
.mc_tit::before{
	position: absolute;
	content: "";
	width: 10px;
	height: 10px;
	border-radius: 50%;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}
.money_cost_block .item:nth-of-type(1) .mc_tit::before{
	background-color: #697fb0;
}
.money_cost_block .item:nth-of-type(2) .mc_tit::before{
	background-color: #192f60;
}
.money_cost_block ul{
	margin-bottom: 0;
}
.money_cost_block ul li{
	list-style: none;
	font-size: 1.15rem;
	letter-spacing: 0.08em;
}
.money_cost_block ul li + li{
	margin-top: 1rem;
}
.money_cost_block ul li span{
	color: #fff;
	font-size: 1rem;
	width: 100px;
	height: 26px;
	border-radius: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 0.5rem;
}
.money_cost_block .item:nth-of-type(1) ul li span{
	background-color: #697fb0;
}
.money_cost_block .item:nth-of-type(2) ul li span{
	background-color: #192f60;
}
@media screen and (min-width: 992px){
	.money_cost_block ul li span{
		display: inline-flex;
		margin-right: 1rem;
		margin-bottom: 0;
	}
}
@media screen and (min-width: 1200px){
	.money_cost_block{
		margin-top: 4.73rem;
	}
	.money_cost_block .item + .item{
		margin-top: 3.33rem;
		padding-top: 2.8rem;
	}
	.mc_tit{
		font-size: 1.13rem;
		margin-bottom: 1.3rem;
	}
	.money_cost_block ul li{
		font-size: 1.13rem;
	}
	.money_cost_block ul li span{
		width: 110px;
		height: 28px;
	}
}
.money_cost_detail{
	margin-top: 3.34rem;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.money_cost_detail .plus{
	width: 16px;
	height: 16px;
	margin-top: 1.52rem;
	margin-bottom: 1.92rem;
}
#page-main .money_cost_detail .plus img{
	width: 100%;
	height: 100%;
	display: block;
}
.mcd_item img{
	margin-bottom: 0.938rem;
}
.mcd_item .ph_big{
	margin-bottom: -0.023rem;
}
@media screen and (min-width: 768px){
	.money_cost_detail{
		flex-direction: row;
		justify-content: space-between;
		align-items: unset;
	}
	.money_cost_detail .plus{
		margin-top: 16%;
		margin-bottom: 0;
	}
	.mcd_item{
		width: calc((100% - (16px + 50px))/2);
	}
}
@media screen and (min-width: 992px){
	.money_cost_detail{
		margin-top: 3.84rem;
	}
}
@media screen and (min-width: 1200px){
	.money_cost_detail{
		margin-top: 5.33rem;
	}
	.mcd_item{
		width: calc((100% - (22px + 80px))/2);
	}
	.money_cost_detail .plus{
		width: 22px;
		height: 22px;
		margin-top: 15%;
	}
	.mcd_item img{
		margin-bottom: 1.3rem;
	}
	.mcd_item .ph_big{
		margin-bottom: -0.13rem;
	}
}
.money_box{
	position: relative;
	padding: 5% 0;
	margin-top: 3.34rem;
}
.money_box::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: #f8f8f8;
	z-index: -1;
}
.money_box .txt_block{
	text-align: justify;
	letter-spacing: 0.08em;
	line-height: 1.53;
	width: 90%;
	margin: 0 auto;
}
.money_main_block .txt_small{
	font-size: 0.84rem;
	letter-spacing: 0;
	line-height: 1.76;
	display: flex;
	align-items: center;
	width: 90%;
	margin: 0.93rem auto 0;
}
.money_main_block .txt_small .asterisk{
	position: relative;
	width: 5px;
	height: 5px;
	margin-right: 4px;
	display: inline-block;
}
.money_main_block .txt_small .asterisk::after{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	top: 0;
	left: 0;
	background-image: url("../images/page/asterisk.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.money_main_box_inner .vm{
	margin-top: 3.34rem;
}
@media screen and (min-width: 1200px){
	.money_box{
		padding: 3.8% 0;
		margin-top: 4.93rem;
	}
	.money_main_block .txt_small{
		margin-top: 1.03rem;
	}
	.money_main_block .txt_small .asterisk{
		width: 7px;
		height: 7px;
		margin-right: 6px;
	}
	.money_main_box_inner .vm{
		margin-top: 4.93rem;
	}
}
.moeny_commitment{
	margin-top: 5.55rem;
}
.moeny_commitment ul{
	margin-bottom: 0;
}
.moeny_commitment ul li{
	list-style: none;
}
.moeny_commitment ul li + li{
	margin-top: 2.47rem;
}
.moeny_commitment .txt_block{
	line-height: 2;
	letter-spacing: 0.02em;
	text-align: justify;
	margin-top: 1.8rem;
}
@media screen and (min-width: 768px){
	.moeny_commitment ul{
		display: flex;
		justify-content: space-between;
	}
	.moeny_commitment ul li{
		width: calc((100% - 40px)/2);
	}
	.moeny_commitment ul li + li{
		margin-top: 0;
	}
}
@media screen and (min-width: 1200px){
	.moeny_commitment{
		margin-top: 9.86rem;
	}
	.moeny_commitment ul li{
		width: calc((100% - 60px)/2);
	}
	.moeny_commitment .txt_block{
		margin-top: 2.06rem;
	}
}