@charset "UTF-8";

/*--------------------------------
brand
--------------------------------*/
.main-contents{
  padding: 120px 0;
}
@media screen and (max-width: 767px){
  .main-contents{
    padding: 40px 0;
  }
}
.developer-lists{
  margin: 0 auto;
  max-width: 1280px;
  width: 90%;
}
.developer-list{
  margin-bottom: 60px;
  padding: 60px;
  background: #fff;
  box-sizing: border-box;
}
@media screen and (max-width: 767px){
  .developer-list{
    margin-bottom: 32px;
    padding: 8%;
    background: #fff;
    box-sizing: border-box;
  }
}
.developer-list:last-child{
  margin-bottom: 0;
}
.developer-list-item{
  flex-wrap: wrap;
}
@media screen and (max-width: 1100px){
  .developer-list-item{
    align-items: flex-end;
  }
}
@media screen and (max-width: 767px){
  .developer-list-item.hankyu .col-2:first-child{
    order: 2;
  }
  .developer-list-item.hankyu .col-2:last-child{
    order: 1;
  }
}
.brand .has-gap{
  gap: 32px;
}
.brand .has-gap > .col-2{
  width: calc(50% - 16px);
}
@media screen and (max-width: 767px){
  .brand .has-gap > .col-2{
    width: 100%;
  }
  .brand .has-gap{
    gap: 8%;
  }
}
.local-copy{
  margin-bottom: 32px;
  font-size: 2.8rem;
}
@media screen and (max-width: 767px){
  .local-copy{
    margin-bottom: 6%;
    font-size: 5vw;
  }
}
.local-note{
  margin-bottom: 32px;
  font-size: 1.6rem;
  line-height: 1.5;
}
@media screen and (max-width: 767px){
  .local-note{
    margin-bottom: 8%;
    font-size: 3.3vw;
  }
}
.local-note + .local-lists{
  margin-top: 48px;
}
.local-list{
  align-items: flex-start;
  margin-bottom: 12px;
}
.local-list.flex-wrapper{
	flex-wrap: unset;
}
.local-list:last-child{
  margin-bottom: 0;
}
.local-list-num{
  margin-top: 4px;
  margin-right: 8px;
  width: 14px;
  height: 14px;
  font-size: 1.2rem;
  background: #000;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
}
@media screen and (max-width: 767px){
  .local-list-num{
    margin-top: 1%;
    margin-right: 2%;
    width: 3.5vw;
    height: 3.5vw;
    font-size: 3.3vw;
  }
}
.local-list-note{
  font-size: 1.4rem;
}
@media screen and (max-width: 767px){
  .local-list-note{
    font-size: 3.3vw;
  }
}
.local-logo{
  margin-bottom: 24px;
  width: 90%;
}
@media screen and (max-width: 767px){
  .local-logo{
    margin-bottom: 6%;
  }
}
.local-logo.haseko{
  max-width: 260px;
}
@media screen and (max-width: 767px){
  .local-logo.haseko{
    width: 75%;
  }
}
.local-logo.hankyu{
  max-width: 305px;
}
.local-logo.marimo{
  max-width: 258px;
}
@media screen and (max-width: 767px){
  .local-logo.marimo{
    width: 85%;
  }
}
.brand .local-content{
  flex-wrap: wrap;
  justify-content: space-between;
}
.local-block-num{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 25px;
  height: 25px;
  color: #fff;
  background: #000;
  font-size: 1.4rem;
  position: absolute;
  right: 0;
  bottom: 0;
}
@media screen and (max-width: 767px){
  .local-block-num{
    width: 5vw;
    height: 5vw;
    font-size: 3.3vw;
  }
}
.local-contents{
  justify-content: space-between;
}
@media screen and (max-width: 767px){
  .local-contents + .local-lists{
    margin-top: 8%;
  }
}
.local-contents.half .local-content{
  width: 48%;
}
.local-contents.no-half .local-content:first-child{
  width:52%;
}
.local-contents.no-half .local-content:last-child{
  width: 44%;
}
.local-block{
  position: relative;
}

.brand-block-01{
  margin-bottom: 4%;
  background: url(../img/brand/image-01.jpg) no-repeat center center;
  background-size: cover;
  width: 100%;
  padding-bottom: 116%;
}
.brand-block-02{
  background: url(../img/brand/image-02.jpg) no-repeat center center;
  background-size: cover;
  width: 48%;
  padding-bottom: 31%;
}
.brand-block-03{
  background: url(../img/brand/image-03.jpg) no-repeat center center;
  background-size: cover;
  width: 48%;
  padding-bottom: 31%;
}
.brand-block-04{
  background: url(../img/brand/image-04.jpg) no-repeat center center;
  background-size: cover;
  width: 100%;
  padding-bottom: 235%;
}
.brand-block-05{
  margin-bottom: 8%;
  background: url(../img/brand/image-05.jpg) no-repeat center center;
  background-size: cover;
  width: 100%;
  padding-bottom: 195%;
}
.brand-block-06{
  background: url(../img/brand/image-06.jpg) no-repeat center center;
  background-size: cover;
  width: 100%;
  padding-bottom: 75%;
}
.brand-block-07{
  margin-bottom: 4%;
  background: url(../img/brand/image-07.jpg) no-repeat center center;
  background-size: cover;
  width: 100%;
  padding-bottom: 65%;
}
.brand-block-08{
  background: url(../img/brand/image-08.jpg) no-repeat center center;
  background-size: cover;
  width: 30%;
  padding-bottom: 40%;
}
.brand-block-09{
  background: url(../img/brand/image-09.jpg) no-repeat center center;
  background-size: cover;
  width: 66%;
  padding-bottom: 40%;
}

/*--------------------------------
common
--------------------------------*/
.text-center {
	text-align: center;
}
.text-right {
	text-align: right;
}
.text-left {
	text-align: left;
}
.small-text {
	font-size: 75%;
}
.large-text{
	font-size: 150%;
}
.letter-wide{
	letter-spacing: .2em;
	text-indent: .2em;
}
.fit-img {
	width: 100%;
	height: auto;
	vertical-align: middle;
}
.has-max {
	height: auto;
	max-width: 100%;
}
.flex-wrapper {
	display: flex;
	flex-wrap: wrap;
}
.img-wrapper{
	position: relative;
}
.img-wrapper .caption{
	position: absolute;
	bottom: 0;
	left: 8px;
	right: 8px;
	z-index: 1;
}
.inline-block{
	display: inline-block;
}

/*--------------------------------
componet
--------------------------------*/
.primary-heading{
	margin-bottom: .8em;
	font-size: 4.2rem;
	line-height: 1.3;
}
.secondary-heading{
	margin-bottom: .8em;
	font-size: 3rem;
	line-height: 1.3;
}
.tertiary-heading{
	margin-bottom: .8em;
	font-size: 2.4rem;
	line-height: 1.4;
}
.page-heading{
	font-size: 3.4rem;
	line-height: 1.3;
}
@media screen and (max-width: 767px){
	.primary-heading{
		font-size: 2.9rem;
	}
	.secondary-heading{
		font-size: 2rem;
	}
	.tertiary-heading{
		font-size: 1.6rem;
	}
}
.note{
	margin: 1em 0;
	font-size: 1.6rem;
	line-height: 1.6;
}
.lead{
	margin: 1em 0;
	font-size: 2.2rem;
	line-height: 1.6;
}
@media screen and (max-width: 767px){
	.note{
		font-size: 1.4rem;
	}
  .lead{
    font-size: 1.4rem;
	}
}
.primary-copy{
  font-size: 3.6rem;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px){
  .primary-copy{
    font-size: 6vw;
    margin-bottom: 4%;
  }
}
.primary-note{
  font-size: 1.8rem;
  line-height: 1.7;
  margin-bottom: 80px;
}
@media screen and (max-width: 767px){
  .primary-note{
    font-size: 3.3vw;
    margin-bottom: 10%;
  }
}
.caption{
	margin: .4em 0;
	font-weight: 300;
	font-size: 1.2rem;
	line-height: 1.4;
}
.video-wrapper{
	position: relative;
	padding-top: 56.25%;
	height: 0;
	display: block;
	content: "";
}
.video-wrapper iframe{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
}
.loading{
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	content: "";
}
@media screen and (max-width: 767px){
	.video-wrapper{
		padding-top: 100%;
	}
}
.general-table{
	margin: 48px 0;
	width: 100%;
	font-size: 1.6rem;
	line-height: 1.4;
	border-top: 1px solid #ddd;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
}
.general-table th,
.general-table td{
	padding: 16px;
	border-bottom: 1px solid #ddd;
}
.general-table th{
	width: 260px;
	position: relative;
	background: #efebe5;
	font-weight: 500;
	text-align: right;
}
@media screen and (max-width: 767px){
	.general-table{
		margin: 24px 0;
	}
	.general-table th,
	.general-table td{
		width: 100%;
		display: block;
	}
	.general-table th{
		text-align: left;
	}
}

.mv-wrap{
  position: relative;
  padding: 8% 0;
}
@media screen and (max-width: 767px){
  .mv-wrap{
    position: relative;
    padding: 34% 0;
  }
}
.mv-wrap.brand{
  background: url(../img/brand/mv.jpg) no-repeat center center;
  background-size: cover;
}
@media screen and (max-width: 767px){
  .mv-wrap.brand{
    background: url(../img/brand/mv-sp.jpg) no-repeat center center;
    background-size: cover;
  }
}
/* .mv-wrap.brand .mv-en{
  width: 23%;
}
@media screen and (max-width: 767px){
  .mv-wrap.brand .mv-en{
    width: 55%;
  }
} */
.mv-copy{
  margin: 0 auto;
  width: 80%;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px){
  .mv-copy{
    width: 90%;
  }
}
.mv-en{
  height: 2.4vw;
  margin-bottom: 1%;
}
@media screen and (max-width: 767px){
  .mv-en{
    height: 6vw;
  }
}
.mv-en img{
  width: auto;
  height: 100%;
}
.mv-en{
  margin-bottom: 1%;
}
.mv-jp{
  font-size: 1vw;
}
@media screen and (max-width: 767px){
  .mv-jp{
    font-size: 3.3vw;
  }
}
.mv-cap{
  position: absolute;
  left: 8px;
  right: 8px;
  bottom: 4px;
  z-index: 1;
  font-size: 1.2rem;
}
@media screen and (max-width: 767px){
  .mv-cap{
    font-size: 1rem;
  }
}
.mv-sankaku{
  position: absolute;
  left: 0;
  bottom: 0;
  width: 60%;
  z-index: 0;
}
@media screen and (max-width: 767px){
  .mv-sankaku{
    width: 100%;
  }
}

