@charset "utf-8";

/*-------------------------------
	ヘッダー
-------------------------------*/

.header2025{
    background: transparent;
	transition: var(--transition);
	position: absolute;
}
.header__inner2025{
	background: transparent;
}
.header-top2025{
	border-bottom: 1px solid #fff;
}
.header-logo2025 a{
	background-image: url(../images/common/logo-white.svg);
}

.header-top__nav-item2025 a,
.header-top__nav-item2025 a:hover{
	color: #fff;
}
.header-top__nav-item2025 a::before,
.header-top__nav-item2025 a:hover::before{
	background-image: url(../images/common/icon_arrow-white-border.svg);
}
.header-top__nav-item2025 a::after{
	background: #fff;
}
.header-top__nav-youtube2025{
	border-color: #fff;
}

.header-bottom__nav-item2025{
	border-left-color: #fff;
}
.header-bottom__nav-item2025:last-child{
	border-right-color: #fff;
}
.header-bottom__nav-item2025 > a,
.header-bottom__nav-item2025 > .a2025{
	color: #fff;
}
.header-bottom__nav-item2025 > a > span::before,
.header-bottom__nav-item2025 > .a2025 > span::before,
.header-bottom__nav-item2025:last-child > a > span::after,
.header-bottom__nav-item2025:last-child > .a2025 > span::after{
	background: #fff;
}

.header-bottom__nav-button2025 a{
	border: none;
}

.nav__child-item2025 a::before{
	background-image: url(../images/common/icon_arrow-black-border.svg);
}

/* メニューをhoverした時のスタイル */
.header2025:has(.header-bottom__nav-item2025:hover) .header__inner2025{
	background: #fff;
}
.header2025:has(.header-bottom__nav-item2025:hover) .header-logo2025 a{
	background-image: url(../images/common/logo.svg);
}
.header2025:has(.header-bottom__nav-item2025:hover) .header-top2025{
	border-bottom-color: var(--blackcolor);
}
.header2025:has(.header-bottom__nav-item2025:hover) .header-top__nav-youtube2025{
	border: 1px solid var(--blackcolor);
}
.header2025:has(.header-bottom__nav-item2025:hover) .header-top__nav-item2025 a{
	color: var(--blackcolor);
}
.header2025:has(.header-bottom__nav-item2025:hover) .header-top__nav-item2025 a::before{
	background-image: url(../images/common/icon_arrow-black-border.svg);
}
.header2025:has(.header-bottom__nav-item2025:hover) .header-bottom__nav-item2025{
	border-left-color: var(--blackcolor);
}
.header2025:has(.header-bottom__nav-item2025:hover) .header-bottom__nav-item2025:last-child{
	border-right-color: var(--blackcolor);
}
.header2025:has(.header-bottom__nav-item2025:hover) .header-bottom__nav-item2025 > a,
.header2025:has(.header-bottom__nav-item2025:hover) .header-bottom__nav-item2025 > .a2025{
	color: var(--blackcolor);
}
.header2025:has(.header-bottom__nav-item2025:hover) .header-bottom__nav-item2025 > a > span::before,
.header2025:has(.header-bottom__nav-item2025:hover) .header-bottom__nav-item2025 > .a2025 > span::before,
.header2025:has(.header-bottom__nav-item2025:hover) .header-bottom__nav-item2025 > a > span::after,
.header2025:has(.header-bottom__nav-item2025:hover) .header-bottom__nav-item2025 > .a2025 > span::after{
	background: var(--blackcolor);
}

/* スクロール時に一旦隠す */
.header2025.hide-before-fixed2025 {
	transform: translateY(-100%);
	opacity: 0;
}

/* 固定して表示 */
.header2025.on2025 {
	position: fixed;
	background: #fff;
}
.header2025.on2025 .header-logo2025 a{
	background-image: url(../images/common/logo.svg);
}
.header2025.on2025 .header-top2025{
	border-bottom-color: var(--blackcolor);
}
.header2025.on2025 .header-top__nav-item2025 a,
.header2025.on2025 .header-top__nav-item2025 a:hover{
	color: var(--blackcolor);
}
.header2025.on2025 .header-top__nav-item2025 a::before,
.header2025.on2025 .header-top__nav-item2025 a:hover::before{
	background-image: url(../images/common/icon_arrow-black-border.svg);
}
.header2025.on2025 .header-top__nav-youtube2025{
	border-color: var(--blackcolor);
}
.header2025.on2025 .header-bottom__nav-item2025 > a > span::before,
.header2025.on2025 .header-bottom__nav-item2025 > .a2025 > span::before,
.header2025.on2025 .header-bottom__nav-item2025:last-child > a > span::after,
.header2025.on2025 .header-bottom__nav-item2025:last-child > .a2025 > span::after{
	background: var(--blackcolor);
}
.header2025.on2025 .header-bottom__nav-item2025 > a,
.header2025.on2025 .header-bottom__nav-item2025 > .a2025{
	color: var(--blackcolor);
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){

	.header-top2025{
		border-bottom: none;
	}

	/*----- ハンバーガー */
	.menu-button2025 {
		background: #fff;
	}
	.menu-button2025 i{
		background: var(--maincolor);
	}
	.menu-button2025 i::before,
	.menu-button2025 i::after{
		background: var(--maincolor);
	}
	.menu-button2025.is_open2025 + .header2025 .header-logo2025 a{
		background-image: url(../images/common/logo.svg);
	}

}

