@charset "utf-8";

/* =======================================================================================
	TEMPLATE
======================================================================================= */

/* ptHeading
------------------------------------------------------------------------ */
	.ptHeading .hWord {
		--default-ptHeading_hWord-color:		var(--roomplan-themeColor-accent_1, var(--site-themeColor-main));
		--default-ptHeading_hWord-color-alpha:	1;
	}



/* =======================================================================================
	COMMON
======================================================================================= */

/* CssCustomProperties
------------------------------------------------------------------------ */
	:root {
		/* テーマカラー */
		--roomplan-themeColor-base:					237, 236, 232;	/* rgb | #edece8 | WarmGrey */
		--roomplan-themeColor-base_text:			0, 0, 0;		/* rgb | #000000 | Black */ /* ※ base を背景に使った場合の文字色 */
		--roomplan-themeColor-accent_1:				167, 149, 60;	/* rgb | #a7953c | DallYellow */
		--roomplan-themeColor-accent_1_text:		0, 0, 0;		/* rgb | #000000 | Black */
		--roomplan-themeColor-accent_2:				213, 202, 153;	/* rgb | #d5ca99 | LightDallYellow */
		--roomplan-themeColor-accent_2_text:		0, 0, 0;		/* rgb | #000000 | Black */
		--roomplan-themeColor-accent_3:				25, 78, 193;	/* rgb | #194ec1 | BrightUltraMarineBlue */
		--roomplan-themeColor-accent_3_text:		255, 255, 255;	/* rgb | #ffffff | White */
		--roomplan-themeColor-accent_4:				34, 185, 185;	/* rgb | #22b9b9 | BrightBlueGreen */
		--roomplan-themeColor-accent_4_text:		255, 255, 255;	/* rgb | #ffffff | White */
	}


/* dotBg_
------------------------------------------------------------------------ */
	.dotBg_blue,
	.dotBg_white {
		--roomplan-dotBg-width: 271;
		--roomplan-dotBg-height: 287;
		width: min((var(--roomplan-dotBg-width) / 1800 * 100vw), (var(--roomplan-dotBg-width) * 1px)); /* 初期値 */
		aspect-ratio: var(--roomplan-dotBg-width) / var(--roomplan-dotBg-height);
		background: center center / 100% auto no-repeat;
	}
	.dotBg_blue {
		background-image: url("../images/roomplan/planning_bg_parts_01.png");
	}
	.dotBg_white {
		background-image: url("../images/roomplan/planning_bg_parts_02.png");
	}



/* =======================================================================================
	PAGE | indexP
======================================================================================= */

/* ------------------------------------------------------------------------
	marketContainer
------------------------------------------------------------------------ */
	.marketContainer {}
	.marketSection {
		display: grid;
		grid-template-columns: calc(700 / 1600 * 100%) 1fr;
		justify-content: space-between;
		gap: 0 calc(120 / 1600 * 100%);
	}
	.marketSection .marketTxtBox {}
	.marketSection .marketTxtBox .marketHeading {}
	.marketSection .marketTxtBox .marketHeading .hWord {}
	.marketSection .marketTxtBox .marketHeading .hTxtStyh3 {}
	.marketSection .marketTxtBox .txt {}
	.marketSection .marketTxtBox .txt .cap {
		display: block;
		margin-top: 2.5em;
	}
	.marketSection .marketGraphBox {
		align-self: center;
	}
	.marketSection .marketGraphBox .graphFigure {
		max-width: 710px;
		margin-left: auto;
	}
	.marketSection .marketGraphBox .graphFigure .ttl {
		display: block;
		line-height: 1.5;
		font-size: clamp(1.35rem, (17.5 / 1500 * 100vw), 1.75rem);
		margin-bottom: .9em;
	}
	.marketSection .marketGraphBox .graphFigure .graph {
		display: block;
	}
	.marketSection .marketGraphBox .graphFigure .cap {
		display: block;
		line-height: 1.5;
		font-size: .8em;
		text-align: right;
		margin-top: .65em;
	}
@media screen and (max-width: 1050px) {
	.marketSection {
		grid-template-columns: 1fr;
		gap: clamp(40px, (60 / 736 * 100vw), 60px) 0;
	}
	.marketSection .marketTxtBox {
		text-align: center;
	}
	.marketSection .marketGraphBox .graphFigure {
		margin-left: auto;
		margin-right: auto;
	}
	.marketSection .marketGraphBox .graphFigure .ttl {
		font-size: clamp(1.2rem, (17.5 / 736 * 100vw), 1.75rem);
	}
}










/* ------------------------------------------------------------------------
	planningQualityContainer
------------------------------------------------------------------------ */
	.planningQualityContainer {
		color: rgba(var(--roomplan-themeColor-base_text), 1);
		background: rgba(var(--roomplan-themeColor-base), 1);
	}
	.planningQualitySection {}
	.planningQualitySection .planningQualityTxtBox .txt .cap {
		display: block;
		margin-top: 2.5em;
	}


/* planningQualityTxtBox
------------------------------------------------------------------------ */
	.planningQualitySection .planningQualityTxtBox {
		text-align: center;
	}
	.planningQualitySection .planningQualityTxtBox .planningQualityHeading {}
	.planningQualitySection .planningQualityTxtBox .planningQualityHeading .hWord {}
	.planningQualitySection .planningQualityTxtBox .planningQualityHeading .hTxt {}
	.planningQualitySection .planningQualityTxtBox .txt {}


/* planningQualitySection__body
------------------------------------------------------------------------ */
	.planningQualitySection__body {}


/* ////////////////////////////////////////////////////////////////////////
 - 以下、[PC]と[SP]で仕様が異なるため完全に分けて組みます。
 - [PC]は'通常表示'です。
 - [SP]は'タブ切り替え・スライダー'です。
//////////////////////////////////////////////////////////////////////// */


/* =========================================================
	pqContwrap_PC | '通常表示'
========================================================= */
	.pqContwrap_PC {
	}
	.pqContwrap_PC .pqContUnit {
		margin-top: calc(var(--site-marpad-XXXL) - 10px);
	}
	.pqContwrap_PC .pqContUnit + .pqContUnit {
		margin-top: calc(var(--site-marpad-XXXL) + 30px);
	}
	.pqContwrap_PC .pqContUnitInner {
		--roomplan-pqContUnitInner-width:										1600;
		--roomplan-pqContUnitHeader-hashNumber-width-designSize:				145;
		--roomplan-pqContUnitHeader-hashNumber-width:							calc(var(--roomplan-pqContUnitHeader-hashNumber-width-designSize) / var(--roomplan-pqContUnitInner-width) * 100%);
		--roomplan-pqContUnitBody-width-designSize:			/* 1600-145 == */	calc(var(--roomplan-pqContUnitInner-width) - var(--roomplan-pqContUnitHeader-hashNumber-width-designSize));
		--roomplan-pqContUnitBody-width:	/* 100%-(...hashNumber-width) == */	calc(var(--roomplan-pqContUnitBody-width-designSize) / var(--roomplan-pqContUnitInner-width) * 100%);
	}
@media screen and (max-width: 736px) {
	.pqContwrap_PC {
		display: none;
	}
}

/* pqContUnitHeader
---------------------------------------------------- */
	.pqContwrap_PC .pqContUnitHeader {
	}
	.pqContwrap_PC .pqContUnitHeader .heading {
		display: grid;
		grid-template: 
			"hashNum subTtl" auto
			"hashNum mainTtl" 1fr /	/* 縦の高さ（制限なしなら両方auto） */
			var(--roomplan-pqContUnitHeader-hashNumber-width) 1fr;
		justify-content: space-between;
		align-items: start;
		align-content: start;
		gap: .8em 0px;
	}
	.pqContwrap_PC .pqContUnitHeader .heading .hashNumber {	grid-area: hashNum;}
	.pqContwrap_PC .pqContUnitHeader .heading .subTitle {	grid-area: subTtl;}
	.pqContwrap_PC .pqContUnitHeader .heading .mainTitle {	grid-area: mainTtl;}
	
	.pqContwrap_PC .pqContUnitHeader .heading > * {
		position: relative;
		z-index: 1;
		display: block;
		font-weight: 500;
		letter-spacing: .09em;
	}
	.pqContwrap_PC .pqContUnitHeader .heading .hashNumber {
		line-height: 1;
		font-family: var(--site-font_family-sans);
	}
	.pqContwrap_PC .pqContUnitHeader .heading .subTitle {
		line-height: 1.35;
		font-family: var(--site-font_family-sans);
		font-size: clamp(1.55rem, (21 / 1750 * 100vw), 2.1rem);
	}
	.pqContwrap_PC .pqContUnitHeader .heading .mainTitle {
		z-index: 0;
		line-height: 1.55;
		color: rgba(var(--roomplan-themeColor-accent_3), 1);
		font-size: clamp(2.4rem, (32.5 / 1750 * 100vw), 3.25rem);
		padding: .25em 0 .35em;
	}
	.pqContwrap_PC .pqContUnitHeader .heading .mainTitle::before {
		content: "";
		position: absolute;
		inset: 0;
		z-index: -1;
		background: #fff;
		margin-left:	calc(-50vw + 50% + (var(--roomplan-pqContUnitHeader-hashNumber-width) * -1));
		margin-right:	calc(-50vw + 50%);
	}

/* pqContUnitBody
---------------------------------------------------- */
						/*.pqContwrap_PC .pqContUnitBody {	background: rgba(0, 0, 255, .05);}
						.pqContwrap_PC .firstTextBox {		background: rgba(255, 0, 0, .1);}
						.pqContwrap_PC .madorizuWrap {		background: rgba(255, 0, 0, .1);}
						.pqContwrap_PC .thisPlanningPointBox {						background: rgba(0, 255, 255, .2);}
						.pqContwrap_PC .thisPlanningPointBox__txtBox {				background: rgba(255, 255, 0, .2);}
						.pqContwrap_PC .thisPlanningPointBox__txtBox .heading {		background: rgba(0, 255, 0, .15);}
						.pqContwrap_PC .thisPlanningPointBox__picBox {				background: rgba(255, 0, 255, .25);}
						*/

	.pqContwrap_PC .pqContUnitBody {
		letter-spacing: .13em;
		padding-left: var(--roomplan-pqContUnitHeader-hashNumber-width);
	}

/* firstTextBox | 共通設定
--------------------------------- */
	.pqContwrap_PC .firstTextBox {
		font-size: 1.175em;
	}
@media screen and (max-width: 1050px) {
	.pqContwrap_PC .firstTextBox {
		font-size: 1.13em;
	}
}

/* madorizuBox | 共通設定
--------------------------------- */
	.pqContwrap_PC .madorizuBox {}

