@charset "utf-8";

/**
 *
 *  ページ用CSS
 *　plan
 * 
 */

/*--------------------------------------------------------------------------
   Overwright
---------------------------------------------------------------------------*/	



/*--------------------------------------------------------------------------
   Content
---------------------------------------------------------------------------*/

/* plan
-----------------------------------------------------------------*/
.plan{
	padding: 180px 0 200px;	
}
.plan h2{
	margin-bottom: 80px;
	font-size: 4.5rem;
	letter-spacing: .4em;
	text-align: center;
}
.plan h2 + .txt-lead{
	margin-bottom: 100px;
	font-size: 3rem;
	letter-spacing: .4em;
	text-align: center;
}
.plan .plan-thumb-list{
	margin-bottom: 280px;	
}
.plan-thumb-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.plan-thumb-list li{
	max-width: 560px;
	width: calc(50% - 10px);
	min-height: 256px;
}
.plan-thumb-list a{
	position: relative;
	display: flex;
	align-items: center;
	height: 100%;
	background: var(--light);
	border-radius: 10px;
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.05);
	overflow: hidden;
}
.plan-thumb-list .comingsoon{
	pointer-events: none;
}
.plan-thumb-list .comingsoon h3,
.plan-thumb-list .comingsoon .txt-area{
	opacity: .5;
}
.plan-thumb-list h3{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 192px;
	height: 100%;
	background: url(../img/plan/bg_type_thumb.jpg) no-repeat right center;
	background-size: 100% 100%;
	text-align: center;
	font-size: 2.6rem;
	line-height: 1;
	color: var(--gold);
}
.plan-thumb-list h3 span{
	padding-bottom: 10px;
}
.plan-thumb-list h3 strong{
	display: block;
	font-weight: normal;
	font-size: 7.6rem;
}
.plan-thumb-list .txt-area{
	padding: 10px 20px 40px 25px;
	transition: .3s;
}
.plan-thumb-list a:hover .txt-area{
	color: var(--gold);
}
.plan-thumb-list .txt-area .layout{
	margin-bottom: 20px;
	font-size: 3rem;
	line-height: 1;
	letter-spacing: .1em;
}
.plan-thumb-list .txt-area .layout strong{
	font-weight: normal;
	font-size: 6rem;
}
.plan-thumb-list .txt-area .layout span{
	font-size: 4rem;
}
.plan-thumb-list .txt-area .layout small{
	display: inline-block;
	transform: translateY(-4px);
	font-size: 80%;
}
.plan-thumb-list .txt-area .area{
	letter-spacing: .1em;
}
.plan-thumb-list .txt-area .area .ttl{
	display: block;
}
.plan-thumb-list .txt-area .area .num{
	display: block;
	font-size: 4rem;
	line-height: 1;
	font-family: "EB Garamond", sans-serif;
}
.plan-thumb-list .txt-area .area .num strong{
	display: inline-block;
	font-weight: normal;
	font-size: 5rem;
	line-height: .8;	
}
.plan-thumb-list .txt-area .area .num small{
	font-size: 2.6rem;
}
.plan-thumb-list .view-more{
	position: absolute;
	right: 20px;
	bottom: 15px;
	display: flex;
	align-items: center;
	font-size: 1.8rem;
	letter-spacing: .06em;
	transition: .3s;
}
.plan-thumb-list a:hover .view-more{
	color: var(--gold);
}
.plan-thumb-list .view-more::before{
	display: block;
	width: 20px;
	height: 20px;
	margin-right: 10px;
	content: "";
	background: url(../img/common/ico_btn.svg) no-repeat;
	background-size: 100% auto;
}
.plan-thumb-list .comingsoon .view-more::before{
	background-image: url(../img/common/ico_btn_deactive.svg);
}
.point-item + .point-item{
	flex-direction: row-reverse;
	margin: 200px 0 180px;
}
.point-item .txt-area{
	max-width: 515px;
}
.point-item .txt-area h3{
	margin-bottom: 50px;
	font-size: 2.2rem;
	letter-spacing: .2em;
	color: var(--gold);
}
.point-item .txt-area .txt-lead{
	margin-bottom: 40px;
	font-size: 2.6rem;
	line-height: 2.2;
}
.point-item .txt-area .txt{
	font-size: 2rem;
	line-height: 2.2;
}
.point-item .pic{
	position: relative;
	max-width: 857px
}
.point-item .pic .caption{
	position: static;
	display: block;
	margin-top: 2px;
	text-align: right;
}
.floor{
	padding: 80px 20px;
	border-radius: 10px;
	background: rgb(255 255 255/40%);
}
.floor h3{
	margin-bottom: 60px;
	font-size: 3rem;
	line-height: 1.5;
	letter-spacing: .1em;
	color: var(--gold);
	text-align: center;
}
.floor-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 740px;
	margin-inline: auto;
}
.floor-list li{
	max-width: 320px;
	width: calc(50% - 5px);	
}
.floor-list li:nth-child(n+3){
	margin-top: 100px;
}
.floor-list h4{
	margin-top: 30px;
	padding: 10px;
	border-radius: 100vmax;
	background: var(--gold);	
	text-align: center;
	color: var(--light);
	letter-spacing: .1em;
	line-height: 1;
	font-weight: normal;
}