/*--------------------------------
layout
--------------------------------*/
.general-section .inner{
	margin: 0 auto;
	padding: 80px 0;
	width: calc(100% - 32px);
	max-width: 1200px;
}
@media screen and (max-width: 767px){
	.general-section .inner{
		padding: 20px 0;
	}
}
.general-section .inner-fit{
	width: 100%;
	max-width: none;
}
.general-section .inner + .inner{
	padding-top: 0;
}
.general-parts{
	margin-bottom: 32px;
}
.btn-space{
	margin: 32px 0;
	text-align: center;
}
.btn-space:last-child{
	margin-bottom: 0;
}
.col-2{
	gap: 24px;
	justify-content: center;
}
.col-2 > .flex-item{
	flex: 1;
}
@media screen and (max-width: 767px){
	.col-2 > .flex-item{
		flex: 0 0 100%;
	}
}
.col-3{
	gap: 32px;
	justify-content: center;
}
.col-3 > .flex-item{
	flex: 0 1 375px;
}

/*--------------------------------
map
--------------------------------*/

.page-title-wrap{
	padding: 64px 0;
	background: #aaa18d;
	text-align: center;
}
@media screen and (max-width: 767px){
	.page-title-wrap{
		padding: 32px 0;
	}
}
.map-container{
	margin: 0 auto;
	max-width: 800px;
}
.map .map-heading{
  font-size: 3rem;
  margin-bottom: 0.8em;
  line-height: 1.3;
}
.map .map-heading .small-text{
  font-size: clamp(14px, 4.2vw, 20px);
}

.map .primary-note{
  margin-bottom: 45px;
}
.map .general-section .inner.map {
  padding: 80px 0 100px;
}
.map .general-section .inner.map:last-child {
  padding: 80px 0;
}
@media screen and (max-width: 767px){
  .map .map-heading{
    font-size: 2.6rem;
  }
  .map .primary-note{
    margin-bottom: 25px;
  }
  .map .general-section .inner.map {
    padding: 32px 0;
  }
  .map .general-section .inner.map:last-child {
    padding: 50px 0 32px;
  }
}
.map-btn{
	margin-bottom: 8px;
	width: 240px;
}
@media print{
	.header,
	.page-title-wrap,
	.btn,
	.footer-container{
		display: none;
	}
}
/*--------------------------------
plan
--------------------------------*/

.plan .inner{
  max-width: 1000px;
}
.plan .mv-wrap {
  background: url(../img/plan/mv.jpg) no-repeat center center;
  background-size: cover;
}
.plan-wrap{
  font-family: 'Cinzel', serif;
}
.plan-point{
  background: url(../img/plan/point-bg.jpg) no-repeat center bottom;
  background-size: cover;
}
.plan-view{
  order: 1;
}
.plan-point-list{
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  color: #fff;
}
.plan .primary-copy{
  margin-bottom: 80px;
}
.plan-point-item{
  width: calc((100% - 40px)/2);
  border: 1px solid #fff;
  background: #211815bd;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 370px;
}
.point-head{
  color: #a48247;
  background: -webkit-linear-gradient(0deg, #a48247, #f9f1cf 70%,#9e804b);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 4rem;
  line-height: 1;
}
.point-head span{
  margin: 10px auto 30px;
  width: 76px;
  display: block;
}
.point-lead{
  font-size: 2.8rem;
}
.plan-point-item .primary-note{
  margin: 17px 0 0;
}
.plan .plan-tabin.show{
  display: block;
}
.plan .plan-tabin{
  display: none;
}
.plan-floor .primary-copy{
  color: #000;
  font-family: serif;
}
.plan .plan-tab{
  margin: 70px auto;
  display: flex;
  gap: 5%;
  max-width: 1000px;
  width: 100%;
}
.plan .plan-on{
  width: calc(100%/2);
  background: #dcdad3;
  color: #888;
  text-align: center;
  font-size: 4.8rem;
  line-height: 1.2;
  padding: 38px 0 29px;
  cursor: pointer;
}
.plan-on span{
  font-size: 1.8rem;
  display: block;
  margin-top: 5px;
}
.plan .plan-on.active{
  background: #004346;
  color: #fff;
}
.triangle{
  width: 20px;
  height: 20px;
  background: #fff;
  margin: 5px auto 0;
  position: relative;
}
.triangle::before{
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8.5px 5.5px 0 5.5px;
  border-color: #dcdad3 transparent transparent transparent;
}
.plan .plan-on.active .triangle::before{
  border-color: #004346 transparent transparent transparent;
}
.plan-floor{
  background: url(../img/plan/floor-bg.jpg) no-repeat center bottom;
  background-size: cover;
}
.plan-tabin-head{
  font-size: 2.2rem;
  text-align: center;
  margin-bottom: 70px;
}
.floor-wrap{
  position: relative;
}
.floor-tabin{
  display: none;
  width: calc(100% - 330px);
  margin-left: auto;
}
.floor-tabin.show{
  display: block;
}
.floor-tab{
  max-width: 240px;
  width: 100%;
  text-align: center;
  position: absolute;
}

.floor-tab li{
  background: #979797;
  color: #fff;
  font-size: 2.2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
.floor-on.active{
  background: #bbb5a0;
  color: #000;
  font-size: 4rem;
  position: relative;
}
.floor-on.active::before{
  content: "";
  position: absolute;
  background: url(../img/plan/arrow.png) no-repeat center center;
  background-size: contain;
  width: 66px;
  height: 50px;
  right: -80px;
}
.floor-on.active span{
  background: #bbb5a0;
  color: #000;
  font-size: 2rem;
}
li.floor-on{
  background: #4d4d4d;
  color: #fff;
  font-size: 3.2rem;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  height: 130px;
}
li.floor-on:hover{
  background: #bbb5a0;
  color: #000; 
}
.floor-on span{
  margin: 7px 0 0 5px;
  font-size: 1.6rem;
  display:block;
  letter-spacing: .05em;
}
.floor-on .premium{
  display: block;
  width: 100%;
  margin: 0 0 -10px;
  padding: 25px 0 0px;
}
.floor-tab li:nth-of-type(1){
  height: 120px;
  position: relative;
}
.floor-tab li:nth-of-type(1) .premium-link {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 1.6rem;
  background: #4d4d4d;
  width: 100%;
  height: 100%;
}
.floor-tab li:nth-of-type(1) .premium-link:hover {
  background: #bbb5a0;
  color: #000;
  transition: .2s;
}
.floor-tab li:nth-of-type(1) .premium{
  padding-top: 10px;
}
.floor-tab li:nth-of-type(1) .premium span{
  font-size: 3.2rem;
}
@media screen and (max-width: 767px){
  .floor-tab li:nth-of-type(1) .premium-link {
    font-size: 1rem;
  }
  .floor-tab li:nth-of-type(1) .premium{
    padding-top: 5px;
  }
  .floor-tab li:nth-of-type(1) .premium span{
    font-size: 1.2rem;
  }
}
.floor-tab li:nth-of-type(1) img{
  position: absolute;
  top: -47px;
  left: 0;
  right: 0;
  margin: 0 auto;
  }
.floor-tab li:nth-of-type(2){
  height: 150px;
  margin: 4px 0;
}
.floor-tab li:nth-of-type(3){
  margin: 0 0 13px;
}
.floor-tab li:nth-of-type(4){
  height: 190px;
  margin: 0 0 8px;
}
.floor-tab li:nth-of-type(5){
  height: 100px;
}
.floor-tab li:nth-of-type(6){
  font-size: 1.3rem;
  color: #000;
  background: none;
  margin-top: 10px;
}
.plan .large-txt{
  font-size: 150%;
}
.floor-tabin .img-wrap{
  margin-bottom: 80px;
  position: relative;
}
.ttype-link{
  position: absolute;
  display: block;
  width: 38%;
  height: 46%;
  bottom: 0;
  right: 8%;
}
.ptype-link{
  position: absolute;
  display: block;
  width: 28%;
  height: 34%;
  top: 4%;
  right: 8%;
}
.atype-link{
  position: absolute;
  display: block;
  width: 30%;
  height: 34%;
  top: 4%;
  left: 0;
}
.gtype-link{
  position: absolute;
  display: block;
  width: 28%;
  height: 22%;
  top: 51%;
  right: 8%;
}
.rank-txt{
  font-size: 2.4rem;
  margin-bottom: 20px;
}
.plan-list{
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 60px;
}

.type-nome{
  font-size: 3rem;
  line-height: 1;
  padding: 0 20px 0 30px;
  margin-right: 20px;
  position: relative;
}
.plan-item{
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.336);
  transition: .2s;
}
.plan-item.no-shadow{
  box-shadow: none;
}
.plan-item a.label-icon{
  position: relative;
  display: block;
}
.plan-item a.plan-label-icon{
  position: relative;
  display: block;
}
.plan-item a.label-icon::before{
  position: absolute;
  content: "";
  background: url(../img/plan/label-last.png) no-repeat top left;
  background-size: contain;
  top: 0;
  left: -3.2%;
  width: 37%;
  height: 26%;
  z-index: 2;
}
.plan-item.plan-label-sold{
  position: relative;
  display: block;
}
.plan-item.plan-label-sold::before{
  position: absolute;
  content: "";
  background: url(../img/plan/plan-label-sold.png) no-repeat top left;
  background-size: contain;
  top: 0;
  left: -3.2%;
  width: 37%;
  height: 26%;
  z-index: 2;
}
.plan-item.plan-label-sold:hover{
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.336);
  opacity: 1;
}
.plan-item a.pr-label-icon,
.plan-item a.pr-label-icon01{
  position: relative;
  display: block;
}
.plan-item a.pr-label-icon::before,
.plan-item a.label-icon::before{
  position: absolute;
  content: "";
  background: url(../img/plan/pr-label-last.png) no-repeat top left;
  background-size: contain;
  top: -9%;
  left: -3%;
  width: 37%;
  height: 26%;
  z-index: 2;
}
.plan-item a.plan-label-icon::before{
  position: absolute;
  content: "";
  background: url(../img/plan/plan-label-last.png) no-repeat top left;
  background-size: contain;
  top: -9%;
  left: -3%;
  width: 37%;
  height: 26%;
  z-index: 2;
}
.plan-item a.pr-label-icon01::before{
  position: absolute;
  content: "";
  background: url(../img/plan/pr-label-topfloor.png) no-repeat top left;
  background-size: contain;
  top: -10%;
  left: -3%;
  width: 74%;
  height: 26.1%;
  z-index: 2;
}
.plan-item a.label-icon::before{
  background: url(../img/plan/label-last.png) no-repeat top left;
  background-size: contain;
}
.plan-item a.pr-modelroom-label{
  display: block;
  position: relative;
}
.plan-item a.pr-modelroom-label::before{
  position: absolute;
  content: "";
  background: url(../img/plan/modelroom-label.webp) no-repeat top left;
  background-size: contain;
  top: -32%;
  left: -3%;
  width: 65.625%;
  height: 49.72%;
  z-index: 2;
}
.plan-item:hover{
  box-shadow: 0 0 0 rgba(0, 0, 0, 0.336);
  opacity: .7;
}
.room-wrap .plan-item{
  width: calc(100%/2 - 20px);
  margin: 0 auto;
}
.room-wrap .plan-item.fit{
  width: 100%;
}