/* thisPlanningPointBox | 共通設定［ポイント一式］
--------------------------------- */
	.pqContwrap_PC .thisPlanningPointBox {}
	.pqContwrap_PC .thisPlanningPointBox__txtBox {
		text-align: center;
	}
	.pqContwrap_PC .thisPlanningPointBox__txtBox .heading {}
	.pqContwrap_PC .thisPlanningPointBox__txtBox .heading .pointNumber {
		display: block;
		line-height: 1.35;
		font-family: var(--site-font_family-en_1);
		font-size: 1.115em;
	}
	.pqContwrap_PC .thisPlanningPointBox__txtBox .heading .mainTitle {
		display: block;
		line-height: 1.55;
		color: rgba(var(--roomplan-themeColor-accent_3), 1);
		font-size: 1.25em;
		margin: 1.6em 0;
		padding: .55em 0 .65em;
		border: 0 solid;
		border-width: 1px 0;
	}
	.pqContwrap_PC .thisPlanningPointBox__txtBox .txt {}
	.pqContwrap_PC .thisPlanningPointBox__picBox .pic {}


/* ----------------------------------------------------
	-- Individual --
---------------------------------------------------- */

/* is_pqContUnit_PC_h01
---------------------------------------------------- */
	.is_pqContUnit_PC_h01 .pqContUnitHeader {}
	.is_pqContUnit_PC_h01 .pqContUnitBody {}
	
	.is_pqContUnit_PC_h01 .firstTextBox {
		position: relative;
		z-index: 1;					/* マイナスマージンする分の重なり対策 */
		margin-top: var(--site-marpad-XS);
		width: 75%;					/* feeling. | マイナスマージンする分の重なり対策 */
		margin-bottom: -1.75em;		/* マイナスマージンする */
	}
@media screen and (max-width: 1200px) {
	.is_pqContUnit_PC_h01 .firstTextBox {
		width: 100%;					/* リセット */
		margin-bottom: 0;
	}
}
/* madorizuWrap | ［間取図を含む一式］
--------------------------------- */
	.is_pqContUnit_PC_h01 .madorizuWrap {
		display: grid;
		grid-template-columns: 1fr calc(810 / var(--roomplan-pqContUnitBody-width-designSize) * 100%);
		gap: 0 calc(110 / var(--roomplan-pqContUnitBody-width-designSize) * 100%);
		position: relative;
		z-index: 0;
		margin-top: 40px;
	}
	.is_pqContUnit_PC_h01 .madorizuWrap .dotBg_blue {
		position: absolute;
		inset: 100% 0 auto auto;
		z-index: -1;
		translate: -25% -15%;
	}
	.is_pqContUnit_PC_h01 .flowlineBox {
		order: -1;
		padding-top: min((181 / 1800 * 100vw), 181px); /* 間取図に合わせてずらす */
	}
	.is_pqContUnit_PC_h01 .flowlineUnit {
	}
	.is_pqContUnit_PC_h01 .flowlineUnit + .flowlineUnit {
		margin-top: 2.5em;
	}
	.is_pqContUnit_PC_h01 .flowlineUnitHeading {
		line-height: 1.35;
		font-family: var(--site-font_family-sans);
		font-size: 1.175em;
		font-weight: 500;
	}
	.is_pqContUnit_PC_h01 .flowlineUnitHeading .label {
		display: block;
	}
	.is_pqContUnit_PC_h01 .flowlineUnitHeading .headingText {
		display: block;
		color: #fff;
		background: #777;
		margin-top: .6em;
		margin-bottom: .95em;
		padding: .3em .6em .4em;
	}
	.is_pqContUnit_PC_h01 .flowlineUnitText {
		line-height: 2;
	}
	/* -- Individual -- */
	.is_pqContUnit_PC_h01 .is_flowlineUnit_01 .flowlineUnitHeading {	color: rgba(var(--roomplan-themeColor-accent_4), 1);}
	.is_pqContUnit_PC_h01 .is_flowlineUnit_02 .flowlineUnitHeading {	color: rgba(var(--roomplan-themeColor-accent_3), 1);}
	.is_pqContUnit_PC_h01 .is_flowlineUnit_01 .flowlineUnitHeading .headingText {	background: rgba(var(--roomplan-themeColor-accent_4), 1);}
	.is_pqContUnit_PC_h01 .is_flowlineUnit_02 .flowlineUnitHeading .headingText {	background: rgba(var(--roomplan-themeColor-accent_3), 1);}
	.is_pqContUnit_PC_h01 .is_flowlineUnit_01 .flowlineUnitText {
		display: grid;
		grid-template-columns: 1fr;
	}
	.is_pqContUnit_PC_h01 .is_flowlineUnit_01 .flowlineUnitText img {
		order: 1;
		display: block;
		width: 68.571428%;
		margin-top: 1.1em;
		margin-left: auto;
	}
@media screen and (max-width: 1200px) {
	.is_pqContUnit_PC_h01 .madorizuWrap {
		grid-template-columns: 1fr;
		gap: 40px 0;
		/*margin-top: 10px;*/
	}
	.is_pqContUnit_PC_h01 .madorizuBox .madorizu {
		width: 70%;			/* feeling. */
		max-width: 500px;	/* feeling. */
		margin-left: auto;
		margin-right: auto;
	}
	.is_pqContUnit_PC_h01 .flowlineBox {
		order: 0;		/* リセット */
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 40px;
		padding-top: 0; /* リセット */
	}
	.is_pqContUnit_PC_h01 .flowlineUnit + .flowlineUnit {
		margin-top: 0; /* リセット */
	}
	.is_pqContUnit_PC_h01 .flowlineUnitHeading {
		line-height: 1.35;
		font-family: var(--site-font_family-sans);
		font-size: 1.175em;
		font-weight: 500;
	}
	/* -- Individual -- */
	.is_pqContUnit_PC_h01 .is_flowlineUnit_01 .flowlineUnitText {
		display: block;
	}
	.is_pqContUnit_PC_h01 .is_flowlineUnit_01 .flowlineUnitText .txt {
		width: calc(100% - 40%);
	}
	.is_pqContUnit_PC_h01 .is_flowlineUnit_01 .flowlineUnitText .txt br {
		display: none;
	}
	.is_pqContUnit_PC_h01 .is_flowlineUnit_01 .flowlineUnitText img {
		float: right;
		width: 40%;
		min-width: 125px;
		margin: 0 0 .7em 1.7em;
	}
}
@media screen and (max-width: 1050px) {
	.is_pqContUnit_PC_h01 .madorizuWrap .dotBg_blue {
		translate: 32% -6.5vw;
	}
}
/* thisPlanningPointBox | ［ポイント一式］
--------------------------------- */
	.is_pqContUnit_PC_h01 .thisPlanningPointBox {
		--__txtBox-width: 1fr;
		--__picBox-width: calc(850 / var(--roomplan-pqContUnitBody-width-designSize) * 100%);
		display: grid;
		grid-template-columns: var(--__txtBox-width) var(--__picBox-width);
		align-items: center;
		gap: 0 calc(70 / var(--roomplan-pqContUnitBody-width-designSize) * 100%);
		margin-top: var(--site-marpad-L);
	}
	
	/* ----------------------- point01 */
	.is_pqContUnit_PC_h01 .is_thisPlanningPointBox_p01 .thisPlanningPointBox__picBox {
		position: relative;
	}
	.is_pqContUnit_PC_h01 .is_thisPlanningPointBox_p01 .thisPlanningPointBox__picBox .dotBg_blue {
		position: absolute;
		inset: 0 0 auto auto;
		translate: -25% -60%;
	}
@media screen and (max-width: 1050px) {
	.is_pqContUnit_PC_h01 .is_thisPlanningPointBox_p01 .thisPlanningPointBox__picBox .dotBg_blue {
		translate: 52% -4.5vw;
	}
}
	
	/* ----------------------- point02 */
	.is_pqContUnit_PC_h01 .is_thisPlanningPointBox_p02 {
		grid-template-columns: var(--__picBox-width) var(--__txtBox-width);
	}
	.is_pqContUnit_PC_h01 .is_thisPlanningPointBox_p02 .thisPlanningPointBox__picBox {
		order: -1;
		position: relative;
	}
	.is_pqContUnit_PC_h01 .is_thisPlanningPointBox_p02 .thisPlanningPointBox__picBox .dotBg_white {
		position: absolute;
		inset: 0 auto auto 0;
		translate: -34% -60%;
	}
	.is_pqContUnit_PC_h01 [id="js_switchImages_domaPicWrap_PC"] .thisPlanningPointBox__txtBox {
		position: relative;
		z-index: 1;
	}
	.is_pqContUnit_PC_h01 [id="js_switchImages_domaPicWrap_PC"] .thisPlanningPointBox__txtBox .balloon,
	.is_pqContUnit_PC_h01 [id="js_switchImages_domaPicWrap_PC"] .thisPlanningPointBox__picBox .domaPicParent {
		position: relative;
	}
	.is_pqContUnit_PC_h01 [id="js_switchImages_domaPicWrap_PC"] .thisPlanningPointBox__txtBox .balloonPic,
	.is_pqContUnit_PC_h01 [id="js_switchImages_domaPicWrap_PC"] .thisPlanningPointBox__picBox .domaPic {
		position: absolute;
		inset: 0;
		z-index: 0;
		visibility: hidden;
		opacity: 0;
		pointer-events: none;
		transition: visibility 0s ease .4s,
					opacity .4s ease;
	}
	.is_pqContUnit_PC_h01 [id="js_switchImages_domaPicWrap_PC"] .thisPlanningPointBox__txtBox .balloonPic[aria-hidden="false"],
	.is_pqContUnit_PC_h01 [id="js_switchImages_domaPicWrap_PC"] .thisPlanningPointBox__picBox .domaPic[aria-hidden="false"] {
		position: relative;
		z-index: 1;
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transition: visibility 0s ease,
					opacity .4s ease;
	}
	.is_pqContUnit_PC_h01 [id="js_switchImages_domaPicWrap_PC"] .thisPlanningPointBox__txtBox .balloon {
		display: block;
		width: calc(420 / 535 * 100%);
		min-width: 300px;
		margin-left: calc(-70 / 535 * 100%);
		margin-top: 3em;
	}
	.is_pqContUnit_PC_h01 [id="js_switchImages_domaPicWrap_PC"] .thisPlanningPointBox__txtBox .balloon img {
		width: 100%;
		max-width: none;
		height: auto;
	}
	.is_pqContUnit_PC_h01 [id="js_switchImages_domaPicWrap_PC"] .thisPlanningPointBox__picBox .js_domaPicButton {
		/* CLEAR */
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		color: inherit;
		font: inherit;
		text-align: inherit;
		background: transparent;
		border: none;
		border-radius: 0;
		
		/* RESET */
		position: absolute;
		inset: 0;
		z-index: 10;
	}
	
	/* ----------------------- point03 */
	.is_pqContUnit_PC_h01 .is_thisPlanningPointBox_p03 .thisPlanningPointBox__picBox .pic {
		position: relative;
		z-index: 0;
		width: min((360 / 850 * 100%), 360px);
		margin-left: 20px;
		padding-bottom: min((80 / 1800 * 100vw), 80px); /* .dotBg_blue の表示位置調整用 */
	}
	.is_pqContUnit_PC_h01 .is_thisPlanningPointBox_p03 .thisPlanningPointBox__picBox .pic .dotBg_blue {
		position: absolute;
		z-index: -1;
		inset: auto 0 0 auto;
		translate: 70% 0;
	}