/*-------------------------------
	共通・お問い合わせ（共通）
-------------------------------*/
.Contact2025{
	margin-top: -5rem;
	position:  relative;
	z-index: 4000;
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){

	.Contact2025{
		margin-top: -5rem;
	}

}

/*-------------------------------
	メインビジュアル
-------------------------------*/
.Mainvisual{
	z-index: 6000;
	position: relative;
	background: #fff;
}
.Mainvisual-slider__item{
	width: 100%;
	height: 100vh;
	position: relative;
}
.Mainvisual-slider__item-title{
    width: 100%;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 6000;
	color: #343638;
}
.Mainvisual-slider__item-title .maxwidth2025{
}
.Mainvisual-slider__item-title-jp{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    row-gap: 1.2rem;
}
.Mainvisual-slider__item-title-jp span.index-g-mask2025__text{
    padding: 0.2em 2.2rem;
	overflow: hidden;
    background: transparent;
	font-family: var(--jp);
	font-size: 3rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .1em;
    display: inline-block;
	position: relative;
}
.Mainvisual-slider__item-title-jp span.index-g-mask2025__text::after{
	width: 100%;
	height: 100%;
    border-top-right-radius: 9999px;
    border-bottom-right-radius: 9999px;
	background: #fff;
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
	display: block; 
	content: "";
}
.Mainvisual-slider__item-title-en{
	margin-top: .5em;
	font-family: var(--jp);
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 2;
	letter-spacing: .2em;
    color: #fff;
    display: inline-block;
}
/*----- アニメーション（GSAP） */
/* マスク */
.index-g-mask2025{
	display: inline-flex;
	align-items: stretch;
	/*display: inline-block;*/
	position: relative;
    overflow: hidden;
    border-top-right-radius: 9999px;
    border-bottom-right-radius: 9999px;
}
.index-g-mask2025.on2025{
	visibility: visible;
}
/*--------日本語アニメーション*/
.Mainvisual-slider__item-title-jp .index-g-mask2025 > *{
	width: 100%;
	z-index: -1;
	position: relative;
	left: -100%;
	transition: 1s ease-in-out;
}
.Mainvisual-slider__item-title-jp .index-g-mask2025.on2025 > *{
	left: 0;
}
/*--------日本語アニメーション*/
/*--------白かぶせ*/
.index-g-mask2025.bf-bgwhite::before{
	width: 100%;
	height: 100%;
	left: -100%;
	top: 0;
	z-index: 6000;
	transition: none;
	background: #fff;
	position: absolute;
	display: block;
	content: "";
}
.index-g-mask2025.bf-bgwhite.on2025::before{
	left: 0;
	animation: g-maks 1s ease-in-out 1s forwards;
    transition: left 1s ease-in-out;
	z-index: 6000;
}
@keyframes g-maks{
	0%{
		left: 0%;
	}
	100%{
		left: 100%;
	}
}
/*--------白かぶせ*/
/*--------英語アニメーション*/
.Mainvisual-slider__item-title-en.index-g-mask2025 .index-g-mask2025__text{
	white-space:nowrap;
	z-index: -1;
	position: relative;
	overflow: hidden;
	width: 0;
	}
.Mainvisual-slider__item-title-en.index-g-mask2025.on2025 .index-g-mask2025__text{
	animation: g-maks-in 1s linear 1s forwards;
}
@keyframes g-maks-in{
	from{
		width: 0%;
	}
	to{
		width: 100%;
	}
}
/*--------英語アニメーション*/
.index-g-mask2025.bf-bgwhite.end2025::before{
  transition: none !important;
  animation: none !important;
  left: -100% !important;
}
.index-g-mask2025.end2025,
.Mainvisual-slider__item-title-jp .index-g-mask2025.end2025 > *{
	transition: unset !important;
	animation: none !important;
}
.index-g-mask2025.reset2025,
.index-g-mask2025.reset2025 * ,
.index-g-mask2025.reset2025::before{
  animation: none !important;
  transition: none !important;
}