.room-wrap .plan-btn{
  margin-top: 10px;
}
.room-wrap .type-nome{
  width: 140px;
  margin: -20px 25px 20px 0;
  padding: 0 25px 0 0;
}
.room-wrap .type-nome::before {
  top: -42%;
}
.room-wrap .layout-name{
  top: 10%;
  right: 10px;
  left: 46%;
  width: 230px;
  text-align: left;
}
.room-wrap .layout-name span {
  vertical-align: middle;
}
.room-wrap .main-value span{
  font-size: 3rem;
}
.room-wrap .rank-txt{
  margin-top: 80px;
  line-height: 1;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.room-wrap  .rank-txt p:first-child{
  display: flex;
  align-items: center;
}
.room-wrap .min-txt{
  font-size: 80%;
}
.border-item{
  display: block;
  width: 100%;
  height: 1px;
  margin-left: 20px;
  background: #000;
}
.room-wrap .plan-list{
  gap: 60px 40px;
}
.plan .caption{
  font-family: serif;
}
@media screen and (max-width: 900px){
  li.floor-on{
    height: 100px;
  }
  .floor-tab li:nth-of-type(2){
    height: 120px;
  }
  .floor-tab li:nth-of-type(4){
    height: 140px;
  }
  .plan-point-item .primary-note{
    font-size: 1.6rem;
  }
}
  
@media screen and (max-width: 767px){
  .plan-point-list{
    gap: 13px;
  }
  .room-wrap .plan-list,.plan-list{
    gap: 30px 40px;
  }
  .floor-on .premium{
    padding: 3px 0 0px;
  }
  .floor-on.active .premium{
    margin: 0 0 -5px;
    padding: 7px 0 0px
  }
  .plan .plan-tab{
    margin: 30px auto;
  }
  .plan-item a.label-icon::before{
    width: 33%;
  }
  .plan-item a.pr-label-icon::before,
  .plan-item a.label-icon::before{
    top: 0;
    left: -2.6%;
    width: 33%;
  }
  .plan-item a.plan-label-icon::before {
      top: 0;
      left: -2.6%;
      width: 33%;
  }
  .plan-item a.plan-label-sold::before {
      top: 0;
      left: -2.6%;
      width: 33%;
  }
  .plan-item a.pr-label-icon01::before{
    top: -6%;
    left: -2.6%;
    width: 62%;
    height: 26%;
  }
  .plan .plan-on{
    font-size: 2.4rem;
    padding: 14px 0 15px;
  }
  .plan-on span{
    margin-top: 0;
    font-size: 1.2rem;
  }
  .triangle{
    width: 15px;
    height: 15px;
    margin: 1px auto 0;
  }
  .triangle::before{
    border-width: 6px 4px 0 4px;
  }
  .plan-tabin-head{
    font-size: 1.4rem;
    margin-bottom: 30px;
  }
  .floor-tab{
    max-width: 120px;
  }
  li.floor-on{
    font-size: 1.6rem;
  }
  .floor-on span{
    margin: 2px 0 0 1px;
    font-size: 1rem;
  }
  .floor-on.active{
    font-size: 1.6rem;
  }
  .floor-on.active span{
    font-size: 1.1rem;
  }
  li.floor-on{
    height: 50px;
  }
  .floor-tab{
    width: 26%;
  }
  .floor-tab li:nth-of-type(2){
    height: 40px;
  }
  .floor-tab li:nth-of-type(4){
    height: 80px;
    margin: 0 0 4px;
  }
  .floor-tab li{
    font-size: 1.4rem;
  }
  .floor-tab li:nth-of-type(3){
    margin: 0 0 6px;
  }
  .floor-tab li:nth-of-type(1){
    height: 42px;
  }
  .floor-tab li:nth-of-type(1) img{
   top: -4.1vw;
  }
  .floor-tab li:nth-of-type(5){
    height: 50px;
  }
  .floor-on.active::before{
    width: 15px;
    height: 15px;
    right: -20px;
  }
  .floor-tab li:nth-of-type(6){
    margin-top: 10px;
    font-size: 1rem;
  }
  .floor-tab li {
    font-size: 1.2rem;
  }
  .floor-tabin{
    width: 100%;
  }
  .floor-tabin .img-wrap{
    width: calc(100% - 35%);
    margin-left: auto;
    margin-bottom: 40px;
  }
  .rank-txt{
    width: calc(100% - 35%);
    margin-left: auto;
  }
  .plan-point-item{
    margin: 0 auto;
    max-width: 332px;
    width: 100%;
    height: 182px;
  }
  .point-head{
    font-size: 2rem;
  }
  .point-head{
    margin: 10px auto 10px;
  }
  .point-head span{
    width: 36px;
    margin:0 auto;
  }
  .point-lead{
    font-size: 1.8rem;
  }
  .plan-point-item .primary-note{
    margin: 3px 0 0;
  }
  .premium-txt{
    font-size: 1.1rem;
    position: absolute;
    top: -20px;
  }
  .rank-txt{
    margin-bottom: 10px;
    position: relative;
  }
  .floor-wrap .rank-txt{
    margin-bottom: 73px;
    font-size: 1.8rem;
  }
  .floor-wrap .rank-txt .large-txt{
    font-size: 180%;
  }
  .room-wrap .rank-txt{
    margin-top: 20px;
    width: 100%;
    gap: 2px;
  }
  .room-wrap .plan-item{
    width:100%;
  }
  .plan-point-item .primary-note{
    font-size: 1.2rem;
  }
  .room-wrap .rank-txt{
    font-size: 2rem;
  }
  .plan .primary-copy{
    margin-bottom: 30px;
    font-size: 5.3vw;
  }
}

.plan-detail .general-section{
  padding: 100px 0;
}
.plan-detail .general-section.premium-bg{
  background: url(../img/plan/premium-bg.jpg) no-repeat center top;
  background-size: cover;
}
.plan-detail .general-section.premium-bg .hanrei{
  width: 530px;
}
.plan-detail .inner{
  padding: 0;
  position: relative;
  font-family: Cinzel, serif;
}
.plan-detail .general-section.plan-bg{
  background-image: url(../img/plan/plan-bg.jpg) ,url(../img/plan/plan-bg02.jpg);
  background-position: center top, center bottom;
  background-size: contain, contain;
  background-repeat: no-repeat, no-repeat;
  background-color: #e6e5e4;
}
.plan-detail-head{
  font-size: 6rem;
  line-height: 1;
  color: #9c9380;
  margin: 0 0 40px -20px;
}
.plan-detail-text{
  font-size: 2.8rem;
}
.type-name{
  display: flex;
  gap: 20px;
  align-items: center;
}
.type-name-block{
  position: relative;
  font-size: 6rem;
  background: #004447;
  color: #fff;
  width: 280px;
  text-align: center;
  padding: 5px 0 0;
}
.type-name-block.label-icon-detail::before{
  position: absolute;
  content: "";
  background: url(../img/plan/label-last-detail.png) no-repeat top right;
  background-size: contain;
  top: -19%;
  right: -5%;
  width: 59%;
  height: 45%;
  z-index: 2;
}
.type-name-block.pr-label-icon-detail::before{
  position: absolute;
  content: "";
  background: url(../img/plan/pr-label-last-detail.png) no-repeat top right;
  background-size: contain;
  top: -19%;
  right: -5%;
  width: 59%;
  height: 45%;
  z-index: 2;
}
.type-name-block.plan-label-icon-detail::before{
  position: absolute;
  content: "";
  background: url(../img/plan/plan-label-last-detail.png) no-repeat top right;
  background-size: contain;
  top: -19%;
  right: -5%;
  width: 59%;
  height: 45%;
  z-index: 2;
}
.type-name-block.pr-label-icon-detail27::before{
  background: url(../img/plan/pr-label-last-detail27.png) no-repeat top right;
  background-size: contain;
}
.type-name-block.pr-label-icon-detail01::before{
  position: absolute;
  content: "";
  background: url(../img/plan/pr-label-topfloor-detail.png) no-repeat top right;
  background-size: contain;
  top: -19%;
  right: -4.5%;
  width: 89%;
  height: 45%;
  z-index: 2;
}
.type-name-block.pr-label-icon-detail.stype-label::before{
  background: url(../img/plan/stype-pr-label-last-detail.png) no-repeat top right;
  background-size: contain;
}
.type-name-block.pr-label-modelroom-detail::before{
  position: absolute;
  content: "";
  background: url(../img/plan/modelroom-label-detail.webp) no-repeat top right;
  background-size: contain;
  top: -54%;
  right: -5%;
  width: 101.25%;
  height: 82%;
  z-index: 2;
}
@media screen and (max-width: 767px){
  .type-name-block.pr-label-modelroom-detail::before{
    background: url(../img/plan/modelroom-label-detail-sp.webp) no-repeat top right;
    background-size: contain;
    top: -89%;
    right: -6.6%;
    width: 101.25%;
    height: 116%;
  }
}
.type-name-block span{
  font-size: 4rem;
}
.type-name-block span span{
  font-size: 2.2rem;
  margin-left: 5px;
}
.room-layout{
  font-size: 5rem;
  color: #004447;
}
.room-layout span{
  font-size: 3rem;
  line-height: 1;
}
.room-layout-block{
  display: block;
}
.plan-detail-wrap{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 0 20px;
  margin: 20px 0 0;
}
.trunk-room{
  background: #d9cecd;
  color: #6d3440;
  font-size: 1.8rem;
  text-align: center;
  line-height: 1.2;
  padding: 10px 10px 4px;
}
.plan-area-list{
  font-size: 1.8rem;
  line-height: 1;
  font-family: serif;
  color: #4d4d4d;
}
.plan-area-list.kakaku{
  font-size: 1.6rem;
  line-height: 1;
  font-family: serif;
}
.plan-area-list span{
  font-size: 6rem;
  color: #000;
}
.plan-area-list.kakaku span{
  font-size: 4rem;
}
.plan-area-list em{
  font-size: 4rem;
  color: #000;
}
.plan-area-list.kakaku em{
  font-size: 2.4rem;
}
.plan-detail-wrap .caption{
  display: block;
  width: 100%;
  padding: 10px 0;
}
.layout-list{
  display: flex;
  gap: 20px;
  margin: 70px 0 30px;
}
.layout-item{
  max-width: 320px;
  width: calc(100%/3);
  background: #9c9380;
  color: #fff;
  font-size: 2.8rem;
  text-align: center;
  padding: 8px 0 6px;
  font-family: serif;
}

.plan-detail-list{
  position: relative;
  padding-left: 1em;
  font-size: 2.4rem;
  margin-bottom: 10px;
}
.plan-detail-list::before{
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0,-50%);
  width: 17px;
  height: 17px;
  background: #9c9380;
}
.plan-txt{
  font-size: 1.8rem;
  font-family: serif;
}
.floor-type{
  position: absolute;
  top: 0;
  right: 0;
  max-width: 320px;
}
.hanrei{
  margin-top: 40px;
  width: 530px;
}
.plan-return{
  text-align: center;
  display: block;
    font-size: 2.8rem;
    background: #6d3440;
    color: #fff;
    max-width: 450px;
    margin: 60px auto 0;
    padding: 12px 0;
    line-height: 55px;
}
a.plan-return{
  color: #fff;
  transition: .2s;
}
a.plan-return:hover{
  opacity: .7;
}
.plan-type-sub{
  margin: 0 auto;
  max-width: 1000px;
  width: calc(100% - 32px);
}
.plan-wide{
  margin: 60px auto 0;
  max-width: 1450px;
  width: calc(100% - 32px);
}
.floor-type.sp-none{
  display: block;
}
.floor-type.pc-none{
  display: none;
}
.rtype-option{
  margin: 80px auto 0;
  width: calc(100% - 32px);
  max-width: 1000px;
}
@media screen and (max-width: 1000px){
  .floor-type.sp-none{
    display: none;
  }
  .floor-type.pc-none{
    display: block;
  }
}
@media screen and (max-width: 767px){
  .plan-wide{
    margin-top: 32px;
  }
  .plan-wide + .floor-type{
    margin-bottom: 32px;
  }
  .rtype-option{
    margin: 40px auto;
    width: calc(100% - 32px);
    max-width: 1000px;
  }
}


