@charset "utf-8";

/**
 *
 *  ページ用CSS
 *　plan
 */

/*--------------------------------------------------------------------------
   Overwright
---------------------------------------------------------------------------*/
.page-ttl{
	background-image: url(../img/plan/ttl_bg.jpg);	
}

/*--------------------------------------------------------------------------
   Content
---------------------------------------------------------------------------*/

/* plan
-----------------------------------------------------------------*/
.plan{
	padding: 90px 0 160px;
}
.plan h2{
	margin-bottom: 100px;
	text-align: center;
	font-size: 2.4rem;
	font-weight: normal;
	letter-spacing: .1em;	
}
.plan .plan-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 160px;	
}
.plan .plan-list li{
  position: relative;
	max-width: 470px;
	width: calc(50% - 5px);
	background: #2b2d2e;
}
.plan .plan-list li:nth-child(n+3){
	margin-top: 50px;	
}
.plan .plan-list li.menuplan:before{
  position:absolute;
  right: 0;
  top: 0;
  z-index: 10;
  transform: translate(10px,-65%);
  display: block;
  padding: 10px 20px;
  content: "メニュープラン公開中";
  background: #bb9d1a;
  font-size: 1.8rem;
  line-height: 1;
}
.plan .plan-list li.saisyu:after{
	position:absolute;
	right: 0;
	top: 0;
	z-index: 10;
	transform: translate(10px,-65%);
	display: block;
	padding: 10px 20px;
	content: "最終1邸";
	background: linear-gradient(152deg, rgba(154, 0, 0, 1) 0%, rgb(117, 0, 0, 1) 100%);
	color: #fff;
	font-size: 1.8rem;
	line-height: 1;
}
.plan .plan-list li.kagu:after{
	position:absolute;
  right: 0;
  top: 0;
  z-index: 10;
  transform: translate(10px,-65%);
  display: block;
  padding: 10px 20px;
  content: "モデルルーム特別分譲住戸";
  background: linear-gradient(152deg, rgba(26, 90, 187, 1) 0%, rgb(0 41 103) 100%);
  font-size: 1.8rem;
  line-height: 1;
}
.plan .plan-list li.kagu.saijo:after{
	content: "モデルルーム特別分譲住戸";
}
.plan .plan-list li.saisyu.menuplan:before{
  transform: translate(-100px,-65%);
}
.plan .plan-list li.menuplan.kagu:after{
  transform: translate(-216px,-65%);
}

.plan .plan-list li.sold::after{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.7);
	display: flex;
	align-items: center;
	left: 0;
	top: 0;
}
.plan .plan-list li.sold::before{
	content: "成約御礼";
	position: absolute;
	z-index: 2;
	text-align: center;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	font-size: 45px;
	letter-spacing: 0.1em;
}
.plan .plan-list li.sold a{
	pointer-events: none;
	cursor: none;
}

.plan .plan-list li a{
	display: block;
	padding: 15px 20px;
	background: #2b2d2e;
}
.plan .plan-list .plan-list-hd{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
}
.plan .plan-list .plan-list-hd h3{
	width: 45%;
	padding-bottom: 8px;
	line-height: 1;
	color: #bb9d1a;
	font-family: "EB Garamond", serif;
}
.plan .plan-list .plan-list-hd h3 strong{
	font-weight: normal;
	font-size: 6rem;
}
.plan .plan-list .plan-list-hd h3 span{
	padding-left: .15em;
	font-size: 3rem;
}
.plan .plan-list .plan-list-hd > div{
	width: 55%;
	padding: 0 0 10px 15px;
	border-left: 1px solid rgba(255,255,255,.6);
	line-height: 1;
}
.plan .plan-list .plan-list-hd > div p + p{
	margin-top: 3px;
}
.plan .plan-list .plan-list-hd > div p strong{
	font-weight: normal;
	font-size: 3rem;
	font-family: "EB Garamond", serif;
}
.plan .plan-list .plan-list-hd > div p span{
	padding-left: .2em;
	font-size: 1.8rem;
	font-family: "EB Garamond", serif;
}
.plan .plan-list .plan-list-hd > div p small{
	font-size: 1.4rem;
}
.plan .plan-list .plan-list-hd .area-width{
	width: 100%;
	padding: 15px 0 20px;
	border-top: 1px solid rgba(255,255,255,.6);
	text-align: right;
	line-height: 1;
	font-size: 1.6rem;
}
.plan .plan-list .plan-list-hd .area-width strong{
	padding-right: 2px;
	font-weight: normal;
	font-size: 2.4rem;
	font-family: "EB Garamond", serif;
}