/*----- アニメーション（GSAP） */
.Mainvisual-slider__inner{
	position: relative;
}
.Mainvisual-slider__item-image{
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 4000;
	
}
.Mainvisual-slider__item-image::before{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(27,60,82,.4);
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 6000;
}
.Mainvisual-slider__item-image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.Mainvisual-slider:has(.swiper-slide:nth-of-type(1).swiper-slide-active) .swiper-slide:last-child img,
.Mainvisual-slider .swiper-slide-active img,
.Mainvisual-slider .swiper-slide-duplicate-active img,
.Mainvisual-slider .swiper-slide-prev img {
	animation: zoomUp 15s linear 0s normal infinite both;
}
@keyframes zoomUp {
	0% {
	transform: scale(1.15);
	}
	100% {
	transform: scale(1.0);
	}
}
.Mainvisual-slider__pagination{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	bottom: 3.2rem !important;
	padding-left: 13rem;
}
.Mainvisual-slider__pagination .swiper-pagination-bullet{
	transition: var(--transition);
	width: .7rem;
	height: .7rem;
	border-radius: 50%;
	background: #fff;
	position: relative;
	margin-left: 1.5rem !important;
	margin-right: 1.5rem !important;
	opacity: 1 !important;
}
.Mainvisual-slider__pagination .swiper-pagination-bullet .circle{
    display: block;
    width: 2rem;
    height: 2rem;
	position:absolute;
	left:-0.67rem;
	top:-.6rem;
	transform:rotate(-90deg);
}
.Mainvisual-slider__pagination .swiper-pagination-bullet .circle svg{
	width: 100%;
    height: 100%;
    fill: none;
}
.Mainvisual-slider__pagination .swiper-pagination-bullet .circle-01{
	stroke: rgba(255, 255, 255, 0);
    stroke-width: 2px;
}
.Mainvisual-slider__pagination .swiper-pagination-bullet .circle-02{
	stroke: #fff;
    stroke-width: 2px;
    stroke-dasharray: 188.4px;
    stroke-dashoffset: 188.4px;
}
.Mainvisual-slider__pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{
	transform: scale(2);
}
.Mainvisual-slider__pagination .swiper-pagination-bullet.swiper-pagination-bullet-active .circle-02{
	animation: white-circle 8s linear;
	animation-fill-mode: forwards;
}
@-webkit-keyframes white-circle {
    100% {
		stroke-dashoffset: 0;
    }
}

@keyframes white-circle {
    100% {
		stroke-dashoffset: 0;
    }
}


@media screen and (min-width:769px) , print{
	.Mainvisual-slider__item-title-jp.fvjp--SP2025{		
		display: none;
	}
}
@media screen and (max-width:1240px) and (min-width: 769px){

	.Mainvisual-slider__pagination{
		padding-left: var(--padding-leftright);
	}

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){

	.Mainvisual-slider__item{
		height: 100svh;
	}
	.Mainvisual-slider__item-title{
		top: unset;
		bottom: 20rem;
		transform: translateY(0);
	}
	.Mainvisual-slider__item-title-jp.fvjp--PC2025{
		display: none;
	}
    .Mainvisual-slider__item-title-jp{
		row-gap: 1.4rem;
    }
	.Mainvisual-slider__item-title-jp span.index-g-mask2025__text{
		padding: 0.3em 4.2rem 0.3em 2.2rem;
		font-size: 4rem;
	}
    .Mainvisual-slider__item-title-en{
        padding-top: 1.5rem;
		font-size: 2rem;
    }

	.Mainvisual-slider__pagination{
		bottom: 10rem !important;
		padding-left: var(--padding-leftright);
		padding-right: var(--padding-leftright);
		justify-content: flex-start;
	}
	.Mainvisual-slider__pagination .swiper-pagination-bullet{
		width: 1.1rem;
		height: 1.1rem;
		margin-left: 2.4rem !important;
		margin-right: 2.4rem !important;
	}
	.Mainvisual-slider__pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{
		transform: scale(1.8);
	}
	.Mainvisual-slider__pagination .swiper-pagination-bullet .circle{
		/* width: 4.9rem;
		height: 4.9rem;
		left:-1.9rem;
		top:-1.9rem; */
		width: 3.5rem;
		height: 3.5rem;
		left: -2.11rem;
		top: -1.675rem;
	}
	.Mainvisual-slider__pagination .swiper-pagination-bullet .circle svg{
		width: 75%;
		height: 75%;
	}
	.Mainvisual-slider__pagination .swiper-pagination-bullet .circle-01,
	.Mainvisual-slider__pagination .swiper-pagination-bullet .circle-02{
    	stroke-width: 4px;
	}


}

/*-------------------------------
	index共通パーツ　Layout-Index
-------------------------------*/
.Layout-Index{
	padding-top: 0;
	overflow: hidden;
}
.C-Title2025.Index-Title{
    align-items: flex-start;
}
.C-Title2025.Index-Title .C-Title2025__jp{	
    font-family: var(--jp);
	letter-spacing: 0.05em;
}
@media screen and (min-width:769px) , print{
	.C-Title2025.Index-Title .C-Title2025__en{
		padding-left: 2rem; 
		align-items: flex-start;
	}
	.C-Title2025.Index-Title .C-Title2025__en::before{
		background: var(--maincolor);
		content: "";
		display: block;
		width: 1.2rem;
		height: 1.2rem;
		border-radius: 50%;
		position: absolute;
		left: 0;
		top: .1em;
	}
}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){
	.C-Title2025.Index-Title{		
        margin-bottom: 6rem;
	}
	.C-Title2025__en{
		margin-bottom: 2rem;
	}
}