@media screen and (max-width: 1050px) {
	.is_pqContUnit_PC_h01 .thisPlanningPointBox {
		display: block;
	}
	.is_pqContUnit_PC_h01 .thisPlanningPointBox__txtBox {
		width: 75%;
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
	}
	.is_pqContUnit_PC_h01 .thisPlanningPointBox__picBox {
		width: 100%;
		max-width: 700px;
		margin-left: auto;
		margin-right: auto;
	}
	.is_pqContUnit_PC_h01 .thisPlanningPointBox__txtBox + .thisPlanningPointBox__picBox {
		margin-top: 2em;
	}
	/* ----------------------- point02 */
	.is_pqContUnit_PC_h01 .is_thisPlanningPointBox_p02 .thisPlanningPointBox__picBox .dotBg_white {
		inset: auto auto 0 0;
		translate: -73% -33%;
	}
	.is_pqContUnit_PC_h01 [id="js_switchImages_domaPicWrap_PC"] .thisPlanningPointBox__txtBox .balloon {
		width: min(55%, 270px);
		min-width: 0;
		margin-left: auto;
		margin-top: 1.5em;
		margin-right: -17%;
	}
	.is_pqContUnit_PC_h01 [id="js_switchImages_domaPicWrap_PC"] .thisPlanningPointBox__txtBox + .thisPlanningPointBox__picBox {
		margin-top: 0;
	}
	/* ----------------------- point03 */
	.is_pqContUnit_PC_h01 .is_thisPlanningPointBox_p03 .thisPlanningPointBox__picBox .pic {
		width: min((360 / 700 * 100%), 360px);
		margin-left: auto;
		margin-right: auto;
	}
}

/* ==============
	ANIME
============== */
@media screen {
	.is_pqContUnit_PC_h01 [id="js_switchImages_domaPicWrap_PC"] .thisPlanningPointBox__txtBox .balloon[data-js_show_target="balloon"] {
		transform-origin: left center;
		opacity: 0;
	}
	.is_pqContUnit_PC_h01 [id="js_switchImages_domaPicWrap_PC"] .thisPlanningPointBox__txtBox .balloon[data-js_show_target-passed="balloon"] {
		animation: 1000ms cubic-bezier(.8, 0, .17, 1) 100ms both ANIME-domaPic_balloon__PC;
	}
	.is_pqContUnit_PC_h01 [id="js_switchImages_domaPicWrap_PC"] .thisPlanningPointBox__picBox .js_domaPic_clickMark {
		position: absolute;
		inset: 0;
		z-index: 9;
		width: clamp(30px, 6.75%, 45px);
		aspect-ratio: 1;
		line-height: .9;
		color: rgba(var(--roomplan-themeColor-accent_3), .35);
		background: currentColor;
		margin: auto;
		border: 2px solid #fff;
		border-radius: 100%;
		box-shadow: 0 3px 7px 0 rgba(0, 0, 0, .11);
	}
	.is_pqContUnit_PC_h01 [id="js_switchImages_domaPicWrap_PC"] .thisPlanningPointBox__picBox .js_domaPic_clickMark::before {
		content: "";
		position: absolute;
		inset: 0;
		border-radius: 100%;
		background: currentColor;
		animation: 2500ms ease 0ms both infinite ANIME-js_domaPic_clickMark__before__PC;
	}
}
@media screen and (max-width: 1050px) {
	.is_pqContUnit_PC_h01 [id="js_switchImages_domaPicWrap_PC"] .thisPlanningPointBox__txtBox .balloon[data-js_show_target-passed="balloon"] {
		animation-name: ANIME-domaPic_balloon__TB;
	}
}
@keyframes ANIME-domaPic_balloon__PC {
	0% {	opacity: 0; translate: 8% 0; scale: .98 1; }
	100% {	opacity: 1; translate: 0 0; scale: 1; }
}
@keyframes ANIME-domaPic_balloon__TB {
	0% {	opacity: 0; translate: 0 -30px; scale: 1 .98; }
	100% {	opacity: 1; translate: 0 0; scale: 1; }
}
@keyframes ANIME-js_domaPic_clickMark__before__PC {
	0% {		opacity: 1; scale: 0; }
	90%, 100% {	opacity: 0; scale: 3; }
}

/* inbloomBox | ［収納プランを監修］
--------------------------------- */
	.is_pqContUnit_PC_h01 .inbloomBox {
		display: grid;
		grid-template-columns: 1fr calc(700 / var(--roomplan-pqContUnitBody-width-designSize) * 100%) 1fr;
		align-items: center;
		gap: 0 calc(30 / var(--roomplan-pqContUnitBody-width-designSize) * 100%);
		padding: 25px calc(80 / var(--roomplan-pqContUnitBody-width-designSize) * 100%);
		background: #fff;
		margin-left: calc(var(--roomplan-pqContUnitHeader-hashNumber-width) * -1); /* はみ出させる */
	}
	.is_pqContUnit_PC_h01 .inbloomBox::before,
	.is_pqContUnit_PC_h01 .inbloomBox::after {
		content: "";
		display: block;
		width: 100%;
		height: 0;
		border-top: 1px solid;
	}
	.is_pqContUnit_PC_h01 .inbloomLogo img {
		width: 100%;
		max-width: none;
		height: auto;
	}
@media screen and (max-width: 1050px) {
	.is_pqContUnit_PC_h01 .inbloomBox {
		grid-template-columns: 1fr max(390px, 55%) 1fr;
		padding: 30px 3vw;
	}
}



/* is_pqContUnit_PC_h02
---------------------------------------------------- */
	.is_pqContUnit_PC_h02 .pqContUnitHeader {}
	.is_pqContUnit_PC_h02 .pqContUnitBody {}
	
	.is_pqContUnit_PC_h02 .firstTextBox {
		position: relative;
		z-index: 1;					/* マイナスマージンする分の重なり対策 */
		margin-top: var(--site-marpad-XS);
		width: 75%;					/* feeling. | マイナスマージンする分の重なり対策 */
		margin-bottom: -1.75em;		/* マイナスマージンする */
	}
@media screen and (max-width: 1200px) {
	.is_pqContUnit_PC_h02 .firstTextBox {
		width: 100%;					/* リセット */
		margin-bottom: 0;
	}
}
/* madorizuWrap | ［間取図を含む一式］
--------------------------------- */
	.is_pqContUnit_PC_h02 .madorizuWrap {
		display: grid;
		grid-template-columns: 1fr calc(820 / var(--roomplan-pqContUnitBody-width-designSize) * 100%);
		align-items: start;
		gap: 0 calc(100 / var(--roomplan-pqContUnitBody-width-designSize) * 100%);
	}
	.is_pqContUnit_PC_h02 .madorizuBox {
		position: relative;
		z-index: 0;
		padding-bottom: min((112 / 1800 * 100vw), 112px); /* .dotBg_white の表示位置調整用 */
	}
	.is_pqContUnit_PC_h02 .madorizuBox .dotBg_white {
		position: absolute;
		inset: auto 4.2% 0 auto;
		z-index: -1;
	}
	.is_pqContUnit_PC_h02 .madorizuBox .madorizu {
		translate: calc(70 / 820 * 100%) 0; /* 方位少しはみ出す */
	}

	/* thisPlanningPointBox | ［ポイント一式］
	--------------------------------- */
	.is_pqContUnit_PC_h02 .thisPlanningPointWrap {
		order: -1;
		padding-top: min((220 / 1800 * 100vw), 220px); /* 間取図に合わせてずらす */
	}
	.is_pqContUnit_PC_h02 .thisPlanningPointBox + .thisPlanningPointBox {
		margin-top: var(--site-marpad-S);
	}
	.is_pqContUnit_PC_h02 .thisPlanningPointBox__picBox {
		position: relative;
		z-index: 0;
		margin-top: 3em;
	}
	/* ----------------------- point01 */
	.is_pqContUnit_PC_h02 .is_thisPlanningPointBox_p01 {
	}
	/* ----------------------- point02 */
	.is_pqContUnit_PC_h02 .is_thisPlanningPointBox_p02 .pic {
		display: block;
		width: min((360 / 535 * 100%), 360px);
	}
	.is_pqContUnit_PC_h02 .is_thisPlanningPointBox_p02 .pic:nth-of-type(1) {
		position: relative;
		z-index: 1;
		padding-bottom: min((140 / 1800 * 100vw), 140px); /* 2つ目の写真の表示位置調整用 */
	}
	.is_pqContUnit_PC_h02 .is_thisPlanningPointBox_p02 .pic:nth-of-type(2) {
		position: absolute;
		inset: auto max((-100 / 1800 * 100vw), -100px) 0 auto;
		z-index: 0;
	}
	
@media screen and (max-width: 1200px) {
	.is_pqContUnit_PC_h02 .madorizuBox .madorizu {
		translate: 5.2% 0; /* 方位少しはみ出す */
	}
}
@media screen and (max-width: 1050px) {
	.is_pqContUnit_PC_h02 .madorizuWrap {
		display: block;
		margin-top: 10px;
	}
	.is_pqContUnit_PC_h02 .madorizuBox {
		width: 73%;			/* feeling. */
		max-width: 540px;	/* feeling. */
		margin-left: auto;
		margin-right: auto;
		padding-bottom: min((33 / 1050 * 100vw), 33px); /* .dotBg_white の表示位置調整用 */
	}
	.is_pqContUnit_PC_h02 .madorizuBox .dotBg_white {
		inset: auto 12.5% 0 auto;
	}
	.is_pqContUnit_PC_h02 .madorizuBox .madorizu {
		translate: 0 0; /* リセット */
	}

	/* thisPlanningPointBox | ［ポイント一式］
	--------------------------------- */
	.is_pqContUnit_PC_h02 .thisPlanningPointWrap {
		margin-top: 30px;
		padding-top: 0; /* リセット */
	}
	.is_pqContUnit_PC_h02 .thisPlanningPointBox__txtBox {
		width: 75%;
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
	}
	.is_pqContUnit_PC_h02 .thisPlanningPointBox__picBox {
		width: 100%;
		max-width: 700px;
		margin-left: auto;
		margin-right: auto;
		margin-top: 2em;
	}
	/* ----------------------- point02 */
	.is_pqContUnit_PC_h02 .is_thisPlanningPointBox_p02 .thisPlanningPointBox__picBox {
		max-width: 600px;
	}
	.is_pqContUnit_PC_h02 .is_thisPlanningPointBox_p02 .pic {
		width: min((340 / 600 * 100%), 340px);
	}
	.is_pqContUnit_PC_h02 .is_thisPlanningPointBox_p02 .pic:nth-of-type(1) {
		padding-bottom: 7.7vw; /* 2つ目の写真の表示位置調整用 */
	}
	.is_pqContUnit_PC_h02 .is_thisPlanningPointBox_p02 .pic:nth-of-type(2) {
		inset: auto 0 0 auto; /* リセット */
	}
}



