@charset "UTF-8";

/*===============*/
/* sect */
/*===============*/
.sect {
	overflow: hidden;
}

.sect>.wrap {
	margin: 0 auto;
	padding-bottom: 50px;
	max-width: 1000px;
	width: 90%;
}

@media (max-width:768px) {
	.sect>.wrap {
		padding-bottom: 2em;
	}
}

/*===============*/
/* sect_title */
/*===============*/
.sect_title h2 {
	position: relative;
	padding: .5em 0;
	text-align: center;
	line-height: 1.2;
}

.sect_title h2::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	width: 110vw;
	background-color: #000;
	content: "";
	transform: translateX(-50%);
}

.sect_title h2 span {
	position: relative;
	display: block;
	padding-left: .05em;
	color: #FFF;
	letter-spacing: .05em;
	font-size: 240%;
}

.sect_title h3 {
	margin-top: 100px;
	text-align: center;
	line-height: 1.4;
}

.sect_title h3 span {
	display: inline-block;
	padding-left: .1em;
	letter-spacing: .1em;
	font-size: 180%;
}

.sect_title h3+p {
	margin-top: 50px;
	text-align: center;
	line-height: 2.4;
}

.sect_title h3+p span {
	display: inline-block;
	padding-left: .15em;
	letter-spacing: .15em;
	font-size: 120%;
}

@media (max-width:768px) {
	.sect_title h2 span {
		font-size: 130%;
	}

	.sect_title h3 {
		margin-top: 4em;
	}

	.sect_title h3 span {
		padding-left: 0;
		letter-spacing: 0;
		font-size: 125%;
	}

	.sect_title h3+p {
		margin-top: 2em;
		line-height: 2;
	}

	.sect_title h3+p span {
		padding-left: .1em;
		letter-spacing: .1em;
		font-size: 100%;
	}
}

/*===============*/
/* sect */
/*===============*/
.sect {
	overflow: hidden;
}

.sect .box {
	overflow: hidden;
	margin-top: 100px;
	padding: 50px 0;
}

.sect .box h4,
.sect .box ul,
.sect .box p {
	margin: 0 auto;
	max-width: 750px;
	width: 90%;
}

.sect .box h4 {
	margin-bottom: 2em;
	text-align: center;
	line-height: 1.2;
}

.sect .box h4 span {
	color: #FFF;
	font-size: 180%;
}