.plan-price{
	display: flex;
	gap: 40px;
	padding: min(6vw, 42px) min(10vw, 60px);
	border: 1px solid rgba(255,255,255,.7);
	margin: 0 auto 100px;
}

.page-notes{
	margin: 100px 0;
}


/* plan-detail
-----------------------------------------------------------------*/
.plan-detail{
	padding: 125px 0 160px;
}

.plan-detail .tab-nav{
	margin-bottom: 70px;
}
.plan-detail .tab-nav ul{
	display: flex;
	justify-content: center;
	gap: 1px;
	/* justify-content: space-between; ※clm3 */
}
.plan-detail .tab-nav ul li{
	width: calc((100% - 2px)/2);
	/* width: calc((100% - 3px)/3); ※clm3 */
	text-align: center;
}
.plan-detail .tab-nav .btn{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 70px;
	margin-bottom: 10px;
	background: #2b2d2e;
	font-size: 2rem;
	letter-spacing: .08em;
	cursor: pointer;
	transition: .3s;
}
.plan-detail .tab-nav .txt{
	font-size: 1.6rem;
	line-height: 1.6;
}
.plan-detail .tab-nav .btn:hover,
.plan-detail .tab-nav .current .btn{
	background: #99811e;
}
.plan-detail .tab-nav .current .txt{
	color: #99811e;
}

.plan-detail .tab-cont + .tab-cont{
	display: none;
}

.plan-detail .layout-switch{
	display: flex;
	justify-content: space-between;
	max-width: 500px;
	margin: 0 auto 60px;
	padding: 7px;
	border-radius: 50px;
	border: 1px solid #fff;
}
.plan-detail .layout-switch li{
	width: calc(50% - 1px);
	padding: 10px;
	line-height: 1;
	font-size: 1.8rem;
	text-align: center;
	border: 1px solid transparent;
	border-radius: 50px;
	cursor: pointer;
	transition: .3s;
}
.plan-detail .layout-switch li:hover{
	border-color: #fff;
}
.plan-detail .layout-switch li.current{
	background: #fff;
	color: #000;
}


