@charset "utf-8";


#kv .kvCnt {
	top: 50%;
}
#kv .kvCnt h2{
	position: relative;
	font-size: 3.8rem;
	line-height: 1.65789474;
	letter-spacing: .15em;
	color: #fff;
	text-align: center;
    padding-bottom: 3.3rem;
    margin-bottom: 3.8rem;
}
#kv .kvCnt h2:before{
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 100px;
	height: 1px;
	background-color: #fff;
}
#kv .kvCnt .kvDesc {
	font-size: max(1.6rem,10px);
	line-height: 2.125em;
	letter-spacing: .1em;
	color: #fff;
	text-align: center;
}
@media screen and (max-width: 768px){
    #kv {
        height: 500px;
    }
	#kv .kvCnt h2{
		font-size: 2.4rem;
		line-height: 1.54166667;
        padding-bottom: 1.4rem;
        margin-bottom: 1.3rem;
	}
	#kv .kvCnt h2:before{
		width: 5.0rem;
	}
	#kv .kvCnt .kvDesc {
		font-size: 1.4rem;
		line-height: 2;
	}
}



/*  l-lifestyle
--------------------------------------------------*/
.l-lifestyle {
	padding-block: 14.0rem 15.0rem;
}
.lifestyle-ttl {
	font-size: 9.0rem;
	letter-spacing: .12em;
	color: #beb396;
	line-height: 1;
	text-align: center;
	margin-bottom: 14.0rem;
}
.lifestyle-contents {
	width: min(100%,1500px);
	margin-inline: auto;
	overflow: clip;
}
.lifestyle-inner {
	position: relative;
	width: calc(1400 / 1500 * 100%);
	margin-inline: 0 auto;
	flex-direction: row-reverse;
	z-index: 1;
}
.lifestyle-inner + .lifestyle-inner {
	margin-top: 25.0rem;
}
.lifestyle-inner:nth-of-type(even) {
	margin-inline: auto 0;
	flex-direction: row;
}
.lifestyle-num {
	padding-top: calc(125 / 1400 * 100%);
	width: calc(400 / 1400 * 100%);
	font-size: 13.9rem;
	letter-spacing: 0;
	line-height: 1;
	color: #e0e0e0;
	text-align: center;
}
.lifestyle-inner:nth-of-type(even) .lifestyle-num {
	color: #d8d2c0;
}
.lifestyle-num span {
	display: block;
	font-size: 5.0rem;
	letter-spacing: .12em;
	line-height: 1;
    margin-bottom: 1.3rem;
}
.lifestyle-photo {
	width: calc(1000 / 1400 * 100%);
}
.lifestyle-detail {
	position: relative;
	width: calc(970 / 1400 * 100%);
	margin-top: calc(-210 / 1400 * 100%);
	margin-inline: auto 0;
	z-index: 1;
}
.lifestyle-inner:nth-of-type(even) .lifestyle-detail {
	margin-inline: 0 auto;
}
.lifestyle-detail__box {
	width: calc(600 / 970 * 100%);
	padding: calc(45 / 970 * 100%) calc(60 / 970 * 100%) calc(50 / 970 * 100%);
	background-color: rgba(248, 248, 248, .95);
	margin-inline: auto 0;
}
.lifestyle-inner:nth-of-type(even) .lifestyle-detail__box {
	background-color: rgba(242, 240, 234, .95);
	margin-inline: 0 auto;
}
.lifestyle-detail__heading {
    position: relative;
    font-size: 2.8rem;
    line-height: 2;
    letter-spacing: 0;
    color: #7e682d;
    padding-bottom: 2rem;
    margin-bottom: 2.6rem;
}
.lifestyle-detail__heading:after {
	content: '';
	position: absolute;
	inset: auto 0 0 auto;
	width: calc(600 / 480 * 100%);
	height: 1px;
	background-color: #beb396;
}
.lifestyle-inner:nth-of-type(even) .lifestyle-detail__heading:after {
	inset: auto auto 0 0;
}
.lifestyle-detail__desc {
	font-size: 1.8rem;
	line-height: 2.11111111;
	letter-spacing: .05em;
}
.lifestyle-detail__photo {
	width: calc(320 / 970 * 100%);
	margin-top: calc(-50 / 970 * 100%);
	margin-inline: 0 auto;
}
.lifestyle-inner:nth-of-type(even) .lifestyle-detail__photo {
	margin-inline: auto 0;
}
@media screen and (min-width: 769px){
	.lifestyle-inner:nth-of-type(4),
	.lifestyle-inner:nth-of-type(5) {
		margin-top: 20.0rem;
	}
	.lifestyle-inner:nth-of-type(3) .lifestyle-detail {
		margin-top: calc(-170 / 1400 * 100%);
	}
	.lifestyle-inner:nth-of-type(4) .lifestyle-detail {
		margin-top: calc(-170 / 1400 * 100%);
	}
	.lifestyle-inner:nth-of-type(5) .lifestyle-detail {
		margin-top: calc(-170 / 1400 * 100%);
	}
	.lifestyle-inner:nth-of-type(3) .lifestyle-detail__photo {
		margin-top: calc(-50 / 970 * 100%);
	}
	.lifestyle-inner:nth-of-type(4) .lifestyle-detail__photo {
		margin-top: calc(-90 / 970 * 100%);
	}
}	
@media screen and (max-width: 768px){
	.l-lifestyle {
		padding-block: 6.0rem 7.0rem;
	}
	.lifestyle-ttl {
		font-size: 4.5rem;
		margin-bottom: 5.0rem;
	}
	.lifestyle-contents {
		width: min(100%,560px);
	}
	.lifestyle-inner {
		width: calc(320 / 380 * 100%);
		margin-inline: auto;
		padding-block: 2.5rem 3.5rem;
	}
	.lifestyle-inner + .lifestyle-inner {
		margin-top: 5.0rem;
	}
	.lifestyle-inner:nth-of-type(even) {
		margin-inline: auto;
	}
	.lifestyle-inner:before {
		content: '';
		position: absolute;
		inset: 0 auto auto 0;
		margin-inline: calc(-30 / 320 * 100%) 0;
		width: 100%;
		height: 100%;
		background-color: rgba(248, 248, 248, 1);
		z-index: -1;
	}
	.lifestyle-inner:nth-of-type(even):before {
		inset: 0 0 auto auto;
		margin-inline: 0 calc(-30 / 320 * 100%);
		background-color: rgba(242, 240, 234, 1);
	}
	.lifestyle-num {
		padding-top: 0;
		width: 100%;
		font-size: 7.0rem;
		display: flex;
		justify-content: flex-end;
		align-items: center;
		gap: 1.0rem 1.5rem;
		margin-bottom: 1.0rem;
	}
	.lifestyle-inner:nth-of-type(even) .lifestyle-num {
		justify-content: flex-start;
	}
	.lifestyle-num span {
		display: inline-block;
		font-size: 2.0rem;
	    margin-bottom: 0;
	}
	.lifestyle-photo {
		width: 100%;
		margin-bottom: 2.0rem;
	}
	.lifestyle-detail {
		width: 100%;
		margin-top: 0;
	}
	.lifestyle-detail__box {
		width: 100%;
		padding: 0;
		background-color: transparent;
	}
	.lifestyle-inner:nth-of-type(even) .lifestyle-detail__box {
		background-color: transparent;
	}
	.lifestyle-detail__heading {
	    font-size: 2.0rem;
	    padding-bottom: 2.0rem;
	    margin-bottom: 2.0rem;
	}
	.lifestyle-detail__heading:after {
		width: 100%;
		background-color: #d8d2c0;
	}
	.lifestyle-inner:nth-of-type(even) .lifestyle-detail__heading:after {
		background-color: #d8d2c0;
	}
	.lifestyle-detail__desc {
		font-size: 1.4rem;
		line-height: 2.28571429;
	}
	.lifestyle-detail__photo {
		width: calc(280 / 320 * 100%);
		margin-top: 3.0rem;
		margin-inline: auto;
	}
	.lifestyle-inner:nth-of-type(even) .lifestyle-detail__photo {
		margin-inline: auto;
	}
}