.sect .box ul {
	display: flex;
	display: -webkit-flex;
	display: -ms-flexbox;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.sect .box ul li {
	position: relative;
	overflow: hidden;
	max-width: 238px;
	width: calc(33.3333% - 10px);
}

.sect .box ul li:nth-child(n+4) {
	margin-top: 20px;
}

.sect .box p {
	margin-top: 20px;
	color: #FFF;
}

@media (max-width:768px) {
	.sect .box {
		margin-top: 4em;
		padding: 1.5em 0;
	}

	.sect .box h4,
	.sect .box ul,
	.sect .box p {
		width: 92%;
	}

	.sect .box h4 {
		margin-bottom: 1em;
	}

	.sect .box h4 span {
		font-size: 130%;
	}

	.sect .box ul li {
		width: calc(33.3333% - .4em);
	}

	.sect .box ul li:nth-child(n+4) {
		margin-top: .6em;
	}

	.sect .box p {
		margin-top: 1em;
	}
}

@media (max-width:540px) {
	.sect .box ul li {
		width: calc(50% - .3em);
	}

	.sect .box ul li:nth-child(n+3),
	.sect .box ul li:nth-child(n+4) {
		margin-top: .6em;
	}
}

/*===============*/
/* planting */
/*===============*/
.planting>.wrap {
	padding-bottom: 150px;
}

.planting .box {
	background-color: #9BAE4D;
}

@media (max-width:768px) {
	.planting>.wrap {
		padding-bottom: 5em;
	}
}

/*===============*/
/* lighting_design */
/*===============*/
.lighting_design>.wrap {
	padding-bottom: 150px;
}

.lighting_design .box {
	background-color: #9FA0A0;
}

@media (max-width:768px) {
	.lighting_design>.wrap {
		padding-bottom: 5em;
	}
}

@media (max-width:540px) {
	.lighting_design .box ul li:nth-child(1) {
		max-width: none;
		width: 100%;
	}

	.lighting_design .box ul li:nth-child(1) img {
		margin: -2em 0 -1em;
	}


	.lighting_design .box ul li:nth-child(n+2),
	.lighting_design .box ul li:nth-child(n+4) {
		margin-top: .6em;
	}
}

/*===============*/
/* grand_planning */
/*===============*/
.grand_planning .title {
	margin: 0 auto;
	max-width: 700px;
}

.grand_planning .title h3>* {
	display: block;
	text-align: center;
	white-space: nowrap;
}

.grand_planning .title h3 strong {
	color: #006934;
	font-size: 550%;
	line-height: 1.2;
}

.grand_planning .title h3 strong em {
	display: inline-block;
}

.grand_planning .title h3 strong em i {
	margin: 0 .1em;
}

.grand_planning .title h3 strong em:nth-child(2) {
	margin-right: .12em;
	letter-spacing: -.05em;
	font-size: 160%;
	transform: translateY(.04em);
}

.grand_planning .title h3 strong em:nth-child(3) {
	font-size: 70%;
}

.grand_planning .title h3 span {
	font-size: 200%;
	line-height: 1.2;
}

.grand_planning .title h4 {
	margin-top: 50px;
	padding: .5em 2em;
	background-color: #006934;
	color: #FFF;
	text-align: center;
	line-height: 1.2;
}

.grand_planning .title h4 span {
	display: inline-block;
	font-size: 200%;
}

.grand_planning figure {
	padding-top: 100px;
}

.grand_planning figure h5 {
	text-align: center;
	line-height: 1.2;
}

.grand_planning figure h5>* {
	display: block;
}

.grand_planning figure h5 b {
	font-size: 200%;
}

.grand_planning figure h5 span {
	margin-top: .5em;
	font-size: 120%;
}

.grand_planning figure {
	position: relative;
}

.grand_planning figure>div {
	margin-top: 2em;
}

.grand_planning figure figcaption {
	position: absolute;
	bottom: 0em;
	width: 75%;
}

.grand_planning figure figcaption p:first-child {
	font-size: 80%;
	line-height: 2.2;
}

.grand_planning figure figcaption p:first-child span {
	position: relative;
	display: inline-block;
	margin-right: 1.2em;
	padding-top: .1em;
	padding-left: 2.5em;
	white-space: nowrap;
}

.grand_planning figure figcaption p:first-child span::before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 2em;
	height: 1.4em;
	border: 1px solid #DDD;
	content: "";
	transform: translateY(-50%);
}

.grand_planning figure figcaption p:first-child span:nth-child(1):before {
	background-color: #93A3D3;
}

.grand_planning figure figcaption p:first-child span:nth-child(2):before {
	background-color: #E0C5C4;
}

.grand_planning figure figcaption p:first-child span:nth-child(3):before {
	background-color: #6DA779;
}

.grand_planning figure figcaption p:first-child span:nth-child(4):before {
	background-color: #EB9588;
}

.grand_planning figure figcaption p:first-child span:nth-child(5):before {
	background-color: #8FD3F5;
}

.grand_planning figure figcaption p:first-child span:nth-child(6) {
	display: none;
}

.grand_planning figure figcaption p:first-child span:nth-child(6):before {
	background-color: #F7F3E5;
}

.grand_planning figure figcaption p:first-child span:nth-child(7):before {
	max-height: 16px;
	border-color: transparent;
	background: url(../img/grand_planning_figure_icon.png) center center no-repeat transparent;
	background-size: contain;
}

.grand_planning figure figcaption p:last-child {
	margin-top: .5em;
}

.zoom .zoom_bt {
	display: none;
}

@media (max-width:768px) {
	.grand_planning .title h3 strong {
		font-size: 10vw;
	}

	.grand_planning .title h3 span {
		font-size: 4vw;
	}

	.grand_planning .title h4 {
		margin-top: 2em;
	}

	.grand_planning .title h4 span {
		font-size: 150%;
	}

	.grand_planning figure h5 b {
		font-size: 140%;
	}

	.grand_planning figure h5 span {
		font-size: 100%;
	}

	.grand_planning figure {
		padding-top: 2em;
	}

	.grand_planning figure>div {
		margin-top: 1em;
	}

	.grand_planning figure figcaption {
		position: relative;
		bottom: auto;
		margin-top: .5em;
		width: 100%;
	}

	.grand_planning figure figcaption p:first-child {
		font-size: 70%;
	}
}

