/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Feb 09 2026 | 08:56:42 */
/* common - 基本設定
-------------------------------------------------- */
.es-page-s-03 .es-container.page-header,
.es-page-design-sample03 .es-container.page-header {
	display: none;
}
.es-page-s-03 .main-header-bar.es-header-breadcrumb,
.es-page-design-sample03 .main-header-bar.es-header-breadcrumb {
	display: none;
}

body.es-page-es-page_on_front, body.es-page-s-03 {
    overflow-x: hidden;
}
* { box-sizing: border-box; }

#content {
	padding-top: 0 !important;
}

a.wp-block-button__link {
	border-radius: 30px;
}

.es-separate-container #primary {
	padding-bottom: 0;
}

body:not(.home) .main-header-bar.es-header-breadcrumb {
	margin-bottom: 50px;
}


/* ドット柄 - dodBackg
-------------------------------------------------- */
.bg_dot {
	position: relative;
}
.bg_dot::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
    display: block;
	width: 100%;
	height: 100%;
	background-image: radial-gradient( rgba( 152, 207, 246, .3 ) 20%, transparent 20% );
	background-size: 15px 15px;
}


/* ヘッダー - header
-------------------------------------------------- */
body.home .site-content {
	margin-top: -132px;
}

header.site-header .main-header-bar {
	background-color: transparent;
}
.header_links span[class^=icon-] {
	margin-bottom: 0;
}
.header_links__list > li > a {
	background: #fff !important;
    font-size: 0;
    border-radius: 50%;
	min-width: 50px !important;
    width: 50px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
}

#masthead .header_free_content {
	display: flex;
	align-items: center;
}
#masthead .header_free_content > strong,
#masthead .header_free_content a {
	width: 175px !important;
	height: 35px;
	font-size: 14px !important;
}
#masthead .header_free_content > strong {
	border-radius: 50vh 0 0 50vh;
}
#masthead .header_free_content a {
	margin-top: 0;
	border-radius: 0 50vh 50vh 0 !important;
}
.header_free_content strong {
	padding: 10px 20px;
	background-color: #fff;
	border-radius: 50vh;
}

#masthead.fixed {
	box-shadow: 1px 1px 2px 0 rgba(0,0,0,.0);
}
#masthead.fixed .header_links span.favorite-count, #masthead.fixed .header_links span.history-count,
.header_links span.favorite-count, .header_links span.history-count {
	top: -15px;
	right: -20px;
}

#masthead.fixed .header_links span[class^=icon-] {
	margin-right: 0;
}

.rtc-head-btn a {
    background-color: #142d62;
    border-radius: 50vh!important;
    margin-top: 5px;
    height: 25px;
    width: 240px;
    font-size: 12px!important;
    line-height: 5px!important;
}


/* 見出し - title
-------------------------------------------------- */
h2.ttl_custom {
	font-size: 21px !important;
	font-weight: bold;
	color: rgba( 22, 45, 94, 1 );
}
.ttl_custom span {
	font-size: 36px;
	letter-spacing: .05em;
}


/* メインビジュアル - mainVisual
-------------------------------------------------- */
section#mainVisual {
	position: relative;
}
section#mainVisual::before {
	content: '';
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	background: repeating-linear-gradient( -45deg, rgba( 0, 0, 0, 0.3 ), rgba( 0, 0, 0, 0.3 ) 1px, rgba( 0, 0, 0, 0.2 ) 0, rgba( 0, 0, 0, 0.2 ) 6px );
}
section#mainVisual > div:first-child {
	background-attachment: fixed;
	filter: brightness( 60% );
}
.main_visual {
    position: relative;
    height: 100vh;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
.full-width {
    margin-left: calc( -50vw + 50% );
    margin-right: calc( -50vw + 50% );
}

.main_visual p {
	margin-bottom: 0;
	font-size: 30px;
/* 	line-height: 1.5 !important; */
	letter-spacing: .5em;
	color: #fff;
}
.main_visual p img {
	display: block;
	margin: 0 0 50px;
	width: 100%;
}

.es-maintenance header#header_org {
	display: none;
}