/*-------------------------------
	セクション共通 導入部 
-------------------------------*/
.Layout-Index__header{
	width: 100%;
	margin-bottom: 13rem;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.-reverse.Layout-Index__header{ /*画像右*/
	flex-direction: row-reverse;
}
.Layout-Index__header-image{
	width: 53rem;
	flex: 1;
	position: relative;
}
.Layout-Index__header-image figure{
    width: 50vw;
    height: 60rem;
    object-fit: cover;
	position: relative;
}
.Layout-Index__header-image figure{ /*画像左*/
	margin-left: calc(100% - 50vw);
}
.-reverse .Layout-Index__header-image figure{ /*画像右*/
	margin-left: unset;
	margin-right: calc(100% - 50vw);
}
.Layout-Index__header-image figure::before{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	content: "";
	z-index: 0;
}
.Layout-Index__header-image figure::before{ /*画像左*/
	border-bottom-right-radius: 3rem;
}
.-reverse .Layout-Index__header-image figure::before{/*画像右*/
	border-bottom-right-radius: unset;
	border-bottom-left-radius: 3rem;
}
.Layout-Index__header-image figure img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: relative;
	z-index: 1;
}
.Layout-Index__header-image img{ /*画像左*/
	border-radius: 0 21.6rem 3rem 21.6rem;
}
.-reverse .Layout-Index__header-image img{ /*画像右*/
	border-radius: 21.6rem 0 21.6rem 3rem ;
}
.Layout-Index__header__content{
	margin-top: 15.1rem;
	width: calc(100% - 53rem);
}
.Layout-Index__header__content{ /*画像左*/
	padding-left: 10rem;
}
.-reverse .Layout-Index__header__content{/*画像右*/
	padding-left: unset;
	padding-right: 10rem;
}
@media screen and (min-width:769px) , print{
	
}
@media screen and (max-width:1240px) and (min-width: 769px){

	.Layout-Index__header{
		align-items: center;
	}
	.Layout-Index__header-image{
		width: 50%;
	}
	.Layout-Index__header-image figure{
		height: 45rem;
	}
	.Layout-Index__header-image img{
		border-radius: 0 15rem 3rem 15rem;
	}
	.-reverse .Layout-Index__header-image img{
		border-radius: 15rem 0 15rem 3rem;
	}
	.Layout-Index__header__content{
		width: 50%;
		margin-top: 0;
	}
	.Layout-Index__header__content{ /*画像左*/
		padding-left: calc(var(--padding-leftright) * 1.5);
	}
	.-reverse .Layout-Index__header__content{/*画像右*/
		padding-right: calc(var(--padding-leftright) * 1.5);
	}
}
@media screen and (max-width:1165px) and (min-width: 769px){
	
	/* .Layout-Index__header-image figure{
		width: calc(100% + var(--padding-leftright));
	}
	.Layout-Index__header-image figure{
		margin-left: calc(0% - var(--padding-leftright) );
	}
	.-reverse .Layout-Index__header-image figure{
		margin-right: calc(0% - var(--padding-leftright) ); 
	} */
}
@media screen and (max-width:960px) and (min-width: 769px){

	/* .Layout-Index__header-image{
		width: 30rem;
	}	
	.Layout-Index__header__content{
		width: calc(100% - 30rem);
	} */
}
@media screen and (max-width:768px){
	.Layout-Index__header{
		width: 100%;
		margin-bottom: 15rem;
		flex-direction: column-reverse;
	}
	.-reverse.Layout-Index__header{ /*画像右*/
		flex-direction: column-reverse;
	}
	.Layout-Index__header-image{
		width: calc(100% + var(--padding-leftright));
	}
	.Layout-Index__header-image figure{
		width: 100%;
		height: 63rem;
	}
	.Layout-Index__header-image figure{ /*画像左*/
		margin-left: calc(-1 * var(--padding-leftright));
	}
	.-reverse .Layout-Index__header-image figure{ /*画像右*/
		margin-left: unset;
		margin-right: calc(-1 * var(--padding-leftright));
	}
	.Layout-Index__header__content{
		margin-top: 14.5rem;
		margin-bottom: 12.5rem;
		width: 100%;
	}
	.Layout-Index__header__content{ /*画像左*/
		padding-left: unset;
	}
	.-reverse .Layout-Index__header__content{/*画像右*/
		padding-right: unset;
	}
}

/*-------------------------------
	セクション共通 サポートメニュー
-------------------------------*/
.Layout-Index__body__Title{
	margin-bottom: 8.15rem;
	text-align: center;
	position: relative;
}
.Layout-Index__body__Title span::after{
	width: 100%;
	height: 2px;
	position: absolute;
	left: 0;
	bottom: 0;
	display: block;
	content: "";
}
.Layout-Index__body__Title span{
	min-width: 61.9rem;
	margin-bottom: 0.55rem;
	padding: 0.5rem 1em 0.6rem 1em;
	border-radius: 3rem 3rem 0.5rem 0.5rem;
	margin-inline: auto;
	font-size: 2.8rem;
	line-height: calc(4.0 / 2.8);
	font-weight: 700;
	letter-spacing: 0.01em;
	color: #fff;
	text-align: center;
	display: inline-block;
}

