@charset "utf-8";

/* =======================================================================================
	COMMON
======================================================================================= */
/* ------------------------------------------------------------------------
ancNavWrap
------------------------------------------------------------------------ */
	.roomplanP .ancNavWrap .ancNav ul {
		width: 90%;
		max-width: 600px;
	}
@media screen and (max-width: 736px) { /*{SP}*/
  .ancNav .txt {
    --M-fluidFontSize-max-fontsize: 13;
    --M-fluidFontSize-min-fontsize: 11;
    --M-fluidFontSize-max-viewport: 735;
    --M-fluidFontSize-min-viewport: 480;
  }
 }






/* =======================================================================================
	PAGE 
======================================================================================= */
	.wrapper { 
		overflow: inherit;
	}


/* townPlanningWrap
-------------------------------------------------------------*/
	.landscapeSection .townPlanningWrap .townPlanningBox .ttl {
		font-size:1.1em;
		margin-top:1em;
		line-height: 1.6;
	}

	.landscapeSection .townPlanningWrap .townPlanningBox .txt {
		font-size:0.95em;
		margin-top:0.8em;
		line-height: 1.6;
	}

/* ------------------------------------------------------------------------
roomPlanSection
------------------------------------------------------------------------ */
/* buildingWrap
-------------------------------------------------------------*/
	.roomPlanSection .buildingWrap {
		padding:clamp(60px, (60 / 1200 * 100vw), 80px) clamp(60px, (60 / 1200 * 100vw), 80px);
		background: #fff;
	}
	.roomPlanSection .buildingWrap .buildingBox {
		display: flex;
		justify-content: space-between;
	}
	.roomPlanSection .buildingWrap .buildingBox .buildingUnit {
		width: 47.61%;
	}
	.roomPlanSection .buildingWrap .buildingBox .buildingUnit .txtUnit dl .name {
		padding:0.2em;
		text-align: center;
		background: #d4d4d4;
	}
	.roomPlanSection .buildingWrap .buildingBox .buildingUnit .txtUnit dl .ttl {
		margin:1em 0.2em;
		text-align: center;
	}
	.roomPlanSection .buildingWrap .buildingBox .buildingUnit .txtUnit dl .txt {
		margin-bottom:1.5em;
		padding:1em 0.2em;
		text-align: center;
		border:0 solid #555;
		border-width:1px 0;
	}
	.roomPlanSection .buildingWrap .buildingBox .buildingUnit .txtUnit dl .txt > span {
		display: block;
		line-height: 1.4;
	}
	.roomPlanSection .buildingWrap .buildingBox .buildingUnit .txtUnit dl .txt .line01 {
		margin-bottom:0.5em;
	}
	
/*soshigaya*/	
	.roomPlanSection .buildingWrap .buildingBox .buildingUnit.soshigaya .txtUnit dl .name {
		color:#fff;
		background: #8e8b73;
	}
	.roomPlanSection .buildingWrap .buildingBox .buildingUnit.soshigaya .txtUnit dl .ttl,
	.roomPlanSection .buildingWrap .buildingBox .buildingUnit.soshigaya .txtUnit dl .txt .line02 {
		color: #61151b;
	}
	.roomPlanSection .buildingWrap .buildingBox .buildingUnit.soshigaya .txtUnit dl em {
		font-size:2em;
		line-height:1;
	}
	

@media screen and (max-width: 1050px) { /*{belowTBs}*/


	.roomPlanSection .buildingWrap.contbox {
		width: 100%;
	}
	
	.roomPlanSection .buildingWrap.contbox h4,
	.roomPlanSection .buildingWrap.contbox .leadTxt {
		width: 80%;
		margin-left:auto;
		margin-right:auto;
		
	}

	
	
}

@media screen and (max-width: 736px) { /*{SP}*/
	.roomPlanSection .buildingWrap {
		padding:clamp(60px, (60 / 480 * 100vw), 80px) clamp(10px, (10 / 480 * 100vw), 30px);
	}


}




