@charset "UTF-8";

/*------------------------
トップイメージ
------------------------*/
/* 取り組み */
#initiatives .block:nth-child(3) a,
#initiatives .block:nth-child(4) a{
	pointer-events: none;
}
#initiatives .block:nth-child(3) a .coming,
#initiatives .block:nth-child(4) a .coming{
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	font-weight: 500;
	color: #fff;
	z-index: 100;
}
/* PC */
@media screen and (min-width:768px) {
	/* 非公開対応 */
	#initiatives .block:nth-child(3) a::after,
	#initiatives .block:nth-child(4) a::after{
		left: 0!important;
	}
	#initiatives .block:nth-child(3) a .coming,
	#initiatives .block:nth-child(4) a .coming{
		font-size: 30px;
	}
	body{
		background: rgba(45, 146, 68, 0.07);
	}
	.top-bg{
		background: var(--green) url(../../img/corporation/topimg.jpg?20250701) no-repeat center;
		background-size: cover;
		min-height: 770px;
	}
	#topimg .text-wrap{
		width: 600px;
		margin: 60px 0 0 auto;
	} 
	#topimg h1{
		width: 356px;
		height: auto;
		margin: 0 auto 70px;
	}
	#topimg .jp{
		width: 396px;
		margin: 0 auto 50px;
	}
	#topimg .textarea{
		font-size: 16px;
		line-height: 2.125;
		text-align: center;
		color: #fff;
	}
	
}
/* SP */
@media screen and (max-width:767px) {
	/* 非公開対応 */
	#initiatives .block:nth-child(3) a::after,
	#initiatives .block:nth-child(4) a::after{
		content: "";
		background: var(--gray);
		opacity: 0.8;
		width: 100%;
		height: 100%;
		position: absolute;
		z-index: 10;
		left: 0;
	}
	#initiatives .block:nth-child(3) a .coming,
	#initiatives .block:nth-child(4) a .coming{
		font-size: 5.33vw;
	}
	body main{
		background: rgba(45, 146, 68, 0.07);
	}
	#topimg{
		background: url(../../img/corporation/sp_topimg.jpg?20250701) no-repeat center;
		background-size: cover;
		min-height: 161.6vw; 
	}
	#topimg h1{
		width: 56.27vw;
	}
	#topimg .jp{
		width: 68.53vw;
	}
}