/* is_pqContUnit_PC_h03
---------------------------------------------------- */
	.is_pqContUnit_PC_h03 .pqContUnitHeader {}
	.is_pqContUnit_PC_h03 .pqContUnitBody {}

/* madorizuWrap | ［間取図を含む一式］
--------------------------------- */
	.is_pqContUnit_PC_h03 .madorizuWrap {
		display: grid;
		grid-template: 
			"firstText madorizu" 1fr
			"point1    madorizu" auto /
			1fr calc(800 / var(--roomplan-pqContUnitBody-width-designSize) * 100%);
		justify-content: space-between;
		/*align-items: start;*/
		align-content: space-between;
		gap: 0 calc(55 / var(--roomplan-pqContUnitBody-width-designSize) * 100%);
	}
	.is_pqContUnit_PC_h03 .firstTextBox {					grid-area: firstText;}
	.is_pqContUnit_PC_h03 .madorizuBox {					grid-area: madorizu;}
	.is_pqContUnit_PC_h03 .is_thisPlanningPointBox_p01 {	grid-area: point1;}

	.is_pqContUnit_PC_h03 .firstTextBox {
		margin-top: var(--site-marpad-XS);
	}
	.is_pqContUnit_PC_h03 .madorizuBox .madorizu {
		margin-bottom: calc(max((-90 / 1800 * 100vw), -90px) - var(--site-marpad-L)); /* マイナスマージンする */
		translate: calc(70 / 820 * 100%) 0; /* 方位少しはみ出す */
	}
	.is_pqContUnit_PC_h03 .is_thisPlanningPointBox_p01 {
		width: min(89.25%, 535px);
		margin-top: 40px; /* 接した場合の余白 */
	}
@media screen and (max-width: 1200px) {
	.is_pqContUnit_PC_h03 .madorizuWrap {
		display: grid;
		grid-template: 
			"firstText firstText" auto
			"point1    madorizu" 1fr /
			1fr calc(800 / var(--roomplan-pqContUnitBody-width-designSize) * 100%);
		align-content: stretch;
		row-gap: 30px;
	}
	.is_pqContUnit_PC_h03 .madorizuBox .madorizu {
		translate: 5.2% 0; /* 方位少しはみ出す */
	}
	.is_pqContUnit_PC_h03 .is_thisPlanningPointBox_p01 {
		align-self: center;
		margin-top: 0; /* リセット */
	}
}
@media screen and (max-width: 1050px) {
	.is_pqContUnit_PC_h03 .madorizuWrap {
		display: block;
	}
	.is_pqContUnit_PC_h03 .madorizuBox {
		width: 70%;			/* feeling. */
		max-width: 500px;	/* feeling. */
		margin-left: auto;
		margin-right: auto;
		margin-top: 40px;
	}
	.is_pqContUnit_PC_h03 .madorizuBox .madorizu {
		margin-bottom: 0; /* リセット */
		translate: 0 0; /* リセット */
	}
	.is_pqContUnit_PC_h03 .is_thisPlanningPointBox_p01 {
		width: 75%;
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
		margin-top: 10px;
	}
}


/* thisPlanningPointBox
--------------------------------- */
	/* ----------------------- point02 */
	.is_pqContUnit_PC_h03 .is_thisPlanningPointBox_p02 {
		display: grid;
		grid-template-columns: calc(850 / var(--roomplan-pqContUnitBody-width-designSize) * 100%) 1fr;
		align-items: center;
		gap: 0 calc(70 / var(--roomplan-pqContUnitBody-width-designSize) * 100%);
		margin-top: var(--site-marpad-L);
	}
	.is_pqContUnit_PC_h03 .is_thisPlanningPointBox_p02 .thisPlanningPointBox__txtBox {
		padding-top:	min((90 / 1800 * 100vw), 90px); /* マイナスマージンする分の重なり対策 */
		padding-bottom:	min((90 / 1800 * 100vw), 90px);
	}
	.is_pqContUnit_PC_h03 .is_thisPlanningPointBox_p02 .is_thisPlanningPointBox__picBox_main {
		order: -1;
		position: relative;
	}
	.is_pqContUnit_PC_h03 .is_thisPlanningPointBox_p02 .is_thisPlanningPointBox__picBox_main .dotBg_blue {
		position: absolute;
		inset: auto auto 0 0;
		translate: -40% 75%;
	}
	.is_pqContUnit_PC_h03 .is_thisPlanningPointBox_p02 .is_thisPlanningPointBox__picBox_sub {
		grid-column: 1 / span 2;
	}
	.is_pqContUnit_PC_h03 .is_thisPlanningPointBox_p02 .is_thisPlanningPointBox__picBox_sub .subPicBox {
		position: relative;
		width: calc(690 / var(--roomplan-pqContUnitBody-width-designSize) * 100%);
		margin-left: auto;
		padding-bottom: min((125 / 1800 * 100vw), 125px); /* 2つ目の写真の表示位置調整用 */
	}
	.is_pqContUnit_PC_h03 .is_thisPlanningPointBox_p02 .is_thisPlanningPointBox__picBox_sub .pic {
		width: calc(360 / 690 * 100%);
	}
	.is_pqContUnit_PC_h03 .is_thisPlanningPointBox_p02 .is_thisPlanningPointBox__picBox_sub .pic:nth-of-type(1) {
		margin-left: auto;
	}
	.is_pqContUnit_PC_h03 .is_thisPlanningPointBox_p02 .is_thisPlanningPointBox__picBox_sub .pic:nth-of-type(2) {
		position: absolute;
		inset: auto auto 0 0;
	}
@media screen and (max-width: 1050px) {
	/* ----------------------- point02 */
	.is_pqContUnit_PC_h03 .is_thisPlanningPointBox_p02 {
		display: block;
	}
	.is_pqContUnit_PC_h03 .is_thisPlanningPointBox_p02 .thisPlanningPointBox__txtBox {
		width: 75%;
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
		padding-top:	0; /* リセット */
		padding-bottom:	0; /* リセット */
	}
	.is_pqContUnit_PC_h03 .is_thisPlanningPointBox_p02 .thisPlanningPointBox__picBox {
		width: 100%;
		max-width: 700px;
		margin-left: auto;
		margin-right: auto;
		margin-top: 2em;
	}
	.is_pqContUnit_PC_h03 .is_thisPlanningPointBox_p02 .is_thisPlanningPointBox__picBox_sub .subPicBox {
		width: 60%;
	}
}





/* =========================================================
	pqContwrap_SP | 'タブ切り替え・スライダー'
========================================================= */
	.pqContwrap_SP {
		display: none;
	}
@media screen and (max-width: 736px) {
	.pqContwrap_SP {
		display: block;
		margin-top: calc(var(--site-marpad-M) + 10px);
	}
}

/* pqContents_SP
---------------------------------------------------- */
	.pqContents_SP {
		--roomplan-pqContents_SP-keyColor_01:	#d2e7e0;
		--roomplan-pqContents_SP-keyColor_02:	#fff4de;
		--roomplan-pqContents_SP-keyColor_03:	#cfdce3;
	}
	.pqContents_SP__navWrap {
	}
	.pqContents_SP__navWrap .nav {
	}
	.pqContents_SP__navWrap .jsTabs_btn {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		background: linen;
	}
	.pqContents_SP__navWrap .jsTabs_btn li {
		display: grid;
	}
	.pqContents_SP__navWrap .jsTabs_btn a {
		display: grid;
		line-height: 1.3;
		font-family: var(--site-font_family-sans);
		font-size: clamp(1.1rem, (17 / 540 * 100vw), 2rem);
		font-weight: 500;
		letter-spacing: normal;
		padding: 1.25em 1.15em .7em;
	}
	.pqContents_SP__navWrap .jsTabs_btn li:nth-of-type(1) a {	background: var(--roomplan-pqContents_SP-keyColor_01); }
	.pqContents_SP__navWrap .jsTabs_btn li:nth-of-type(2) a {	background: var(--roomplan-pqContents_SP-keyColor_02); }
	.pqContents_SP__navWrap .jsTabs_btn li:nth-of-type(3) a {	background: var(--roomplan-pqContents_SP-keyColor_03); }
	
	.pqContents_SP__navWrap .jsTabs_btn a .label {
		display: grid;
		grid-template-columns: 1fr;
		align-content: space-between;
		gap: .8em;
	}
	.pqContents_SP__navWrap .jsTabs_btn a .hashNumber {
		display: block;
		width: 35%;
		padding-bottom: .1em;
	}
	.pqContents_SP__navWrap .jsTabs_btn a .subTitle_L {
		display: block;
	}
	.pqContents_SP__navWrap .jsTabs_btn a .subTitle_S {
		display: block;
		font-size: max(.935rem, .64em);
	}

	.pqContents_SP__contentsWrap .jsTabs_content .sliderWrap {
		padding: 2.777778vw;
		background: #ccc;
	}
	.pqContents_SP__contentsWrap [id="pqContents_SP_tab01"] .sliderWrap {	background: var(--roomplan-pqContents_SP-keyColor_01); }
	.pqContents_SP__contentsWrap [id="pqContents_SP_tab02"] .sliderWrap {	background: var(--roomplan-pqContents_SP-keyColor_02); }
	.pqContents_SP__contentsWrap [id="pqContents_SP_tab03"] .sliderWrap {	background: var(--roomplan-pqContents_SP-keyColor_03); }
	
	.pqContents_SP__contentsWrap .jsTabs_content [class*="slideItem"] {
	}
	.pqContents_SP__contentsWrap .jsTabs_content .slideImageWrap {
	}
/* ---------------------------------
	-- Individual --
--------------------------------- */
/* タブ_01
--------------------------------- */
	.pqContents_SP__contentsWrap [id="pqContents_SP_tab01"] .inbloomBox {
		width: calc(462 / 540 * 100%);
		background: #fff;
		margin-left: auto;
		margin-right: auto;
		padding: 1.75vw 8vw;
	}
	/* スライド
	----------------------- */
	.pqContents_SP__contentsWrap [id="pqContents_SP_slide01"] {
	}
	.pqContents_SP__contentsWrap [id="pqContents_SP_slide01"] .slideItem04 {
	}
	.pqContents_SP__contentsWrap [id="js_switchImages_domaPicWrap_SP"]
		position: relative;
	}
	.pqContents_SP__contentsWrap [id="js_switchImages_domaPicWrap_SP"] .domaPicParent {
		position: relative;
	}
	.pqContents_SP__contentsWrap [id="js_switchImages_domaPicWrap_SP"] .domaPic {
		position: absolute;
		inset: 0;
		z-index: 0;
		visibility: hidden;
		opacity: 0;
		pointer-events: none;
		transition: visibility 0s ease .25s,
					opacity .25s ease;
	}
	.pqContents_SP__contentsWrap [id="js_switchImages_domaPicWrap_SP"] .domaPic[aria-hidden="false"] {
		position: relative;
		z-index: 1;
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transition: visibility 0s ease,
					opacity .25s ease;
	}
	.pqContents_SP__contentsWrap [id="js_switchImages_domaPicWrap_SP"] .js_domaPicButton {
		/* CLEAR */
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		color: inherit;
		font: inherit;
		text-align: inherit;
		background: transparent;
		border: none;
		border-radius: 0;
		-webkit-tap-highlight-color: rgba(200, 200, 200, .06); /* タップハイライトを薄くする（iPhoneでボタンを押したことが分かるようにする視覚表現。初期値はrgba(0, 0, 0, 0.18);。transparentにすると完全に透過される） */

		/* RESET */
		position: absolute;
		inset: 32% 0 auto;
		z-index: 10;
		width: 80%;
		height: 64%;
		margin: auto;
		/*background: rgba(255, 0, 0, .5);*/
	}