/* 検索リスト - searchlist
-------------------------------------------------- */
.search_list {
	position: absolute;
	margin: 0;
	display: flex;
	align-items: center;
	left: 50%;
/* 	top: 550px; */
	bottom: 10%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	list-style: none;
}
.search_list > li {
	position: relative;
	text-align: center;
	overflow: hidden;
	transition: .5s all ease;
}

.search_list > li:not(:last-child) {
	margin-right: 50px;
}

.search_list > li::before, .search_list > li::after {
	position: absolute;
	content: '';
	width: 20px;
	height: 20px;
}
.search_list > li::before {
	top: 0;
	left: 0;
	border-top: 2px solid #fff;
	border-left: 2px solid #fff;
}
.search_list > li::after {
	right: 0;
	bottom: 0;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
}
.search_list > li a {
	position: relative;
	padding: 20px;
	color: #fff;
	display: flex;
	align-items: center;
	flex-direction: column;
	text-decoration: none;
}
.search_list > li a::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	backdrop-filter: blur(5px);
	z-index: -1;
}
.search_list > li a::before {
	display: block;
	font-family: 'Material Icons Round';
	font-size: 36px;
	content: '\e0c8';
}
.search_list > li:nth-child(2) a::before {
	content: '\e55b';
}
.search_list > li:nth-child(3) a::before {
	content: '\e570';
}

.search_list > li span {
	position: absolute;
	top: 0;
	left: -75%;
	width: 50%;
	height: 100%;
	background: linear-gradient( to right, rgba( 255, 255, 255, 0 ) 0%, rgba( 255, 255, 255, .3 ) 100% );
	transform: skewX( -25deg );
}

.search_list > li:hover span {
	animation: shine 0.7s;
}

@keyframes shine {
	100% {
		left: 125%;
	}
}

.room_illust {
	position: relative;
}
.room_illust::before {
	content: '';
	position: absolute;
	width: 300px;
	height: 300px;
	left: -100px;
	bottom: 20px;
	background-image: url( '/wp-content/uploads/sites/962/2023/04/top_01.png' );
	background-size: cover;
	background-repeat: no-repeat;
	opacity: .6;
	z-index: -1;
}


/* おすすめの物件 - Recommend
-------------------------------------------------- */
.feature-advertisement-block figure img {
	object-fit: cover !important;
}


/* バナー集 - banner
-------------------------------------------------- */
.bnr_area .uagb-columns__inner-wrap {
	max-width: 100% !important;
}
.bnr_area .uagb-columns__inner-wrap > .wp-block-uagb-column {
	overflow: visible;
}

.bnr_lists {
	list-style: none;
	margin: 0;
}
.bnr_lists li {
	margin-right: 2%;
	width: 32%;
/* 	height: 250px; */
}
.bnr_lists li a {
	display: block;
	overflow: hidden;
	border-radius: 10px;
}
.bnr_lists li a img {
	width: 100%;
	transition: all ease .6s;
	border-radius: 10px;
	object-fit: contain;
}
.bnr_lists li a:hover img {
	transform: scale( 1.1 );
}

.bnr_lists button {
	padding: 0;
	transition: all ease .6s;
}
.bnr_lists button:hover {
	background-color: #333 !important;
}

.bnr_lists ol.flickity-page-dots {
	bottom: -50px;
}



/* おすすめ物件 - Reccomend
-------------------------------------------------- */
body.es-page-s-03 .es_new_block .es-list .wp-block-column,
body.es-page-design-sample03 .es_new_block .es-list .wp-block-column {
    background-color: #fff;
	border-radius: 10px;
	overflow: hidden;
}


/* 特集リンク - serviceBox
-------------------------------------------------- */
.service_box {
	margin: -100px 0 50px;
	list-style: none;
	display: flex;
	justify-content: space-between;
	display: none;
}
.service_box > li {
	width: 23%;
	background: #fff;
	box-shadow: 0 1px 6px rgb(0 0 0 / 30%);
}

.caption_tag {
	position: relative;
}
.caption_tag figcaption {
	position: absolute;
	left: 0;
	bottom: 0;
	margin: 0;
	padding: 10px 15px;
	width: fit-content;
	color: #fff;
	text-align: center;
	background: rgba( 21, 45, 96, 1 );
}

.service_box > li a {
	text-decoration: none;
	color: rgba( 21, 45, 96, 1 );
}