/*------------------------
六角形 個別指定
------------------------*/
.hex-box.num-box .text-wrap h4{
	color: var(--green);
}
/* PC */
@media screen and (min-width:768px) {
	#feature{
		overflow-x: hidden;
	}
	/* ===== スピード対応 ===== */
	.hex-box.num01{
		position: absolute;
		z-index: 0;
		left: 340px;
	}
	.hex-box.num01 .hexagon-shadow{
		width: 545px;
		height: 723px;
		z-index: 0;
		position: absolute;
	}
	.hex-box.num01 .hexagon-shadow img{
		top: -10px;
		left: -4px;
	}
	.hex-box.num-box.num01 .in-img{
		margin: 28px 25px 25px auto;
	}
	.hex-box.num-box.num01 .text-wrap{
		padding: 0px 40px 0;
		margin: 0px auto auto 0;
	}
	.hex-box.num01 .hexagon-text .en{
		top: 330px;
		left: 235px;
		transform: rotate(32deg);
	}

	/* ===== 低価格 ===== */
	.hex-box.num02{
		position: absolute;
		z-index: 0;
		left: 683px;
	}
	.hex-box.num-box.num02 .hexagon-text .en{
		top: 343px;
		left: 209px;
		transform: rotate(32deg);
	}

	/* ===== 高品質・高性能 ===== */
	.hex-box.num03{
		position: absolute;
		z-index: 0;
		left: 0;
		top: 297px;
	}
	.hex-box.num-box.num03 .hexagon-shadow{
		width: 545px;
		height: 723px;
		z-index: 0;
		position: absolute;
	}
	.hex-box.num-box.num03 .hexagon-shadow img{
		top: -15px;
		left: -10px;
		height: 100%;
		width: 100%;
	}
	.hex-box.num-box.num03 .in-img{
		margin: 28px auto 0px 25px;
	}
	.hex-box.num-box.num03 .text-wrap{
		margin: 0 0 auto auto;
		padding: 25px 40px 0;
		color: #fff;
	}
	.hex-box.num-box.num03 .text-wrap .num{
		color: var(--black);
	}
	.hex-box.num-box.num03 .text-wrap h4{
		color: #fff;
	}
	.hex-box.num-box.num03 .hexagon-text .en{
		top: 326px;
		left: 210px;
		transform: rotate(-30deg);
		color: #fff;
	}
	
	/* ===== 豊富な住宅プラン ===== */
	.hex-box.num04{
		position: absolute;
		z-index: 0;
		left: 340px;
		top: 593px;
	}
	.hex-box.num-box.num04 .in-img{
		margin: 28px 25px 25px auto;
	}
	.hex-box.num-box.num04 .text-wrap{
		margin: 0px auto auto 0;
		padding: 0 40px 0;
		color: #fff;
	}
	.hex-box.num-box.num04 .text-wrap h4{
		color: #fff;
	}
	.hex-box.num04 .hexagon-text .en{
		top: 326px;
		left: 209px;
		transform: rotate(32deg);
		color: #fff;
	}
	
	/* ===== 対応 ===== */
	.hex-box.num05{
		position: absolute;
		z-index: 0;
		left: 684px;
		top: 593px;
	}
	.hex-box.num05 .hexagon-shadow{
		width: 545px;
		height: 723px;
		z-index: 0;
		position: absolute;
	}
	.hex-box.num05 .hexagon-shadow img{
		top: -11px;
		left: -10px;
	}
	.hex-box.num05 .hexagon-text .en{
		top: 342px;
		left: 204px;
		transform: rotate(32deg);
	}

	/* ===== あしらい ===== */
	.hex-wrap .ashirai{
		position: absolute;
		width: 342px;
		height: 395px;
	}
	.hex-wrap .ashirai.num01{
		left: -170px;
	}
	.hex-wrap .ashirai.num02{
		opacity: 0.63;
		right: -168px;
		top: 296px;
	}
	.hex-wrap .ashirai.num03{
		bottom: 5px;
	}
}