/* spacePlanningWrap
-------------------------------------------------------------*/
	.roomPlanSection .spacePlanningWrap {
		position: relative;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.roomPlanSection .spacePlanningWrap > * {
		width: 47.61%;
	}
	
	
	.roomPlanSection .spacePlanningWrap .zBox .zBoxInner {
		position: relative;
	}
	.roomPlanSection .spacePlanningWrap .zBox .zBoxInner .terrace,
	.roomPlanSection .spacePlanningWrap .zBox .zBoxInner .ld {
		position: absolute;
		top:0;
		left:0;
		width: 100%;
		mix-blend-mode: multiply;
		z-index: 2;
	}
	
@media print, screen and (min-width: 900.02px) {
	.roomPlanSection .spacePlanningWrap .zBox .zBoxInner .terrace,
	.roomPlanSection .spacePlanningWrap .zBox .zBoxInner .ld {  opacity: 0;}

	.roomPlanSection .spacePlanningWrap .zBox {
		position: sticky;
		top: 10px;
		height: calc(100vh - 80px);
	}
	.roomPlanSection .spacePlanningWrap .zBox p {
		padding:10px 0;
		height: calc(100vh - 80px);
	}
	.roomPlanSection .spacePlanningWrap .zBox img {
		/*width: auto;
		height: 100%;*/
	}
	
	/*.roomPlanSection .spacePlanningWrap .zBox .zBoxInner .terrace { opacity: 0; z-index: 3;}*/
	
	
	.roomPlanSection .spacePlanningWrap .zBox .zBoxInner .ld { transition: opacity 0.5s ease-in-out 0s;}
	.roomPlanSection .spacePlanningWrap .zBox .zBoxInner .ld.is-active { opacity: 1;}

	.roomPlanSection .spacePlanningWrap .zBox .zBoxInner .terrace { transition: opacity 0.5s ease-in-out 0s;}
	.roomPlanSection .spacePlanningWrap .zBox .zBoxInner .terrace.is-active { opacity: 1;}
}

@media print, screen and (min-width: 1200.02px) { /*{overPC}*/
	.roomPlanSection .spacePlanningWrap .zBox {
		top: 132px;
		height: calc(100vh - 132px);
	}
	.roomPlanSection .spacePlanningWrap .zBox p {
		height: calc(100vh - 132px);
	}
}

@media screen and (max-width: 900px) {
	.roomPlanSection .spacePlanningWrap {
		max-width:600px;
		flex-direction: column-reverse;
	}
	.roomPlanSection .spacePlanningWrap > * {
		width: 100%;
	}
	.roomPlanSection .spacePlanningWrap .zBox {
		position: relative;
		margin-top:50px;
	}
}

@media screen and (max-width: 480px) { /*{SPs}*/
	.roomPlanSection .spacePlanningWrap .picBox .pic {
		margin-left:	calc(-50vw + 50%);
		margin-right:	calc(-50vw + 50%);
	}


}



/* ------------------------------------------------------------------------
 planListSection 
------------------------------------------------------------------------ */
	.planListSection {
		position: relative;
		overflow: hidden;
		min-height:100lvh;
	}
	.planListSection .sectionBg_Inner {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%); 
		z-index: -1;
		background: #fff;
	}
	.planListSection .sectionBg_Inner::before {
		content: '';
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100lvh;
		background-image: url("../images/roomplan/bg_planlist.jpg");
		background-position: bottom center;
		background-size: cover;
		background-repeat: no-repeat;
		opacity: 0;
		transform: scale(1.5);
	}
	.planListSection .sectionBg_Inner.js_showTargetAnimate::before {
		animation: planList 4s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s forwards;
	}
	@keyframes planList {
	  0% { 
	  	opacity: 0; 
		filter: blur(5px) brightness(1.2);
		transform: scale(1.5);
		}
	  20% { 
	  	opacity: 1; 
		}
	  100% { 
	  	opacity: 1;
		filter: blur(0) brightness(1);
		transform: scale(1);
		}
	}







/* planBtnWrap
---------------------------------------------------- */

/* /////////////////////////////////////////// (外枠) */
	.planBtnWrap .generalColBox {
		--default-generalColBox-margin-t:	clamp(20px, (20 / 1050 * 100vw), 30px);
		--default-generalColBox-margin-lr:	clamp(20px, (20 / 1050 * 100vw), 30px);
		margin-top:		calc(var(--default-generalColBox-margin-t) * -2);
	}
	.planBtnWrap a {
		display: flex;
		position: relative;
		padding: 0;
		/*height:100%;*/
		background:rgba(var(--site-themeColor-accent), 1);
	}
	.planBtnWrap a::before {
		content: "";
		display: block;
		position: absolute;
		top: 0; bottom: 0; left: 0; right: 0;
		z-index: 0;
		background: #fff;
		opacity: 1;
		transition: opacity .4s ease-out;
	}
	.planBtnBox {
		flex-basis: 100%;
		display: flex;
		flex-direction: column;
		position: relative;
		z-index: 0;
		padding: 70px 60px;
		/*transition: all .18s ease-out, width 0s, margin-left 0s, margin-right 0s; */
	}
	
	/* ボタン1個の時 */
	.planBtnWrap.generalCol1 {
		justify-content: center;
	}
	.planBtnWrap.generalCol1 > * {
		width: 100%;
		max-width: 650px; /* feeling. */
	}
	/* hover, focus */
	@media (hover: hover) and (pointer: fine) {
		.planBtnWrap a[href]:hover::before {
			opacity: .4;
		}
	}
	.planBtnWrap a[href]:focus::before,
	.planBtnWrap a[href]:active::before {
		opacity: .4;
	}


@media screen and (min-width: 736.02px) and (max-width: 1050px) { /*{TBs}*/
	.planBtnBox {
		padding: clamp(40px, (40 / 737 * 100vw), 70px)  clamp(30px, (30 /737 * 100vw), 60px);
	}
}

@media screen and (max-width: 736px) {
	.planBtnWrap {
		max-width:400px;
		margin-left:auto;
		margin-right:auto;
	}
	.planBtnBox {
		padding: 50px 40px;
	}
}

@media screen and (max-width: 480px) { /*{SPs}*/
	.planBtnBox {
		/*padding: 20px clamp(40px, 2vw, 60px) 25px;*/
	}
	
}