.plan-detail .layout-box{
  align-items: flex-start;
}
.plan-detail .plan-detail-hd{
  display: flex;
	align-items: center;
	width: 55%;
}
.plan-detail .plan-detail-hd h2{
	width: 42%;
	padding: 20px 10px;
	border: 1px solid  #bb9d1a;
	line-height: 1;
	text-align: center;
	color: #bb9d1a;
	font-family: "EB Garamond", serif;
}
.plan-detail .plan-detail-hd h2 strong{
	font-weight: normal;
	font-size: 7rem;
}
.plan-detail .plan-detail-hd h2 span{
	padding-left: .15em;
	font-size: 3.4rem;
}
.plan-detail .plan-detail-hd > div{
	width: 58%;
	padding: 0 0 10px 20px;
	line-height: 1;
}
.plan-detail.plan-detail-hd > div p + p{
	margin-top: 3px;
}
.plan-detail .plan-detail-hd > div p strong{
	font-weight: normal;
	font-size: 4.8rem;
	font-family: "EB Garamond", serif;
}
.plan-detail .plan-detail-hd> div p span{
	padding-left: .2em;
	font-size: 3rem;
	font-family: "EB Garamond", serif;
}
.plan-detail .plan-detail-hd > div p small{
	font-size: 1.8rem;
}
.plan-detail .txt-area{
  margin-left: 20px; 
}
.plan-detail .txt-area .area-width{
	width: 100%;
	margin-bottom: 20px;
	padding: 0 0 25px;
	border-bottom: 1px solid rgba(255,255,255,.6);
	line-height: 1;
	font-size: 2.4rem;
}
.plan-detail .txt-area .area-width span{
	font-size: 2.4rem;
}
.plan-detail .txt-area .area-width strong{
	padding: 0 2px;
	font-weight: normal;
	font-size: 4.2rem;
	font-family: "EB Garamond", serif;
}
.plan-detail .txt-area dl > div{
	display: flex;
	line-height: 1;
}
.plan-detail .txt-area dl > div:nth-child(n+2){
	margin-top: 15px;
}
.plan-detail .txt-area dl dt{
	flex-shrink: 0;
	width: 8.5em;
	font-size: 1.8rem;
}
.plan-detail .txt-area dl dd{
	font-size: 1.8rem;
}
.plan-detail .txt-area dl dd strong{
	padding: 0 2px;
	font-weight: normal;
	font-size: 2.6rem;
	font-family: "EB Garamond", serif;
}
.plan-detail .txt-area dl dd small{
	font-size: 1.6rem;
}
.plan-detail .point-list{
  margin: 60px 0 80px;
  padding: 20px 4%;
  border: 1px solid #fff;  
}
.plan-detail .point-list li{
  display: flex;
  font-size: 1.8rem;  
}
.plan-detail .layout-detail{
  margin-bottom: 60px;
  text-align: center;
}
.plan-detail .layout-detail + .layout-detail{
	display: none;
}
.plan-detail .plan-notes li{
	text-indent:-1em;
	padding-left: 1em;
	font-size: 1.6rem;
}
.plan-detail .btn-back{
	margin: 50px 0 150px;
	text-align: center;
}
.plan-detail .btn-back a{
	position: relative;
	display: inline-block;
	padding: 10px 35px 10px 70px;
	background: url(../img/common/arw_btn_circle_back.svg) no-repeat left center;
	background-size: 40px auto;
	color: #bb9d1a;
	font-size: 2rem;
	line-height: 1;
	letter-spacing: .1em;
}



