.service_box > li .service_info {
	padding: 20px;
}
.service_box > li .service_info h2 {
	font-size: 16px;
	font-weight: bold;
	text-align: left;
}
.service_box > li .service_info h2::after {
	display: none;
}
.service_box > li .service_info p {
	font-size: 12px;
}


/* スクロールダウン - scrollDown
-------------------------------------------------- */
.scroll_down {
	display: inline-block;
	position: absolute;
	right: 120px;
	bottom: 120px;
	z-index: 2;
	padding: 10px 10px 110px;
	overflow: hidden;
	color: #fff;
	font-size: 14px;
	line-height: 1;
	letter-spacing: .2em;
	text-transform: uppercase;
	text-decoration: none;
	writing-mode: vertical-lr;
}
.scroll_down::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 1px;
	height: 100px;
	background: #fff;
}
.scroll_down::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 1px;
	height: 100px;
	background: rgba(255, 255, 255, .4);
}
.scroll_down::after {
	animation: sdl 1.5s cubic-bezier(1, 0, 0, 1) infinite;
}


@keyframes sdl {
	0% {
	  transform: scale(1, 0);
	  transform-origin: 0 0;
	}
	50% {
		transform: scale(1, 1);
		transform-origin: 0 0;
	}
	50.1% {
		transform: scale(1, 1);
		transform-origin: 0 100%;
	}
	100% {
		transform: scale(1, 0);
		transform-origin: 0 100%;
  }
}

/* アイコンリスト - iconList
-------------------------------------------------- */
ul.icon_link_list {
	list-style: none;
	margin: 20px 0;
	display: flex;
	flex-wrap: wrap;
}
ul.icon_link_list > li {
	margin-bottom: 2%;
	width: 18%;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 1px 6px rgb(0 0 0 / 30%);
	transition: .5s all ease;
}
ul.icon_link_list > li a {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	min-height: 100px;
	text-decoration: none;
	font-weight: bold;
	color: rgba( 87, 181, 192, 1 );
}
ul.icon_link_list > li a i {
	margin-bottom: 2.5px;
	font-size: 36px;
}
ul.icon_link_list > li a span {
	color: rgba( 51, 51, 51, 1 );
}
ul.icon_link_list > li:not(:nth-child(5n)) {
	margin-right: 2%;
}

ul.icon_link_list > li:hover {
	background: rgba( 87, 181, 192, 1 );
}
ul.icon_link_list > li:hover a, ul.icon_link_list > li:hover a span {
	color: #fff !important;
}


/* ３つの特徴 - strengths
-------------------------------------------------- */
.es-page-s-03 .rtc_point_text h2 {
	font-size: 16px;
}
.rtc_point_text h2::before {
	display: block;
	margin-bottom: 10px;
	content: 'Strengths';
    font-size: 36px;
    letter-spacing: .05em;
}


/* バナー集 - banner
-------------------------------------------------- */
.custom_bnr figure {
	position: relative;
	overflow: hidden;
	border-radius: 10px;
}
.custom_bnr figure a::before {
	position: absolute;
	top: 0;
	content: '';
	width: 100%;
	height: 100%;
/* 	background: repeating-linear-gradient(-45deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3) 1px, rgba(0, 0, 0, 0.2) 0, rgba(0, 0, 0, 0.2) 6px); */
	background: rgba( 0, 0, 0, 0.2 );
	z-index: 1;
}

.custom_bnr figure a {
	display: block;
}
.custom_bnr figure a img {
	transition: ease all .5s;
}
.custom_bnr figure:hover a img {
	transform: scale( 1.1 );
}
.custom_bnr figure figcaption {
	margin: 0;
	padding: 0 10px;
	width: 100%;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	z-index: 2;
	cursor: pointer;
	letter-spacing: .05em;
}


/* アクセスマップ - map
-------------------------------------------------- */
.map_custom { padding-top: 0 !important; }
.map_custom .uagb-columns__inner-wrap {
	max-width: 100% !important;
}
.map_custom .uagb-columns__inner-wrap .uagb-column__inner-wrap {
	padding: 0;
	height: 400px;
}


/* フッター - footer
-------------------------------------------------- */
body.home footer.site-footer, body.es-page-s-03 footer.site-footer {
	margin-top: 0;
}