/* ==============
	ANIME
============== */
@media screen {
	.pqContents_SP__contentsWrap [id="js_switchImages_domaPicWrap_SP"] .js_domaPic_clickMark {
		position: absolute;
		inset: 10% 0 0;
		z-index: 9;
		width: clamp(30px, 6.75%, 45px);
		aspect-ratio: 1;
		line-height: .9;
		color: rgba(var(--roomplan-themeColor-accent_3), .3);
		background: currentColor;
		margin: auto;
		border: 2px solid #fff;
		border-radius: 100%;
		box-shadow: 0 3px 7px 0 rgba(0, 0, 0, .11);
	}
	.pqContents_SP__contentsWrap [id="js_switchImages_domaPicWrap_SP"] .js_domaPic_clickMark::before {
		content: "";
		position: absolute;
		inset: 0;
		border-radius: 100%;
		background: currentColor;
		animation: 2500ms ease 0ms both infinite ANIME-js_domaPic_clickMark__before__SP;
	}
}
@keyframes ANIME-js_domaPic_clickMark__before__SP {
	0% {		opacity: 1; scale: 0; }
	90%, 100% {	opacity: 0; scale: 3; }
}

/* タブ_02
--------------------------------- */
	.pqContents_SP__contentsWrap [id="pqContents_SP_tab02"] {}
	/* スライド
	----------------------- */
	.pqContents_SP__contentsWrap [id="pqContents_SP_slide02"] {}

/* タブ_03
--------------------------------- */
	.pqContents_SP__contentsWrap [id="pqContents_SP_tab03"] {}
	/* スライド
	----------------------- */
	.pqContents_SP__contentsWrap [id="pqContents_SP_slide03"] {}


/* ----------------------------------------------------
	Swiper
---------------------------------------------------- */
	.pqContwrap_SP .swiper-container {
		background: #fff;
		padding-bottom: calc(10px + 8px + 10px); /* ページネーション分の余白 */
	}
	.pqContwrap_SP .swiper-button-next,
	.pqContwrap_SP .swiper-button-prev {
		display: grid;
		place-content: center;
		background: transparent;
		width: 30px;
	}
	.pqContwrap_SP .swiper-button-next.swiper-button-disabled,
	.pqContwrap_SP .swiper-button-prev.swiper-button-disabled {
		/*opacity: .35;*/
		display: none;
	}
	.pqContwrap_SP .swiper-button-prev::after,
	.pqContwrap_SP .swiper-button-next::after {
		/* 初期値 */
		content: "";
		display: block;
		/* content飛ばし */
		overflow: hidden;
		line-height: 1.35;
		font-size: 1rem;
		text-align: left;
		text-indent: 150%;
		white-space: nowrap;
		/* クリア */
		margin: 0;
		border: none;
		transform: none;
		/* リセット */
		width:	max(12px, (17 / 540 * 100vw));
		height:	max(12px, (17 / 540 * 100vw));
		background: #949495;
	}
	.pqContwrap_SP .swiper-button-prev::after {
		content: "← prev";
		clip-path: polygon(10% 50%, 100% 0%, 100% 100%);
	}
	.pqContwrap_SP .swiper-button-next::after {
		content: "next →";
		clip-path: polygon(0 0, 90% 50%, 0% 100%);
	}
	.pqContwrap_SP .swiper-pagination {
		line-height: 0;
	}
	.pqContwrap_SP .swiper-pagination > * {
		line-height: 1.1;
	}
	.pqContwrap_SP .swiper-container-horizontal > .swiper-pagination-bullets {
		bottom: 10px;
	}
	.pqContwrap_SP .swiper-pagination-bullet {
		width: 8px;
		height: 8px;
		background: #000;
		opacity: .2;
	}
	.pqContwrap_SP .swiper-pagination-bullet-active {
		background: rgba(var(--roomplan-themeColor-accent_3, 0, 122, 255), 1);
		opacity: 1;
	}





/* planningQualityCaptionBox
------------------------------------------------------------------------ */
	.planningQualityCaptionBox {
		color: #5c5c5c;
	}










/* ------------------------------------------------------------------------
	planslistContainer
------------------------------------------------------------------------ */
	.planslistContainer {}
	.planslistSection {
	}
	.planslistSection .planslistTxtBox {
		text-align: center;
	}
	.planslistSection .planslistTxtBox .planslistHeading {}
	.planslistSection .planslistTxtBox .planslistHeading .hWord {}
	.planslistSection .planslistTxtBox .planslistHeading .hTxt {}
	.planslistSection .planslistTxtBox .txt {}
	.planslistSection .planslistTxtBox .txt .cap {
		display: block;
		margin-top: 2.5em;
	}
@media screen and (max-width: 1050px) {
}

/* planslistButtonWrap
------------------------------------------------------------------------ */
	.planslistButtonWrap {
		margin-top: var(--site-marpad-L);
	}
	.planslistButtonSection {} /* 後述に'個別設定'アリ */
	
	.planslistButtonSection + .planslistButtonSection {
		margin-top: var(--site-marpad-XL);
	}
	.planslistButtonSectionHeader {
		position: relative;
		line-height: 1.35;
		color: rgba(var(--roomplan-themeColor-accent_1), 1);
		font-family: var(--site-font_family-en_2);
		font-size: clamp(2.2rem, (27 / 1050 * 100vw), 2.7rem);
		letter-spacing: normal;
		margin-bottom: var(--site-marpad-S);
		border-bottom: 1px solid rgba(var(--roomplan-themeColor-accent_2), 1);
	}
	.planslistButtonSectionHeader .label {
		display: inline-block;
		text-align: left;
		margin-bottom: -2.5px;
		padding-bottom: .6em;
		border-bottom: 4px solid rgba(var(--roomplan-themeColor-accent_1), 1);
	}
	.planslistButtonSectionHeader .label .ja {
		font-size: .925em;
		letter-spacing: .015em;
	}

	/* planBtnBox
	--------------------------------- */
	.planslistButtonSection .planBtnBox:where(.generalColBox) {
		--default-generalColBox-margin-t:	clamp(10px, (25 / 1800 * 100vw), 25px);
		--default-generalColBox-margin-lr:	clamp(10px, (25 / 1800 * 100vw), 25px);
	}
	/* ボタン1個の時 */
	.planslistButtonSection .planBtnBox.generalCol1 {
		justify-content: center;
	}
	.planslistButtonSection .planBtnBox.generalCol1 > * {	/* = a要素 */
		/*width: 100%;*/
		width: 65%;
		max-width: 570px; /* feeling. */
	}
	/* センター揃えにする時 */
	.planslistButtonSection .planBtnBox.justifyContentCenter {
		justify-content: center;
	}
	
	.planslistButtonSection .planBtnBox a {
		display: grid;
		grid-template-columns: 1fr clamp(20px, (44 / 1800 * 100vw), 44px);
		gap: 0 min((14 / 1800 * 100vw), 14px);
		line-height: 1.35;
		color: #000;
	/*	font-family: var(--site-font_family-en_2);*/	/* 小文字使用できなくなるため要確認 */
		font-family: var(--site-font_family-en_1);
		background: #effbfc url("../images/roomplan/plan_btn_bg_01.jpg") left top / cover no-repeat;
		padding: min((40 / 1600 * 100vw), 40px)
				 min((26 / 1800 * 100vw), 26px)
				 min((40 / 1600 * 100vw), 40px)
				 min((14 / 1800 * 100vw), 14px);
		border-left: 5px solid #71a7c2;
		box-shadow: 0 7px 11px -2px rgba(0, 0, 0, .28);
	}
	.planslistButtonSection .planBtnBox a .specList {
		display: grid;
		grid-template-columns: min((175 / 1800 * 100vw), 175px) 1fr;	/*grid-template-columns: min((165 / 1800 * 100vw), 165px) 1fr;*/
		gap: 0 min((30 / 1800 * 100vw), 30px);
	}
	.planslistButtonSection .planBtnBox a .specList .nameBox {
		display: grid;
		place-content: center;
		grid-template-columns: 1fr;
		font-size: min((24 / 1800 * 100vw), 2.4rem);
		text-align: center;
		letter-spacing: .03em;
		padding: 0 8px;
		border-right: 1px solid;
	}
	.planslistButtonSection .planBtnBox a .specList .nameBox .spec-type {}
	.planslistButtonSection .planBtnBox a .specList .nameBox .spec-type .alp {
		line-height: .85;
		font-size: 2.15em;
	}
	.planslistButtonSection .planBtnBox a .specList .nameBox .spec-type .type {
		margin-left: -.1em;
	}
	.planslistButtonSection .planBtnBox a .specList .nameBox .spec-typePoint {
		margin-top: .15em;
	}
	.planslistButtonSection .planBtnBox a .specList .nameBox .spec-typePoint .word {
		line-height: 1.1;
		color: #fff;
		font-size: .775em;
		background: #71a7c2;
		padding: .145em .475em .01em .675em;
		min-width: 4.85em;
	}
	.planslistButtonSection .planBtnBox a .specList .specBox {
		font-size: min((35 / 1800 * 100vw), 3.5rem);
	}
	.planslistButtonSection .planBtnBox a .specList .specBox .ldkUnit {}
	.planslistButtonSection .planBtnBox a .specList .specBox .ldkUnit > b {}
	.planslistButtonSection .planBtnBox a .specList .specBox .ldkUnit .ldkNum {
		line-height: .975;
		font-size: 1.325em;
	}
	.planslistButtonSection .planBtnBox a .specList .specBox .areaUnit {}
	.planslistButtonSection .planBtnBox a .specList .specBox .areaUnit .area {
		font-size: .711484em;
		margin-top: .115em;
	}
	.planslistButtonSection .planBtnBox a .specList .specBox .areaUnit .area .value {}
	.planslistButtonSection .planBtnBox a .specList .specBox .areaUnit .area .value em {
		line-height: 1.1;
		font-size: 1.408em;
	}
	.planslistButtonSection .planBtnBox a .moreBtn {
		display: grid;
		place-content: center;
		grid-template-columns: 1fr;
		font-size: 1rem;
	}
	.planslistButtonSection .planBtnBox a .moreBtn::before {
		content: "";
		display: block;
		width: 100%;
		aspect-ratio: 1;
		mask: center center / contain no-repeat;
		mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 44 44"><circle cx="22" cy="22" r="21.459" fill="none" stroke="%23000" stroke-miterlimit="10" stroke-width=".735"/><polyline points="17.838 32.569 28.406 22 17.838 11.431" fill="none" stroke="%23000" stroke-miterlimit="10" stroke-width=".735"/></svg>');
		background-color: currentColor;
	}
	.planslistButtonSection .planBtnBox a .moreBtn .more {
		position: absolute; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(0px 0px 99.99% 99.99%); overflow: hidden; width: 1px; height: 1px; white-space: nowrap; padding: 0; border: 0;
	}
	
	/* hover */
	.planslistButtonSection .planBtnBox a[href],
	.planslistButtonSection .planBtnBox a[href] .moreBtn::before {
		transition: .18s ease;
		transition-property: background, box-shadow, scale;
	}
	@media (hover: hover) and (pointer: fine) {
		.planslistButtonSection .planBtnBox a[href]:hover {
			box-shadow: 0 7px 10px -10px rgba(0, 0, 0, .77);
		}
		.planslistButtonSection .planBtnBox a[href]:hover .moreBtn::before {
			background-color: #71a7c2;
			scale: 1.08;
		}
	}
	.planslistButtonSection .planBtnBox a[href]:focus-visible {
			box-shadow: 0 7px 10px -10px rgba(0, 0, 0, .77);
	}
	.planslistButtonSection .planBtnBox a[href]:focus-visible .moreBtn::before {
			background-color: #71a7c2;
			scale: 1.08;
	}