/* plan-detail
-----------------------------------------------------------------*/
.plan-detail{
	padding: 100px 0 280px;	
}
.plan-detail-box{
	margin-bottom: 200px;
	padding: 80px 0 120px;
	background: url(../img/plan/bg_ttl_type.png) no-repeat left top rgb(255 255 255/50%);
	border-radius: 10px;
}
.plan-detail-hd{
	display: flex;
	justify-content: space-between;
}
.plan-detail-hd{
	margin-bottom: 120px;
}
.plan-detail-hd h2{
	width: 350px;
	text-align: center;
	line-height: 1;
	letter-spacing: .1em;
}
.plan-detail-hd h2 strong{
	font-weight: normal;
	font-size: 12.4rem;
	color: var(--gold);
}
.plan-detail-hd h2 span{
	font-size: 5rem;
}
.plan-detail-hd .txt-area{
	padding: 50px 8% 0 20px;
}
.plan-detail-hd .layout{
	margin-bottom: 10px;
	line-height: 1;
	letter-spacing: .1em;
	font-size: 4.8rem;
	text-align: right;	
}
.plan-detail-hd .layout strong{
	font-size: 7.4rem;
	font-weight: normal;
}
.plan-detail-hd .layout small{
	display: inline-block;
	transform: translateY(-5px);
	font-size: 80%;
}
.plan-detail-hd .txt-area > div{
	display: flex;
	justify-content: flex-end;
	line-height: 1;	
}
.plan-detail-hd .txt-area .div{
	display: flex;
	align-items: flex-end;
	letter-spacing: .1em;
}
.plan-detail-hd .txt-area .area .ttl{
	font-size: 1.6rem;
}
.plan-detail-hd .txt-area .area .num{
	font-size: 4rem;
	letter-spacing: .05em;
	font-family: "EB Garamond", sans-serif;
}
.plan-detail-hd .txt-area .area strong{
	font-size: 5rem;
	font-weight: normal;
}
.plan-detail-hd .txt-area .area small{
	font-size: 2.2rem;
}
.plan-detail-hd .txt-area .balcony{
	transform: translateY(17px);
	margin-left: 20px;
}
.plan-detail-hd .txt-area .balcony .ttl{
	font-size: 1.3rem;
}
.plan-detail-hd .txt-area .balcony .num{
	font-size: 2.4rem;
	letter-spacing: .05em;
	font-family: "EB Garamond", sans-serif;
}
.plan-detail-hd .txt-area .balcony strong{
	font-size: 3.2rem;
	font-weight: normal;	
}
.plan-detail-hd .txt-area .balcony small{
	font-size: 1.6rem;
}
.plan-detail .pic-layout{
	margin-bottom: 120px;
	padding: 0 20px;
	text-align: center;
}
.plan-detail .btn-back{
	max-width: 300px;
	margin-inline: auto;
}





