.premium-bg{
  color: #fff;
}
.premium-bg .plan-detail-head .premium-color{
  color: #a48247;
  background: -webkit-linear-gradient(0deg, #a48247, #f9f1cf 70%,#9e804b);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.premium-head{
  margin: -80px 0 0;
}
.premium-head .primary-copy{
  font-size: 5rem;
}
.premium-head img{
  width: 100px;
  margin-bottom: 20px;
}
.premium-bg .plan-detail-head .ja-font{
  color: #fff;
  font-size: 2.6rem;
  display: block;
}
.premium-bg .type-name-block{
  background: linear-gradient(130deg, #A28755, #DFD7B7 70%,#A28755);
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.692);
}
.premium-bg .room-layout{
  color: #fff;
}
.premium-bg .plan-area-list,.premium-bg .plan-area-list span,.premium-bg .plan-area-list em{
  color: #fff;
}
.premium-bg .room-layout span{
  vertical-align: middle;
}
.plan-area-item{
  margin-top: 10px;
}
.plan-area-list.kakaku .plan-area-item{
  margin-top: 0;
}
.pr-modelroom-detail{
  margin-top: -140px;
  margin-bottom: 80px;
}
@media screen and (max-width: 1000px){
  .floor-type{
    position: static;
    max-width: 100%;
    width: 90%;
    margin: 60px auto 0;
  }
}
@media screen and (max-width: 767px){
  .plan-detail .general-section{
    padding: 60px 0;
  }
  .plan-detail-head{
    font-size: 3rem;
    margin: 0 0 40px;
  }
  .plan-detail-text{
    font-size: 1.8rem;
  }
  .type-name-block{
    font-size: 3rem;
    width: 105px;
    padding: 1px 0 0;
  }
  .type-name-block.wide{
    width: 125px;
  }
  .type-name-block.label-icon-detail::before{
    background: url(../img/plan/label-last-detail-sp.png) no-repeat top right;
    background-size: contain;
    top: -18%;
    right: -6%;
    width: 65%;
    height: 45%;
  }
  .type-name-block.pr-label-icon-detail::before,
  .type-name-block.pr-label-icon-detail01::before{
    top: -18%;
    right: -5.5%;
    width: 73%;
    height: 45%;
  }
  .type-name-block.plan-label-icon-detail::before{
    top: -18%;
    right: -5.5%;
    width: 73%;
    height: 45%;
  }
  .type-name-block span{
    font-size: 2rem;
  }
  .type-name-block span span{
    font-size: 1rem;
    margin-left: 2px;
  }
  .room-layout{
    font-size: 3rem;
  }
  .room-layout span{
    font-size: 2rem;
  }
  .premium-bg .room-layout span{
    display: block;
  }
  .trunk-room{
    font-size: 1rem;
    padding: 8px 10px 7px;
  }
  .plan-area-list,
  .plan-area-list.kakaku{
    font-size: 1rem;
  }
  .plan-area-list span{
    font-size: 3rem;
  }
  .plan-area-list.kakaku span{
    font-size: 2.2rem;
  }
  .plan-area-list em{
    font-size: 2rem;
  }
  .plan-area-list.kakaku em{
    font-size: 1.4rem;
  }
  .plan-area-item{
    margin-top: 5px;
  }
  .layout-list{
    margin: 15px 0;
    gap: 10px;
  }
  .layout-item{
    font-size: 1.4rem;
  }
  .plan-detail-list{
    font-size: 1.3rem;
  }
  .plan-detail-list{
    margin-bottom: 0px;
  }
  .plan-detail-list::before{
    top: 9px;
    width: 8px;
    height: 8px;
  }
  .plan-detail-wrap .caption{
    font-size: 1rem;
  }
  .plan-txt{
    font-size: 1.2rem;
    margin-bottom: 40px;
  }
  .floor-type{
    width: 80%;
    margin: 20px auto 0;
  }
  .hanrei{
    margin-top: 20px;
    width: 260px;
  }
  .plan-detail .general-section.premium-bg .hanrei{
    width: 260px;
  }
  .plan-detail .general-section.premium-bg{
    background: url(../img/plan/premium-bg-sp.jpg) no-repeat center top;
    background-color: #000;
    background-size: contain;
  }
  .premium-head{
    margin: 0;
  }
  .premium-head .primary-copy{
    font-size: 2rem;
    margin-bottom: 40px;
  }
  .premium-bg .plan-detail-head .ja-font{
    font-size: 1.4rem;
  }
  .pr-modelroom-detail {
    margin-top: 0;
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 479px){
  .plan-return{
    margin: 30px auto 0;
    font-size: 6vw;
    padding: 0 0;
    width: 90%;
  }
}
.premium-btn{
  display: block;
  font-size: 1.4rem;
  background: #fff;
  border: 1px solid #fff;
  height: 40px;
  line-height: 40px;
  width: 240px;
  margin: 0 auto;
  transition: .2s;
}
.premium-btn:hover{
   background: #000;
   color: #fff;
}
.plan .premium .area1 .inner{
  margin: 0 auto;
}
.plan-tab-list{
  width: min(calc(100% - 32px),1000px);
  margin: 0 auto 50px;
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 10px;
}
.plan-tab-item{
  font-size:clamp(2rem, 1.575rem + 2.13vw, 3.7rem);
}
.plan-tab-link{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 70px;
  background: #004447;
  opacity: .6;
  color: #fff;
}
.plan-tab-link:visited{
  color: #fff;
}
.is-active .plan-tab-link{
  opacity: 1;
}
.plan-price{
  font-size: 1.6rem;
  font-family: serif;
}
.plan-price .large-text{
  font-size: 4rem;
}
.plan-price .small-text{
  font-size: 2.4rem;
}
.plan-tab-type.is-show{
  display: block;
}
.plan-tab-type{
  display: none;
}
.plan-view .caption{
  margin: 0;
  padding: 0;
  line-height: 2;
}
.plan-point .caption{
  margin: 0;
}
@media screen and (max-width: 767px){
  .plan-tab-item{
    font-size: 1.5rem;
  }
  .plan-tab-item .small-text{
    font-size: 1rem;
  }
  .plan-tab-link{
    height: 35px;
  }
  .plan-tab-list{
     margin-bottom: 30px;
  }
  .plan-price{
    font-size: 1rem;
  }
  .plan-price .large-text{
    font-size: 2.4rem;
  }
  .plan-price .small-text{
    font-size: 1.4rem;
  }
  .plan-view{
    order: 1;
  }
}

.inline{
  display: inline;
}
.room-layout-block.inline{
  display: block;
}
@media screen and (max-width: 767px) {
  .room-layout-block.inline{
    display: inline;
  }
}



/*--------------------------------
redevelopment
--------------------------------*/
.redevelopment .wrap .inner{
  max-width: 1000px;
  align-items: flex-start;
}
.redevelopment .caption{
  padding: 0;
}
.redevelopment .mv-wrap {
  background: url(../img/redevelopment/mv.jpg) no-repeat center center;
  background-size: cover;
}
.redevelopment-head{
  font-size: 2rem;
  line-height: 2;
}
.redevelopment-mark{
  font-size: 2.4rem;
  vertical-align: top;
}
.note .redevelopment-mark{
  font-size: 1rem;
}
.redevelopment-area1 .img-wrapper{
  z-index: 1;
}
.redevelopment-area1{
  position: relative;
  background: linear-gradient(135deg,#F6F6F5 50%,#EDECE9 70%,#C0BAB1 100%);
}
.redevelopment-area3{
  position: relative;
}
.fukumachi-logo{
  max-width: 200px;
  width: 50%;
  margin: 0 auto 2em;
}
.redevelopment-area1 .primary-heading{
  margin-bottom: 0.2em;
}
.redevelopment-area1 .tertiary-heading{
  margin-bottom: 1em;
}
.redevelopment-area1 .note{
  line-height: 2;
}
.redevelopment-triangle{
  position: absolute;
  bottom: 0;
  right: 0;
  max-width: 1300px;
}
.redevelopment-area2,
.redevelopment-area4{
  background: #004346;
  color: #fff;
}
.redevelopment-area2 .text-wrap{
  max-width: 440px;
  width: 100%;
  margin-right: auto;
}
.redevelopment-area2 .img-wrapper{
  width: calc(100% - 480px);
}
.redevelopment-area2 .img-wrapper .caption{
  bottom: -28px;
  right: 0;
}
.redevelopment-area2 .note{
  line-height: 2;
}
.redevelopment-area3 .redevelopment-triangle{
  transform: scale(-1, 1);
  right: auto;
  left: 0;
  opacity: .6;
}
.redevelopment-area3 .img-wrapper{
  z-index: 1;
}
.redevelopment .slick-slide{
  margin-right: 1vw;
  margin-left: 1vw;
}
.redevelopment-area4{
  padding-bottom: 80px;
}
.redevelopment-en-head{
  position: absolute;
  bottom: 0;
  left: 8px;
  font-size: 5.2rem;
  line-height: 1.2;
  color: #fff;
  font-family: garamond-premier-pro, serif;
}
.redevelopment-item .is-shadow{
  text-shadow: 2px 2px 8px #000;
}
.redevelopment-item .caption.is-shadow{
  text-shadow: 0 0 8px rgb(0, 0, 0),0 0 8px rgb(0, 0, 0),0 0 8px rgb(0, 0, 0);
}
.redevelopment-item .text-wrap{
  margin-top: 30px;
}
.redevelopment-ja-head{
  font-size: 1.8rem;
  margin-top: 4px;
}
.redevelopment-sub-note{
  font-size: 1.4rem;
}
.redevelopment-item .redevelopment-mark{
  font-size: 1rem;
  vertical-align: baseline;
}
.redevelopment-area5{
  background: #E7EAEB;
  color: #231815;
  padding: 40px 0;
}
.shop-list{
  position: relative;
}
.redevelopment .shop-list.slick-slide{
  margin-right: 2vw;
  margin-left: 2vw;
}
.shop-logo{
  width: 50%;
  max-width: 260px;
  margin: 0 auto;
}
.redevelopment-area5 .tertiary-heading{
  font-size: 2.6rem;
  color: #001A50;
  margin: 1em auto;
}
.shop-item{
  display: flex;
  gap: 20px;
}
.shop-item .img-wrapper{
  margin: 1em auto;
  position: relative;
}
@media screen and (max-width:767px){
  .redevelopment .mv-wrap{
    background: url(../img/redevelopment/mv-sp.jpg) no-repeat center center;
    background-size: cover;
  }
  .redevelopment-area1 .primary-heading{
    font-size: 2.1rem;
  }
  .redevelopment-mark{
    font-size: 1.2rem;
  }
  .redevelopment .note{
    font-size: 1.2rem;
  }
  .redevelopment-area1 .img-wrapper{
    margin-top: 35px;
  }
  .redevelopment-area2 .text-wrap{
    max-width: 100%;
  }
  .redevelopment-area2 .img-wrapper{
    margin-top: 20px;
    width: 100%;
  }
  .redevelopment-head{
    font-size: 1.8rem;
  }
  .redevelopment .caption{
    font-size: 1rem;
  }
  .redevelopment-area2 .img-wrapper .caption{
    bottom: -20px;
  }
  .redevelopment .primary-heading{
    font-size: 2.4rem;
  }
  .redevelopment-area4 .tertiary-heading{
    font-size: 1.4rem;
  }
  .redevelopment-en-head{
    font-size: 3rem;
  }
  .redevelopment-item .text-wrap{
    margin-top: 20px;
  }
  .redevelopment-ja-head{
    font-size: 1.2rem;
  }
  .redevelopment-sub-note{
    line-height: 1.5;
    font-size: 1.3rem;
  }
  .redevelopment .slick-slide{
    margin-right: 3vw;
    margin-left: 3vw;
  }
  .redevelopment-area4{
    padding-bottom: 28px;
  }
  .redevelopment-area5{
    padding: 20px 0;
  }
  .redevelopment .shop-list.slick-slide{
    margin-right: 3vw;
    margin-left: 3vw;
  }
  .shop-logo{
    width: 100%;
  }
  .redevelopment-area5 .tertiary-heading{
    font-size: 2.2rem;
    margin: .6em auto;
  }
  .shop-item{
    gap: 8px;
  }
  .shop-item .img-wrapper{
    margin: .6em auto;
  }
}

/*--------------------------------
access
--------------------------------*/
.access .mv-wrap {
  background: url(../img/access/mv.jpg) no-repeat center center;
  background-size: cover;
}
.access .img-wrapper .caption{
  padding: 0;
}
.access  .page-heading{
  margin-bottom: 40px;
}
.access-note{
  font-size: 1.8rem;
  line-height: 2;
}
.access .area1{
  background: url(../img/access/access-img01.jpg) no-repeat center center;
  background-size: cover;
}
.access-minutes{
  margin: 120px auto 0;
  max-width: 880px;
  width: 100%;
}
.access .flex-item.text-wrapper{
  width: 50%;
  margin-right: auto;
}
.access .flex-item.img-wrapper{
  width: 48%;
}
.access .area2{
  align-items: flex-end;
}
.access-copy{
  position: relative;
  font-size: 2.4rem;
  color: #004346;
  margin-bottom: 20px;
  display: inline-block;
}
.access-copy::before{
  content: "";
  position: absolute;
  top: 50%;
  right: -150px;
  width: 140px;
  height:1px;
  background: #004346;
}
.access-list .img-wrapper{
  width: calc(100%/3);
}
.access .area3{
  position: relative;
  padding: 30px 0 90px;
}
.access .area3 .tertiary-heading{
  color: #004346;
}
.access .area3.wow-finished::after {
  content: "";
  position: absolute;
  z-index: -1;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 28vw 100vw;
  border-color: transparent transparent #dedbd3 transparent;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
-webkit-animation: access-triangle 1s ease 0.5s forwards;
  animation: access-triangle 1s ease 0.5s forwards;
}

@keyframes access-triangle {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  100% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
}
.access .area3 .access-note{
  margin-top: 2em;
  line-height: 2;
}
.access-business{
  position: relative;
  display: flex;
  flex-direction: row-reverse;
  align-items: flex-start;
}
.access-business .img-wrapper:nth-of-type(1){
  z-index: 3;
}
.access-business .img-wrapper:nth-of-type(2){
  top: 160px;
  margin-right: -40px;
}
.access-business .img-wrapper:nth-of-type(2)::before{
  content: "";
  position: absolute;
  top: -30%;
  right: -40%;
  width: 100%;
  height: 100%;
  background: #b2c7c8;
}
.access-business img{
  position: relative;
  z-index: 1;
}
.access .area4{
  background: #004346;
  color: #fff;
}
.access .area4 .tertiary-heading{
  color: #b3a996;
  border-bottom: 1px solid #fff;
  padding-bottom: 1.2em;
  margin-bottom: 1.2em;
}
.access .area4 .flex-wrapper{
  margin-top: 60px;
  gap: 8%;
}
.access .area4 .flex-item.img-wrapper{
  width: 46%;
}
.access .img-wrapper .caption.caption-out{
  bottom: -30px;
  left: 0;
  right: 0;
}
.access .area4 .inner,
.access .area5 .inner{
  max-width: 1000px;
}
.access .area5{
  background: url(../img/access/access-img14.jpg) no-repeat center center;
  background-size: cover;
}
.access .area5 .tertiary-heading{
  color: #004346;
  border-bottom: 1px solid #004346;
  padding-bottom: 1.2em;
  margin-bottom: 1.2em;
}
.access-map{
   max-width: 770px;
   width: 100%;
   margin: 140px auto 0;
}
@media screen and (max-width: 1000px){
  .access .area2 .flex-item.text-wrapper,
  .access .area2 .flex-item.img-wrapper,
  .access .area3 .flex-item.text-wrapper,
  .access .area3 .flex-item.img-wrapper{
    width: 100%;
  }
  .access .area2 .flex-item.img-wrapper,
  .access .area3 .flex-item.img-wrapper{
    margin-top: 20px;
  }
  .access .area3{
    padding: 0 0 120px;
  }
}
@media screen and (max-width: 767px){
  .access .mv-wrap {
    background: url(../img/access/mv-sp.jpg) no-repeat center center;
    background-size: cover;
  }
  .access .page-heading{
    font-size: 2rem;
    margin-bottom: 0;
    line-height: 1.5;
  }
  .access .tertiary-heading{
    font-size: 1.8rem;
  }
  .access-note{
    margin-top: 20px;
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .access .lead{
    font-size: 1.2rem;
  }
  .access-minutes{
    margin: 40px auto;
  }
  .access .flex-item.text-wrapper,
  .access .flex-item.img-wrapper{
    width: 100%;
  }
  .access .flex-item.img-wrapper{
    margin-top: 20px;
  }
  .access-copy{
    font-size: 1.4rem;
  }
  .access-copy::before{
    right: -80px;
    width: 70px;
  }
  .access-list .img-wrapper{
    width: calc(100%/2);
  }
  .access .area3{
    padding: 0 0 90px;
  }
  .access-business .img-wrapper:nth-of-type(2){
    top: 80px;
  }
  .access .area4 .flex-wrapper{
    margin-top: 0;
    gap: 20px 0;
  }
  .access .area4 .flex-item.img-wrapper{
    width: 100%;
  }
  .access .img-wrapper .caption.caption-out{
    bottom: -22px;
    font-size: 1rem;
  }
  .access .area4 .inner{
    padding-bottom: 45px;
  }
  .access-map{
    margin: 30px auto;
  }
}
/*--------------------------------
premium
--------------------------------*/
.premium .mv-wrap {
  background: url(../img/premium/mv.jpg) no-repeat center center;
  background-size: cover;
}
.premium .mv-wrap .mv-cap{
  text-shadow: 0 0 10px #000, 0 0 10px #000, 0 0 10px #000, 0 0 10px #000, 0 0 10px #000;
}
.premium .area1{
  background: url(../img/premium/premium-img01.jpg) no-repeat center center;
  background-size: cover;
}
.premium .area1 .inner{
  padding: 120px 0 100px;
}
.premium .area1 .img-wrapper{
  height: 280px;
  background: url(../img/premium/premium-img02.jpg) no-repeat center center;
  background-size: cover;
}
.premium .area1 .secondary-heading{
  -webkit-background-clip: text;
  background-clip: text;
  background-image: linear-gradient(90deg, rgba(163,126,60,1) 0%, rgba(244,234,196,1) 71%, rgba(156,127,66,1) 100%);
  color: transparent;
  display: inline-block;
}
.premium .img-wrapper .caption{
  padding: 0;
}
.premium .area1 .caption,
.premium .area2 .caption{
  text-shadow: 0 0 10px #000, 0 0 10px #000, 0 0 10px #000, 0 0 10px #000, 0 0 10px #000;
}
.premium-en{
  font-family: garamond-premier-pro, serif;
}
.premium .area2{
  background: #000;
}
.premium .area2 .secondary-heading,
.premium .area3 .secondary-heading{
  position: relative;
  -webkit-background-clip: text;
  background-clip: text;
  background-image: linear-gradient(90deg, rgba(163,126,60,1) 0%, rgba(244,234,196,1) 71%, rgba(156,127,66,1) 100%);
  color: transparent;
  letter-spacing: .1em;
  display: inline-block;
}
.premium .premium-mark{
  display: block;
  width: 80px;
  height: 30px;
  margin: 30px auto 40px;
}
.premium .area2 .flex-item.img-wrapper{
  width: 46%;
  margin-right: auto;
}
.premium .area2 .flex-item.item-wrapper {
  width: 50%;
}
.premium-point{
  margin-bottom: 50px;
}
.premium-point dd{
  background: linear-gradient(90deg, rgba(163,126,60,1) 0%, rgba(244,234,196,1) 71%, rgba(156,127,66,1) 100%);
  color: #000;
  font-size: 2.2rem;
  padding-left: 10px;
  margin-bottom: 20px;
}
.premium-point dd span{
  font-size: 80%;
}

.premium-point dt{
  font-size: 1.6rem;
}
.premium-point + .img-wrapper{
  max-width: 470px;
  width: 78%;
  margin: 0 auto;
}
.premium-point + .img-wrapper .caption{
  position: static;
  width: 88%;
}
.premium-sale{
  margin-top: 60px;
}
.premium .area3 {
   background: #262320cf;
}
.premium-list{
  gap: 100px 45px;
}
.premium-plan .premium-plan-list.has-label{
  padding-top: 48px;
}
.premium-item{
  position: relative;
  width: calc(100%/3 - 30px);
}
.premium-item h3{
   position: absolute;
   top: -50px;
   font-size: 2.8rem;
   color: #b3a996;
   font-family: garamond-premier-pro, serif;
   letter-spacing: .1em;
}
.premium-item dt{
  margin: 20px 0 10px;
  font-size: 2rem;
  color: #b3a996;
}
.premium-item dd{
  font-size: 1.3rem;
  color: #fff;
}
.premium-plan{
  background: url(../img/premium/premium-bg.jpg) no-repeat center center;
  background-size: cover;
}
#premium-plan-anker{
  margin-top: -220px;
  padding-top: 220px;
}
@media screen and (max-width: 767px){
  #premium-plan-anker{
    margin-top: -150px;
    padding-top: 150px;
  }
  .premium-sale{
    margin-top: 40px;
    padding-bottom: 20px;
  }
  .premium-plan .premium-plan-list.has-label{
    padding-top: 0;
  }
  .premium-plan .premium-plan-list.has-label .plan-item:last-child{
    margin-top: 8%;
  }
}
.premium-plan .premium-plan-list{
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}
.premium .area2 .premium-plan .secondary-heading{
  background-image: linear-gradient(90deg, #a25e00 0%, #f3b30a 71%, #9b6000 100%);
  color: transparent;
}
.premium .caption-out{
  bottom: -24px;
  padding: 0;
  left: 0;
  right: 0;
}

@media screen and (max-width: 767px){
  .premium .mv-wrap{
    background: url(../img/premium/mv-sp.jpg) no-repeat center center;
    background-size: cover;
  }
  .premium .mv-wrap .mv-cap{
    top: 4px;
    bottom: auto;
  }
  .premium .area1 .inner{
     padding: 50px 0 40px;
  }
  .premium .area1 .inner p{
    letter-spacing: -1px;
  }
  .premium .area1 .img-wrapper{
    height: 140px;
  }
  .premium .area2 .secondary-heading,
  .premium .area3 .secondary-heading{
    letter-spacing: 0;
  }
  .premium .premium-mark{
    width: 38px;
    height: 15px;
    margin: 20px auto;
  }
  .premium .area2 .flex-item.img-wrapper,
  .premium .area2 .flex-item.item-wrapper{
    width: 100%;
  }
  .premium .area2 .flex-item.item-wrapper{
    margin-top: 26px;
  }
  .premium-point dd{
    font-size: 1.6rem;
    margin-bottom: 10px;
  }
  .premium-point dt{
    font-size: 1.4rem;
  }
  .premium-point{
    margin-bottom: 20px;
  }
  .premium-item{
    width: 100%;
  }
  .premium-list{
    gap: 35px;
  }
  .premium-item h3{
    position: static;
    text-align: center;
    margin-bottom: 20px;
    font-size: 2rem;
  }
  .premium-point + .img-wrapper{
    padding-left: 4%;
  }
}
/*--------------------------------
location
--------------------------------*/
.location .mv-wrap {
  background: url(../img/location/mv.jpg) no-repeat center center;
  background-size: cover;
}
.location .area1 .caption{
  padding: 0;
}
.location .area2 {
  position: relative;
  background: url(../img/location/location-bg01.png) no-repeat top left,url(../img/location/location-bg02.png) no-repeat center center;
  background-size: 60vw,cover;
}
.location .area2 > .caption{
  padding: 0;
}
.location .area2 figure,
.location .area4 figure{
  position: absolute;
  right: 0;
  bottom: 0;
  width: 100vw;
  z-index: -1;
}
.location .area2 figure img{
  transform: scale(-1, 1);
}
.location .area2 .inner{
  padding: 200px 0;
}
.location .area2 .page-heading{
  margin-bottom: 40px;
}
.location .area2 .flex-wrapper{
  justify-content: space-between;
}
.location .area2 .flex-item.text-wrapper{
  width: 50%;
}
.location .area2 .flex-item.img-wrapper{
  width: 50%;
}
.location-list{
  margin: 120px 0;
  justify-content: space-between;
}
.location-item{
  width: calc(100%/4 - 15px);
}
.location .area2 .location-item .caption{
  padding: 0;
  text-shadow: 0 0 10px #000, 0 0 10px #000, 0 0 10px #000, 0 0 10px #000, 0 0 10px #000;
}
.location-history{
  position: relative;
  font-family: garamond-premier-pro, serif;
}
.location-history::before{
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%,0);
  width: 1px;
  height: 0;
  background: #000;
}
.location-history.wow-finished::before{
  animation-name: locationLine;
  animation-duration:4s;
  animation-delay: 1s;
  animation-fill-mode:forwards;
}

@keyframes locationLine{
  from {
    height: 0%;
  }

  to {
    height: 100%;
  }
}


.location-history dl{
  width: 50%;
}
.location-history dt{
  position: relative;
  font-size: 4rem;
  color: #004346;
}
.location-history dt::before{
  content: "●";
  position: absolute;
  top: 50%;
  left: -38px;
  transform: translate(0,-50%);
  font-size: 1.6rem;
}
.location-history .text-right dt::before{
  left: auto;
  right: -38px;
}
.location-history dt span{
  position: relative;
  display: inline-block;
  background: #900e14;
  color: #fff;
  font-size: 2.2rem;
  line-height: 1;
  padding: 8px 8px 4px;
  top: -4px;
  margin-right: 4px;
}
.location-history dt span sub{
  font-size: 60%;
}
.location-history dd{
  display: inline-block;
  position: relative;
  font-size: 2.2rem;
  color: #004346;
  text-align: left;
  padding-left: 30px;
}
.location-history dd sub{
  color: #000;
  font-size: 60%;
}
.location-completed{
  font-size: 80%;
  display: block;
  line-height: 1.2;
}
.location-number{
  display: inline-block;
  width: 25px;
  height: 25px;
  background: #b1a794;
  color: #000;
  text-align: center;
  line-height: 28px;
  margin: 0 5px 0 -30px;
}
.location-history ul{
  margin: 12px 0 16px;
  font-size: 1.4rem;
  color: #000;
  padding-left: 10px;
}
.location-history li{
  position: relative;
}
.location-history li:nth-of-type(1){
  text-indent: -2em;
  padding-left: 2.1em;
}
.location-history li span{
  vertical-align: top;
}
.location-history li::before{
  content: "";
  position: absolute;
  top: 4px;
  left: -10px;
  width: 8px;
  height: 8px;
  background: #b3a996;
}

.location-history dl{
  margin-left: auto;
  padding-left: 30px;
}
.location-history .text-right{
  margin-right: 50%;
  padding-right: 30px;
  padding-left: 0;
}
.location-emphasis{
  color: #900e14;
}
.location-emphasis .location-number{
  background: #900e14;
  color: #fff;
}
.location-history dl:nth-of-type(3){
  margin-top: -100px;
}
.location-history dl:nth-of-type(5){
  margin-top: -70px;
}
.location-history dl:nth-of-type(6){
  margin-top: -70px;
}
.location-history dl:nth-of-type(7){
  margin-top: -200px;
}
.location-history dl:nth-of-type(8) dt::before{
  display: none;
}
.location-history dl:nth-of-type(9){
  margin-top: -50px;
}
.location-history dl:nth-of-type(9) dt{
  color: #900e14;
}
.location-history dl:nth-of-type(10){
  margin-top: -300px;
  padding-bottom: 60px;
}
.location .area3{
  background: #004346;
}
.history-item{
  position: relative;
  max-width: 855px;
  width: 100%;
  margin: 0 auto;
  background: url(../img/location/location-bg03.jpg) no-repeat center center;
  background-size:cover;
  padding: 30px;
}
.history-item::after{
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  width: 100%;
  height: 100%;
  padding: 8px;
  border: 1px solid #fff;
}
.history-item .tertiary-heading,
.location .area4 .inner > .tertiary-heading{
  color: #004346;
  border-bottom: 1px solid #000;
  padding-bottom: .5em;
  margin-bottom: .5em;
}
.history-item .flex-wrapper{
  justify-content: space-between;
  align-items: center;
}
.history-item .flex-item.text-wrapper{
  width: 48%;
}
.history-item .flex-item.img-wrapper{
  width: 48%;
}
.location .area4{
  position: relative;
  background: #a89e8824;
  text-align: center;
  z-index: 2;
}
.location .area4  .inner > .tertiary-heading{
  display: inline-block;
  padding: 0 4px;
}
.location-list .tertiary-heading{
  width: 100%;
  color: #004346;
  font-family: garamond-premier-pro, serif;
  letter-spacing: .1em;
}
.location .caption-out{
  padding: 0;
  left: 0;
  right: 0;
  bottom: -24px;
}
.location .area5{
  background: #000;
  color: #a89e88;
}
.location .area5 .tertiary-heading{
  letter-spacing: .1em;
  font-family: garamond-premier-pro, serif;
}
.location .area5 .img-wrapper{
  margin: 60px auto 0;
  max-width: 1000px;
}
.info-list{
  max-width: 1000px;
  margin: 60px auto 0;
  justify-content: space-between;
}
.info-list li{
  width: calc(100%/3 - 20px);
}
@media screen and (max-width: 1000px){
  .location-item{
    width: calc(100%/2 - 10px);
    margin-bottom: 20px;
  }
  .location .caption-out{
    position: static;
  }
}
@media screen and (max-width: 767px){
  .location .area1 .primary-heading{
    font-size: 2.7rem;
    letter-spacing: -1px;
  }
  .location .area2 .inner{
    padding: 100px 0;
  }
  .location .area2 .page-heading{
     margin-bottom: 0;
  }
  .location .area2{
    background: url(../img/location/location-bg01.png) no-repeat top left,url(../img/location/location-bg02.png) no-repeat center center;
    background-size: 100vw,cover;
  }
  .location .area2 .flex-item.text-wrapper,
  .location .area2 .flex-item.img-wrapper{
    width: 100%;
  }
  .location-list{
    margin: 30px 0;
  }
  .location-item {
    width: calc(100%/2 - 5px);
    margin-bottom: 10px;
  }
  .location-history dl{
    padding-left: 10px;
  }
  .location-history dt::before{
    left: -18px;
  }
  .location-history dt{
    font-size: 2.6rem;
  }
  .location-history dd{
    font-size: 1.5rem;
    padding-left: 20px;
  }
  .location-history ul{
    font-size: 1rem;
  }
  .location-number{
    width: 16px;
    height: 16px;
    line-height: 18px;
    margin: 0 5px 0 -22px;
  }
  .location-history .text-right{
    padding-right: 10px;
  }
  .location-history .text-right dt::before{
    right: -18px;
  }
  .location-history dt span{
    font-size: 1.1rem;
    text-align: center;
    padding: 4px 4px 2px;
    top: 1px;
    margin-right: 19px;
  }
  .location-history dl:nth-of-type(2){
    margin-top: -20px;
  }
  .location-history dl:nth-of-type(5) {
    margin-top: -100px;
  }
  .location-history dl:nth-of-type(7) {
    margin-top: -178px;
  }
  .location-history dl:nth-of-type(10){
    padding-bottom: 80px;
  }
  .history-item .flex-item.text-wrapper,
  .history-item .flex-item.img-wrapper{
    width: 100%;
  }
  .history-item::after{
    padding: 4px;
  }
  .history-item{
    padding: 15px;
  }
  .info-list li{
    width:100%;
  }
  .location .area5 .img-wrapper,
  .info-list{
    margin: 30px auto 0;
    gap: 8vw;
  }
  .location .page-heading{
    font-size: 2rem;
  }
  .location-history li::before{
     top: 2px;
  }
}
/*--------------------------------
modelroom(photo galleryページ)
--------------------------------*/
.modelroom .mv-wrap {
  background: url(../img/modelroom/mv.jpg) no-repeat center center;
  background-size: cover;
}
@media screen and (max-width: 767px){
  .modelroom .mv-wrap {
    background: url(../img/modelroom/mv-sp.jpg) no-repeat center center;
    background-size: cover;
  }
  .modelroom .page-heading{
    font-size: 2rem;
    margin-bottom: 0;
    line-height: 1.5;
  }
}

.modelroom .new-header {
  opacity: 1;
}
.modelroom .mv-text{
  text-shadow: 1px 1px 8px rgba(0,0,0,.7);
}
.modelroom .modelroom-inner {
  max-width: 1000px;
  width: calc(100% - 32px);
  margin: 0 auto;
}
.modelroom .modelroom-copy {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  height: 3.6em;
  font-size: 3.2rem;
  line-height: 1.8;
  text-align: center;
  margin: 80px 0;
}
@media screen and (max-width: 767px) {
  .modelroom .modelroom-copy {
    font-size: 4.6vw;
    margin: 40px 0;
  }
}
.modelroom .img-wrapper {
  position: relative;
}
.modelroom .inline-block {
  display: inline-block;
}
.modelroom .modelroom-thumbs,
.modelroom .common-area-thumbs {
  margin-top: 20px;
  max-width: 900px;
  width: 100%;
  margin: 30px auto;
}
@media screen and (max-width: 767px) {
  .modelroom .modelroom-thumbs,
  .modelroom .common-area-thumbs {
    margin: 20px auto;
  }
}
.modelroom .modelroom-name {
  position: absolute;
  letter-spacing: 0.1em;
  line-height: 1;
  word-break: normal;
}
.modelroom .modelroom-slider .modelroom-name,
.modelroom .common-area-slider .modelroom-name {
  font-size: 1.9rem;
  bottom: 0;
  right: 0px;
  color: #fff;
  padding: 20px 25px;
}
@media screen and (max-width: 767px) {
  .modelroom .modelroom-slider .modelroom-name,
  .modelroom .common-area-slider .modelroom-name{
    font-size: 1.5rem;
    padding: 10px 15px;
  }
}
.modelroom .modelroom-thumbs .modelroom-name,
.modelroom .common-area-thumbs .modelroom-name {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 1.4rem;
  letter-spacing: 0;
  text-align: center;
  color: #fff;
  opacity: 1;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .modelroom .modelroom-thumbs .modelroom-name,
  .modelroom .common-area-thumbs .modelroom-name {
    font-size: 3.5vw;
    line-height: 1.2;
  }
}
.modelroom .modelroom-thumbs .img-wrapper,
.modelroom .common-area-thumbs .img-wrapper {
  background: #000;
}
.modelroom .modelroom-thumbs .img-wrapper img,
.modelroom .common-area-thumbs .img-wrapper img {
  opacity: 0.4;
}
.modelroom .modelroom-thumbs .slick-current .img-wrapper img,
.modelroom .common-area-thumbs .slick-current .img-wrapper img {
  animation: fadeIn 0.4s ease 0.2s 1 normal;
  animation-fill-mode: forwards;
}
@keyframes fadeIn {
  from {
    opacity: 0.4;
  }
  to {
    opacity: 1;
  }
}
.modelroom .modelroom-thumbs .slick-current .modelroom-name,
.modelroom .common-area-thumbs .slick-current .modelroom-name {
  opacity: 0;
  transition: all 0.4s ease;
}
.modelroom .modelroom-thumbs .slick-current img,
.modelroom .common-area-thumbs .slick-current img {
  opacity: 1;
  transition: all 0.4s ease;
}
.modelroom .modelroom-thumbs .slick-track,
.modelroom .common-area-thumbs .slick-track {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: 100% !important;
  transform: translate3d(0px, 0px, 0px) !important;
}
.modelroom .modelroom-inner .slick-slide {
  padding: 0 0;
}
.modelroom .modelroom-thumbs .img-wrapper,
.modelroom .common-area-thumbs .img-wrapper {
  cursor: pointer;
  margin: 10px;
  width: calc(100%/5 - 20px)!important;
  /* width: 20% !important; */
}
@media screen and (max-width: 767px) {
  .modelroom .modelroom-thumbs .img-wrapper,
  .modelroom .common-area-thumbs .img-wrapper {
    margin: 1%;
    width: 23% !important;
  }
}
.modelroom .youtube_area {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin-bottom: 30px; 
}
.modelroom .youtube_area iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.modelroom .page-heading {
  font-size: 3.8rem;
  text-align: center;
  margin-bottom: 0.5em;
  margin-top: 0;
  letter-spacing: 2px;
}
.modelroom .page-heading01 {
  margin-bottom: 60px;
}
.modelroom .head-note{
  font-size: 2rem;
  color: #004346;
  text-align: center;
  margin-bottom: 60px;
  letter-spacing: 2px;
}
.modelroom .head-note.is-light{
  color: #fff;
}
.modelroom .bg01{
  background: #D9D4CA;
}
.modelroom .bg02{
  background: #000;
}
.modelroom .secondary-heading{
  position: relative;
  -webkit-background-clip: text;
  background-clip: text;
  background-image: linear-gradient(90deg, rgba(163, 126, 60, 1) 0%, rgba(244, 234, 196, 1) 71%, rgba(156, 127, 66, 1) 100%);
  color: transparent;
  letter-spacing: .1em;
  display: inline-block;
  font-weight: 600;
  font-size: 70px;
  margin: 0 auto 34px;
  text-align: center;
}
.modelroom .secondary-heading .premium-mark {
  display: block;
  width: 80px;
  height: 30px;
  margin: -25px auto 40px;
}
@media screen and (max-width: 767px) {
  .modelroom .secondary-heading{
    font-size: 40px;
    margin: 0 auto 22px;
    text-align: center;
  }
  .modelroom .secondary-heading .premium-mark {
    width: 38px;
    height: 15px;
    margin: 10px auto 12px;
  }
  .modelroom .page-heading {
    font-size: 5.5vw;
    margin-top: 1.6%;
    margin-bottom: 0.25em;
  }
  .modelroom .page-heading01 {
    margin-bottom: 6%;
  }
  .modelroom .head-note{
    font-size: 3.5vw;
    margin-bottom: 6%;
  }
  
}

/*--------------------------------
landplan
--------------------------------*/
.landplan .mv-wrap {
  background: url(../img/landplan/mv.jpg) no-repeat center center;
  background-size: cover;
}
.landplan-bg{
  padding: 40px 0;
  background: url(../img/landplan/landplan-bg.png) no-repeat top left, url(../img/landplan/landplan-bg02.png) no-repeat bottom right,#efeff1;
  background-size: 60vw, 60vw;
}
.landplan .page-heading{
   margin-bottom: 80px;
}
.landplan-note{
  font-size: 1.8rem;
  line-height: 2.5;
}
.landplan-map{
  max-width: 840px;
  margin: 80px auto 0;
}
.landplan-point{
  position: relative;
  justify-content: center;
  margin: 60px auto 0;
  max-width: 900px;
  gap:20px 40px;
}
.landplan-point .caption{
  position: absolute;
  left: 0;
  bottom: -30px;
}
.landplan-point dl{
  width: calc(430px - 12px);
  background: #b3a99668;   
	outline: solid 1px #b3a996;
	outline-offset: 5px;
	margin: 6px; 
  text-align: center;
  padding: 12px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.landplan-point dt{
  font-size: 2rem;
  color: #004346;
  padding-bottom: 8px;
  margin-bottom: 8px;
  border-bottom: 1px solid #004346;
  width: 100%;
}
.landplan-point dd{
  font-size: 1.6rem;
}
.landplan .wrap .caption{
  padding: 0;
}
.landplan .img-wrapper .caption-out{
  bottom: -20px;
  left: 0;
  right: 0;
  margin: 0;
}
.landplan .is-shadow{
   text-shadow: 0 0 3px #000, 0 0 3px #000;
}
.landplan-heading{
  font-size: 2.4rem;
  color: #004346;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #b3a996;
}
.landplan-en{
  display: block;
  font-family: garamond-premier-pro, serif;
}
.landplan-item {
  justify-content: space-between;
  align-items: flex-start;
  letter-spacing: .1em;
}
.landplan-item:nth-of-type(2){
  margin-top: 160px;
  flex-direction: row-reverse;
  text-align: right;
}
.landplan-item .flex-item.text-wrapper{
  width: 500px;
}
.landplan-item .flex-item.img-wrapper{
  width: calc(100% - 550px);
  min-width: 300px;
}
.landplan-grid{
  display: grid;
  align-items: flex-start;
  grid-template-rows: repeat(2,1fr);
}
.landplan-grid .img-wrapper:nth-of-type(1){
  width: calc(50% + 25px);
  margin-left: auto;
}
.landplan-grid .img-wrapper:nth-of-type(2){
  margin-top: -50px;
  width: calc(50% + 25px);
}
.land-scape{
  position: relative;
}
.land-scape::after {
  content: "";
  position: absolute;
  z-index: -1;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 30vw 100vw;
  border-color: transparent transparent #dedbd3 transparent;
}
.land-scape.wow-finished::after{
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  -webkit-animation: landScape 1s ease 0.5s forwards;
  animation: landScape 1s ease 0.5s forwards;
}
@keyframes landScape {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  100% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
}
.sidewark{
  background: #f2f6f6;
}
@media screen and (max-width: 900px) {
  .landplan-item .flex-item.img-wrapper{
    width: 100%;
    min-width: none;
  }
  .landplan-item{
    gap: 20px;
 }
}
@media screen and (max-width: 767px) {
  .landplan .page-heading{
    font-size: 2rem;
    margin-bottom: 0;
    line-height: 1.5;
  }
  .landplan-note{
    margin-top: 20px;
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .landplan-point dd{
    font-size: 1.2rem;
  }
  .landplan-point .caption{
    font-size: 1rem;
  }
  .landplan-item .flex-item.text-wrapper{
    width: 100%;
  }
  .landplan-heading{
    font-size: 1.8rem;
  }
  .landplan-item:nth-of-type(2){
    margin-top: 80px;
    text-align: left;
  }
}

/*--------------------------------
quality
--------------------------------*/
.quality .mv-wrap {
  background: url(../img/quality/mv.jpg) no-repeat center center;
  background-size: cover;
}
.quality .mv-en{
  height: 3vw;
}
@media screen and (max-width: 767px) {
  .quality .mv-wrap {
    background: url(../img/quality/mv-sp.jpg) no-repeat center center;
    background-size: cover;
  }
  .quality .mv-en{
    height: 7.6vw;
  }
}
.general-section .quality-area.inner{
  padding-bottom: 45px;
}
.quality .quality-tab{
	display: flex;
	width: 100%;
	max-width: 1200px;
	margin: 20px auto 0;
}
.quality .quality-on{
  position: relative;
  font-family: garamond-premier-pro, serif;
	padding: 12px 0;
	width: calc(100%/5);
	background: #dcdad3;
  border-right: 1px solid #e7e5e0;
	color: #888888;
	text-align: center;
	font-size: 1.8rem;
	cursor: pointer;
	transition: .3s;
}
.quality .quality-on:last-child{
  border-right: none;
}
.quality .quality-on:hover{
	opacity: .7;
}
.quality .quality-on.is-active{
	background: #004346;
	color: #fff;
}
.quality .quality-on::after{
	position: absolute;
	content: "";
	bottom: -19%;
	left: 50%;
	transform: translate(-50% , -50%);
  width: 0;
  height: 0;
  border-top: 9px solid #888888;
  border-right: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 5px solid transparent;
}
.quality .quality-on.is-active::after{
  border-top: 9px solid #fff;
}
@media screen and (max-width: 860px){
	.quality .quality-on{
		font-size: 1.5rem;
	}
}
@media screen and (max-width: 767px){
  .general-section .quality-area.inner{
    padding-bottom: 20px;
  }
  .quality .quality-tab{
    flex-direction: column;
  }
	.quality .quality-on{
		padding: 8px 0;
		font-size: 1.6rem;
    width: 92%;
    margin: 0 auto;
    border-right: none;
    border-bottom: 1px solid #e7e5e0;
	}
  .quality .quality-on:last-child{
    border-bottom: none;
  }
	.quality .quality-on:hover{
		opacity: 1;
	}
	.quality .quality-on::after{
    bottom: -18%;
    left: 94%;
		height: 6px;
	}
}


.bg-quality{
  background-color: #f2f6f6;
}
.quality .quality-tabin{
	display: none;
}
.quality .quality-tabin.is-show{
	display: block;
}
.quality .quality-tabin{
	display: none;
}
.quality .page-heading{
  color: #004346;
  font-size: 2.4rem;
  padding-bottom: 45px;
}
.quality-img-area .inner{
  padding: 0;
}
.quality-img-area .security-scroll-area img{
  width: 160%;
}
/* scroll-hint */
.scroll-hint-icon{
  width: 120px !important;
  height: 100px !important;
  top: calc(42% - 25px) !important;
  border-radius: unset !important;
  padding: 29px 10px 10px 10px !important;
}
.scroll-hint-icon:after{
  top: 15px !important;
}
.scroll-hint-text{
  font-family: sans-serif;
}
@media screen and (max-width: 767px){
  .quality .page-heading{
    font-size: 1.8rem;
    line-height: 1.6;
    padding-bottom: 30px;
  }
}



/*--------------------------------
state
--------------------------------*/
.is-none{
	display: none;
}
.is-light{
	color: #fff;
}
.is-dark{
	color: #333;
}
.is-shadow{
	text-shadow: 0 0 1px rgba(0,0,0,.8), 0 0 4px rgba(0,0,0,.4);
}
.is-lshadow{
	text-shadow: 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff;
}
.is-alert{
	color: #c90000;
}
.bg-ol{
  background: #9e9581;
}

@media screen and (max-width: 1250px){
  .wide-none{
    display: none;
  }
}
@media screen and (max-width: 767px){
	.sp-none{
		display: none;
	}
	.slick-slide img.sp-none{
		display: none;
	}
}
@media screen and (min-width: 768px){
	.pc-none{
		display: none;
	}
	.slick-slide img.pc-none{
		display: none;
	}
}