/*  l-pickup
--------------------------------------------------*/
.l-pickup {
	position: relative;
}
.pickup-contents {
	padding-block: 14.0rem 15.0rem;
	background-color: #f2f0ea;
}
.pickup-ttl {
	font-size: 9.0rem;
	letter-spacing: .12em;
	color: #beb396;
	line-height: 1;
	text-align: center;
	margin-bottom: 14.0rem;
}

/* スペック */
.planDetail{
	position: relative;
}
.planDetail .typeInfo{
	margin-right: 3rem;
}
.planDetail .typeBox{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	background-color: #beb396;
	padding: 1rem 0 1rem;
	margin-right: 4rem;
	width: 12rem;
}
.planDetail .typeBox h2{
	font-size: 2.7rem;
	line-height: 1;
	color: #fff;
	letter-spacing: 0;
	text-align: center;
}
.planDetail .typeBox h2 i{
	display: block;
	font-size: 7.2rem;
	line-height: 1;
}
.planDetail .typeBox .typeBox-type{
	background: #fff;
	font-size: 1.3rem;
	line-height: 1;
	letter-spacing: .1em;
	color: #886301;
	width: 90%;
	text-align: center;
	padding: .5rem 0 .5rem;
	margin-top: .6rem;
}
.planDetail .layoutBox{
	position: relative;
	font-size: 1.44rem;
}
.planDetail .layoutBox.active{
	display: flex;
	align-items: flex-start;
	justify-content: center;
	flex-wrap: wrap;
	flex-direction: column;
}