/*--------------------------------------------------------------------------
   mobile
---------------------------------------------------------------------------*/
@media screen and (max-width: 768px) {

/* plan
-----------------------------------------------------------------*/
	.plan{
		padding: 100px 0 140px;	
	}
	.plan h2{
		margin-bottom: 20px;
		font-size: 3rem;
		letter-spacing: .2em;
	}
	.plan h2 + .txt-lead{
		margin-bottom: 60px;
		font-size: 2.2rem;
		letter-spacing: .2em;
	}
	.plan .plan-thumb-list{
		margin-bottom: 100px;	
	}
	.plan-thumb-list{
		display: block;
		width: calc(100% + 20px);
		margin-left: -10px;
	}
	.plan-thumb-list li{
		max-width: none;
		width: 100%;
		min-height: 53.33vw;
	}
	.plan-thumb-list li:nth-child(n+2){
		margin-top: 30px;
	}
	.plan-thumb-list h3{
		width: 21.866vw;
		min-height: 52vw;
		height: 100%;
		font-size: 4.27vw;
	}
	.plan-thumb-list h3 span{
		padding-bottom: 1.6vw;
	}
	.plan-thumb-list h3 strong{
		font-size: 11.2vw;
	}
	.plan-thumb-list .txt-area{
		padding: 5.33vw 4vw 10.67vw 4vw;
	}
	.plan-thumb-list a:hover .txt-area{
		color: var(--dark);
	}
	.plan-thumb-list .txt-area .layout{
		margin-bottom: 3vw;
		font-size: 5.87vw;
	}
	.plan-thumb-list .txt-area .layout strong{
		font-size: 10.5vw;
	}
	.plan-thumb-list .txt-area .layout span{
		font-size: 6.8vw;
	}
	.plan-thumb-list .txt-area .layout small{
		transform: translateY(-1.07vw);
	}
	.plan-thumb-list .txt-area .area .ttl{
		font-size: 3.73vw;
	}
	.plan-thumb-list .txt-area .area .num{
		font-size: 6.2vw;
	}
	.plan-thumb-list .txt-area .area .num strong{
		font-size: 9.6vw;
		line-height: .6;	
	}
	.plan-thumb-list .txt-area .area .num small{
		font-size: 4.27vw;
	}
	.plan-thumb-list .view-more{
		position: absolute;
		right: 5.33vw;
		bottom: 4vw;
		font-size: 3.73vw;
		letter-spacing: .04em;
	}
	.plan-thumb-list a:hover .view-more{
		color: var(--dark);
	}
	.plan-thumb-list .view-more::before{
		width: 5.33vw;
		height: 5.33vw;
		margin-right: 2.67vw;
	}
	.point-item{
		display: block;
	}
	.point-item + .point-item{
		flex-direction: row-reverse;
		margin: 100px 0;
	}
	.point-item .txt-area{
		max-width: none;
	}
	.point-item .txt-area h3{
		margin-bottom: 40px;
		font-size: 1.8rem;
	}
	.point-item .txt-area .txt-lead{
		margin-bottom: 20px;
		font-size: 2.2rem;
	}
	.point-item .txt-area .txt{
		font-size: 1.6rem;
		text-align: justify;
	}
	.point-item .pic{
		max-width: none;
		margin-top: 60px;
	}
	.point-item .pic img{
		max-width: none;
		width: 100%;
	}
	.floor{
		padding: 30px 20px 40px;
	}
	.floor h3{
		margin-bottom: 40px;
		font-size: 2.2rem;
	}
	.floor-list{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		max-width: 740px;
		margin-inline: auto;
	}
	.floor-list li{
		max-width: none;
		width: 46%;	
	}
	.floor-list li:nth-child(n+3){
		margin-top: 40px;
	}
	.floor-list h4{
		margin-top: 15px;
		padding: 5px;
		font-size: 1.4rem;
	}


/* plan-detail
-----------------------------------------------------------------*/
	.plan-detail{
		padding: 90px 0 120px;	
	}
	.plan-detail .inner{
		padding: 0 10px;
	}
	.plan-detail-box{
		margin-bottom: 100px;
		padding: 45px 0 60px;
		background-size: 300px auto;
	}
	.plan-detail-hd{
		display: block;
	}
	.plan-detail-hd{
		margin-bottom: 50px;
	}
	.plan-detail-hd h2{
		width: 200px;
		margin-bottom: 100px;
	}
	.plan-detail-hd h2 strong{
		font-size: 6.4rem;
	}
	.plan-detail-hd h2 span{
		font-size: 3rem;
	}
	.plan-detail-hd .txt-area{
		padding: 0 30px;
	}
	.plan-detail-hd .layout{
		margin-bottom: 50px;
		font-size: 3.6rem;
		line-height: 1.3;
		text-align: left;	
	}
	.plan-detail-hd .layout strong{
		font-size: 6rem;
	}
	.plan-detail-hd .layout span{
		font-size: 4.6rem;
	}
	.plan-detail-hd .layout small{
		transform: translateY(-5px);
	}
	.plan-detail-hd .txt-area > div{
		display: block;
	}
	.plan-detail-hd .txt-area .area .num{
		font-size: 3.6rem;
		letter-spacing: .1em;
	}
	.plan-detail-hd .txt-area .area strong{
		font-size: 4.1rem;
	}
	.plan-detail-hd .txt-area .balcony{
		transform: none;
		margin: 20px 0 0;
	}
	.plan-detail .pic-layout{
		margin-bottom: 60px;
		padding: 0 30px;
	}
	.plan-detail .btn-back{
		max-width: 275px;
	}
	.other-layout{
		padding: 0 20px;
	}


}