/*--------------------------------------------------------------------------
   mobile
---------------------------------------------------------------------------*/
@media screen and (max-width: 768px) {


/* plan
-----------------------------------------------------------------*/
	.plan{
		padding: 40px 0 60px;
	}
	.plan h2{
		font-size: 1.8rem;
		margin-bottom: 50px;
	}
	.plan .plan-list{
		display: block;
		margin-bottom: 90px;	
	}
	.plan .plan-list li{
		width: 100%;
		margin: 0 auto;
	}
	.plan .plan-list li:nth-child(n+2){
		margin-top: 45px;	
	}
 .plan .plan-list li.menuplan:before{
    transform: translate(5px,-50%);
    padding: 8px 12px;
    font-size: 1.3rem;
  }
	.plan .plan-list li.saisyu:after{
    font-size: 1.4rem;
    padding: 8px 12px;
		transform: translate(10px, -50%);
	}
	.plan .plan-list li.kagu:after{
    font-size: 1.3rem;
    padding: 8px 12px;
		transform: translate(10px, -50%);
	}
	.plan .plan-list li.saisyu.menuplan:before{
		transform: translate(-70px, -50%);
    padding: 8px 12px;
	}
	.plan .plan-list li.menuplan.kagu:after{
		transform: translate(-154px,-50%);
	}

	.plan .plan-list .plan-list-hd h3 strong{
		font-size: 3.9rem;
	}
	.plan .plan-list .plan-list-hd h3 span{
		font-size: 2rem;
	}
	.plan .plan-list .plan-list-hd > div p strong{
		font-size: 2.3rem;
	}
	.plan .plan-list .plan-list-hd > div p span{
		font-size: 1.4rem;
	}
	.plan .plan-list .plan-list-hd > div p small{
		font-size: 1rem;
	}
	.plan .plan-list .plan-list-hd .area-width{
		font-size: 1.2rem;
	}
	.plan .plan-list .plan-list-hd .area-width strong{
		font-size: 1.8rem;
	}

	.plan .plan-list li.sold::before{
		font-size: min(10vw, 40px);
	}

	.plan-price{
		flex-direction: column;
		padding: min(8vw, 42px) min(10vw, 60px);
		gap: 20px;
		margin-bottom: 60px;
	}
	.page-notes{
		margin: 60px auto;
	}


/* plan-detail
-----------------------------------------------------------------*/
	.plan-detail{
		padding: 50px 0 60px;
	}
	
	
	.plan-detail .tab-nav{
		margin-bottom: 50px;
	}
	.plan-detail .tab-nav ul{
		flex-wrap: wrap;
	}
	.plan-detail .tab-nav ul li{
		width: calc(50% - 2px);
	}
	.plan-detail .tab-nav ul li:nth-child(n+3){
		margin-top: 20px;
	}
	.plan-detail .tab-nav .btn{
		height: 35px;
		margin-bottom: 5px;
		font-size: 1.8rem;
	}
	.plan-detail .tab-nav .txt{
		font-size: 1.2rem;
	}
	
	.plan-detail .layout-switch{
		margin: 0 auto 30px;
	}
	.plan-detail .layout-switch li{
		line-height: 1;
		font-size: 1.6rem;
	}

	
	.plan-detail .layout-box{
		display: block;
	}
	.plan-detail .layout-box .txt-area{
		width: 100%;
	}
	.plan-detail .plan-detail-hd{
    width: 100%;
		margin-bottom: 30px;
	}
	.plan-detail .plan-detail-hd h2{
		padding: 15px 5px;
	}
	.plan-detail .plan-detail-hd h2 strong{
		font-size: 4.5rem;
	}
	.plan-detail .plan-detail-hd h2 span{
		font-size: 2.2rem;
	}
	.plan-detail .plan-detail-hd > div{
		padding: 0 0 0 10px;
	}
	.plan-detail .plan-detail-hd > div p strong{
		font-size: 3.6rem;
	}
	.plan-detail .plan-detail-hd> div p span{
		font-size: 2.2rem;
	}
	.plan-detail .plan-detail-hd > div p small{
		font-size: 1.3rem;
	}
  .plan-detail .txt-area{
    width: 100%;
    margin-left: 0; 
  }
	.plan-detail .txt-area .area-width{
		padding: 0 0 20px;
		font-size: 1.8rem;
		text-align: center;
	}
	.plan-detail .txt-area .area-width span{
		font-size: 2.4rem;
	}
	.plan-detail .txt-area .area-width strong{
		font-size: 3rem;
	}
	.plan-detail .txt-area dl > div{
		justify-content: center;
	}
	.plan-detail .txt-area dl > div:nth-child(n+2){
		margin-top: 15px;
	}
	.plan-detail .txt-area dl dt{
		width: 7.5em;
		font-size: 1.5rem;
	}
	.plan-detail .txt-area dl dd{
		font-size: 1.3rem;
	}
	.plan-detail .txt-area dl dd strong{
		font-size: 1.8rem;
	}
	.plan-detail .txt-area dl dd small{
		font-size: 1.2rem;
	}
  .plan-detail .point-list{
    margin: 30px 0 40px;
    padding: 15px; 
  }
  .plan-detail .point-list li{
    font-size: 1.3rem;  
  }
	.plan-detail .layout-detail{
		width: 100%;
		padding-left: 0;
		text-align: center;
	}
	.plan-detail .plan-notes li{
		font-size: 1.2rem;
	}
	.plan-detail .btn-back{
		margin: 40px 0 60px;
	}
	.plan-detail .btn-back a{
		padding: 10px 30px 10px 50px;
		background-size: 30px auto;
		font-size: 1.8rem;
	}



}