@media (max-width:540px) {
	.zoom.on .zoom_map {
		overflow: scroll;
		height: 24em;
		border: 1px solid #DDD;
	}

	.zoom.on .zoom_map>span {
		display: block;
		overflow: hidden;
		width: 220%;
	}

	.zoom.on .zoom_map>span img {
		display: block;
		margin: -1% -1% -4% 2%;
	}

	.zoom .zoom_bt {
		display: flex;
		display: -webkit-flex;
		display: -ms-flexbox;
		overflow: hidden;
		margin: 1em auto 1.5em;
		width: 70%;
		border-radius: .4em;
		background-color: #CCC;
		cursor: pointer;
	}

	.zoom .zoom_bt::before {
		position: absolute;
		left: 0;
		width: 50%;
		height: 100%;
		background-color: #BE9361;
		content: "";
		transition: left .2s;
	}

	.zoom.on .zoom_bt::before {
		left: 50%;
	}

	.zoom .zoom_bt>div {
		position: relative;
		z-index: 10;
		padding: .5em 1em;
		width: 50%;
		color: #FFF;
		text-align: center;
		font-size: 80%;
		line-height: 1.8;
	}

	.zoom .zoom_bt>div:first-child::before {
		content: "全体表示";
	}

	.zoom .zoom_bt>div:last-child::before {
		content: "拡大表示";
	}

	.grand_planning .title h3 span {
		font-size: 4.5vw;
	}
}

.grand_planning .zoom_list_title {
	padding-top: 100px;
}

.grand_planning .zoom_list_title h3>* {
	display: block;
}

.grand_planning .zoom_list_title h3>strong {
	padding: .4em 1.5em .4em 1.55em;
	background-color: #004477;
	color: #FFF;
	text-align: center;
	letter-spacing: .05em;
	font-size: 200%;
	line-height: 1.2;
}

.grand_planning .zoom_list_title h3>strong>span {
	display: inline-block;
}

.grand_planning .zoom_list_title h3>span {
	margin-top: 50px;
	padding: .4em 1em .4em 1.2em;
	border: 1px solid rgba(0, 0, 0, .5);
	text-align: center;
	letter-spacing: .2em;
	font-size: 140%;
	line-height: 1.2;
}

.grand_planning ul {
	display: flex;
	display: -webkit-flex;
	display: -ms-flexbox;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-top: 30px;
}

.grand_planning ul li::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	border: 1px solid #CCC;
	content: "";
}

@media (min-width:981px) {
	.grand_planning ul li {
		margin-left: .8em;
		width: calc(25% - .6em);
	}

	.grand_planning ul li:nth-child(4n-3) {
		margin-left: 0;
	}

	.grand_planning ul li:nth-child(n+5) {
		margin-top: .8em;
	}
}

@media (max-width:980px) and (min-width:769px) {
	.grand_planning ul li {
		margin-left: .9em;
		width: calc(33.3333% - .6em);
	}

	.grand_planning ul li:nth-child(3n-2) {
		margin-left: 0;
	}

	.grand_planning ul li:nth-child(n+4) {
		margin-top: .8em;
	}

	.grand_planning .zoom_list_title h3>strong {
		font-size: 160%;
	}

	.grand_planning .zoom_list_title h3>span {
		margin-top: 2em;
		font-size: 120%;
	}
}

@media (max-width:768px) {
	.grand_planning ul li {
		margin-left: .6em;
		width: calc(50% - .3em);
	}

	.grand_planning ul li:nth-child(2n-1) {
		margin-left: 0;
	}

	.grand_planning ul li:nth-child(n+3) {
		margin-top: .6em;
	}

	.grand_planning .zoom_list_title {
		padding-top: 4em;
	}

	.grand_planning .zoom_list_title {
		padding-top: 4em;
	}

	.grand_planning .zoom_list_title h3>strong {
		font-size: 130%;
	}

	.grand_planning .zoom_list_title h3>span {
		margin-top: 2em;
		font-size: 110%;
	}
}