@media screen and ( max-width: 480px ) {
	ul.icon_link_list {
		justify-content: space-between;
	}
	ul.icon_link_list > li {
		width: 48%;
	}
	ul.icon_link_list > li:not(:nth-child(5n)) {
		margin-right: 0;
	}
	
	
	/* ナビ - nav
	-------------------------------------------------- */
	header.fixed {
		background-color: #fff;
	}
	
	#masthead .header_free_content {
		display: none;
	}
	#masthead .header_free_content > strong,
	#masthead .header_free_content a {
		width: auto !important;
		border-radius: 50vh !important;
	}
	#masthead .header_free_content > strong {
		padding: 10px;
	}
	#masthead .header_free_content .header_phone_number {
		display: none;
	}
	
	
	/* ヘッダー - header
	-------------------------------------------------- */
	header#header_org .header_fixed {
		padding: 0 10px;
	}
	header#header_org .header_fixed h1.header_logo {
		width: 200px;
	}
	.header_nav > li:not(:last-child) {
		display: none;
	}
	
	section#mainVisual {
		margin-top: 132px;
		padding: 0 !important;
	}
	
	#mainVisual, .main_visual {
		height: 360px !important;
	}
	.main_visual {
		background-attachment: scroll !important;
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
		image-rendering: -webkit-optimize-contrast;
	}
	.main_visual p {
		margin-top: -230px;
		font-size: 14px;
	}
/* 1枚目の背景位置 */
.main_visual .slick-slide:nth-child(1) {
   background-position: 60% center; /* 上の方にフォーカス */
}

/* 2枚目の背景位置 */
.main_visual .slick-slide:nth-child(2) {
    background-position: center center !important; /* 真ん中にフォーカリ */
}

/* 3枚目の背景位置 */
.main_visual .slick-slide:nth-child(3) {
    background-position: center 80% !important; /* 下の方にフォーカス */
}
	.search_list {
		width: 70%;
		top: auto;
		bottom: 100px;
		flex-direction: column;
	}
	.search_list > li {
		width: 100%;
	}
	.search_list > li:not(:last-child) {
		margin-right: 0;
		margin-bottom: 10px;
	}
	.search_list > li a {
		padding: 5px;
		justify-content: center;
		flex-direction: row;
		font-size: 16px;
	}
	.search_list > li a::before {
		margin-right: 10px;
		font-size: 24px;
	}
	
	
	.scroll_down {
		right: 10px;
		bottom: 15px;
	}
	
	
	/* ナビ - nav
	-------------------------------------------------- */
	nav#nav_org {
		width: 100%;
	}
	
	
	/* バナー集 - banner(feature)
	-------------------------------------------------- */
	.bnr_area .uagb-column__inner-wrap {
		padding: 0 !important;
	}
	
	.bnr_lists li {
		width: 100%;
		height: 180px;
	}
	.bnr_lists li a img {
/* 		height: 150px; */
	}
	
	.flickity-prev-next-button {
		width: 25px;
		height: 25px;
	}
	
	
	/* おすすめ特集
	-------------------------------------------------- */
	.custom_bnr > .uagb-columns__inner-wrap {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.custom_bnr > .uagb-columns__inner-wrap > .wp-block-uagb-column {
		width: 48% !important;
	}
	.custom_bnr > .uagb-columns__inner-wrap > .wp-block-uagb-column > .uagb-column__inner-wrap {
		padding: 0 !important;
	}
/* 	.custom_bnr > .uagb-columns__inner-wrap > .wp-block-uagb-column figure {
		margin-bottom: 0;
	} */
	
	
	/* ３つの特徴
	-------------------------------------------------- */
	.top-company-feature h2 {
		margin: 20px 0;
		font-size: 18px;
	}
	.top-company-feature h3 {
		font-size: 16px;
	}
	.top-company-feature p {
		font-size: 12px;
	}
	.top-company-feature p br {
		display: none;
		flex-direction: column;
	}
	
	/* ページ：サブビジュアル - sub_visual
	-------------------------------------------------- */
	body:not(.home) .sub_visual {
		margin-bottom: 30px;
	}
	body:not(.home) .sub_visual h1 {
		font-size: 21px;
	}
	
	body.single-staff table tr td {
		display: block;
	}
}