/* == ↓　LDKが2つ以上 = ai-st  == */
.planDetail .typeInfo.ai-st .layoutBox{
	font-size: 1rem;
	margin-bottom: -.5rem;
}
/* == ↑　LDKが2つ以上 = ai-st  == */

.planDetail .layoutBox p{
	position: relative;
	color: #666;
	font-weight: 500;
	line-height: 1;
	font-family: 'Roboto Condensed', sans-serif;
	width: 100%;
}
.planDetail .layoutBox p + p{
	margin-top: 11px;
	padding-top: 15px;
}
.planDetail .layoutBox p + p:before{
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 1px;
	background-image: linear-gradient(to right, #b8b8b8, #b8b8b8 2px, transparent 2px, transparent 4px);
	background-size: 4px 1px;
	background-repeat: repeat-x;
}
.planDetail .layoutBox .ldk{
	display: inline-block;
	font-size: 5em;
	line-height: 1;
	letter-spacing: 0.05em;
	margin-right: 1rem;
}
.planDetail .layoutBox .sub{
	display: inline-block;
}
.planDetail .layoutBox .tips{
	font-size: 2.7em;
	line-height: 1;
	letter-spacing: .05em;
}
.planDetail .layoutBox .tips i{
	font-size: 0.666666666666667em;
	line-height: 1;
	font-weight: 500;
	font-family: 'YakuHanJP','Noto Sans JP',sans-serif;
}
.planDetail .layoutBox .floor{
	font-size: 1.8em;
	line-height: 1;
	letter-spacing: .05em;
	font-family: 'YakuHanJP','Noto Sans JP',sans-serif;
}
.planDetail .layoutBox .floor i{
	font-size: 1.166666666666667em;
	line-height: 1;
	font-family: 'Roboto Condensed', sans-serif;
}
.planDetail .specBox{
	position: relative;
	text-align: right;
	margin-top: -0.5rem;
}
.planDetail .specBox .spec{}
.planDetail .specBox .spec .ttl{
	display: inline-block;
	font-size: 2rem;
	line-height: 1;
	letter-spacing: .1em;
	margin-right: 1rem;
	vertical-align: .1em;
}
.planDetail .specBox .spec .area{
	display: inline-block;
	font-size: 5rem;
	line-height: 1;
	letter-spacing: 0;
	color: #beb396;
	font-family: 'Roboto Condensed', sans-serif;
}
.planDetail .specBox .spec .area em{
	font-size: 1.44em;
	line-height: 1;
}
.planDetail .specBox .spec .area i{
	font-size: 0.68em;
	line-height: 1;
	font-family: 'YakuHanMP','Noto Serif JP',serif;
}
.planDetail .specBox .spec .area span{
	font-size: 0.4em;
	line-height: 1;
	letter-spacing: .1em;
	color: #333;
	font-family: 'YakuHanMP','Noto Serif JP',serif;
}
.planDetail .specBox .other{
	margin-top: .5rem;
}
.planDetail .specBox .other p{
	line-height: 1;
	color: #666;
}
.planDetail .specBox .other p + p{
	margin-top: 1rem;
}
.planDetail .specBox .other .ttl{
	font-size: 1.4rem;
	line-height: 1;
	margin-right: .7rem;
}
.planDetail .specBox .other .area{
	font-size: 1.8rem;
	line-height: 1;
}
.planDetail .specBox .other .area i{
	font-size: 0.777777777777778em;
	line-height: 1;
}


.pickup-floor {
	position: relative;
	margin-top: 5.0rem;
	padding-block: 7.5rem;
	background-color: #fff;
}
.pickup-floor__madori {
	width: calc(454 / 1200 * 100%);
	margin-inline: auto;
}
.pickup-floor__list {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.pickup-floor__list__item {
	position: absolute;
	left: 0;
	top: 0;
}
.pickup-floor__list__item[data-num="item1"] {
	width: calc(355 / 1200 * 100%);
	margin-top: calc(124 / 1200 * 100%);
	margin-left: calc(78 / 1200 * 100%);
}
.pickup-floor__list__item[data-num="item2"] {
	width: calc(388 / 1200 * 100%);
	margin-top: calc(546 / 1200 * 100%);
	margin-left: calc(80 / 1200 * 100%);
}
.pickup-floor__list__item[data-num="item3"] {
	width: calc(388 / 1200 * 100%);
	margin-top: calc(125 / 1200 * 100%);
	margin-left: calc(732 / 1200 * 100%);
}
.pickup-floor__list__item[data-num="item4"] {
	width: calc(476 / 1200 * 100%);
	margin-top: calc(543 / 1200 * 100%);
	margin-left: calc(644 / 1200 * 100%);
}

.pickup-other {
	position: relative;
	width: 100%;
	padding-block: 9.5rem 20.0rem;
	background-color: #fff;
	z-index: 1;
}
.pickup-other:before {
	content: '';
	position: absolute;
	inset: 0 0 auto;
	margin-inline: auto;
	width: 1px;
	height: 80px;
	transform: translateY(-50%);
	background-color: #beb396;
	z-index: 1;
}
.pickup-other__heading {
	font-size: 2.4rem;
	line-height: 1.66666667;
	letter-spacing: .1em;
	color: #7e682d;
	text-align: center;
	margin-bottom: 7.0rem;
}
.pickup-other__list {
	max-width: 1260px;
	gap: 6.0rem;
}
.pickup-other__list__item {
	width: calc((100% - 12.0rem) / 3);
}
@media screen and (max-width: 768px){
	.pickup-contents {
		padding-block: 6.0rem 7.0rem;
	}
	.pickup-ttl {
		font-size: 4.5rem;
		margin-bottom: 5.0rem;
	}


	/* スペック */
	.planDetail .typeInfo{
		width: 100%;
		margin-right: 0;
	}
	.planDetail .typeBox{
		margin-right: calc(18 / 340 * 100%);
		width: calc(80 / 340 * 100%);
		padding: 0.7rem 0 0.8rem;
	}
	.planDetail .typeBox h2{
		font-size: 1.8rem;
	}
	.planDetail .typeBox h2 i{
		font-size: 4.8rem;
	}
	.planDetail .typeBox .typeBox-type{
		font-size: 1rem;
	}
	.planDetail .layoutBox{
		font-size: 1.22rem;
		width: calc(240 / 340 * 100%);
	}

	/* == ↓　LDKが2つ以上 = ai-st  == */
	.planDetail .typeInfo.ai-st .layoutBox{
		font-size: 1rem;
		margin-bottom: 0;
	}
	/* == ↑　LDKが2つ以上 = ai-st  == */

	.planDetail .layoutBox p{
		display: flex;
		justify-content: flex-start;
		align-items: flex-end;
		flex-wrap: wrap;
	}
	.planDetail .layoutBox p + p{
		margin-top: .8rem;
		padding-top: .8rem;
	}
	.planDetail .layoutBox .ldk{
		font-size: 3.6em;
		margin-right: 0;
		width: calc(108 / 240 * 100%);
	}
	.planDetail .layoutBox .sub{
		position: relative;
		width: calc(132 / 240 * 100%);
		margin-bottom: .3em;
	}
	.planDetail .layoutBox .tips{
		font-size: 1.6em;
		line-height: 1.066666666666667;
	}
	.planDetail .layoutBox .floor{
		font-size: 1.1em;
	}

	/* == ↓　LDKが2つ以上 = ai-st  == */
	.planDetail .typeInfo.ai-st .layoutBox .ldk{
		width: calc(88 / 240 * 100%);
	}
	.planDetail .typeInfo.ai-st .layoutBox .sub{
		width: calc(150 / 240 * 100%);
	}
	/* == ↑　LDKが2つ以上 = ai-st  == */

	.planDetail .specBox{
		width: 100%;
		text-align: left;
		margin-top: 2rem;
	}
	.planDetail .specBox .spec .ttl{
		font-size: 1.4rem;
	}
	.planDetail .specBox .spec .area{
		font-size: 3.2rem;
	}
	.planDetail .specBox .other .ttl{
		font-size: 1.2rem;
	}
	.planDetail .specBox .other .area{
		font-size: 1.6rem;
	}
	.planDetail .specBox .other .area i{
	}

	.pickup-floor {
		margin-top: 3.0rem;
		padding-block: 3.0rem 3.5rem;
	}
	.pickup-floor__madori {
		width: calc(300 / 340 * 100%);
		margin-bottom: 3.0rem;
	}
	.pickup-floor__list {
		position: relative;
		width: calc(270 / 340 * 100%);
		margin-inline: auto;
	}
	.pickup-floor__list__item {
		position: relative;
		width: 100% !important;
		margin: 0 !important;
	}
	.pickup-floor__list__item + .pickup-floor__list__item {
		margin-top: 2.5rem !important;
	}

	.pickup-other {
		padding-block: 4.5rem 6.0rem;
	}
	.pickup-other:before {
		height: 5.0rem;
	}
	.pickup-other__heading {
		margin-bottom: 4.0rem;
	}
	.pickup-other__list {
		max-width: 560px;
		gap: 0;
	}
	.pickup-other__list__item {
		width: 100%;
	}
    .pickup-other__list__item + .pickup-other__list__item {
        margin-top: calc(30 / 340 * 100%);
    }
}




/*  l-gallery
--------------------------------------------------*/
.l-gallery {
	position: relative;
	padding-block: 15.0rem;
}
.gallery-slide {
	width: 100%;
}
.gallery-slide + .gallery-slide {
	margin-top: 15.0rem;
}
.gallery-slide__box {
	width: 100%;
}
.gallery-slide__item {
	position: relative;
}
.gallery-slide__photo {
	width: 100%;
}
.gallery-slide__desc {
	position: absolute;
	left: 4.5rem;
	bottom: 4.5rem;
	font-size: 8.0rem;
	line-height: 1;
	letter-spacing: .12em;
	color: rgba(255, 255, 255, .8);
	z-index: 1;
}
:root .gallery-slide .swiper-pagination{
	position: relative;
	left: auto;
	right: auto;
	top: auto;
	bottom: auto;
	width: auto;
	border-radius: 0;
	line-height: 1;
	display: flex;
	justify-content: center;
	margin: 30px auto 0;
	gap: 20px;
	z-index: 1;
}
:root .gallery-slide .swiper-pagination-bullet {
	width: 12px;
	height: 12px;
	margin: 0;
	top: auto;
	position: relative;
	display: block;
	border-radius: 50%;
	background: #e5e1d5;
	opacity: 1;
}
:root .gallery-slide .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background: #a5956c;
}
@media screen and (max-width: 768px){
	.l-gallery {
		padding-block: 5.0rem;
	}
	.gallery-slide + .gallery-slide {
		margin-top: 3.5rem;
	}
	.gallery-slide__photo {
		width: 100%;
		aspect-ratio: 380 / 230;
		overflow: clip;
	}
	.gallery-slide__photo img {
		object-fit: cover;
		object-position: center center;
		width: 100%;
		height: 100%;
	}
	.gallery-slide__desc {
		font-size: 2.4rem;
		left: 1.5rem;
		bottom: 1.5rem;
	}
	:root .gallery-slide .swiper-pagination{
		margin: 15px auto 0;
		gap: 15px;
	}
}