/* /////////////////////////////////////////// (内容) */
	.planBtnBox > * {
		/*width: 100%;*/
	}
	/* ******************** SPEC_1 */
	.planBtnBox .spec1 {
		flex: 0 0;
		padding:0 0 0 0;
	}
	.planBtnBox .spec1::after {
		content:"";
		display:block;
		height:1px;
		width:40px;
		margin:1.5em auto 0 0;
		background:rgba(var(--site-themeColor-base_text), 1);
	}	

	.planBtnBox .spec-type {
		min-height: 0.001vw;				/* for safari | font-sizeにclamp()使用時必須 */
		line-height: 1;
		font-family: var(--site-font_family-en_2);
		/*color: rgba(var(--site-variationColor-gold_1), 1); */
		letter-spacing: 0.001em;
		/*text-align: center;*/
		--M-fluidFontSize-max-fontsize: 24;
		--M-fluidFontSize-min-fontsize: 18;
		--M-fluidFontSize-max-viewport: 1200;
		--M-fluidFontSize-min-viewport: 736;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */
		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		font-weight: 400;
		
	}
	.planBtnBox .spec-type .st {
		margin-right: -.1em;
	}
	.planBtnBox .spec-type .num {
		font-family: var(--site-font_family-en_6);
		font-size:1.5em;
	}
	
	/* ******************** specBodyWrap */
	.planBtnBox .specBodyWrap {
		flex: 1 1;		/* 親 flex-direction: column; */
		/* 中央揃えの為。不要ならflexbox一式削除 */
		/*display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		margin: 10px auto;*/
		padding:80px 0 0 0;
		/*color:#fff;*/
	}
	.planBtnBox .specBodyWrap > * {
		width: 100%;
	}
	/* ******************** SPEC_2 */
	.planBtnBox .spec2 {}
	.planBtnBox .spec-ldk {
		min-height: 0.001vw;				/* for safari | font-sizeにclamp()使用時必須 */
		/*text-align: center;*/
		line-height: 1.6;
		letter-spacing: .05em;
		--M-fluidFontSize-max-fontsize: 18;
		--M-fluidFontSize-min-fontsize: 16;
		--M-fluidFontSize-max-viewport: 1200;
		--M-fluidFontSize-min-viewport: 736;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */
		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		font-family: var(--site-font_family-en_6);
	}
	.planBtnBox .spec-ldk small {
		font-family: inherit;
	}
	.planBtnBox .spec-ldk .ldkUnit {
		display: flex;
		flex-wrap: wrap;
		/*justify-content: center;*/ /* センター揃え（不要なら削除） */
		/*margin-inline: auto;*/
		max-inline-size: max-content;		  
		align-items: baseline;
	}
	.planBtnBox .spec-ldk .ldkUnit > b,
	.planBtnBox .spec-ldk .ldkUnit > .element b:not(.ja) {
		/*font-family: var(--site-font_family-en_5);*/
		font-size: 1.09091em;
	}
	.planBtnBox .spec-ldk .ldkUnit > b {
		margin-right: 2px;
	}
	.planBtnBox .spec-ldk .ldkUnit::first-letter {
		line-height: .7;
		font-size: 1.333em;
		letter-spacing: .07em;
	}
	.planBtnBox .spec-ldk .ldkUnit > .element {
		display: inline-block;
	}
	.planBtnBox .spec-ldk .ldkUnit > .element b {
		margin: 0 2px;
	}
	.planBtnBox .spec-ldk .ldkUnit > .element b.ja {
		font-size: 1em;
		font-family: var(--site-font_family-serif);
		letter-spacing: .04em;
	}
	.planBtnBox .spec-ldk .ldkUnit > .element b small {
		font-size: max(1rem, .6364em);
	}
	.planBtnBox .spec-area {
		display: flex;
		flex-wrap: wrap;
		/*justify-content: center;*/
		min-height: 0.001vw;				/* for safari | font-sizeにclamp()使用時必須 */
		line-height: 1.6;
		margin-top: 0.5em;
		/*margin-right:10%;*/
		letter-spacing: 0.05em;
		
		--M-fluidFontSize-max-fontsize: 11;
		--M-fluidFontSize-min-fontsize: 10;
		--M-fluidFontSize-max-viewport: 1200;
		--M-fluidFontSize-min-viewport: 736;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */

		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
	}
	.planBtnBox .spec-area .spec-lot,
	.planBtnBox .spec-area .spec-building,
	.planBtnBox .spec-area .spec-service{
		display: flex;
		flex-wrap: wrap;
		align-items: baseline;
	}
	.planBtnBox .spec-area .spec-lot,
	.planBtnBox .spec-area .spec-building {
		margin-right: 1em;
	}
	.planBtnBox .spec-area .value {
		font-size: 1.125em;
	}
	/* ******************** SPEC_3 */
	/*
	.planBtnBox .planImg {padding: 1em 0;text-align: center;margin: 0 auto;background-color: #fff;display: flex;justify-content: center;align-items: center;}
	.planBtnBox .planImg img {width: 80%;}
	*/
	
	/* ******************** SPEC_4 */
	
	/* ******************** moreDetailWrap */
	.planBtnWrap a .moreDetailWrap {
		position: absolute;
		bottom:20px;
		right:20px;
	}
	.planBtnWrap a .moreDetailWrap .circleIconBtnBox {
		width: 22px;
		height: 22px;
		background: none;
		border:1px solid rgba(var(--site-variationColor-gold_1), 1); 
		z-index: 1;
	}

	
	/* ******************** generalBtnUnit */
	.planBtnBox [class*="generalBtnUnit"] {
		max-width: 210px;
		width: 100%;
		padding: clamp(10px, (10 / 1080 * 100vw), 11px) 5px clamp(13px, (13 / 1080 * 100vw), 14px);
		background: #777;
		line-height: 1;
	}
	.planBtnBox [data-buttonicon^="bgico_"] span.ico {
		  right:clamp(6px, (6 / 480 * 100vw), 12px);
	}	