@media screen and (max-width: 1050px) {
	/* planBtnBox
	--------------------------------- */
	.planslistButtonSection .planBtnBox:where(.generalColBox) {
		--default-generalColBox-margin-t:	clamp(6px, (15 / 1050 * 100vw), 15px);
		--default-generalColBox-margin-lr:	clamp(10px, (25 / 1050 * 100vw), 25px);
	}
	
	.planslistButtonSection .planBtnBox a {
		grid-template-columns: 1fr clamp(20px, (40 / 1050 * 100vw), 40px);
		gap: 0 min((14 / 1050 * 100vw), 14px);
		padding: min((34 / 1050 * 100vw), 34px)
				 min((24 / 1050 * 100vw), 24px)
				 min((34 / 1050 * 100vw), 34px)
				 min((14 / 1050 * 100vw), 14px);
	}
	.planslistButtonSection .planBtnBox a .specList {
		grid-template-columns: min((135 / 1050 * 100vw), 135px) 1fr;
		gap: 0 min((30 / 1050 * 100vw), 30px);
	}
	.planslistButtonSection .planBtnBox a .specList .nameBox {
		font-size: min((20 / 1050 * 100vw), 2.0rem);
	}
	.planslistButtonSection .planBtnBox a .specList .specBox {
		font-size: min((30 / 1050 * 100vw), 3.0rem);
	}
}
@media screen and (max-width: 736px) {
	.planslistButtonSectionHeader {
		font-size: clamp(1.4rem, (15.75 / 540 * 100vw), 1.9rem);
		text-align: center;
	}
	.planslistButtonSectionHeader .label {
		margin-bottom: -1px;
		border-bottom-width: 3px;
	}

	/* planBtnBox
	--------------------------------- */
	.planslistButtonSection .planBtnBox:where(.generalColBox) {
		--default-generalColBox-margin-t:	clamp(6px, (15 / 540 * 100vw), 15px);
		justify-content: center;
	}
	.planslistButtonSection .planBtnBox > *,				/* = a要素 */
	.planslistButtonSection .planBtnBox.generalCol1 > * {	/* = a要素 */
		width: 75%;
		max-width: 450px; /* feeling. */
	}
	
	.planslistButtonSection .planBtnBox a {
		grid-template-columns: 1fr clamp(20px, (30 / 540 * 100vw), 35px);
		gap: 0 min((10 / 540 * 100vw), 10px);
		padding: min((26 / 540 * 100vw), 26px)
				 min((20 / 540 * 100vw), 20px)
				 min((26 / 540 * 100vw), 26px)
				 min((8 / 540 * 100vw), 8px);
		box-shadow: 0 5px 9px -2px rgba(0, 0, 0, .28);
	}
	.planslistButtonSection .planBtnBox a .specList {
		grid-template-columns: min((120 / 540 * 100vw), 130px) 1fr;
		gap: 0 min((26 / 540 * 100vw), 26px)
	}
	.planslistButtonSection .planBtnBox a .specList .nameBox {
		font-size: min((17 / 540 * 100vw), 2.0rem);
	}
	.planslistButtonSection .planBtnBox a .specList .specBox {
		font-size: min((25 / 540 * 100vw), 3.1rem);
	}
	
	/* hover */
	@media (hover: hover) and (pointer: fine) {
		.planslistButtonSection .planBtnBox a[href]:hover {
			box-shadow: 0 5px 8px -7px rgba(0, 0, 0, .77);
		}
	}
	.planslistButtonSection .planBtnBox a[href]:focus-visible {
			box-shadow: 0 5px 8px -7px rgba(0, 0, 0, .77);
	}
}
@media screen and (max-width: 539.98px) {
	/* planBtnBox
	--------------------------------- */
	.planslistButtonSection .planBtnBox:where(.generalColBox) {
		--default-generalColBox-margin-t:	clamp(5px, (8 / 360 * 100vw), 15px);
	}
	.planslistButtonSection .planBtnBox > *,				/* = a要素 */
	.planslistButtonSection .planBtnBox.generalCol1 > * {	/* = a要素 */
		width: 100%;
		max-width: 350px;
	}
	
	.planslistButtonSection .planBtnBox a {
		grid-template-columns: 1fr clamp(16px, (27 / 360 * 100vw), 30px);
		gap: 0 clamp(6px, (8 / 360 * 100vw), 10px);
		padding: clamp(15px, (20 / 360 * 100vw), 26px)
				 clamp(11px, (15 / 360 * 100vw), 20px)
				 clamp(15px, (20 / 360 * 100vw), 26px)
				 clamp(4px, (6 / 360 * 100vw), 8px);
		box-shadow: 0 5px 7px -2px rgba(0, 0, 0, .28);
	}
	.planslistButtonSection .planBtnBox a .specList {
		grid-template-columns: clamp(80px, (95 / 360 * 100vw), 120px) 1fr;
		gap: 0 clamp(15px, (20 / 360 * 100vw), 26px)
	}
	.planslistButtonSection .planBtnBox a .specList .nameBox {
		font-size: clamp(1.3rem, (14.5 / 360 * 100vw), 1.7rem);
		padding: 0 5px;
	}
	.planslistButtonSection .planBtnBox a .specList .specBox {
		font-size: clamp(1.8rem, (21 / 360 * 100vw), 2.5rem);
	}
}


/* ----------------------------------------------------
	-- Individual -- | LDK分けや期分けされたときの planslistButtonSection の'個別設定'
---------------------------------------------------- */

/* #plan3LDK
---------------------------------------------------- */
	[id="plan3LDK"] {}

/* #plan4LDK
---------------------------------------------------- */
	[id="plan4LDK"] {}

/* #senchakujun | 先着順
---------------------------------------------------- */
	[id="senchakujun"] {}

/* #jikiIkou | 次期以降
---------------------------------------------------- */
	[id="jikiIkou"] {}





/* performanceLabelWrap
------------------------------------------------------------------------ */
	.performanceLabelWrap {
		width: 65%;
		max-width: 960px;
		margin-left: auto;
		margin-right: auto;
	}
	.performanceLabelBox {
		display: grid;
		grid-template-columns: calc(446 / 960 * 100%) 1fr;
		justify-content: center;
		gap: clamp(30px, (50 / 540 * 100vw), 50px) clamp(45px, (60 / 1800 * 100vw), 60px);
	}
	.performanceLabelunit {}
	.casbee.performanceLabelunit {}
	.bels.performanceLabelunit .cap {
		display: block;
		line-height: 1.6;
		letter-spacing: .01em;
		margin-top: .65em;
	}
@media screen and (max-width: 1050px) {
	.performanceLabelWrap {
		width: 80%;
	}
}
@media screen and (max-width: 736px) {
	.performanceLabelBox {
		grid-template-columns: calc(315 / 540 * 100vw);
	}
}
@media screen and (max-width: 736px) {
	.performanceLabelBox {
		grid-template-columns: calc(315 / 540 * 100vw);
	}
}
@media screen and (max-width: 539.98px) {
	.performanceLabelBox {
		grid-template-columns: min(100%, 315px);
	}
}




















/* =======================================================================================
	PAGE | detailP
======================================================================================= */

/* ------------------------------------------------------------------------
	BASE
------------------------------------------------------------------------ */
	:where(.detailP) main {
		color: rgba(var(--roomplan-themeColor-base_text), 1);
		background: rgba(var(--roomplan-themeColor-base), 1);
	}


/* ------------------------------------------------------------------------
	COMMON
------------------------------------------------------------------------ */
/* roomplanDetailContbox
------------------------------------------------------------------------ */
	.roomplanDetailContbox {
		width: var(--site-sizeContentWide-M1);
		max-width: 1260px;
		margin-left: auto;
		margin-right: auto;
	}





/* ------------------------------------------------------------------------
	pt-roomplanDetail_01
------------------------------------------------------------------------ */
	.pt-roomplanDetail_01 {}



/* floorPlanContainer
------------------------------------------------------------------------ */
	.floorPlanContainer {
		padding-top: var(--site-marpad-L);
		padding-bottom: var(--site-marpad-XXL);
	}



/* -----------------------------------------------------------------------------
	プラン詳細の共通スタイル											2023.06
----------------------------------------------------------------------------- */

