/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Feb 03 2025 | 05:07:52 */
/* common - 基本設定
-------------------------------------------------- */
* { box-sizing: border-box; }

body #page {
	overflow-x: hidden;
}
#content {
	padding-top: 0 !important;
}

a.wp-block-button__link {
	border-radius: 30px;
}

.es-separate-container #primary {
	padding-bottom: 0;
}


/* ドット柄 - 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
-------------------------------------------------- */
#masthead .site-branding {
	margin-right: auto;
}
#masthead .header_free_content { display: none; }
.header_links a:not(.menu-toggle) { color: #333333 !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;
}

.rtc_ttl_kinoie {
	font-size: 16px !important;
}
.rtc_ttl_kinoie strong {
	font-size: 18px;
	letter-spacing: .2em;
}
.rtc_ttl_kinoie p {
	display: flex;
	align-items: center;
	margin-bottom: 0 !important;
	font-size: 63px;
	font-weight: bold !important;
	line-height: 1.25 !important;
}
.rtc_ttl_kinoie p span {
	display: inline-block;
	margin-top: 10px;
	margin-left: 10px;
	font-size: 14px;
}


/* メインビジュアル - mainVisual
-------------------------------------------------- */
section#mainVisual {
	position: relative;
	background-image: url( '/app/uploads/sites/1321/2024/12/top_cover.jpg' );
	background-position: center;
	background-size: cover;
}

.main_visual {
    position: relative;
/*     height: calc( 100vh - 96px ); */
	height: 980px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	text-align: center;
}
.full-width {
    margin-left: calc( -50vw + 50% );
    margin-right: calc( -50vw + 50% );
}

.main_visual h1 {
	position: relative;
	font-size: 20px;
	color: #fff;
}
.main_visual h1::after {
	display: block;
	margin: 20px auto 0;
	content: '';
	width: 120px;
	height: 2px;
	background-color: #fff;
}
.main_visual p {
	margin-bottom: 0;
	font-size: 30px;
	letter-spacing: .5em;
	color: #fff;
}
.main_visual p img {
	display: block;
	margin: 0 0 50px;
	width: 100%;
}

.es-maintenance header#header_org {
	display: none;
}

.main_visual .main_catch {
	line-height: 1.25 !important;
}
.main_visual .main_catch span {
	display: flex;
	align-items: center;
	font-size: 60px !important;
	font-weight: bold;
}

.main_catch span img {
	display: inline-block;
	margin-right: 20px;
	margin-bottom: 0;
	width: 100px;
}

/* kiNOie - キノイエ
-------------------------------------------------- */
.kinoie_img .wp-block-image {
	margin-bottom: 0;
}
.rtc_list_kinoie {
	margin: 0 0 50px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 30px;
	list-style: none;
}
.rtc_list_kinoie > li {
	padding: 30px;
	width: 31%;
	background-color: #fff;
	font-size: 14px;
	font-weight: 600;
	text-align: center;
	border-radius: 10px;
}
.rtc_list_kinoie > li span {
	display: block;
	margin-bottom: 10px;
	font-size: 24px;
	font-weight: bold;
	color: #706663;
}

.kinoie_bnr {
	position: relative;
}
.kinoie_bnr::after {
	content: '特設サイトはこちら';
	position: absolute;
	right: 20px;
	bottom: 20px;
	padding: 5px 80px;
	font-size: 18px;
	font-weight: 600;
	color: #fff;
	background-color: #C76A6A;
	border-radius: 50vh;
	transition: all ease .6s;
}
.kinoie_bnr:hover::after {
	background-color: #1C6491;
}
.kinoie_bnr a img {
	transition: all ease .6s;
}
.kinoie_bnr a:hover img {
	opacity: .6;
	transform: scale( 1 );
}