/* ******************** hover */
		.planBtnWrap a .moreDetailWrap {
			transition: transform .2s ease-out;
		}

		/*.planBtnWrap a .spec-type
		.planBtnWrap a .specBodyWrap {
			transition: color .4s ease-out;
		}
		.planBtnWrap a [class*="generalBtnUnit"] {
			transition: background .4s ease-out;
		}
		.planBtnWrap a [data-buttonicon^="bgico_"] span.ico {
			transition: all .18s ease-out;
		}	*/
		
	@media (hover: hover) and (pointer: fine) {
		.planBtnWrap a:hover .moreDetailWrap {
			background: none;
			transform: translateX(5px);
		}
		/*.planBtnWrap a:hover .spec-type,
		.planBtnWrap a:hover .specBodyWrap {
			color:#fff;
		}
		.planBtnWrap a:hover [class*="generalBtnUnit"] {
			background: #333;
		}
		.planBtnWrap a:hover [data-buttonicon^="bgico_"] span.ico {
			  right:clamp(4px, (4 / 480 * 100vw), 10px);
		}	*/
	}
	
	
	/*.planBtnWrap a[href]:focus .spec-type,
	.planBtnWrap a[href]:focus .specBodyWrap {
		color:#fff;
	}*/
	
	
	
@media screen and (max-width: 736px) {
	/* ******************** SPEC_1 */
	.planBtnBox .spec-type {
		/*font-size: clamp(4.2rem, 8.75vw, 5rem);*/
		
		--M-fluidFontSize-max-fontsize: 20;
		--M-fluidFontSize-min-fontsize: 18;
		--M-fluidFontSize-max-viewport: 480;
		--M-fluidFontSize-min-viewport: 320;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */

		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
	}
	/* ******************** SPEC_2 */
	.planBtnBox .spec-ldk {
		/*font-size: clamp(1.5rem, 3.125vw, 1.9rem);*/
		--M-fluidFontSize-max-fontsize: 18;
		--M-fluidFontSize-min-fontsize: 16;
		--M-fluidFontSize-max-viewport: 736;
		--M-fluidFontSize-min-viewport: 480;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */

		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
	}
	.planBtnBox .spec-area {
		font-size: clamp(1.1rem, 2.5vw, 1.2rem);
	}
}
@media screen and (max-width: 480px) {
	/* ******************** specBodyWrap */
	.planBtnBox .specBodyWrap {
		padding:50px 0 0 0;
	}

	/* ******************** SPEC_4 */
	.planBtnWrap a .planBtnBox .btnUnit .btn {
		font-size: 1.4rem;
		padding: 13px 3px;
	}
}