/* 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 - 内容
------------------------------------------------------------------------ */
		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetail_Common_Styles START */
		/* 文字/リストスタイル/微調整の余白 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
		/* specWrap
		---------------------------------------------------- */
			.floorPlanSection .specWrap .spec1 {
				line-height: 1.2;
				font-size: 1.5rem;
				letter-spacing: .08em;
			}
			.floorPlanSection .specWrap .spec2 {
				line-height: 1.35;
				font-size: 1.5rem;
				letter-spacing: .04em;
			}
			.floorPlanSection .specWrap small {
				color: inherit;
				font: inherit;
			}
			/* spec1
			----------------------- */
			.floorPlanSection .specWrap .spec1 {
				text-align: center;
			}
			.floorPlanSection .specWrap .spec1 .spec-type {
				/*--M-fluidFontSize-max-fontsize: 46;
				--M-fluidFontSize-min-fontsize: 24;
				--M-fluidFontSize-max-viewport: 1200;
				--M-fluidFontSize-min-viewport: 480;
				--M-fluidFontSize-fontSize: clamp( var(--M-fluidFontSize-min-fontsize) * .1rem, (var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - (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))), var(--M-fluidFontSize-max-fontsize) * .1rem );
				font-size: var(--M-fluidFontSize-fontSize);
				*/
				min-height: 0.001vw;	/* for safari | font-sizeにclamp()使用時必須 */
				color: rgba(var(--site-themeColor-main), 1);
				font-family: var(--site-font_family-en_1);
				font-size: 1.733333em;
				/*letter-spacing: .035em;*/
				white-space: nowrap; /* 不要なら削除可 */
			}
			.floorPlanSection .specWrap .spec1 .spec-type .alp {
				line-height: .7;
				font-size: 2.5em;
				/*letter-spacing: -.04em;*/
			}
			.floorPlanSection .specWrap .spec1 .spec-type .type {
				font-size: 1em;
				margin-left: -.25em;
			}
			.floorPlanSection .specWrap .spec1 .spec-typePoint .word {
				font-size: 1em;
			}
			/* spec2
			----------------------- */
			.floorPlanSection .specWrap .spec2 {
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk {
				line-height: 1.2;
				font-size: 2em;
				letter-spacing: .08em;
				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 {
				/*font-size: 1.4em;*/
				margin-right: 1px;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk .ldkUnit .ldkNum {
				line-height: .85;
				font-size: 1.3em;
				margin-right: .05em;
			}
			.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 1px;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk .ldkUnit > .element b.ja {
				font-size: .89em;
				letter-spacing: .07em;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk .kana {
				letter-spacing: normal;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk .lrg {
				display: inline-block;
				line-height: 1;
				font-size: 1.2em;
				translate: 0 .01em;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk .ldkUnit > .element b.ja .lrg {
				font-size: 1.35em;
			}
			.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-caption);
			}
			.floorPlanSection .specWrap .spec2 .value {
				font-size: 1.6em;
				margin-right: .04em;
				/*margin-left: .1em;*/
			}
			/*.floorPlanSection .specWrap .spec2 .spec-excDwelling .value,
			.floorPlanSection .specWrap .spec2 .spec-lot .value,
			.floorPlanSection .specWrap .spec2 .wrap-spec-building .value,
			.floorPlanSection .specWrap .spec2 .spec-otherAreas .value {
							font-family: var(--site-font_family-en_1);
							font-size: 2.786em;
				font-size: 1.6em;
							letter-spacing: -.01em;
				margin-right: .04em;
			}*/
			.floorPlanSection .specWrap .spec2 .sttl {
				display: inline-block;
				margin-right: .825em;
			}
			.floorPlanSection .specWrap .spec2 .tsubo {
				display: inline-block;
				letter-spacing: .08em;
				margin-left: -.3em;
				margin-right: -.6em;
			}
			.floorPlanSection .specWrap .spec2 small {
				display: inline-block;
				/*font-size: .857em;*/
				font-size: max(1rem, .857em);
				margin: .5em 0 .25em;
			}
			.floorPlanSection .specWrap .spec2 small .kana {
				letter-spacing: normal;
			}

		/* 余白設定 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
		/* specWrap
		---------------------------------------------------- */
			/* spec1
			----------------------- */
			.floorPlanSection .specWrap .spec1 {}
			/* spec2
			----------------------- */
			.floorPlanSection .specWrap .spec2 .spec-ldk,
			.floorPlanSection .specWrap .spec2 .spec-excDwelling,
			.floorPlanSection .specWrap .spec2 .spec-lot,
			.floorPlanSection .specWrap .spec2 .spec-building,
			.floorPlanSection .specWrap .spec2 .spec-building_caption,
			.floorPlanSection .specWrap .spec2 .spec-service,
			.floorPlanSection .specWrap .spec2 .spec-otherAreas {
				padding: .2em 0;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk {
				margin-bottom: .4em;
			}
			.floorPlanSection .specWrap .spec2 .spec-building_floorBox {
				padding-top: 1em;
			}
			.floorPlanSection .specWrap .spec2 .spec-service {
				padding-top: .35em;
			}

			.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-floor {
				margin-right: 1.25em;
			}
		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetail_Common_Styles END */


/* =================
	PCレイアウト
================= */
	/* specWrap
	---------------------------------------------------- */
	.floorPlanSection .specWrapDeco {
		/*text-align: center;	*/		/* inline-flex の中央揃えセット(1/3) */
	}
	.floorPlanSection .specWrap {
		/*display: inline-flex;*/		/* inline-flex の中央揃えセット(2/3) */
		/*justify-content: center;*/
		/*text-align: left;*/			/* inline-flex の中央揃えセット(3/3) */
	}
	
	.floorPlanSection .specWrapDeco {
	}
	.floorPlanSection .specWrap {
		display: flex;				/* flex の中央揃えセット(1/2) */
		justify-content: center;	/* flex の中央揃えセット(2/2) */
		max-width: 1260px;
		margin: 0 auto;
	}
	/* spec1
	----------------------- */
	.floorPlanSection .specWrap .spec1 {
		flex: 0 0 210px;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		align-content: center;
		padding: 1rem 15px;
		border-right: 1px solid #bbb;
	}
	.floorPlanSection .specWrap .spec1 .spec-typePoint {
		flex: 1 1 100%;
		display: flex;
		flex-direction: column;		/* 縦並びにしたい場合（PCレイアウトで縦並びにした場合、SPレイアウトでは横並びに変更する） */
	/*	flex-wrap: wrap;*/			/* 横並びにしたい場合（flex-wrap: wrap;忘れずに） */
	/*	flex-direction: row;*/		/* 横並びにしたい場合（flex-wrap: wrap;忘れずに） */
		justify-content: center;
		align-items: center;
		gap: 4px 3px;
		margin-top: 1.7rem;
	}
	.floorPlanSection .specWrap .spec1 .spec-typePoint .word {
		line-height: 1.1;
		color: #fff;
		background: #71a7c2;
		/*margin-left: auto;
		margin-right: auto;*/
		padding: .3em 1.3em .4em 1.6em;
	}
	/* spec2
	----------------------- */
	.floorPlanSection .specWrap .spec2 {
		/*flex: 1 1;*/
		padding: 1rem 15px 1rem 50px;
	}
	.floorPlanSection .specWrap .spec2 [class*="spec-"].spec2AreasUnit {
		display: grid;
		grid-template-columns: auto 1fr;
		align-items: baseline;
	}
	.floorPlanSection .specWrap .spec2 [class*="spec-"].spec2AreasUnitTerm {
		white-space: nowrap;
	}
	.floorPlanSection .specWrap .spec2 [class*="spec-"].spec2AreasUnitData {}
	
	/* planMeritWrap
	---------------------------------------------------- */
	.floorPlanSection .planMeritWrapDeco {
		width: 100%;
		display: flex;
		justify-content: center;
	}
	.floorPlanSection .planMeritWrap {
		max-width: 750px;
		line-height: 1.9;
		font-size: 1.4rem;
		margin: 50px auto 0;
		padding: 0;
	}
	.floorPlanSection .planMeritWrap li {
		display: grid;
		grid-template-columns: 1.6em 1fr;
		align-items: baseline;
		gap: 0 1em;
		margin: .5em 0;
	}
	.floorPlanSection .planMeritWrap li:before {
		content: "";
		display: block;
		width: 100%;
		height: 0;
		border-top: 1px solid #71a7c2;
		translate: 0 -.4em;
	}
	
	/* planPic
	---------------------------------------------------- */
	.floorPlanSection .planPic {
		text-align: center;
		background: #fff;
		margin: 70px auto 0;
		padding: 80px 40px;
		/*box-shadow: 0 0 0 1px rgba(var(--site-themeColor-accent_1), .6) inset;*/
	}
	
	/* captionWrap
	---------------------------------------------------- */
	.floorPlanSection .captionWrap {
		padding-top: 1.5em;
	}

/* =================
	SPレイアウト
================= */
@media screen and (max-width: 1050px) {
		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetail_Common_Styles START */
			.floorPlanSection .specWrap .spec1,
			.floorPlanSection .specWrap .spec2 {
				font-size: 1.3rem;
			}
			.floorPlanSection .specWrap .spec1 .spec-type .alp {
				font-size: 2.4em;
				font-size: clamp(2.25em, (54 / 650 * 100vw), 2.4em);
			}
			.floorPlanSection .specWrap .spec1 .spec-typePoint .word {
				font-size: 1.05em;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk .ldkUnit .ldkNum {
				line-height: inherit;
			}
		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetail_Common_Styles END */

	/* specWrap
	---------------------------------------------------- */
	.floorPlanSection .specWrapDeco {
		max-width: 780px; /* feeling. */
		margin-left: auto;
		margin-right: auto;
		padding: 0 0 20px;
		border-bottom: 1px dotted #666;
	}
	.floorPlanSection .specWrap {
		display: block;
		/*max-width: 1260px;*/
		max-width: none;
		text-align: center;			/* inline-flex の中央揃えセット(1/3) */
	}
	/* spec1
	----------------------- */
	.floorPlanSection .specWrap .spec1 {
		padding: 0 0 24px;
		border-right: none;
		border-bottom: 1px dotted #666;
	}
	.floorPlanSection .specWrap .spec1 .spec-typePoint {
	/*	flex-direction: column;*/	/* 縦並びにしたい場合（PCレイアウトで縦並びにした場合、SPレイアウトでは横並びに変更する） */
		flex-wrap: wrap;			/* 横並びにしたい場合（flex-wrap: wrap;忘れずに） */
		flex-direction: row;		/* 横並びにしたい場合（flex-wrap: wrap;忘れずに） */
		margin-top: 1.35rem;
	}

	/* spec2
	----------------------- */
	.floorPlanSection .specWrap .spec2 {
		display: inline-block;		/* inline-flex の中央揃えセット(2/3) */
		text-align: left;			/* inline-flex の中央揃えセット(3/3) */
		/*max-width: 1260px;*/
		margin: 0 auto;
		padding: 15px 0 0;
	}
	
	/* planMeritWrap
	---------------------------------------------------- */
	.floorPlanSection .planMeritWrap {
		margin-top: 35px;
	}
	
	/* planPic
	---------------------------------------------------- */
	.floorPlanSection .planPic {
		margin-top: clamp(40px, (70 / 736 * 100vw), 70px);
		padding: clamp(30px, (70 / 736 * 100vw), 70px) clamp(12px, (40 / 1200 * 100vw), 40px);
	}
}
@media screen and (max-width: 736px) {
	/* planPic
	---------------------------------------------------- */
	.floorPlanSection .planPic {
		margin-left:	-4vw;	/* ちょっと大きくする 1/4 */
		margin-right:	-4vw;	/* ちょっと大きくする 2/4 */
	}
	/* captionWrap
	---------------------------------------------------- */
	.floorPlanSection .captionWrap {
		margin-left:	-4vw;	/* ちょっと大きくする 3/4 */
		margin-right:	-4vw;	/* ちょっと大きくする 4/4 */
	}
}
@media screen and (max-width: 539.98px) {
		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetailText_Styles START */
			.floorPlanSection .specWrap .spec1,
			.floorPlanSection .specWrap .spec2 {
				font-size: 1.25rem;
			}
			.floorPlanSection .specWrap .spec2 {
				letter-spacing: .06em;
			}
		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetailText_Styles END */
		
		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetail_Common_Styles START */
			.floorPlanSection .specWrap .spec1 .spec-type {
				font-size: 2.95em;
				font-size: 1.6em;
			}
			.floorPlanSection .specWrap .spec2 .spec-ldk {
				font-size: 1.5em;
				font-size: 1.9em;
			}
			.floorPlanSection .specWrap .spec1 .spec-type .alp {
				font-size: max(2.2em, (49 / 500 * 100vw));
			}
			.floorPlanSection .specWrap .spec2 .value {
				font-size: 1.6em;
				letter-spacing: .03em;
			}
			/*.floorPlanSection .specWrap .spec2 .spec-excDwelling .value,
			.floorPlanSection .specWrap .spec2 .spec-lot .value,
			.floorPlanSection .specWrap .spec2 .wrap-spec-building .value,
			.floorPlanSection .specWrap .spec2 .spec-otherAreas .value {
				font-size: 2.65em;
				font-size: 1.6em;
			}*/
			.floorPlanSection .specWrap .spec2 small {
				display: block;
			}
			.floorPlanSection .specWrap .spec2 small.SP_inbl {
				display: inline-block;
			}
		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetail_Common_Styles END */
	
	/* specWrap
	---------------------------------------------------- */
	.floorPlanSection .specWrapDeco {
		padding-bottom: clamp(22px, (33 / 600 * 100vw), 33px);
		/*padding: 0;
		border-bottom: none;*/
	}
	.floorPlanSection .specWrap {
		/*text-align: left;*/			/* inline-flex の中央揃えをリセットする(1/2) */
	}
	/* spec1
	----------------------- */
	/*.floorPlanSection .specWrap .spec1 {
		padding: 0;
		border-bottom: none;
	}*/
	.floorPlanSection .specWrap .spec1 .spec-typePoint {
		margin-top: 1.35rem;
	}

	/* spec2
	----------------------- */
	.floorPlanSection .specWrap .spec2 {
		/*display: block;*/				/* inline-flex の中央揃えをリセットする(2/2) */
		padding-top: clamp(22px, (33 / 600 * 100vw), 33px);
	}
	.floorPlanSection .specWrap .spec2 .spec-ldk,
	.floorPlanSection .specWrap .spec2 .spec-excDwelling,
	.floorPlanSection .specWrap .spec2 .spec-lot,
	.floorPlanSection .specWrap .spec2 .spec-building,
	.floorPlanSection .specWrap .spec2 .spec-building_floorBox,
	.floorPlanSection .specWrap .spec2 .spec-service,
	.floorPlanSection .specWrap .spec2 .spec-otherAreas {
		/*display: block;
		text-align: left;*/
		/*padding: .6em 0 .4em;
		border-bottom: 1px dotted #666;*/
	}
	.floorPlanSection .specWrap .spec2 .spec-ldk {
		/*margin-bottom: 0;*/
		/*padding-top: .4em;
		border-top: 1px dotted #666;*/
	}
	
	/* planMeritWrap
	---------------------------------------------------- */
	.floorPlanSection .planMeritWrap {
		margin-top: 35px;
	}
	.floorPlanSection .planMeritWrap {
		display: block;
		font-size: 1.3rem;
		margin-top: clamp(35px, (50 / 600 * 100vw), 50px);
	}
	.floorPlanSection .planMeritWrap li {
		grid-template-columns: 1.2em 1fr;
		gap: 0 .8em;
		margin: .75em 0;
	}
}
@media screen and (max-width: 480px) {
		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetailText_Styles START */
			.floorPlanSection .specWrap .spec1,
			.floorPlanSection .specWrap .spec2 {
				font-size: 1.2rem;
			}
		/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PlanDetailText_Styles END */
	
	/* specWrap
	---------------------------------------------------- */
	
	/* planMeritWrap
	---------------------------------------------------- */
	.floorPlanSection .planMeritWrap {
		font-size: 1.22rem;
	}
}
@media screen and (max-width: 320px) {
	/* planPic
	---------------------------------------------------- */
	.floorPlanSection .planPic {
		margin-left:	-12px;	/* ちょっと大きくする 1/4 */
		margin-right:	-12px;	/* ちょっと大きくする 2/4 */
	}
	/* captionWrap
	---------------------------------------------------- */
	.floorPlanSection .captionWrap {
		margin-left:	-12px;	/* ちょっと大きくする 3/4 */
		margin-right:	-12px;	/* ちょっと大きくする 4/4 */
	}
}



/* -----------------------------------------------------------------------------
	プランリスト
----------------------------------------------------------------------------- */

/* roomplanDetailNavWrap
------------------------------------------------------------------------ */
	.roomplanDetailNavWrap {
		--roomplan-roomplanDetailNav-wrap-BgColor:				transparent;
		--roomplan-roomplanDetailNav-deco-BdColor:				#bab297;
		--roomplan-roomplanDetailNav-a-color:					#fff;
		--roomplan-roomplanDetailNav-a-BgColor:					rgba(0, 47, 96, .4); /* #002f60 */
		--roomplan-roomplanDetailNav-a-hover-BgColor:			rgba(0, 47, 96, .65);
		--roomplan-roomplanDetailNav-a-current-BgColor:			rgba(0, 47, 96, .57);
		--roomplan-roomplanDetailNav-a-current-BoxShadowColor:	rgba(0, 47, 96, .1);
		--roomplan-roomplanDetailNav-a-BdColor:					transparent;
	}
	.roomplanDetailNavDeco {
		/*padding: var(--site-marpad-S) 0;
		border: 0 solid var(--roomplan-roomplanDetailNav-deco-BdColor);
		border-width: 1px 0;*/
	}
	.roomplanDetailNavHeading {
		line-height: 1.1;
		color: rgba(var(--roomplan-themeColor-accent_1), 1);
		font-family: var(--site-font_family-en_2);
		font-size: 1.5em;
		text-align: center;
		text-transform: uppercase;
		letter-spacing: .275em;
		margin-bottom: var(--site-marpad-XXS);
	}
	.roomplanDetailNav ul {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}
	.roomplanDetailNav li {
		flex: 0 0 32.333%;
		display: block;
		margin: 5px 0.5%;
	}
	.roomplanDetailNav li a {
		display: flex;
		position: relative;
		z-index: 1;
		width: 100%;
		max-width: none;
		min-height: 0.001vw;				/* for safari | font-sizeにclamp()使用時必須 */
		line-height: 1.35;
		color: var(--roomplan-roomplanDetailNav-a-color);
		font-family: var(--site-font_family-en_1);
		font-size: clamp(1.5rem, (18 / 1440 * 100vw), 1.8rem);
		letter-spacing: .08em;
		background: var(--roomplan-roomplanDetailNav-a-BgColor);
		margin: 0;
		padding: 15px .55em 15px 6px;
		border: 1px solid var(--roomplan-roomplanDetailNav-a-BdColor);
		transition: background .2s ease-out;
	}
	/*.roomplanDetailNav li a::before {
		content: "";
		position: absolute;
		inset: 0;
		z-index: -1;
		background: var(--roomplan-roomplanDetailNav-a-hover-BgColor);
		opacity: 0;
		clip-path: inset(0 100% 0 0);
		transition: opacity .18s ease-out, clip-path .18s ease-out;
	}*/
	.roomplanDetailNav li a small {
		color: inherit;
		font: inherit;
		letter-spacing: inherit;
	}
	.roomplanDetailNav li .nameBox,
	.roomplanDetailNav li .specBox {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		/*padding: 3px 0;*/
		padding: 0 0;
	}
	.roomplanDetailNav li .nameBox {
		flex: 0 0 5em;
		justify-content: center;
		text-align: center;
		margin-right:	.8em;
		padding-right:	.2em;
		border-right: 1px solid currentColor;
	}
	.roomplanDetailNav li .nameBox .alp {
		display: inline-block;
		line-height: 1.1;
		font-size: 1.222222em;
		margin-left: -.05em;
	}
	.roomplanDetailNav li .nameBox .type {
		font-size: max(1.05rem, .73em);
		margin-left: -.18em;
	}
	.roomplanDetailNav li .specBox {
		flex: 1 1;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
		min-height: 32px;
	}
	.roomplanDetailNav li .specBox .ldk {
		color: inherit;
		font: inherit;
	}
	.roomplanDetailNav li .specBox .ldk .area {
		display: inline-block;
		font-size: 1.07em;
		margin-left: .5em;
	}
	.roomplanDetailNav li .specBox .ldk .area .heibei {
		font-size: .7em;
	}
	.roomplanDetailNav li .specBox .ja {
		display: inline-block;
		font-size: .847222em;
		letter-spacing: .03em;
	}
	.roomplanDetailNav li .specBox .ja small {
		display: inline-block;
		color: inherit;
		font: inherit;
		font-size: max(1rem, .733333em);
		/*margin: 0 -.35em;*/
		margin: 0 -.2em 0 0;
	}
	/* hover, focus, current */
	@media (hover: hover) and (pointer: fine) {
		.roomplanDetailNav li a[href]:hover {
			background: var(--roomplan-roomplanDetailNav-a-hover-BgColor);
			backdrop-filter: blur(4px);
		}
		/*.roomplanDetailNav li:not([aria-current="location"]) a[href]:hover::before {
			opacity: 1;
			clip-path: inset(0 0 0 0);
		}*/
	}
	.roomplanDetailNav li a[href]:focus-visible {
		background: var(--roomplan-roomplanDetailNav-a-hover-BgColor);
		backdrop-filter: blur(4px);
	}
	/*.roomplanDetailNav li:not([aria-current="location"]) a[href]:focus-visible::before {
		opacity: 1;
		clip-path: inset(0 0 0 0);
	}*/
	.roomplanDetailNav li[aria-current="location"] a {
		background: var(--roomplan-roomplanDetailNav-a-current-BgColor);
		box-shadow: 0 0 15px var(--roomplan-roomplanDetailNav-a-current-BoxShadowColor) inset;
	}
@media screen and (max-width: 1050px) {
	.roomplanDetailNav li {
		flex: 0 0 49%;
	}
	.roomplanDetailNav li a {
		font-size: clamp(1.5rem, (17 / 900 * 100vw), 1.7rem);
	}
}
@media screen and (max-width: 736px) {
	.roomplanDetailNav ul {
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
	}
	.roomplanDetailNav li {
		flex: 0 0 100%;
		margin: 3px 0;
	}
	.roomplanDetailNav li a {
		font-size: clamp(1.45rem, (16 / 600 * 100vw), 1.6rem);
		padding-top: 10px;
		padding-bottom: 10px;
	}
}


/* returnPlanlistBtnWrap
------------------------------------------------------------------------ */
	.returnPlanlistBtnWrap {
		padding: var(--site-marpad-S) 0 0;
	}
	.returnPlanlistBtnWrap a {
		width: 80%;
		max-width: 350px;
	}
	.returnPlanlistBtnWrap a[href]::after {
		content: "";
		position: absolute;
		inset: 0 calc(38 / 540 * 100%) 0 auto;
		margin: auto;
		z-index: 0;
		width: clamp(7.5px, (9.5 / 540 * 100vw), 9.5px);
		height: clamp(7px, (9 / 540 * 100vw), 9px);
		background: currentColor;
		clip-path: polygon(0 0, 100% 50%, 0% 100%);
	}