.grand_planning ul li p {
	white-space: nowrap;
}

.grand_planning ul li p:first-child {
	position: relative;
	padding: .4em 1em;
	font-size: 110%;
	line-height: 1.2;
}

.grand_planning ul li p:first-child>* {
	position: relative;
	display: inline-block;
	vertical-align: middle;
}

.grand_planning ul li p:first-child i {
	margin-right: .4em;
	padding-top: .05em;
	width: 1.5em;
	background-color: #FFF;
	text-align: center;
	font-size: 90%;
	line-height: 1.4;
	transform: translateY(-.05em);
}

.grand_planning ul li em {
	color: #FFF;
	font-size: 100%;
}

.grand_planning ul li.thn p:first-child {
	background-color: #93A3D3;
}

.grand_planning ul li.thn em::before {
	content: "トヨタホーム名古屋区画";
}

.grand_planning ul li.tha p:first-child {
	background-color: #E0C5C4;
}

.grand_planning ul li.tha em::before {
	content: "トヨタホーム愛知区画";
}

.grand_planning ul li.smt p:first-child {
	background-color: #6DA779;
}

.grand_planning ul li.smt em::before {
	content: "住友林業区画";
}

.grand_planning ul li.mti p:first-child {
	background-color: #EB9588;
}

.grand_planning ul li.mti em::before {
	content: "三井ホーム区画";
}

.grand_planning ul li.msw p:first-child {
	background-color: #8FD3F5;
}

.grand_planning ul li.msw em::before {
	content: "ミサワホーム区画";
}

.grand_planning ul li.sumi p:first-child {
	background-color: #C2C3C3;
}

.grand_planning ul li p:first-child {
	text-align: center;
}

.grand_planning ul li.c p:first-child {
	text-align: left;
}

.grand_planning ul li em::before {
	color: #000 !important;
	content: "号地" !important;
}

.grand_planning ul li.msw.c em::before {
	color: #FFF !important;
	content: "ミサワホーム区画" !important;
}

.grand_planning ul li.mti.c em::before {
	color: #FFF !important;
	content: "三井ホーム区画" !important;
}

.grand_planning ul li p:first-child {
	background-color: #F8B62A !important;
}

.grand_planning ul li.msw.c p:first-child {
	background-color: #8ED2F6 !important;
}

.grand_planning ul li.mti.c p:first-child {
	background-color: #EB9589 !important;
}

.grand_planning ul li p:last-child {
	padding: .6em 1em .8em;
	text-align: center;
	line-height: 1.1;
}

.grand_planning ul li p:last-child span {
	display: block;
}

.grand_planning ul li p:last-child>* {
	display: inline-block;
}

.grand_planning ul li p:last-child b {
	display: inline-block;
	font-size: 170%;
	transform: translateY(.06em);
}

.grand_planning ul li p:last-child i {
	font-size: 85%;
}

.grand_planning ul li.sumi::before {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 10;
	max-width: 50px;
	max-height: 50px;
	width: 3.6em;
	height: 3.6em;
	background: url(../img/zoom_list_title_icon.png) center center no-repeat;
	background-size: contain;
	content: "";
	transform: translate(-50%, -50%);
}

@media (max-width:768px) {
	.grand_planning ul {
		margin-top: 2em;
	}

	.grand_planning ul li p:first-child {
		font-size: 95%;
	}

	.grand_planning ul li p:first-child i {
		font-size: 95%;
	}

	.grand_planning ul li p:last-child b {
		font-size: 170%;
	}

	.grand_planning ul li p:last-child i {
		font-size: 85%;
	}
}

@media (max-width: 480px) {
	.grand_planning ul li p:first-child {
		padding: .6em .8em;
		font-size: 85%;
	}

	.grand_planning ul li p:first-child i {
		font-size: 85%;
	}

	.grand_planning ul li p:last-child b {
		font-size: 160%;
	}

	.grand_planning ul li p:last-child i {
		font-size: 80%;
	}
}

/*===============*/
/* note */
/*===============*/
.note>* {
	margin: 0 auto 50px;
}

@media (max-width:768px) {
	.note>* {
		margin: 0 auto 2em;
	}
}