.Layout-Index__body__List{
	width: 100%;
	gap: 3.9rem;
}
.Layout-Index__body__List-item{
	width: calc((100% - (3.9rem * 2)) / 3);
	border-radius: 1.5rem;
	position: relative;
	overflow: hidden;
}
.Layout-Index__body__List-item a{
	position: relative;
	width: 100%;
	display: block;
}
.Layout-Index__body__List-item a:hover{
	opacity: 1;
}
.Layout-Index__body__List-item a::before{
    transition: var(--transition);
    content: "";
    display: block;
	width: 100%;
	height: 100%;
	background: rgba(25,60,82,0.25);
	position: absolute;
	left: 0;
	top: 0;
    z-index: 2;
}
.Residents .Layout-Index__body__List-item a:hover::before{
	background: rgba(96,202,227,0.25);
}
.Tenants .Layout-Index__body__List-item a:hover::before{
	background: rgba(122,208,118,0.25);
}
.Owners .Layout-Index__body__List-item a:hover::before{
	background: rgba(248,189,38,0.25);
}
.Layout-Index__body__List-item a figure{
	width: 100%;
}
.Layout-Index__body__List-item a img{
    transition: var(--transition);
	width: 100%;
	object-fit: cover;
	position: relative;
	z-index: 1;
}
.Layout-Index__body__List-item a:hover img{
	transform: scale(1.05);
}
.Layout-Index__body__List-item a span.-itemTxt2025{
	width: 100%;
	padding-inline: 7.5rem;
	font-size: 2.4rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: calc(3.4 / 2.4);
	color: #fff;
	text-align: center;
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	z-index: 3;
}
/*.Layout-Index__body__List-item a:hover span.-itemTxt2025,
.Layout-Index__body__List-item a:hover span.-itemTxt2025 span.-itemTxt2025__intxt{
	color: #ffd23c;
}*/
.Layout-Index__body__List-item a span.-itemTxt2025::before{
    transition: var(--transition);
    content: "";
    display: block;
    width: 3.3rem;
    height: 3.3rem;
	border-radius: 50%;
	background: #fff;
    position: absolute;
    right: 4rem;
    top: 50%;
    transform: translateY(-50%);
	z-index: 4;
}
.Residents .Layout-Index__body__List-item a:hover span::before{
	background: #60CAE3;
}
.Tenants .Layout-Index__body__List-item a:hover span::before{
	background: #7AD076;
}
.Owners .Layout-Index__body__List-item a:hover span::before{
	background: #ffd23c;
}
.Layout-Index__body__List-item a span.-itemTxt2025::after{
    content: "";
    display: block;
    width: 1.4rem;
    height: 1.47rem;
    background-image: url(../images/common/icon_arrow-black-naked.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    right: 5rem;
    top: 50%;
    transform: translateY(-50%);
	z-index: 5;
}
.Layout-Index__body__List-item a:hover span.-itemTxt2025::after{
    background-image: url(../images/common/icon_arrow-white-naked.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}
.Layout-Index__body__List-item a span.-itemTxt2025 span.-itemTxt2025__intxt{
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: calc(3.4 / 2.4);
	color: #fff;
	text-align: center;
	display: block;
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}

@media screen and (max-width:1120px) and (min-width: 769px){
	.Layout-Index__body__List-item{
		min-width: 32rem;
	}
	.Layout-Index__body__List-item a span.-itemTxt2025{
		padding-inline: 4rem;
	}
	.Layout-Index__body__List-item a span.-itemTxt2025::before{
		right: 2rem;
	}
	.Layout-Index__body__List-item a span.-itemTxt2025::after{
		right: 3rem;
	}
}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){
	.Layout-Index__body__Title{
		margin-bottom: 3.85rem;
		padding-inline: 6rem;
	}
	.Layout-Index__body__Title span::after{
		height: 0.4rem;
	}
	.Layout-Index__body__Title span{
		width: 100%;
		min-width: auto;
		margin-bottom: 0.85rem;
		padding: 1.1rem 0.5em 1.2rem 0.5em;
		font-size: 3.6rem;
	}

	.Layout-Index__body__List{
		gap: 3rem;
	}
	.Layout-Index__body__List-item{
		width: 100%;
		border-radius: 1.5rem;
	}
	.Layout-Index__body__List-item a img{
		aspect-ratio: calc(630 / 337);
	}
	.Layout-Index__body__List-item a span.-itemTxt2025{
		width: 100%;
		padding-inline: 7rem;
		font-size: 3.8rem;
	}
	.Layout-Index__body__List-item a span.-itemTxt2025::before{
		width: 6rem;
		height: 6rem;
		right: 7rem;
	}
	.Layout-Index__body__List-item a span.-itemTxt2025::after{
		width: 2.8rem;
		height: 2.8rem;
		right: 8.5rem;
	}
	.Layout-Index__body__List-item a span.-itemTxt2025 span.-itemTxt2025__intxt{
		font-size: 3.8rem;
	}
}

/*-------------------------------
	入居者様
-------------------------------*/
.Residents{
	background: #ECF2F7;
}
.Residents .Layout-Index__header-image figure::before,
.Residents .Layout-Index__body__Title span::after,
.Residents .Layout-Index__body__Title span{
	background: #60CAE3;
}
.Layout-Index__body__List + .sec__index-Residents__Link{
	margin-top: 13.6rem;
}
.sec__index-Residents__Link{
	width: 100%;
	padding: 4.5rem 3.6rem;
	border-radius: 0 0 0 2rem;
	background: url(../images/index/img_residents_menu4.jpg);
	background-image: image-set(url(../images/index/img_residents_menu4.jpg) 1x, url(../images/index/img_residents_menu4@2x.jpg) 2x);
	background-size: cover;
	background-position: top center;
	overflow: hidden;
	position: relative;
	z-index: 0;
}
.sec__index-Residents__Link::before{
	width: 100%;
	height: 100%;
	background: rgba(27,60,82,0.46);
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	content: "";
}
.sec__index-Residents__Link-Txt{
	width: calc(100% - 38.1rem - 1rem);
	min-width: 50rem;
	position: relative;
	z-index: 1;
}
.sec__index-Residents__Link-Txt h4{
	margin-bottom: 1.8rem;
	font-size: 3rem;
	font-weight: 600;
	font-family: var(--mincho);
	line-height: calc(4.0 / 3.0);
	color: #fff;
	letter-spacing: 0.1em;
}
.sec__index-Residents__Link-Txt p{
	font-size: 1.6rem;
	font-weight: 500;
	font-family: var(--jp);
	line-height: calc(2.4/ 1.6);
	color: #fff;
	letter-spacing: 0.1em;
}
.sec__index-Residents__Link-Button2025{	
	width: 38.1rem;
}
.sec__index-Residents__Link-Button2025 a{
	transition: var(--transition);
	width: 100%;
	padding: 0.5rem 7.5rem;
	border-radius: 9999px;
	background: #fff;
	font-size: 2rem;
	font-weight: 700;
	line-height: calc(3.0 / 2.0);
	letter-spacing: .06em;
	text-align: center;
	position: relative;
	display: block;
	z-index: 1;
}
.sec__index-Residents__Link-Button2025 a:hover{
	opacity: 1;
	background: #ffd23c;
}
.sec__index-Residents__Link-Button2025 a::before{
    content: "";
    display: block;
    width: 2.5rem;
    height: 2.87rem;
    background-image: url(../images/common/icon_req-black.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    left: 4.5rem;
    top: 50%;
    transform: translateY(-50%);
	z-index: 5;
}
.sec__index-Residents__Link-Button2025 a::after{
    content: "";
    display: block;
    width: 1.7rem;
    height: 1.87rem;
    background-image: url(../images/common/icon_arrow-black-naked.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    right: 3.13rem;
    top: 50%;
    transform: translateY(-50%);
	z-index: 5;
}


@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:1020px) and (min-width: 769px){

	.sec__index-Residents__Link-Txt{
		width: calc(100% - 38.1rem - 1rem);
		min-width: 33rem;
	}
	.sec__index-Residents__Link-Button2025{	
		width: 30rem;
	}
	.sec__index-Residents__Link-Button2025 a{
		padding: 0.5rem 6.5rem;
		font-size: 1.7rem;
	}
	.sec__index-Residents__Link-Button2025 a::before{
		left: 3.5rem;
	}
	.sec__index-Residents__Link-Button2025 a::after{
		right: 2.13rem;
	}
}
@media screen and (max-width:960px) and (min-width: 769px){

}

@media screen and (max-width:768px){	
	.Layout-Index__body__List + .sec__index-Residents__Link{
		margin-top: 12.1rem;
	}
	.sec__index-Residents__Link{
		width: 100%;
		padding: 7.3rem 5rem 8.3rem 5rem;
		border-radius: 0 0 0 3rem;
		background: url(../images/index/img_residents_menu4-sp.jpg);
		background-image: image-set(url(../images/index/img_residents_menu4-sp.jpg) 1x, url(../images/index/img_residents_menu4-sp@2x.jpg) 2x);
		background-size: cover;
		background-position: top center;
		overflow: hidden;
		position: relative;
		z-index: 0;
	}
	.sec__index-Residents__Link-Txt{
		width: 100%;
		margin-bottom: 6.2rem;
		min-width: unset;
	}
	.sec__index-Residents__Link-Txt h4{
		margin-bottom: 7.3rem;
		font-size: 4.4rem;
		letter-spacing: 0.09em;
	}
	.sec__index-Residents__Link-Txt p{
		font-size: 2.8rem;
	}
	.sec__index-Residents__Link-Button2025{	
		width: 100%;
	}
	.sec__index-Residents__Link-Button2025 a{
		width: 100%;
		padding: 0.5rem 9.5rem;
		font-size: 3rem;
	}
	.sec__index-Residents__Link-Button2025 a::before{
		content: "";
		display: block;
		width: 4.2rem;
		height: 4.8rem;
		left: 6rem;
	}
	.sec__index-Residents__Link-Button2025 a::after{
		width: 2.3rem;
		height: 2.5rem;
		right: 4.1rem;
	}
}

/*-------------------------------
	テナント
-------------------------------*/
.Tenants .Layout-Index__header-image figure::before,
.Tenants .Layout-Index__body__Title span::after,
.Tenants .Layout-Index__body__Title span{
	background: #7AD076;
}
	
/*-------------------------------
	オーナー様
-------------------------------*/
.Owners{
	background: #FDF9ED;
	border-radius: 0 0 3rem 3rem;
	margin-bottom: -3rem;
	position: relative;
	z-index: 100;
}
.Owners .Layout-Index__header-image figure::before,
.Owners .Layout-Index__body__Title span::after,
.Owners .Layout-Index__body__Title span{
	background: #F8BD26;
}

.Layout-Index__body__List + .sec__index-Owners__banner{
	margin-top: 11.6rem;
}

.sec__index-Owners__banner{
	width: 100%;
	margin-top: 14rem;
}
.sec__index-Owners__banner a{
	width: 100%;
	/* padding: 1rem 5.5rem 1rem 4.3rem; */
	border-bottom-left-radius: 3rem;
	overflow: hidden;
	position: relative;
	/* background-image: url(../images/index/bg_works-banner.jpg);
	background-image: image-set(url(../images/index/bg_works-banner.jpg) 1x, url(../images/index/bg_works-banner@2x.jpg) 2x);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	position: relative;
	z-index: 6000; */
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.sec__index-Owners__banner a::before{
	transition: var(--transition);
    content: "";
    display: block;
    width: 3.4rem;
    height: 3.5rem;
    background-image: url(../images/common/icon_arrow-white-naked.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    right: 2rem;
    bottom: 1.5rem;
	z-index: 6000;
}
.sec__index-Owners__banner img{
	width: 100%;
}
.sec__index-Owners__banner a:hover::before{
	transform: translateX(.5rem);
}


@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){
	
	.Owners{
		border-radius: 0 0 0;
		margin-bottom: 0;
	}
	.sec__index-Owners__banner a{
		flex-direction: column;
		justify-content: flex-end;
	}
	.sec__index-Owners__banner a::before{
		display: none;
	}
	.Owners__banner__button{
		position: absolute;
		left: 0;
		bottom: 6.5rem;
		right: 0;
	}
	.Owners__banner__button.C-Button2025 > *{
		border: none;
	}
}


/*-------------------------------
	共通設定　レイアウト2
-------------------------------*/
.Layout-Index2-header{
	width: 100%;
	margin-bottom: 4.5rem;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
.Layout-Index2-header .C-Title2025.Index-Title{
	margin-bottom: 0;
}
.Layout-Index2-header__title{
	width: calc(100% - 10rem);
}
.Layout-Index2__body{
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.Layout-Index2-link{
	width: 47.5rem;
}
.Layout-Index2-link__item{
	border-bottom: 1px solid var(--graycolor);
}
.Layout-Index2-link__item:first-child{
	border-top: 1px solid var(--graycolor);
}
.Layout-Index2-link__item a{
	color: var(--blackcolor);
	font-size: 2rem;
	width: 100%;
	height: 7.2rem;
	padding-right: 6rem;
	font-weight: 700;
	letter-spacing: .05em;
	line-height: calc(3 / 2);
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: relative;
	opacity: 1 !important;
}
.Layout-Index2-link__item a::after{
	transition: var(--transition);
	content: "";
	display: block;
	width: 1.4rem;
	height: 1.5rem;
	background-image: url(../images/common/icon_arrow-black-naked.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	background-repeat: no-repeat;
	position: absolute;
	right: 2.5rem;
	top: 50%;
	transform: translateY(-50%);
}
.Layout-Index2-link__item.-blankLink a::after{
	width: 2rem;
	height: 2.5rem;
	background-image: url(../images/common/icon_blank-black.svg);
}
.Layout-Index2-link__item a:hover{
	color: var(--maincolor);
}
.Layout-Index2-link__item a:hover::after{
	transform: translate(.5rem,-50%);
	background-image: url(../images/common/icon_arrow-blue-naked.svg);
}
.Layout-Index2-link__item.-blankLink a:hover::after{
	background-image: url(../images/common/icon_blank-blue.svg);
}
.Layout-Index2__image{
	width: calc(100% - 47.5rem);
	padding-left: 9.5rem;
}
.Layout-Index2__image img{
	width: 100%;
	border-bottom-left-radius: 3rem;
}

/*----- 詳しく見る */
.Index-more{
	width: 10rem;
}
.Index-more a{
	color: var(--blackcolor);
	padding-right: 1.6rem;
	padding-bottom: .5rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0;
	display: block;
	position: relative;
	opacity: 1 !important;
}
.Index-more a::before{
	background: var(--blackcolor);
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0;
	bottom: 0;
	right: 0;
}
.Index-more a::after{
	transition: var(--transition);
	content: "";
	display: block;
	width: 1.6rem;
	height: 1.6rem;
	background-image: url(../images/common/icon_arrow-black-border.svg);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	position: absolute;
	right: 0;
	top: 0;
}
.Index-more a:hover{
	color: var(--maincolor);
}
.Index-more a:hover::before{
	background: var(--maincolor);
}
.Index-more a:hover::after{
	background-image: url(../images/common/icon_arrow-border.svg);
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

	.Layout-Index2-link{
		width: 50%;
	}
	.Layout-Index2__image{
		width: 50%;
		padding-left: 5rem;
	}

}
@media screen and (max-width:768px){
	
	/*----- レイアウト2 */
	.Layout-Index2-header{
		margin-bottom: 6.2rem;
	}
	.Layout-Index2-header__title{
		width: auto;
	}
	.Layout-Index2__body{
		flex-direction: column;
	}
	.Layout-Index2-link{
		width: 100%;
	}
	.Layout-Index2-link__item a{
		font-size: 3rem;
		width: 100%;
		height: 9.2rem;
		padding-right: 3.2rem;
		line-height: calc(3.9 / 3);
	}
	.Layout-Index2-link__item a::after{
		width: 1.9rem;
		height: 1.9rem;
		right: 3.2rem;
	}
	.Layout-Index2__image{
		width: 100%;
		padding-left: 0;
		margin-top: 3.5rem;
	}
	.Layout-Index2__image img{
		width: 100%;
		border-bottom-left-radius: 3rem;
	}
	/*----- 詳しく見る */
	.Index-more{
		width: 21rem;
	}
	.Index-more a{
		padding-right: 2.9rem;
	}
	.Index-more a::after{
		width: 2.9rem;
		height: 2.9rem;
	}
}

/*-------------------------------
	会社案内
-------------------------------*/
.Company{
	/*padding-top: calc(var(--padding-topbottom) + 5rem);*/
	padding-top: 0;
	padding-bottom: 20rem;
	background: #fff;
	position: relative;
	z-index: 50;
}
.Company::before{
	content: "";
	display: block;
	width: 100%;
	height: 58.4rem;
	/* position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: -1; */
	background-image: url(../images/index/bg_company-para.jpg);
	background-image: image-set(url(../images/index/bg_company-para.jpg) 1x, url(../images/index/bg_company-para@2x.jpg) 2x);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
}
.Company__inner{
	padding-top: var(--padding-topbottom);
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){
	.Company::before {
		background-image: url(../images/index/sp_bg_company-para.jpg);
		background-image: image-set(url(../images/index/sp_bg_company-para.jpg) 1x, url(../images/index/sp_bg_company-para@2x.jpg) 2x);
		background-attachment: scroll;
	}
}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){
	.Company{
		/*margin-top: 0;
		padding-top: var(--padding-topbottom);*/
		padding-top: 0;
		padding-bottom: calc(var(--padding-topbottom) + 5rem);
		/* margin-top: 58.4rem; */
	}
	.Company::before{
		background-image: url(../images/index/sp_bg_company-para.jpg);
		background-image: image-set(url(../images/index/sp_bg_company-para.jpg) 1x, url(../images/index/sp_bg_company-para@2x.jpg) 2x);
		background-attachment: scroll;
	}
	.Company__inner{
		padding-top: var(--padding-topbottom);
	}
	
}


/*-------------------------------
	サステナビリティ
-------------------------------*/

.Sustainability{
	padding-top: 0;
	margin-bottom: -3rem;
	border-bottom-left-radius: 3rem;
	border-bottom-right-radius: 3rem;
	background: #fff;
	position: relative;
    z-index: 100;
}
.Sustainability-banner{
	margin-top: 6.5rem;
}
.Sustainability-banner a{
	border: 1px solid var(--maincolor);
	width: 100%;
	padding: 4rem 6.5rem 5rem;
	border-bottom-left-radius: 3rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	overflow: hidden;
}
.Sustainability-banner a::before{
	transition: var(--transition);
    content: "";
    display: block;
    width: 3.4rem;
    height: 3.5rem;
    background-image: url(../images/common/icon_arrow-blue-naked.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    right: 2rem;
    bottom: 1.5rem;
}
.Sustainability-banner__image{
	width: 34.2rem;
}
.Sustainability-banner__image img{
	width: 100%;
}
.Sustainability-banner__text{
	color: var(--blackcolor);
	width: calc(100% - 34.2rem);
	padding-left: 6.8rem;
	line-height: calc(2.8 / 1.6);
}
.Sustainability-banner a:hover::before{
	transform: translateX(.5rem);
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){

	.Sustainability-banner{
		margin-top: 6.8rem;
	}
	.Sustainability-banner a{
		padding: 3.5rem 6rem 10rem;
		flex-direction: column;
	}
	.Sustainability-banner a::before{
		width: 4.4rem;
		height: 4.5rem;
		right: 4rem;
		bottom: 4rem;
	}
	.Sustainability-banner__image{
		width: 48.6rem;
		margin-bottom: 6.5rem;
	}
	.Sustainability-banner__text{
		width: 100%;
		padding-left: 0;
		line-height: calc(6 / 2.8);
	}
}


/*-------------------------------
	お知らせ
-------------------------------*/

.News{
	padding-bottom: calc(var(--padding-topbottom) + 5rem);
	/* margin-top: 58.4rem; */
	padding-top: 0;
	background: #fff;
	position: relative;
	z-index: 50;
}
.News::before{
	content: "";
	display: block;
	width: 100%;
	height: 58.4rem;
	/* position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: -1; */
	background-image: url(../images/index/bg_news-para.jpg);
	background-image: image-set(url(../images/index/bg_news-para.jpg) 1x, url(../images/index/bg_news-para@2x.jpg) 2x);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
}
.News__inner{
	padding-top: var(--padding-topbottom);
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){
	.News::before {
		background-image: url(../images/index/sp_bg_news-para.jpg);
		background-image: image-set(url(../images/index/sp_bg_news-para.jpg) 1x, url(../images/index/sp_bg_news-para@2x.jpg) 2x);
		background-attachment: scroll;
	}
}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){

	.News{
		padding-bottom: calc(var(--padding-topbottom) + 5rem);
		/* margin-top: 58.4rem; */
		padding-top: 0;
	}
	.News::before{
		background-image: url(../images/index/sp_bg_news-para.jpg);
		background-image: image-set(url(../images/index/sp_bg_news-para.jpg) 1x, url(../images/index/sp_bg_news-para@2x.jpg) 2x);
		background-attachment: scroll;
	}
	.News__inner{
		padding-top: var(--padding-topbottom);
	}

}

/*-------------------------------
	採用情報
-------------------------------*/

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){


}

/*-------------------------------
	セクション
-------------------------------*/


@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){
	
}