/* ファブリックホームズの想い
-------------------------------------------------- */
.rtc_title_opacity { /* 裏側に大文字英字 */
	position: relative;
	font-weight: bold;
	line-height: 1 !important;
}
.rtc_title_opacity svg {
	display: block;
	margin: 0 auto 5px;
	width: 50px;
	height: 50px;
}
.rtc_title_opacity > span {
	display: block;
	position: static;
	color: #AEABA4;
	transform: none;
	opacity: 1;
	z-index: 0;
	font-size: 36px;
	letter-spacing: .05em;
}
.rtc_title_opacity_blue > span { color: #CBDCE3; }
.rtc_title_opacity_white > span { color: #EAE8E4; }

.rtc_bnr_block .uagb-columns__inner-wrap {
	max-width: 100% !important;
}
.rtc_bnr_block .uagb-columns__inner-wrap .uagb-column__inner-wrap {
	padding: 0;
}

.flickity-button {
	background: #1C6491 !important;
}
.flickity-button-icon {
    fill: #fff !important;
}

/* ファブリックホームズの想い
-------------------------------------------------- */
.rtc_btn_point a {
	padding: 30px 80px !important;
	width: fit-content !important;
}

.wp-element-button, .top_company_info__form_button {
	position: relative;
}
.wp-element-button::after, .top_company_info__form_button::after {
	position: absolute;
	top: 50%;
	right: 30px;
	transform: translateY( -50% );
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
}



/* スタッフ紹介
-------------------------------------------------- */
.rtc_block_staff {
	padding-bottom: 0;
}
.rtc_block_staff h3 {
	padding: 20px 0;
	text-align: center;
}

.rtc_sale_block figure figcaption {
	text-align: center;
	font-weight: bold;
}

/* 売りたい方へ
-------------------------------------------------- */
.rtc_sale_block a {
	display: block;
	overflow: hidden;
	border-radius: 10px;
}
.rtc_sale_block a img, .rtc_contents_block a img {
	transition: all ease .6s;
}

.rtc_contents_block a {
	display: block;
	overflow: hidden;
}

/* お問い合わせ
-------------------------------------------------- */
.top_company_info span[class^=icon-], .top_company_info .inquiry_column strong a {
	color: #1C6491;
}
.top_company_info .inquiry_column .wp-block-button a {
	background: #1C6491;
}
.top_company_info h3, .top_company_info p {
	color: #fff !important;
}














/* 検索リスト - searchlist
-------------------------------------------------- */
.search_list {
	position: absolute;
	margin: 0;
	display: flex;
	align-items: center;
	left: 50%;
/* 	top: 550px; */
	bottom: 15%;
	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;
	width: 200px;
	height: 200px;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: 600;
	flex-direction: column;
	text-decoration: none;
	z-index: 2;
}
.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 svg {
	margin-bottom: 10px;
	width: 60px;
	height: 60px;
}
/* .search_list > li a::before {
	display: block;
	font-size: 36px;
	content: '\f178';
	font-weight: 900;
	font-family: 'Font Awesome 5 Free';
}
.search_list > li:nth-child(2) a::before {
	content: '\e0c8';
}
.search_list > li:nth-child(3) a::before {
	content: '\e55b';
} */

.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%;
}
.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);
	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;
	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 {
		padding: 0 !important;
	}
	section#mainVisual > div:first-child {
		background-size: cover;
		background-position: 50% 50%;
	}
	
	section#mainVisual .main_visual {
		height: 480px;
	}
	.main_visual h1 {
		font-size: 18px;
	}
	.main_visual p {
/* 		margin-top: -150px; */
		font-size: 24px;
	}
	.main_visual .main_catch span {
		font-size: 36px !important;
	}
	
	.search_list {
		position: static;
		margin-top: 30px;
		width: 95%;
		transform: none;
/* 		flex-direction: column; */
/* 		top: auto;
		bottom: 100px;
		 */
	}
	.search_list > li {
		width: 100%;
	}
	.search_list > li:not(:last-child) {
		margin-right: 0;
		margin-bottom: 10px;
	}
	.search_list > li a {
		padding: 10px;
		width: 100%;
		height: auto;
		justify-content: center;
/* 		flex-direction: row; */
		font-size: 11px;
	}
	.search_list > li a::before {
		margin-right: 10px;
		font-size: 24px;
	}
	.search_list > li a svg {
		width: 40px;
		height: 40px;
	}
	.search_list > li:last-child {
		margin-top: -10px;
	}
	
	
	.scroll_down {
		right: 10px;
		bottom: 15px;
	}
	
	/* title - タイトル
	-------------------------------------------------- */
	.rtc_title_opacity {
		font-size: 1rem !important;
	}
	.rtc_title_opacity > span {
		font-size: 24px;
	}
	
	.main_visual .main_catch {
		font-size: .9rem;
	}
	.main_visual .main_catch span {
		flex-direction: column;
	}
	.main_visual .main_catch span img {
		margin: 10px 0;
		width: 100px;
	}
	
	/* kiNOie - キノイエ
	-------------------------------------------------- */
	.rtc_list_kinoie {
		flex-direction: column;
	}
	.rtc_list_kinoie > li {
		width: 100%;
	}
	
	.rtc_list_kinoie > li span {
		font-size: 18px;
	}
	
	.kinoie_bnr::after {
		display: none;
	}
	
	.custom-media-text1 .wp-block-media-text__media,
	.custom-media-text1 .wp-block-media-text__content {
		width: 100%;
	}
	.custom-media-text1.has-media-on-the-right .wp-block-media-text__media,
	.custom-media-text1.has-media-on-the-right .wp-block-media-text__content {
		margin-left: 0;
	}
	.custom-media-text1 .wp-block-media-text__content {
		padding: 20px;
		min-height: auto;
	}
	.custom-media-text1 .wp-block-media-text__content p {
		font-size: 11px;
	}
	
	a.wp-element-button {
		padding: 20px !important;
		width: 300px;
	}
	.wp-block-button__link::after {
		display: none;
	}
	
	.rtc_block_staff ul li {
		width: 48%;
	}
	.es-list .has-3-columns>:not(:nth-child(3n+1)) {
		margin-left: 0;
	}
	.es-list .has-3-columns>:not(:nth-child(odd)) {
		margin-left: 4%;
	}
	
	.rtc_sale_block > .uagb-columns__inner-wrap {
		display: flex;
		flex-wrap: wrap;
	}
	.rtc_sale_block > .uagb-columns__inner-wrap > div.wp-block-uagb-column {
		width: 48% !important;
	}
	.rtc_sale_block figure figcaption {
		font-size: 12px !important;
	}
	
	.bnr_lists {
		padding-inline: 10px;
	}
	
	.top_company_info h3 {
		font-size: 18px;
	}
	.inquiry_column {
		flex-direction: column;
	}
	.top_company_info .inquiry_column .wp-block-column {
		margin: 0 !important;
		width: 100%;
	}
	.top_company_info .inquiry_column .inquiry_phone_wrap {
		margin-bottom: 20px !important;
	}
	
	
	
	
	/* ナビ - 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 !important;
		height: 25px !important;
	}
	
	
	/* おすすめ特集
	-------------------------------------------------- */
	.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;
	}
	.custom-media-text1 .wp-block-media-text__content h3 {
		font-size: 14px;
	}
	
	/* ページ：サブビジュアル - sub_visual
	-------------------------------------------------- */
	body:not(.home) .sub_visual {
		margin-bottom: 30px;
	}
	body:not(.home) .sub_visual h1 {
		font-size: 21px;
	}
}