/* limited
-------------------------------------------------------*/
	.planBtnWrap a.floors03.limited  { background:linear-gradient(160.5deg, #5a5744 0%, #5a5744 50%, #53503a 50%, #53503a 100%); }
	.planBtnWrap a.floors02.limited  { background:linear-gradient(160.5deg, #035647 0%, #035647 50%, #0f4a3f 50%, #0f4a3f 100%); }
	
	.limited .planBtnBox {
		padding-right:20px!important;
		padding-left:20px!important;
	}
	
	/*limitedTxt*/
	.limited .planBtnBox .limitedTxt {
		text-align: center;
		padding:0.8em;
		line-height: 1.2;
	}
	.floors03.limited .planBtnBox .limitedTxt {background: #9f933e;}
	.floors02.limited .planBtnBox .limitedTxt {background: #489e8f;}
	
	.limited .planBtnBox .spec1 .spec-type,
	.limited .planBtnBox .spec2 .spec-area {
		opacity: .4;
	}
	

@media screen and (max-width: 480px) { /*{SPs}*/
	.limited .planBtnBox .specBodyWrap .spec-area {
		padding-right:clamp(30px, 2vw, 50px)!important;
		padding-left:clamp(30px, 2vw, 50px)!important;
	}
}






/* NEWアイコン, 限定アイコン
-------------------------------------------------------
- NEW はJSで生成・タイマー表示可能 (2021.03)
-------------------------------------------------------
div.planBtnBox>(em.planBtnIcon>span.newIcon{NEW})+(div.spec1) ※data属性設定で自動生成
div.planBtnBox>(em.planBtnIcon>span.limitedIcon{限定})+(div.spec1)
---------------------------------------------------- */
	.planBtnBox .planBtnIcon {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-end;
		align-items: center;
		position: absolute;
		top: 3px;
		right: 3px;
		line-height: 1;
		font-family: var(--site-font_family-en_1);
		font-size: 1.05rem;
		letter-spacing: .04em;
	}
	.planBtnBox .planBtnIcon > * {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		min-width: 4em;
		min-height: 2em;
		color: #fff;
		background: #000;
		padding: .3em;
	}
	.planBtnBox .planBtnIcon .newIcon {
		background: #9d842b;
	}
	.planBtnBox .planBtnIcon .limIcon {
		color: #fff;
		background: #333;
	}



/* ------------------------------------------------------------------------
 shoenelabeSection 
------------------------------------------------------------------------ */
	.shoenelabeSection {
		background: #fff;
	}
	.shoenelabeSection .shoenelabeWrap {
		max-width:500px;
	}












/* =======================================================================================
	PAGE | z_
======================================================================================= */
/* breadcrumbBox
------------------------------------------------------------------------ */
	.roomplanP.detailP .breadcrumbWrap {
		/*border:0 solid #c9c2ae;
		border-width:1px 0;*/
	}
@media screen and (max-width: 1200px) { /*{belowTB}*/
	.roomplanP.detailP .breadcrumbWrap {
		padding-top: var(--site-stickyHeader-height);
	}
}


/* -----------------------------------------------------------------------------
	プラン詳細の共通スタイル
----------------------------------------------------------------------------- */

/* floorPlanSection - 外枠
------------------------------------------------------------------------ */
	/*.floorPlanSection {
		background: rgba(255,255,255,1);
		box-shadow: 0 0 0 1px #d3d3d3;
	}
	.floorPlanSection .planUnit {
		width: 95%;
		max-width: 1200px;
		margin: 0 auto;
		color: #333;
	}*/

/* floorPlanSection - 内容
------------------------------------------------------------------------ */
		/* 文字/リストスタイル/微調整の余白 のCSS（構造は後述）~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetailText_Styles START */
		/* specWrap
		---------------------------------------------------- */
			.floorPlanSection .specWrap .spec1 {
				font-size: 1.4rem;
				line-height: 1;
				letter-spacing: 0;
			}
			.floorPlanSection .specWrap .spec2 {
				font-size: 1.4rem;
				letter-spacing: 0.03em;
			}
			.floorPlanSection .specWrap small {
				color: inherit;
			}
			/* spec1
			----------------------- */
			.floorPlanSection .specWrap .spec1 {
				line-height: 1.2;
				text-align: center;
				margin: 0 .1em;
			}
			.floorPlanSection .specWrap .spec1 .spec-type {
				--M-fluidFontSize-max-fontsize: 30;
				--M-fluidFontSize-min-fontsize: 24;
				--M-fluidFontSize-max-viewport: 1200;
				--M-fluidFontSize-min-viewport: 480;
				min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */
				font-size: clamp(
					calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
					calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
					calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
				);
				font-family: var(--site-font_family-en_2);
				/*letter-spacing: -.02em;*/
				letter-spacing: 0.2em;
				white-space: nowrap; /* 不要なら削除可 */
			}
			.floorPlanSection .specWrap .spec1 .spec-type .st {
				font-size: 1em;
				letter-spacing: 0em;
				margin-right: -.12em;
			}
			.floorPlanSection .specWrap .spec1 .spec-type .num {
				line-height: .5;
				font-size: 1.8em;
				letter-spacing: -.04em;
			}
			
			.floorPlanSection .specWrap .spec1 .floorType {
				margin-top:1em;
				padding:0.3em 0.3em 0.4em;
				font-family: var(--site-font_family-sans);
				letter-spacing: 0.08em;
				font-weight: 300;
				line-height: 1;
				background: #a49746;
			}
			
			
			
			
			
			
			
			/* spec2
			----------------------- */
			.floorPlanSection .specWrap .spec2 {
				line-height: 1.3;
				font-family: var(--site-font_family-serif);
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk {
				line-height: 1.2;
				font-size: 1.714em;
				letter-spacing: .1em;
				/*font-family: var(--site-font_family-en_1);*/
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk .ldkUnit {
				display: flex;
				flex-wrap: wrap;
				align-items: baseline;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk .ldkUnit > b {
				margin-right: 2px;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk .ldkUnit .ldkNum {
				font-size: 1.25em;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk .ldkUnit > .element {
				display: inline-block;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk .ldkUnit > .element.floor {
				font-size: .6775em;
				letter-spacing: 0;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk .ldkUnit > .element b {
				margin: 0 2px;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk .ldkUnit > .element b.ja {
				font-size: 0.9em;
				/*font-size: 0.95em;*/
				letter-spacing: 0.04em;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk .kana {
				letter-spacing: -0.07em;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk .lrg {
				font-size: 1.1em;
				letter-spacing: 0.1em;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk small {
				display: inline-block;
				font-family: inherit;
				font-size: .75em;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk small .legendBox {
				display: block;
				font-size: .85em;
				font-family: var(--site-font_family-sans);
			}
			.floorPlanSection .specWrap .spec2 .value {
				font-size: 1.857em;
				/*letter-spacing: .05em;*/
				letter-spacing: 0;
				margin-left: .1em;
			}
			.floorPlanSection .specWrap .spec2 .tsubo {
				display: inline-block;
				letter-spacing: .02em;
				/*margin-right: -.6em;*/
			}
			.floorPlanSection .specWrap .spec2 small {
				display: inline-block;
				/*font-size: .857em;*/
				font-size: .7em;
				margin: .5em 0 .25em;
			}
			.floorPlanSection .specWrap .spec2 small .kana {
				letter-spacing: -.07em;
			}
		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetailText_Styles END */


	/* specWrap
	---------------------------------------------------- */
	.floorPlanSection .specSection {
		padding: clamp(60px, (60 / 1200 * 100vw), 80px) 0;
	}
	
	.floorPlanSection .specWrap {
		max-width: 800px;
		margin: 0 auto;
	}
	/* spec1
	----------------------- */
	.floorPlanSection .specWrap .spec1 {}
	/* spec2
	----------------------- */
	.floorPlanSection .specWrap .spec2 .spec-ldk,
	.floorPlanSection .specWrap .spec2 .spec-lot,
	.floorPlanSection .specWrap .spec2 .spec-building,
	.floorPlanSection .specWrap .spec2 .spec-building_caption{
		padding: .15em 0;
	}
	
	.floorPlanSection .specWrap .spec2 .spec-building_floorBox,
	.floorPlanSection .specWrap .spec2 .spec-service {
		padding: 1em 0 0;
	}
	.floorPlanSection .specWrap .spec2 .spec-building,
	.floorPlanSection .specWrap .spec2 .spec-building_caption,
	.floorPlanSection .specWrap .spec2 [class^="spec-floor"] {
		display: inline-block;
	}
	.floorPlanSection .specWrap .spec2 .spec-ldk .etcUnit {
		margin: 5px auto;
		padding: 5px 0;
	}
	.floorPlanSection .specWrap .spec2 .spec-floor1 {
		margin-right: 1.25em;
	}
	.floorPlanSection .specWrap .spec2 .spec-floor2 {
		margin-right: 1.25em;
	}
	/*.floorPlanSection .specWrap .spec2 .spec-service > .inbl,
	.floorPlanSection .specWrap .spec2 .spec-service small {
		margin-right:1em;
	}*/
	.floorPlanSection .specWrap .spec2 .spec-service .tsubo {
		margin-right: 0;
	}
	
	/* planMeritWrap
	---------------------------------------------------- */
	.floorPlanSection .planMeritWrapper {
		max-width:800px;
		text-align: center;
		margin: 50px auto 0;
		border:0 solid #999;
		border-width:1px 0;
	}
	.floorPlanSection .planMeritWrap {
		display: inline-block;
		text-align: left;
		padding: 1em 1.5em;
		font-size: 1.3rem;
		font-family: var(--site-font_family-serif);
		line-height: 1.667;
		/*width: 100%;*/
		/*max-width: 800px;*/
	}
	.floorPlanSection .planMeritWrap li {
		position: relative;
		line-height: 1.55;
		margin: .6em 0;
		padding-left: 1.5em;
	}
	.floorPlanSection .planMeritWrap li:before {
		content: "─";
		position: absolute;
		top: 0;
		left: 0;
		color: inherit;
	}
	
	
	/* planPicWrap
	---------------------------------------------------- */
	.floorPlanSection .planPicWrap {
		padding:var(--site-marpad-XL) var(--site-marpad-S);
		background: #fff;
	}
	
	/* planPic
	---------------------------------------------------- */
	.floorPlanSection .planPic {
		text-align: center;
		margin: 0 auto 60px;
		/*padding:60px 30px;*/
		/*background: #fff;*/
	}
	
	/* symList-kome
	---------------------------------------------------- */
	.floorPlanSection .symList-kome {

		padding-top: 1.5em;
	}

@media screen and (min-width: 1050.02px) {
	/* specWrap
	---------------------------------------------------- */
	.floorPlanSection .specWrap {
		display: flex;
		justify-content: space-between;
	}
/*	.floorPlanSection .specWrap {
		display: table;
		width: 100%;
	}
	.floorPlanSection .specWrap .spec1,
	.floorPlanSection .specWrap .spec2 {
		display: table-cell;
		vertical-align: middle;
	}*/
	/* spec1
	----------------------- */
	.floorPlanSection .specWrap .spec1 {
		flex: 0 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
/*		width: 240px;*/
		min-width: 230px;
		padding: .2em 15px .8em 0;
		border-right: 1px solid rgba(0,0,0,.4);
	}
	/* spec2
	----------------------- */
	.floorPlanSection .specWrap .spec2 {
		flex: 1 1;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
/*		width: calc(100% - 240px);*/
		padding: 5px 20px 5px 50px;
	}
	.floorPlanSection .specWrap .spec2 .spec-ldk {
		display: block;
		width: 100%;
		padding-bottom: .4em;
	}
	/* planMeritWrap
	---------------------------------------------------- */
	/*.floorPlanSection .planMeritWrap {
		border:0 solid #555;
		border-width:1px 0;
	}*/
}


	
@media screen and (max-width: 1200px) { /*{belowTB}*/
	.floorPlanSection .specSection {
		/*margin: var(--site-stickyHeader-height) 0 10px;*/
	}
}


@media screen and (min-width: 1050.02px) and (max-width: 1200px) {
	/* specWrap
	---------------------------------------------------- */
	.floorPlanSection .specSection {
		padding:var(--site-marpad-XXL) 0;
	}
	/* spec1
	----------------------- */
	.floorPlanSection .specWrap .spec1 {
			padding-right: 7px; /* 微調整 */
	}
	/* spec2
	----------------------- */
	.floorPlanSection .specWrap .spec2 {
		padding: 5px 10px 5px 35px;
	}
}
@media screen and (max-width: 1050px) {
		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetailText_Styles START */
			/*.floorPlanSection .specWrap .spec1 .spec-type {
				font-size: 6rem;
			}*/
		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetailText_Styles END */
	

	/* specWrap
	---------------------------------------------------- */
	.floorPlanSection .specSection {
		padding:100px 30px 80px;
	}
	
	
	/* spec1
	----------------------- */
	/*.floorPlanSection .specWrap .spec1 {
		padding: 0 0 1.2em;
		border-top: 1px solid #555;
		border-bottom: 1px solid #555;
	}*/
	.floorPlanSection .specWrap .spec1 .spec-type {
		margin-top: -.3em;
	}
	/* spec2
	----------------------- */
	.floorPlanSection .specWrap .spec2 {
		text-align: center;
		padding: 20px 2.5%;
	}
	.floorPlanSection .specWrap .spec2Inner {
		display: inline-block;
	}
	.floorPlanSection .specWrap .spec2 .spec-ldk,
	.floorPlanSection .specWrap .spec2 .spec-lot,
	.floorPlanSection .specWrap .spec2 .spec-building,
	.floorPlanSection .specWrap .spec2 .spec-building_floorBox,
	.floorPlanSection .specWrap .spec2 .spec-service {
		display: block;
		text-align: left;
		padding: .6em 0 .4em;
		border-bottom: 1px dotted rgba(0,0,0,.5);
	}
	
	/* planMeritWrap
	---------------------------------------------------- */
	.floorPlanSection .planMeritWrap {
		font-size: 1em;
	}
	
	/* planPic
	---------------------------------------------------- */
	.floorPlanSection .planPic {
		margin: 0 auto 30px;
	}
}
@media screen and (max-width: 736px) {
	/* specWrap
	---------------------------------------------------- */
	.floorPlanSection .specSection {
		padding:40px 30px 30px;
		/*background: url("../images/roomplan/z/bg_spec@sp.jpg") center center / cover no-repeat;*/
	}

		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetailText_Styles START */
			.floorPlanSection .specWrap .spec1,
			.floorPlanSection .specWrap .spec2 {
					font-size: 1.3rem;
			}
			/* spec2 */
			.floorPlanSection .specWrap .spec2 .spec-ldk {
				font-size: 1.5em;
				letter-spacing: .05em;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk small .legendBox {
				padding-top: .5em;
			}
			.floorPlanSection .specWrap .spec2 .value {
				font-size: 1.6em;
				letter-spacing: .03em;
			}
		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetailText_Styles END */
	
	/* planMeritWrap
	---------------------------------------------------- */
	.floorPlanSection .planMeritWrapper {
		margin: clamp(10px, (10 / 480 * 100vw), 30px) auto 0;
		border-width:0 0;
	}
		
	.floorPlanSection .planMeritWrap {
		padding: 0 1.5em;
		font-size: 1em;
	}
	
	
	/* planPicWrap
	---------------------------------------------------- */
	.floorPlanSection .planPicWrap {
		width: 90%;
	}
	
	
	/* planPic
	---------------------------------------------------- */
	.floorPlanSection .planPic {
		margin: 0 auto 20px;
	}
}
@media screen and (max-width: 480px) { /*{SPs}*/
		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetailText_Styles START */
			.floorPlanSection .specWrap .spec1,
			.floorPlanSection .specWrap .spec2 {
				font-size: 1.2rem;
				letter-spacing: 0.06em;
			}
			/*.floorPlanSection .specWrap .spec1 .spec-type {
				font-size: 5rem;
			}*/
		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetailText_Styles END */
		
	/* planPicWrap
	---------------------------------------------------- */
	.floorPlanSection .planPicWrap {
		width: 96%;
	}
}



/*
@media screen and (max-width: 360px), screen and (min-width: 481px) and (max-width: 840px) {
	.floorPlanSection .planPic .completionPh br {
		display: none;
	}
}
*/



/* -----------------------------------------------------------------------------
	プランリスト
----------------------------------------------------------------------------- */

/* planDetailNavWrap
------------------------------------------------------------------------ */
	.planDetailNavWrap{
		position: relative;
		/*margin-bottom:1px;*/
		/*margin-bottom:var(--site-marpad-XS);*/
		padding: var(--site-marpad-L) 0;
		/*margin: 0 auto;*/
		/*padding: 0 0;*/
		background: url("../images/roomplan/bg_planlist.jpg") top right / cover;
	}
	.planDetailNavWrap .contbox {
		text-align: center;
	}
	.planDetailNavWrap .ttl {
		/*--M-fluidFontSize-max-fontsize: 40;
		--M-fluidFontSize-min-fontsize: 30;
		--M-fluidFontSize-max-viewport: 1200;
		--M-fluidFontSize-min-viewport: 736;
		min-height: 0.001vw;  for safari | font-sizeにclamp()使用時必須 
		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);*/
		display: block;
		text-align: center;
		line-height: 1;
		/*color: rgba(var(--site-themeColor-base_text-accent), 1);*/
		/*font-family: var(--site-font_family-en_1);*/
		/*font-weight: 100;*/
		letter-spacing: 0;
		padding: 0;
	}
	
	/*.planDetailNavHeading {
		line-height: 1.1;
		color: rgba(var(--site-variationColor-heading-dark), 1);
		font-family: var(--site-font_family-en_2);
		letter-spacing: 0;
		font-size: 8rem;
		text-align: center;
		margin-bottom: 20px;
	}*/
	/*.planDetailNavHeading::after {
		content: "";
		display: block;
		width: 60px;
		height: 2px;
		background: #c0b496;
		margin: 0.8em auto 0;
	}*/
	.planDetailNavWrap ul {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}
	.planDetailNavWrap li {
		flex: 0 0 32.333%;
		display: block;
		margin: 5px 0.5%;
	}
	.planDetailNavWrap .planDetailNav li a {
		position: relative;
		z-index:1;
		width: 100%;
		max-width: none;
		margin: 0;
		padding: 12px 9px;
		display: flex;
		font-family: var(--site-font_family-en_2);
		font-size: clamp(1.3rem, 1vw, 1.5rem);
		min-height: 0.001vw;				/* for safari | font-sizeにclamp()使用時必須 */
		line-height: 1.35;
		color: #000;
		letter-spacing: .03em;
		/*border: 1px solid rgba(var(--site-lineColor-basic), 1);*/
		/*border:0 solid #333;*/
		/*border-width:1px;*/
		background: #fff;
		transition: all .18s ease-out;
	}
	.planDetailNavWrap li a::after {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left: auto;
		right: 15px;
		width: 0;
		height: 0;
		margin: auto;
		/*border-style: solid;*/
		/*border-width: 4px 0 4px 8px;*/
		/*border-color: transparent transparent transparent #333;*/
	}
	
	/*.planDetailNavWrap li a::before {
		position:absolute;
		top:0;
		left:0;
		z-index:-1;
		width:100%; 
		height:100%;
		content:"";
		background: rgba(var(--site-variationColor-heading-dark), .1);
		opacity:0;
		clip-path: inset(0 100% 0 0);
		transition:clip-path .3s ease-out,opacity .2s ease-out;
	}*/
	.planDetailNavWrap li .nameBox,
	.planDetailNavWrap li .specBox {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		padding: 3px 0;
	}
	.planDetailNavWrap li .nameBox {
		flex: 0 0 4.8em;
		justify-content: center;
		text-align: center;
		margin-right:	0.6em;
		padding-right:	0.4em;
		border-right: 1px solid rgba(0,0,0,.3);
	}
	.planDetailNavWrap li .nameBox .st {
		margin-right: 0.115em;
	}
	.planDetailNavWrap li .nameBox .num {
		display: inline-block;
		line-height: 1.1;
		font-size: 1.1em;
	}
	.planDetailNavWrap li .specBox {
		flex: 1 1;
		text-align: left;
		padding-right:15px;
	}
	.planDetailNavWrap li .specBox .ldk {
		color: inherit;
		font: inherit;
	}
	.planDetailNavWrap li .specBox .sto {
		display: inline-block;
		font-size: 1.3rem;
	}
	.planDetailNavWrap li .specBox .sto small {
		display: inline-block;
		color: inherit;
		font: inherit;
		font-size: .8em;
		/*font-size: 1rem;*/
	}
	/* hover, focus, current */
	@media (hover: hover) and (pointer: fine) {
		.planDetailNavWrap li a:hover {
			background: rgba(var(--site-themeColor-accent), 1); 
			/*color:#fff;*/
			/*border:0 solid rgba(var(--site-lineColor-basic), 1);*/
			/*border-width:1px;*/
			/*background: none;*/
		}
		.planDetailNavWrap li a:hover .nameBox {
			/*border-right: 1px solid rgba(255,255,255,.3);*/
		}
		.planDetailNavWrap li a:hover::after {
			/*border-color: transparent transparent transparent #fff;*/
		}
	}
	
	/*focus*/
	.planDetailNavWrap li a:focus {
		/*color: #fff;*/
		/*background: rgba(var(--site-themeColor-accent_1), 1);*/
	}
	.planDetailNavWrap li a:focus::after {
		/*border-color: transparent transparent transparent #fff;*/
	}
	.planDetailNavWrap li a:focus .nameBox {
		/*border-right: 1px solid rgba(255,255,255,.3);*/
	}
	
	/*current*/
	.planDetailNavWrap li.is-current a {
		/*color:#fff;*/
		background: rgba(var(--site-themeColor-accent), 1); 
	}
	.planDetailNavWrap li.is-current a::after {
		/*border-color: transparent transparent transparent #fff;*/
	}
	.planDetailNavWrap li.is-current .nameBox {
		/*border-right: 1px solid rgba(255,255,255,.3);*/
	}
	
@media screen and (max-width: 1200px) {
	.planDetailNavHeading {
		font-size: 5rem;
	}
	.planDetailNavWrap li {
		flex: 0 0 49%;
	}
}
@media screen and (max-width: 640px) { /* feeling. */

	.planDetailNavHeading {
		margin-bottom: .2em;
		font-size: 4rem;
	}
	.planDetailNavWrap li {
		flex: 0 0 100%;
		margin: 3px 0;
	}
	.planDetailNavWrap li a {
		padding: 9px;
	}
}


/* returnPlanlistBtnWrap*/
	.returnPlanlistBtnWrap {
		display: inline-block;
	}
	.returnPlanlistBtn {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
	}
	.returnPlanlistBtn .txt {
		padding-right:0.5em;
		color:#fff;
	}
	/*circleIconBtnBox*/
	.planDetailNavWrap .circleIconBtnBox {
		width: 26px;
		height:26px;
		background: #fff; 
	}
	.planDetailNavWrap .circleIconBtnBox::after {
		background: #fff; 
	}


	@media (hover: hover) and (pointer: fine) {
		.circleIconBtnBox:hover::after {
			opacity: 0!important;
		}
	}




