/* SP */
@media screen and (max-width:767px) {
	/* ===== スピード対応 ===== */
	.hex-box.num01{
		margin-top: -19.2vw;
	}
	.hex-box.num-box.num01 .in-img{
		margin: 5.33vw 4.43vw 0 auto;
		width: 57.07vw;
		height: 65.87vw;
	}
	.hex-box.num-box.num01 .hexagon-text{
		justify-content: flex-start;
	}
	.hex-box.num-box.num01 .hexagon-text .en{
		top: 63.67vw;
		left: 46.13vw;
		transform: rotate(32deg);
	}
	.hex-box.num-box.num01 .text-wrap{
		margin: -2.67vw auto 0 9.33vw;
		padding: 0;
	}

	/* ===== 低価格 ===== */
	.hex-box.num02{
		margin-top: -19.2vw;
	}
	.hex-box.num-box.num02 .hexagon-text .en{
		top: 67.67vw;
		left: 44.13vw;
		transform: rotate(32deg);
	}
	.hex-box.num-box.num02 .text-wrap{
		padding: 13vw 0 0;
	}
	.hex-box.num-box.num02 .text-wrap .textarea{
		letter-spacing: 0;
	}

	/* ===== 高品質・高性能 ===== */
	.hex-box.num03{
		margin-top: -19.2vw;
	}
	.hex-box.num-box.num03 .hexagon-main img{
		transform: rotateY(180deg);
	}
	.hex-box.num-box.num03 .in-img{
		margin: 5.33vw 4.43vw 0 auto;
		width: 57.07vw;
		height: 65.87vw;
	}
	.hex-box.num-box.num03 .hexagon-text {
		justify-content: flex-start;
	}
	.hex-box.num-box.num03 .text-wrap{
		margin: -1.33vw auto 0 9.33vw;
		padding: 0;
		width: 49.53vw;
	}
	.hex-box.num-box.num03 .text-wrap .num{
		color: var(--black);
	}
	.hex-box.num-box.num03 .text-wrap h4,
	.hex-box.num-box.num03 .textarea{
		color: #fff;
	}
	.hex-box.num-box.num03 .hexagon-text .en{
		top: 63.67vw;
		left: 42.13vw;
		transform: rotate(32deg);
		color: #fff;
	}
	
	/* ===== 豊富な住宅プラン ===== */
	.hex-box.num04{
		margin-top: -19.2vw;
	}
	.hex-box.num-box.num04 .in-img{
		margin: 5.33vw 4.43vw 0 auto;
		width: 57.07vw;
		height: 65.87vw;
	}
	.hex-box.num-box.num04 .hexagon-text {
		justify-content: flex-start;
	}
	.hex-box.num-box.num04 .text-wrap{
		margin: -1.33vw auto 0 9.33vw;
		padding: 0;
	}
	.hex-box.num-box.num04 .text-wrap .num,
	.hex-box.num-box.num04 .text-wrap h4,
	.hex-box.num-box.num04 .textarea{
		color: #fff;
	}
	.hex-box.num-box.num04 .hexagon-text .en{
		top: 63.67vw;
		left: 42.13vw;
		transform: rotate(32deg);
		color: #fff;
	}
	
	/* ===== 多様なご要望に対応 ===== */
	.hex-box.num05{
		margin-top: -19.2vw;
	}
	.hex-box.num-box.num05 .text-wrap{
		padding: 12vw 0 0;
	}
	.hex-box.num-box.num05 .hexagon-text .en{
		top: 68.67vw;
		left: 40.13vw;
		transform: rotate(32deg);
	}

}



/*------------------------
商品コンセプト 変更
------------------------*/
#product .block.yoko a{
	background: #8A4255;
}
/* PC */
@media screen and (min-width:768px) {
	#product .block a{
		margin-bottom: 10px;
	}
	#product .block.yoko a{
		width: 798px;
		display: flex;
	}
	#product .block.yoko .image{
		width: 396px;
	}
	#product .block.yoko a::before, #product .block.yoko a::after{
		bottom: 0;
		right: -100%;
		left: auto;
	}
	#product .block.yoko a::after{
		background: #8A4255;
	}
	#product .block.yoko a::before{
		height: 100%;
		background: url(../../img/corporation/product_img04_on.jpg) no-repeat center / cover;
		width: 402px;
		transition: right .4s ease;
	}
	#product .block.yoko a:hover::before, #product .block.yoko a:hover::after{
		bottom: auto;
		right: 0;
	}
	#product .block.yoko .txt-wrap{
		width: 402px;
		height: auto;
	}
	#product .block.yoko .anime-arrow-scroll{
		transform: unset;
		transform: rotateY(-180deg);
		right: 60px;
	}
	#product .block.yoko .image .image-overlay{
		width: 396px;
		height: 100%;
		transform: translateX(20px);
	}
	#product .block.yoko a:hover .image .image-overlay{
		transform: translateX(0);
	}
	#product .block.yoko .image .image-overlay .overlay-text{
		padding: 90px 0 0;
	}
	
}

/* SP */
@media screen and (max-width:767px) {
	#initiatives .other-link li a{
		font-size: 4.6vw;
		letter-spacing: 0;
	}

}


/*------------------------

------------------------*/
/* PC */
@media screen and (min-width:768px) {
	
}

/* SP */
@media screen and (max-width:767px) {

}
