@charset "utf-8";
/*
Theme Name: newvillage-estate7
Theme URI: https://newvillage-estate.com/
Version: 7.0
*/

/* common
---------------------------------------------------------------------------*/
:root {
	--color-font: #1F1F1F;
	--color-cyan: #4F8E95;
	--color-bg: #FFFFFF;
	--color-border-light: #E9E9E9;
	--color-border: #CCCCCC;
	--color-border-dark: rgba(0,0,0,0.5);
	--font-min: '游明朝体', '游明朝', YuMincho, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
	--font-gothic: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
	--font-sans: Helvetica, '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
	--scaleWidth: 97%;
	--scaleX: 1.03;
	--letter-spacing: 0.02em;
}

body {
	background-color: var(--color-bg);
	color: var(--color-font);
	font-size: 14px;
	font-family: var(--font-min);
	line-height: 1;
	font-feature-settings: 'palt' 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
}

body.noscroll { overflow-y: scroll; position: fixed; width: 100%; }

::-moz-selection { background: #DBDBDB; color: var(--color-font); }
::selection { background: #DBDBDB; color: var(--color-font); }

p { font-size: 14px; line-height: 1.8; letter-spacing: 0; margin-bottom: 16px; }
p:last-child { margin-bottom: 0 !important; }
address,i { font-style: normal; }
img { max-width: none; }

.scale,h1,h2,h3,h4,h5,h6,p,address,time,figcaption,
header .gnav a,
header .gnav li > span,
footer .snav li,
.btn-line a,
.dot-list li,
.top-search-list a,
.estate-list article a > span,
.estate-map .route > div span,
.sec-olive .outline .txt p + a,
.form-wrap dt,
.form-wrap dd p,
.form-wrap dt .wpcf7-list-item-label,
.form-wrap th,
.leasing-flow dt,
.leasing-flow dd p,
.leasing-common dt,
.leasing-common dd .name,
.leasing-outline dt,
.leasing-outline dd,
.leasing-lead .name,
.blog-table,
.blog-list article .category span,
.blog-title .category span,
.title-category li a,
.area-list .genre,
.area-title .cnt,
.leasing-shop-list h3 + a,
.sales-list i span,
.sec-privacy dt,
.wpcf7-checkbox .wpcf7-list-item,
.wpcf7-radio .wpcf7-list-item,
.bnr-footer a strong,
.bnr-footer .txt em {
	box-sizing: border-box;
	width: var(--scaleWidth);
	transform-origin: left center;
	transform: scaleX(var(--scaleX));
	letter-spacing: var(--letter-spacing);
}

h1,h2,h3,h4,h5,h6 {
	letter-spacing: 0.04em;
}

.estate-post .slider .inner img,
.estate-list figure img,
.gallery-list li img,
.area-list figure img,
.sales-list figure img,
.area-title figure img,
#aboutContents .sec-lead figure img,
#aboutContents .sec-lead .outline .profile figure img,
.sec-olive > figure img,
.sec-olive .outline figure img,
.blog-list article figure img,
.leasing-slide figure img,
.leasing-wrap figure img,
.leasing-list figure img,
.blog-info-area figure img {
	width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
}

.estate-list figure img,
.sales-list figure img,
#areaContents.archive .area-title figure img,
.leasing-list figure img,
.blog-list article figure img {
	display: block;
	border: 1px solid var(--color-border-dark);
	width: calc(100% - 2px);
}

footer .sns img,
#aboutContents .sec-lead .outline .profile .sns img,
.sec-olive .outline .txt .sns img,
.blog-info-area .sns li img,
.top-lead .profile .sns img {
	opacity: 0.5;
}

footer .sns img {
	width: 32px;
}

.top-search-list .inner-main time,
.top-search-list .inner-main .cnt {
	font-family: var(--font-sans);
}

.block { display: inline-block !important; }
.wide { display: inline-block !important; }
.narrow { display: none !important; }

/* #loading
------------------------------------*/
#loading {
	display: block;
	opacity: 1;
	position: fixed;
	top: 50%;
	right: calc((100% - 370px) / 2);
	border: 1px solid rgba(0,0,0,1);
	border-top-color: transparent;
	border-radius: 50%;
	width: 20px;
	height: 20px;
	margin: -10px -10px 0 0;
	z-index: 99999;
	animation: spin .4s infinite linear;
}

body.estate #loading,
body.area-category #loading,
body.area-single #loading {
	right: 25%;
}

@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }

/* link
------------------------------------*/
a { color: var(--color-font); text-decoration: none; transition: .15s ease-out; -webkit-transform: translateZ(0); -webkit-tap-highlight-color: rgba(0,0,0,0); }
.hover { cursor: pointer; transition: .15s ease-out; }
a:hover,.hover:hover { text-decoration: none; opacity: 0.6 !important; }

.line { display: inline-block; position: relative; padding-bottom: 2px; }
.line:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	background: var(--color-border-dark);
	width: 100%;
	height: 1px;
}

/* .btn
------------------------------------*/
.btn-line a {
	display: block;
	border: 1px solid var(--color-border);
	width: auto;
	padding: 21px;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-align: center;
	white-space: nowrap;
}

.btn-line.sp a {
	display: inline-block;
	border: none;
	width: auto;
	padding: 0 0 2px;
	font-weight: normal;
	text-align: left;
}


/* #wrap
---------------------------------------------------------------------------*/
#wrap {
	position: relative;
	overflow: hidden;
  box-sizing: border-box;
  min-width: 1240px;
  min-height: 100vh;
  padding: 0 0 0 370px;
}

.modal-bg {
	position: fixed;
	top: 0;
	left: 0;
/* 	background: rgba(255,255,255,0.9); */
	width: 100%;
	height: 100%;
	z-index: 99;
	pointer-events: none;
	opacity: 0;
}

.modal-bg.active {
	pointer-events: all;
	cursor: pointer !important;
}


/* header
---------------------------------------------------------------------------*/
header {
	box-sizing: border-box;
	position: fixed;
	top: 0;
	left: 0;
	background-color: #FFFFFF;
	width: 370px;
	height: 100%;
	margin: 0;
	padding: 58px 0 0 38px;
	white-space: nowrap;
	z-index: 100;
	opacity: 0;
}

header.border {
	border-right: 1px solid var(--color-border-dark);
}

body.estate header,
body.area-category header,
body.area-single header {
	left: -300px;
}

header .logo {
	transition: .15s ease-out;
}

body.estate header .logo,
body.area-category header .logo,
body.area-single header .logo {
	opacity: 0;
	pointer-events: none;
}

.header-sp,
header .copyright {
	display: none;
}

/* header .gnav
------------------------------------*/
header .gnav-wrap {
	position: absolute;
	top: 75px;
	left: 35px;
	width: calc(100% - 30px);
	height: calc(100% - 285px);
	margin-left: -5px;
}

header .gnav {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

header .gnav-main {
	margin-bottom: 50px;
}

header .gnav-main li {
	margin-bottom: 20px;
}

header .gnav-main li:last-of-type,
header .gnav-sub li:last-of-type {
	margin-bottom: 0 !important;
}

header .gnav-main li > a,
header .gnav-main li > span {
	display: inline-block;
	padding: 5px 30px 5px 5px;
	font-size: 24px;
}

header .gnav-main .btn-ac {
	position: relative;
	width: auto;
	cursor: pointer;
}

.btn-ac .plus {
	position: absolute;
	top: 9px;
	right: 0;
	width: 15px;
	height: 15px;
	transition: .15s ease-out;
}

.btn-ac .plus:before,
.btn-ac .plus:after {
	display: block;
	content: '';
	position: absolute;
	background-color: #000;
}

.btn-ac .plus:before { top: 0; left: 7px; width: 1px; height: 100%; }
.btn-ac .plus:after { top: 7px; left: 0; width: 100%; height: 1px; }
.btn-ac.active .plus { transform: rotate(135deg); }

header .gnav-main .inner {
	display: none;
	padding: 0 0 0 25px;
}

header .gnav-main .inner-s {
	padding: 10px 0 10px 0;
}

header .gnav-main .inner-s > div {
	margin-top: 10px;
}

header .gnav-main .inner a {
	display: inline-block;
	width: auto;
	padding: 5px 5px 5px 5px;
	font-size: 18px;
}

/* header .gnav-sub
------------------------------------*/
header .gnav-sub li {
	margin-bottom: 11px;
}

header .gnav-sub li a {
	display: inline-block;
	padding: 5px;
	font-size: 18px;
}

header #gnav-leasing .let {
	display: inline-block;
	transform: translateX(1px);
}

header .sns-wrap {
	position: absolute;
	bottom: 35px;
	left: 30px;
	width: calc(100% - 60px);
}

header .sns-wrap h2 {
	margin: 0 0 16px 6px;
	font-size: 11px;
	letter-spacing: 0;
}

header .sns-wrap dl > div {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	margin: 0 10px -2px 6px;
}

header .sns-wrap dl > div:last-of-type {
	margin-bottom: 0;
}

header .sns-wrap dt {
	width: 130px;
	min-width: 130px;
	padding-top: 12px;
	font-size: 14px;
	letter-spacing: 0.02em;
	white-space: nowrap;
}

header .sns-wrap dd img {
	width: 28px;
	opacity: 0.25;
}

header .sns-wrap dd ul {
	display: -webkit-box;
	display: flex;
}

header .sns-wrap dd li {
	width: 37px;
}

header .sns-wrap dd li a {
	display: block;
	padding: 5px 5px 5px 4px;
}

@media (max-height: 960px) {
	header {
		padding-top: 35px;
	}
	header .gnav-main {
		margin-bottom: 30px;
	}
	header .gnav-main li {
		margin-bottom: 12px;
	}
	header .gnav-main li > a,
	header .gnav-main li > span {
		font-size: 21px;
	}
	header .gnav-main .inner-s > div {
		margin-top: 8px;
	}
	header .gnav-main .inner a {
		font-size: 15px;
	}
	header .gnav-sub li {
		margin-bottom: 8px;
	}
	header .gnav-sub li a {
		font-size: 16px;
	}
	header .gnav-main li .btn-ac .plus {
		top: 8px;
	}
	header .sns-wrap {
		bottom: 30px;
	}
	header .sns-wrap h2 {
		margin-bottom: 12px;
	}
}

@media (max-height: 800px) {
	header {
		position: absolute;
		height: auto;
		min-height: 100vh;
	}
}


/* footer
---------------------------------------------------------------------------*/
footer {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 260px 0 50px 11%;
	white-space: nowrap;
	opacity: 0;
}

footer .sns {
	display: -webkit-box;
	display: flex;
	margin: 0 0 28px -5px;
}

footer .sns li a {
	display: inline-block;
	padding: 5px;
}

.copyright {
	display: block;
	margin-bottom: 25px;
	font-size: 10px;
	letter-spacing: 0.1em;
	transform-origin: left bottom;
	transform: scale(0.85, 0.8);
}

footer .snav ul {
	display: -webkit-box;
	display: flex;
	margin: 0 0 0 -5px;
}

footer .snav li {
	width: auto;
	margin-right: 10px;
}

footer .snav li a {
	display: inline-block;
	padding: 5px;
	font-size: 16px;
	/* letter-spacing: 0.02em; */
}

footer .logo {
	position: absolute;
	bottom: 57px;
	right: 76px;
}

.footer-btm {
	display: none;
}

body.estate footer,
body.area-category footer,
body.area-single footer {
	padding: 260px 0 40px 7%;
}

/*
body.estate footer { opacity: 0 !important; pointer-events: none; }
body.estate-single footer { opacity: 1 !important; pointer-events: auto; }
*/

body.estate footer .copyright,
body.area-category footer .copyright,
body.area-single footer .copyright {
	margin-bottom: 20px;
}

body.estate footer .logo,
body.area-category footer .logo,
body.area-single footer .logo {
	bottom: 45px;
	right: 50px;
}

body.estate footer .logo img,
body.area-category footer .logo img,
body.area-single footer .logo img {
	width: 147px;
	height: auto;
}


/* contents
---------------------------------------------------------------------------*/
#mainContents {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  text-align: left;
}

.contents {
	opacity: 0;
}

#salesContents,
#areaContents:not(.category,.single),
#blogContents,
#aboutContents,
#contactContents,
body.leasing .title-page,
#errorContents {
	box-sizing: border-box;
	max-width: 1070px;
	padding: 55px 10% 0 15%;
}

.leasing-wrap {
	box-sizing: border-box;
	max-width: 1070px;
	padding: 0 5.5% 0 12%;
}

body.leasing .title-page {
	margin-bottom: 90px;
	padding: 55px 0 0 15%;
}

@media (min-width: 1440px) {
	#salesContents,
	#areaContents:not(.category,.single),
	#blogContents,
	#aboutContents,
	#contactContents,
	body.leasing .title-page {
		padding-right: 90px;
		padding-left: 160px;
	}
	.leasing-wrap {
		padding-right: 75px;
		padding-left: 125px;
	}
}
@media (max-width: 1439px) {
	footer .logo {
		right: 60px;
	}
	#salesContents,
	#areaContents:not(.category,.single),
	#blogContents,
	#aboutContents,
	#contactContents,
	body.leasing .title-page {
		padding-right: 75px;
		padding-left: 12%;
	}
	body.top footer {
		padding-left: 60px;
	}
}

@media (max-width: 1240px) {
	body.estate #wrap,
	body.area-category #wrap,
	body.area-single #wrap {
		padding-left: 620px !important;
	}
	body.estate #mainContents,
	body.area-category #mainContents,
	body.area-single #mainContents {
		width: 620px;
	}
}

body.estate,
body.area-category,
body.area-single {
	overflow-y: scroll;
}

body.estate #wrap,
body.area-category #wrap,
body.area-single #wrap {
	padding-left: 50%;
}

body.estate #mainContents,
body.area-category #mainContents,
body.area-single #mainContents {
	position: relative;
}

/* .dot-list
------------------------------------*/
.dot-list li {
	position: relative;
	margin: 0 0 6px 3px;
	padding-left: 15px;
	font-size: 14px;
	line-height: 1.6;
}

.dot-list li:last-of-type {
	margin-bottom: 0;
}

.dot-list li:before {
	display: block;
	content: '・';
	position: absolute;
	top: 0;
	left: 0;
}

/* .title-page
------------------------------------*/
.title-page {
	position: relative;
	margin-bottom: 160px;
}

.title-page h1,
.title-page h2 {
	margin-left: -1px;
	font-size: 26px;
	white-space: nowrap;
}

/* .title-line-head
------------------------------------*/
.title-line-head {
	position: relative;
	margin-bottom: 35px;
	padding-top: 35px;
	font-size: 18px;
	letter-spacing: 0.06em;
}

.title-line-head:before {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background: var(--color-border-dark);
	width: 38px;
	height: 1px;
}

/* .title-brackets
------------------------------------*/
.title-brackets {
	margin-bottom: 30px;
	font-size: 18px;
}

/* .sec-lead
------------------------------------*/
.sec-lead {
	margin-bottom: 60px;
}

.sec-lead h2 {
	margin-bottom: 44px;
	font-size: 28px;
	letter-spacing: 0.06em;
}

.sec-lead p {
	font-size: 18px;
	text-align: justify;
	line-height: 2.2;
	letter-spacing: 0.02em;
}

.sec-lead p .line {
	line-height: 1;
}


/* page contact
---------------------------------------------------------------------------*/

/* .form-wrap
------------------------------------*/
.form-wrap {
	margin-bottom: 45px;
}

.form-wrap dl { line-height: 1.6; }
.form-wrap dl > div { display: flex; margin-bottom: 20px; }
.form-wrap dl > div:last-of-type { margin-bottom: 0; }

.form-wrap dt {
	box-sizing: border-box;
	width: 190px;
	padding-top: 12px;
	font-size: 16px;
	letter-spacing: 0.04em;
}

.form-wrap dt.pt {
	padding-top: 2px;
}

.form-wrap dl > div:last-of-type dt {
	padding-top: 10px;
	align-self: flex-start;
}

.form-wrap dt span {
	display: block;
	font-size: 14px;
	letter-spacing: 0.06em;
}

.form-wrap dd {
	width: calc(100% - 190px);
}

.form-wrap dd.pb {
	padding-bottom: 10px;
}

.form-wrap dd p {
	margin-top: 10px;
	font-size: 14px;
	line-height: 1.8;
	text-align: justify;
}

.form-wrap dd > p,
.form-wrap dd td > p {
	margin: 0;
}

.form-wrap dd > p + p {
	margin-top: 10px;
}

/* input
------------------------------------*/
.wpcf7-form-control-wrap {
	display: inline-block;
	width: 100%;
}

.form-wrap input[type="text"],
.form-wrap input[type="email"],
.form-wrap input[type="tel"],
.form-wrap textarea,
.form-wrap .btn-select .customSelect {
	display: inline-block;
	box-sizing: border-box;
	background-color: #FFFFFF;
	border: 1px solid var(--color-border-dark);
	border-radius: 2px;
	width: 100%;
	height: 50px;
	padding: 10px 20px 11px;
	font-size: 16px;
	letter-spacing: 0.02em;
}

.form-estate .form-wrap .btn-select .customSelect {
	padding-left: 15px;
	font-size: 15px;
}

.form-wrap textarea {
	height: 400px;
	padding: 18px 20px;
}

::-webkit-input-placeholder { display: none; font-size: 0; }
:-moz-placeholder { display: none; font-size: 0; }
::-moz-placeholder { display: none; font-size: 0; }
:placeholder-shown { display: none; font-size: 0; }

.wpcf7-checkbox {
	position: relative;
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	width: 320px;
	margin-top: 10px;
	margin-bottom: 25px;
}

.wpcf7-checkbox .wpcf7-list-item,
.wpcf7-radio .wpcf7-list-item {
	display: block;
	width: 160px;
	margin-bottom: 8px;
	font-size: 16px;
	letter-spacing: 0.04em;
}

.wpcf7-checkbox .wpcf7-list-item:last-of-type {
	position: absolute;
	top: 0;
	right: -160px;
}

.wpcf7-checkbox .wpcf7-list-item input,
.wpcf7-radio .wpcf7-list-item input {
	margin-right: 10px;
	transform-origin: left center;
	transform: scale(1.1);
}

.wpcf7-radio {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}

.wpcf7-radio .wpcf7-list-item {
	width: auto;
	margin-right: 20px;
	margin-bottom: 15px;
}

.your-property {
	padding-top: 2px;
}

/* .form-wrap dd table
------------------------------------*/
.form-wrap dd table {
	width: 100%;
}

.form-wrap dd th {
	width: 90px;
	font-weight: normal;
	white-space: nowrap;
}

.form-wrap dd th,
.form-wrap dd th p {
	font-size: 16px;
}

.form-estate .form-wrap dd th {
	width: 75px;
}

.form-estate .form-wrap .your-date1 input,
.form-estate .form-wrap .your-date2 input,
.form-estate .form-wrap .your-date3 input {
	padding-right: 17px;
	padding-left: 17px;
	font-size: 15px;
}

.form-wrap dd td {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	padding-bottom: 15px;
}

.form-wrap dd td > p { width: 42.5%; }
.form-wrap .btn-select { width: 53.5%; }
.form-wrap .btn-select.wide { width: 100%; }

.form-wrap .btn-select > p {
	margin: 0;
}

/* date
------------------------------------*/
.form-wrap input[type="date"] {
	box-sizing: border-box;
	border: 1px solid var(--color-border-dark);
	border-radius: 2px;
	width: 100%;
	height: 50px;
	padding: 10px;
	font-size: 16px;
	letter-spacing: 0.04em;
}

/* .btn-select
------------------------------------*/
.btn-select {
	display: inline-block;
	position: relative;
	overflow: hidden;
	transition: .15s ease-out;
}

.btn-select:hover { opacity: 0.6; }

.btn-select select {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	cursor: pointer !important;
	width: 100% !important;
	height: 100% !important;
	z-index: 2;
}

.btn-select .customSelect {
	display: block;
	position: relative;
	box-sizing: border-box;
	width: 100%;
	font-size: 14px;
	text-align: left;
	letter-spacing: 0.04em;
}

.btn-select .customSelect .customSelectInner {
	box-sizing: border-box;
  border: 1px solid var(--color-line-navy);
  border-radius: 4px;
	width: 100% !important;
	/* transform-origin: right bottom; */
	/* transform: scale(0.75); */
}

.btn-select .customSelect:after {
	display: block;
	content: '';
	position: absolute;
	top: 21px;
	right: 15px;
	background: url(img/share/ico-arrow-down-s.svg) no-repeat;
	width: 16px;
	height: 8px;
}

/* .btn-submit
------------------------------------*/
.btn-submit {
	position: relative;
	display: block;
	margin: 50px 0 0 190px;
}

.btn-submit input {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: block;
	background: #000000;
	box-sizing: border-box;
	border: none;
	width: 100%;
	margin: 0;
	padding: 20px 0 20px;
	color: #FFFFFF;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0.12em;
	text-align: center;
	white-space: nowrap;
	transition: .15s ease-out;
}

.btn-submit input:hover { opacity: 0.7; }

/* error
------------------------------------*/
.form-wrap .txt-error,
.wpcf7-not-valid-tip,
.txt-response,
.wpcf7-response-output { display: block; }

.form-wrap .txt-error,
.wpcf7-not-valid-tip {
	margin: 10px 0 5px;
	padding: 0;
	color: var(--color-cyan);
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.06em;
}

.screen-reader-response { display: none; }

.txt-response,
.wpcf7-response-output {
	margin: 25px 0 0 190px;
	color: var(--color-cyan);
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: 0.06em;
}

.form-estate .txt-response,
.form-estate .wpcf7-response-output {
	margin-left: 160px;
}

.hidden-fields-container {
	border: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* .sec-privacy
------------------------------------*/
.sec-privacy {
	overflow: hidden;
	box-sizing: border-box;
	background-color: #F1F1F1;
	width: calc(100% - 190px);
	height: 420px;
	margin-left: 190px;
	padding: 10px;
}

.sec-privacy .inner {
	box-sizing: border-box;
	height: 100%;
	padding: 42px 40px 45px 40px;
	overflow-x: auto;
	position: relative;
}

.sec-privacy .inner::-webkit-scrollbar { width: 1px; }
.sec-privacy .inner::-webkit-scrollbar-track { background: #F1F1F1; }
.sec-privacy .inner::-webkit-scrollbar-thumb { background: var(--color-font); }

.sec-privacy h2 {
	margin-bottom: 12px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: 0.06em;
}

.sec-privacy p { margin-bottom: 10px; }

.sec-privacy p,
.sec-privacy li {
	font-size: 14px;
	line-height: 1.9;
	text-align: justify;
}

.sec-privacy dl { margin-top: 40px; font-size: 12px; }
.sec-privacy dl > div { margin-bottom: 60px; }
.sec-privacy dl > div:last-of-type { margin-bottom: 0; }

.sec-privacy dt {
	margin-bottom: 16px;
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: 0.06em;
}

.sec-privacy ul { margin: 15px 0 30px; }

.sec-privacy .list-dot li:before {
	width: 3px;
	height: 3px;
}


/* blog
---------------------------------------------------------------------------*/

/* .title-category
------------------------------------*/
.title-category {
	position: absolute;
	bottom: -140px;
	left: 5px;
	white-space: nowrap;
}

#blogContents.single .title-category {
	left: 0;
}

.title-category ul {
	display: -webkit-box;
	display: flex;
}

.title-category li {
	margin-right: 12px;
}

.title-category li:last-of-type {
	margin-right: 0;
}

.title-category li a {
	display: inline-block;
	position: relative;
	padding: 5px 5px 5px 17px;
	font-size: 13px;
	letter-spacing: 0.04em;
}

.title-category li a i {
	display: block;
	position: absolute;
	top: 6px;
	left: 0;
	background-color: #FFFFFF;
	border: 1px solid var(--color-border);
	border-radius: 50%;
	width: 9px;
	height: 9px;
}

.title-category li.current a i {
	background-color: #000000;
	border-color: #000000;
}

@media (max-width: 1380px) {
	.title-category li a {
		padding: 5px 2px 5px 14px;
		font-size: 12px;
	}
	.title-category li a i {
		top: 7px;
		width: 7px;
		height: 7px;
	}
}

/* .blog-list
------------------------------------*/
.blog-list {
	border-top: 1px solid var(--color-border);
}

.blog-list article {
	border-bottom: 1px solid var(--color-border);
}

.blog-list article > a {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	justify-content: space-between;
	box-sizing: border-box;
	width: 100%;
	padding: 30px 5px;
}

.blog-list article figure {
	width: 105px;
	min-width: 105px;
}

.blog-list article > a > div {
	box-sizing: border-box;
	width: 100%;
	padding: 0 0 8px 38px;
}

.blog-list article time,
.blog-title time,
.blog-list article .category,
.blog-title .category {
	display: inline-block;
	width: auto;
}

.blog-list article time,
.blog-title time {
	margin-right: 12px;
	font-size: 15px;
	letter-spacing: 0.06em;
}

.blog-list article .category,
.blog-title .category {
	transform: translateY(-1px);
}

.blog-list article .category span,
.blog-title .category span {
	display: inline-block;
	border: 1px solid var(--color-border-dark);
	border-radius: 2px;
	width: auto;
	padding: 2px 4px 2px 4px;
	font-size: 14px;
	letter-spacing: 0;
	white-space: nowrap;
}

.blog-list article .category span {
	margin-right: 6px;
}

.blog-title .category span {
	margin-left: 5px;
}

.blog-list article h2 {
	margin-top: 18px;
	font-size: 20px;
	letter-spacing: 0.03em;
}


/* blog single
---------------------------------------------------------------------------*/
.blog-area {
	border-top: 1px solid var(--color-border);
	padding-top: 25px;
}

/* .blog-title
------------------------------------*/
.blog-title {
	position: relative;
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	margin-bottom: 60px;
}

.blog-title > div {
	padding: 5px 5px 0 5px;
	text-align: right;
	white-space: nowrap;
}

.blog-title time {
	margin-right: 0;
	margin-left: 8px;
}

.blog-title h1 {
	padding-right: 30px;
	font-size: 22px;
	line-height: 1.6;
}

/* .blog-main
------------------------------------*/
.blog-main,
.blog-main p {
	font-size: 18px;
	line-height: 1.9;
	letter-spacing: 0.1em;
}

.blog-main p {
	margin-bottom: 20px;
	word-break: break-all;
	transform: scale(1);
}

.blog-main p:last-child { margin-bottom: 0; }
.blog-main a { text-decoration: underline; word-break: break-all; }
.blog-main strong { font-weight: bold; }
.blog-main em { font-style: italic; }
.blog-main del { text-decoration: line-through; }

.blog-main img {
	display: block;
	max-width: 100%;
	height: auto;
	padding: 20px 0;
}

.blog-main > img:first-child,
.blog-main > p:first-child img:first-child {
	padding-top: 0;
}

.blog-main img + img { margin-top: -20px; }
.blog-main img:last-child { padding-bottom: 40px; }
.blog-main .wp-caption { max-width: 100%; margin-bottom: 25px; }
.blog-main .wp-caption-text { margin-top: -5px; }

.blog-main ul,
.blog-main ol,
.blog-main blockquote {
	margin: 30px 0;
}

.blog-main ul li {
	list-style: disc;
	margin: 0 0 6px 25px;
}

.blog-main ol li {
	list-style: decimal;
	margin: 0 0 6px 25px;
}

.blog-main ul li:last-of-type,
.blog-main ol li:last-of-type { margin-bottom: 0; }

.blog-main blockquote {
	background: #F5F5F5;
	padding: 28px 35px;
}

/* .sec-table
------------------------------------*/
.sec-table {
	margin-top: 75px;
}

.sec-table h3 {
	margin-bottom: 22px;
	font-size: 18px;
	letter-spacing: 0.06em;
}

.blog-table {
	box-sizing: border-box;
	width: calc(100% + 10px);
	max-width: 700px;
	margin: 0 -5px 40px;
	font-size: 16px;
}

.blog-table tr {
	border-bottom: 1px solid var(--color-border-light);
}

.blog-table th,
.blog-table td {
	padding-top: 13px;
	padding-bottom: 12px;
}

.blog-table th {
	position: relative;
	box-sizing: border-box;
	width: 20%;
	padding-right: 15px;
	padding-left: 5px;
	font-weight: normal;
	text-align: left;
	vertical-align: top;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.blog-table td {
	box-sizing: border-box;
	width: 80%;
	padding-right: 5px;
	line-height: 1.6;
	letter-spacing: 0.06em;
}

/* .blog-link
------------------------------------*/
.blog-link {
	overflow: hidden;
	margin-top: 30px;
}

.blog-link li {
	float: left;
	margin: 0 14px 14px 0;
}

.blog-link li a {
	padding: 19px 19px 19px 20px;
	font-size: 15px;
	font-weight: normal;
}

/* .blog-other
------------------------------------*/
.blog-other {
	margin-top: 125px;
}

/* .blog-info-area
------------------------------------*/
.blog-info-area {
	margin: 70px auto 0;
}

.blog-info-area article {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	justify-content: space-between;
	border: 1px solid var(--color-border);
	padding: 40px;
}

.blog-info-area article:not(:last-child) {
	margin-bottom: 25px;
}

.blog-info-area figure {
	width: 160px;
	min-width: 160px;
	height: 160px;
}

.blog-info-area figure img {
	object-fit: cover;
	height: 100%;
}

.blog-info-area .txt {
	box-sizing: border-box;
	width: 100%;
	padding: 4px 0 0 44px;
}

.blog-info-area h2 {
	margin-bottom: 16px;
	font-size: 20px;
}

.blog-info-area address {
	font-size: 16px;
	line-height: 1.8;
}

.blog-info-area .sns {
	margin: 14px 0 0 -4px;
}

.blog-info-area .sns li {
	display: inline-block;
}

.blog-info-area .sns li a {
	display: block;
	padding: 2px;
}


/* .wp-pagenavi
---------------------------------------------------------------------------*/
.wp-pagenavi {
	overflow: hidden;
	width: 100%;
	margin-top: 130px;
	padding-bottom: 20px;
	text-align: center;
	font-size: 16px;
}

.wp-pagenavi .extend { display: none; }

.wp-pagenavi a {
	display: inline-block;
	margin: 0 2%;
	padding: 5px 10px;
}

.wp-pagenavi .current {
	display: inline-block;
	border-bottom: 1px solid var(--color-border-dark);
	margin: 0 3%;
	padding: 5px 2px 9px;
}

.wp-pagenavi a.first { margin-left: 0; margin-right: 4%; }
.wp-pagenavi a.last { margin-right: 0; margin-left: 4%; }

.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink {
	position: relative;
	background: url(img/share/ico-arrow-right.svg) no-repeat center center;
	background-size: 19px auto;
	padding-bottom: 6px;
	text-indent: -9999px;
}

.wp-pagenavi a.previouspostslink { margin-right: 4%; transform: scaleX(-1); }
.wp-pagenavi a.nextpostslink { margin-left: 4%; }

.wp-pagenavi a.previouspostslink:after,
.wp-pagenavi a.nextpostslink:after {
	display: block;
	content: '';
	position: absolute;
	bottom: -4px;
	background-color: var(--color-border-dark);
	width: 25px;
	height: 1px;
}

.wp-pagenavi a.previouspostslink:after { left: -2px; }
.wp-pagenavi a.nextpostslink:after { left: -3px; }


/* page top
---------------------------------------------------------------------------*/
#topContents,
body.top footer {
	border-left: 1px solid var(--color-border-dark);
}

/* .top-main
------------------------------------*/
.top-main {
	background-color: #FFFFFF;
	width: 100%;
	margin: 0 0 100px;
}

.top-main .slick-dots {
	display: none !important;
	position: absolute;
	bottom: 30px;
	right: 25px;
	z-index: 100;
}

.top-main .slick-dots li {
	position: relative;
	width: 20px;
	height: 20px;
}

.top-main .slick-dots li:first-of-type:last-of-type {
	display: none;
}

.top-main .slick-dots button {
	position: relative;
	width: 100%;
	height: 100%;
	text-indent: -9999px;
	transition: .15s ease-out;
}

.top-main .slick-dots button:after {
	display: block;
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	background: #FFFFFF;
	border-radius: 50%;
	width: 6px;
	height: 6px;
}

.slider .slick-dots button:hover:after,
.top-main .slick-dots .slick-active button:after {
	background: #000000;
}

.top-main .inner.border:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: var(--color-border-dark);
	width: 100%;
	height: 1px;
	z-index: 2;
}

.top-main .inner a {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
}

.top-main .inner a:hover {
	opacity: 0.8 !important;
}

.top-main .inner img {
	width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
}

.top-main .inner h2 {
	position: absolute;
	top: 53px;
	left: 64px;
	background-color: #FFFFFF;
	padding: 21px 12px 17px 12px;
	width: auto;
	font-size: 22px;
	letter-spacing: 0.15em;
	z-index: 1;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}

.top-main .inner h3 {
	position: absolute;
	bottom: 36px;
	left: 34px;
	width: auto;
	z-index: 1;
}

.top-main .inner h3 em,
.top-main .inner h3 strong {
	display: inline-block;
	box-sizing: border-box;
	background-color: #FFFFFF;
	padding: 11px 13px 10px 15px;
	white-space: nowrap;
}

.top-main .inner h3 em {
	margin-bottom: 13px;
	font-size: 16px;
}

.top-main .inner h3 strong {
	padding-top: 13px;
	padding-bottom: 12px;
	font-size: 20px;
}

.top-main .inner h3 strong img {
	display: inline-block !important;
	width: 234px !important;
	transform: translateY(-2px);
}

.top-main .inner h3 strong span {
	display: inline-block;
	padding-left: 11px;
	font-size: 13px;
	transform: translateY(-1px);
}

/* .top-lead
------------------------------------*/
.top-lead {
	position: relative;
	width: 570px;
	margin: 0 auto 120px;
}

.top-lead h2 {
	margin: 0 0 35px 5px;
	text-align: center;
}

.top-lead p {
	margin-bottom: 20px;
	font-size: 16px;
	line-height: 2.2;
	letter-spacing: 0.03em;
	text-align: justify;
}

.top-lead .pic {
	display: block;
	position: absolute;
	opacity: 0.8;
}

.top-lead .pic1 { top: 158px; left: -185px; }
.top-lead .pic2 { top: -3px; right: -159px; }
.top-lead .pic3 { top: 398px; right: -128px; }

.top-lead .profile {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	margin-top: 65px;
}

.top-lead .profile .inner {
	width: 260px;
}

.top-lead .profile figure {
	margin-bottom: 48px;
}

.top-lead .profile .inner > div {
	position: relative;
}

.top-lead .profile .sns {
	display: -webkit-box;
	display: flex;
	position: absolute;
	top: -8px;
	right: -4px;
	z-index: 1;
}

.top-lead .profile .sns a {
	display: block;
	padding: 4px 4px 4px 3px;
}

.top-lead .profile .sns img {
	width: 24px;
}

.top-lead .profile h3 {
	position: relative;
	margin-bottom: 18px;
	font-size: 18px;
	letter-spacing: 0.08em;
}

.top-lead .profile h3 b {
	display: block;
	position: absolute;
	top: -24px;
	left: 1px;
	font-size: 11px;
	font-weight: normal;
}

.top-lead .profile p {
	font-size: 13px;
	line-height: 1.85;
	letter-spacing: 0.02em;
	text-align: justify;
}

/* .top-estate
------------------------------------*/
.top-estate {
	margin-bottom: 120px;
}

.top-estate .estate-list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	padding: 0;
}

.top-estate .estate-list article {
	display: block;
	position: relative;
	width: 50%;
}

.top-estate .estate-list article:first-of-type:before,
.top-estate .estate-list article:nth-child(even):before {
	display: block;
	content: '';
	position: absolute;
	background-color: #FFFFFF;
	border-radius: 50%;
	width: 25px;
	height: 25px;
	z-index: 10;
}

.top-estate .estate-list article:first-of-type:before { top: -12px; right: -12px; }
.top-estate .estate-list article:nth-child(even):before { bottom: -12px; left: -12px; }

.top-estate .estate-list article:nth-child(odd):after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	background-color: var(--color-border-dark);
	width: 1px;
	height: 100%;
}

.top-estate .estate-list article a { padding: 30px 30px 30px 50px; }
.top-estate .estate-list article a span { padding-top: 3px; }

.top-estate .estate-list .area {
	top: 30px;
	left: 26px;
}

.top-estate .estate-list figure {
	width: 175px;
	min-width: 175px;
}

.top-estate .estate-list .price {
	right: 20px;
	font-size: 14px;
}

.top-estate .estate-list article h2 {
	font-size: 20px;
}

.top-estate .estate-list article p {
	font-size: 12px;
	letter-spacing: 0.02em;
}

.estate-list article p i { padding-right: 5px; }
.estate-list article p i:first-child { display: none; }

.top-estate .estate-list article .estate-point {
	margin-top: 7px;
}

@media (max-width: 1400px) {
	.top-estate .estate-list article a {
		padding-right: 30px;
		padding-left: 45px;
	}
	.top-estate .estate-list figure {
		width: 160px;
		min-width: 160px;
	}
	.top-estate .estate-list .area {
		top: 26px;
		left: 22px;
	}
	.top-estate .estate-list article h2 {
		font-size: 18px;
	}
}

/* .top-search
------------------------------------*/
.top-search,
.top-nav,
.top-blog {
	width: 824px;
	margin: 0 auto;
}

.top-search {
	box-sizing: border-box;
	background-color: #F3F3F3;
	margin-bottom: 120px;
	padding: 55px 42px 55px;
	text-align: center;
}

.top-search h2 {
	margin-bottom: 18px;
	font-size: 22px;
	letter-spacing: 0.06em;
}

.top-search h2 i {
	display: inline-block;
	margin-right: 12px;
	transform: translateY(-1px);
}

.top-search h2 + p span {
	line-height: 1;
}

.top-search-list {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	white-space: nowrap;
	margin-top: 38px;
}

.top-search-list a {
	display: block;
	box-sizing: border-box;
	height: 100%;
	padding: 20px;
}

.top-search-list .inner-main,
.top-search-list .inner-sub li {
	box-sizing: border-box;
	background-color: #FFFFFF;
	border: 1px solid rgba(0,0,0,0.5);
}

.top-search-list .inner-main {
	width: 23%;
	text-align: left;
}

.top-search-list .inner-main a {
	position: relative;
}

.top-search-list .inner-main time {
	font-size: 10px;
	line-height: 1.3;
}

.top-search-list .inner-main h3 {
	position: absolute;
	top: 24px;
	right: 20px;
	width: auto;
	font-size: 29px;
	letter-spacing: 0.1em;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}

.top-search-list .inner-main .cnt {
	position: absolute;
	bottom: 53px;
	left: 19px;
	font-size: 12px;
}

.top-search-list .inner-main .en {
	position: absolute;
	bottom: 18px;
	left: 18px;
}

.top-search-list .inner-sub {
	width: 47%;
	margin-left: 1%;
}

.top-search-list .inner-sub li {
	margin-bottom: 14px;
	font-size: 18px;
	letter-spacing: 0.06em;
}

.top-search-list .inner-sub li:last-of-type { margin-bottom: 0; }

/* .top-nav
------------------------------------*/
.top-nav {
	margin-bottom: 120px;
}

.top-nav-list {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
}

.top-nav-list .inner {
	width: 383px;
}

.top-nav-list figure {
	position: relative;
	margin-bottom: 35px;
}

.top-nav-list figure a {
	display: block;
	width: 383px;
	height: 383px;
}

.top-nav-list figure img {
	object-fit: cover;
	width: 100%;
	height: 100%;
	-webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
}

.top-nav-list .txt {
	padding: 0 10px;
}

.top-nav-list h2 {
	margin-bottom: 18px;
	font-size: 13px;
}

.top-nav-list h3 {
	margin-bottom: 30px;
	font-size: 16px;
	line-height: 1.85;
	letter-spacing: 0.06em;
	white-space: nowrap;;
}

.top-nav-list .btn-line a {
	display: inline-block;
	padding: 14px 22px 14px 24px;
	font-size: 14px;
}

@media (max-width: 1400px) {
	.top-lead {
		width: 550px;
		transform: translateX(5px);
	}
	.top-lead h2 img {
		width: 300px;
		height: auto;
	}
	.top-search,
	.top-nav,
	.top-blog {
		width: 760px;
	}
	.top-nav-list .inner {
		width: 352px;
	}
	.top-lead .pic1 {
		left: -150px;
	}
}


/* page estate
---------------------------------------------------------------------------*/
/*
body.estate:not(.estate-single) footer {
	display: none;
}
*/

/*
body.estate #mainContents:after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: -1px;
	background: var(--color-border);
	width: 1px;
	height: 100%;
	min-height: 100vh;
}
*/

#estateContents .slash {
	position: fixed;
	top: 0;
	left: 50%;
	width: 50%;
	height: 100vh;
}

#estateContents .slash img {
	width: 100%;
	height: 100%;
}

@media (max-width: 1240px) {
	body.estate #wrap { padding-left: 620px; }
	#estateContents .slash { left: 620px; width: 620px; }
}

/* .estate-nav
------------------------------------*/
.estate-nav {
	box-sizing: border-box;
	position: fixed;
	top: 0;
	left: 0;
/* 	background-color: #FFFFFF; */
/* 	border-right: 1px solid var(--color-border-dark); */
	width: 70px;
	height: 100vh;
	z-index: 101;
	opacity: 0;
}

.estate-nav:before {
	display: block;
	content: '';
	position: absolute;
	top: 90px;
	left: 10px;
	background: var(--color-border-dark);
	width: 50px;
	height: 1px;
}

.estate-nav .hover {
	height: 100%;
}

.estate-nav-btn {
	position: fixed;
	top: 0;
	left: 0;
	display: block;
	width: 70px;
	text-align: center;
	white-space: nowrap;
	z-index: 101;
	display: none;
	opacity: 0;
}

/*
body:not(.estate):not(.area-category) .estate-nav-btn {
	display: none;
}
*/

.estate-nav-btn .inner {
	padding: 30px 18px 35px;
}

.estate-nav-btn .inner > div {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	height: 8px;
	margin: 0 auto 10px;
}

.estate-nav-btn .inner > div > span {
	display: block;
	position: absolute;
	left: 0;
	background: #000000;
	width: 100%;
	height: 1px;
	transition: .1s ease-out;
}

.estate-nav-btn .inner > div > span:nth-of-type(1) { top: 0; }
.estate-nav-btn .inner > div > span:nth-of-type(2) { bottom: 0; }
.estate-nav-btn.on .inner > div > span:nth-of-type(1) { top: 3px; transform: rotate(15deg); }
.estate-nav-btn.on .inner > div > span:nth-of-type(2) { bottom: 4px; transform: rotate(-15deg); }

.estate-nav-btn .inner > span {
	display: block;
	line-height: 0;
}

.estate-nav .logo:before {
	display: block;
	content: '';
	position: absolute;
	top: 3px;
	left: -7px;
	background: var(--color-border-dark);
	width: 1px;
	height: 50px;
}

.estate-nav .logo {
	position: absolute;
	bottom: 200px;
	left: 36px;
	transform-origin: left center;
	transform: rotate(90deg);
}

.estate-nav .logo a {
	display: block;
	padding: 20px;
}

.estate-nav .logo img {
	width: auto;
	height: 10px;
}

/* .estate-list-wrap
------------------------------------*/
.estate-list-wrap,
.estate-list-wrap-line,
.area-map-wrap {
	position: fixed;
	top: 0;
	left: 70px;
	width: calc(50% - 70px);
	min-width: calc(620px - 70px);
	height: 100vh;
	z-index: 1;
	display: none;
	opacity: 0;
}

.estate-list-wrap,
.area-map-wrap {
	overflow-x: hidden;
}

body.estate .estate-list-wrap,
body.estate .estate-list-wrap-line {
	display: block;
}

.estate-list-wrap::-webkit-scrollbar { width: 1px; }
.estate-list-wrap::-webkit-scrollbar-track { border-radius: 0; background: var(--color-border-dark); }
.estate-list-wrap::-webkit-scrollbar-thumb { border-radius: 0; background: var(--color-border); }

.estate-list-wrap-line {
	z-index: 0;
}

.estate-list-wrap-line:after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	background: var(--color-border);
	width: 1px;
	height: 100%;
	min-height: 100vh;
}

.estate-list-wrap .inner > h2 {
	padding: 31px 0;
	font-size: 26px;
	text-align: center;
}

.estate-list-wrap .inner > h2 span {
	display: inline-block;
	overflow: hidden;
	width: 0;
	height: 0;
	transition: .4s ease-in-out .2s;
	opacity: 0;
}

#wrap.estate.index .estate-list-wrap .inner > h2 .all,
#wrap.pet-ok .estate-list-wrap .inner > h2 .pet,
#wrap.office .estate-list-wrap .inner > h2 .office,
#wrap.shop .estate-list-wrap .inner > h2 .shop,
#wrap.rent .estate-list-wrap .inner > h2 .rent {
	display: inline-block;
	width: auto;
	height: auto;
	opacity: 1;
}

/* .estate-list
------------------------------------*/
.estate-list {
	position: relative;
	padding: 0 20px;
}

.estate-list:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	background: var(--color-border-dark);
	width: 100%;
	height: 1px;
}

body.estate .estate-list:after {
	left: 20px;
	width: calc(100% - 40px);
}

.estate-list article { border-top: 1px solid var(--color-border-dark); }
.estate-list article { display: none; }

#wrap.estate.index .estate-list article:not(.rent),
#wrap.pet-ok .estate-list article.pet-ok:not(.rent),
#wrap.office .estate-list article.office:not(.rent),
#wrap.shop .estate-list article.shop:not(.rent),
#wrap.rent .estate-list article.rent {
	display: block;
}

.estate-list article a {
	position: relative;
	box-sizing: border-box;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	width: 100%;
	padding: 25px 25px 25px 32px;
}

.estate-list figure {
	position: relative;
	overflow: hidden;
	align-self: flex-start;
	width: 195px;
	min-width: 195px;
}

.estate-list .rent figure:before,
.estate-list .rent figure:after {
	display: block;
	content: '';
	position: absolute;
	top: 50%;
	background: rgba(255,255,255,0.6);
	width: 200%;
	height: 1px;
	z-index: 2;
}

.estate-list .rent figure:before { left: -49%; transform: rotate(35deg); }
.estate-list .rent figure:after { left: -50.5%; transform: rotate(-35deg); }

.estate-list figure .mask {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.2);
	width: 100%;
	height: 100%;
	z-index: 1;
	opacity: 0;
}

.estate-list .rent figure .mask {
	opacity: 1;
}

.estate-list figure img {
	position: relative;
}

.estate-list .area {
	position: absolute;
	top: 24px;
	left: 10px;
	letter-spacing: 0.08em;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}

.estate-list .price {
	position: absolute;
	top: 18px;
	right: 14px;
	width: auto;
	font-size: 16px;
}

.estate-list .rent .price {
	display: none;
}

.estate-list .ico-rent {
	display: inline-block;
	position: absolute;
	top: 22px;
	right: 14px;
	width: auto;
	font-size: 13px;
	display: none;
}

.estate-list .ico-rent:after {
	display: block;
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
	border-bottom: 1px solid var(--color-border-dark);
	width: 100%;
	height: 1px;
}

.estate-list .rent .ico-rent {
	display: block;
}

.estate-list article a > span {
	box-sizing: border-box;
	width: 100%;
	padding: 5px 0 0 25px;
}

.estate-list article h2 {
	margin-bottom: 6px;
	font-size: 22px;
	/* font-weight: 600; */
	line-height: 1.4;
	letter-spacing: 0.03em;
}

.estate-list article p {
	margin-bottom: 5px;
	margin-left: 1px;
	font-size: 15px;
	line-height: 1.6;
	letter-spacing: 0.04em;
}

.estate-list article p:first-of-type {
	margin: 0 0 8px 1px;
	/* color: #626262; */
	font-size: 13px;
	line-height: 1;
}

@media (max-width: 1400px) {
	.estate-list article p:first-of-type { font-size: 12px; }
	.estate-list article h2 { font-size: 20px; }
	.estate-list .price { font-size: 13px; }
	.estate-list article p { font-size: 13px; }
}


/* page estate single
---------------------------------------------------------------------------*/

/* .estate-post
------------------------------------*/
#estateContents:not(.single) .estate-post {
	opacity: 0;
}

.estate-post {
	position: relative;
	background-color: #FFFFFF;
	padding: 75% 28px 28px 28px;
}

.estate-post .slider-wrap {
	position: absolute;
	top: 28px;
	left: 28px;
	width: calc(100% - 56px);
}

.estate-post .slick-slider .slick-track,
.estate-post .slick-slider .slick-list {
	width: 100% !important;
}

.estate-post .slider .inner {
	box-sizing: border-box;
	position: relative !important;
	left: 0 !important;
	overflow: hidden;
	width: 100%;
	padding-bottom: 66.2%;
}

.estate-post .slider .inner:not(:nth-of-type(1)) {
	position: absolute !important;
}

.estate-post .slider .inner img {
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

/* .estate-title
------------------------------------*/
.estate-title,
.estate-detail .txt {
	padding: 0 40px;
}

.estate-title {
	position: relative;
	margin-bottom: 60px;
	padding-top: 24px;
}

.estate-title time {
	display: block;
	margin: 0 0 8px 1px;
	font-size: 13px;
	letter-spacing: 0.05em;
}

.estate-title h1 {
	margin: 0 0 14px -1px;
	font-size: 28px;
	line-height: 1.5;
	/* font-weight: 600; */
}

.estate-title h1 .rent {
	display: none;
}

.estate-post.rent .estate-title h1 .rent {
	display: inline-block;
	position: relative;
	font-size: 13px;
	font-weight: normal;
	transform: translateY(-3px);
}

.estate-post.rent .estate-title h1 .rent.line:after {
	bottom: 4px;
}

.estate-title p {
	margin-bottom: 0px;
	font-size: 18px;
	letter-spacing: 0.04em;
}

.estate-title p i { padding: 0 6px; }
.estate-title p i:first-child { display: none; }

.estate-post.rent .estate-title .price {
	display: inline-block;
	position: relative;
}

.estate-post.rent .estate-title .price:before {
	display: block;
	content: '';
	position: absolute;
	top: 14px;
	left: 0;
	background: #000000;
	width: 100%;
	height: 1px;
}

.estate-title .estate-point {
	position: absolute;
	top: 0;
	right: 6%;
}

.estate-point > div {
	display: inline-block;
	margin-top: 6px;
	margin-right: 8px;
}

.estate-point div > span {
	display: inline-block;
	border: 1px solid var(--color-border-dark);
	border-radius: 12px;
	width: auto;
	padding: 3px 6px 3px 6px;
	font-size: 12px;
}

.estate-title .estate-point > div {
	margin-right: 0;
	margin-left: 10px;
}

.estate-title .estate-point div > span {
	font-size: 14px;
}

/* .estate-detail
------------------------------------*/
.estate-detail .txt {
	margin-bottom: 80px;
}

.estate-detail .txt h3 {
	margin-bottom: 24px;
	font-size: 22px;
	line-height: 1.6;
	/* font-weight: 600; */
	letter-spacing: 0.04em;
}

.estate-detail .txt p {
	margin-bottom: 18px;
	font-size: 16px;
	text-align: justify;
}

/*
.estate-detail .txt br {
	display: none;
}
*/

/* .gallery
------------------------------------*/
.gallery {
	margin-bottom: 60px;
	padding: 0 35px;
}

.gallery-list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}

.gallery-list li {
	position: relative;
	width: calc((100% - 48px) / 5);
	margin: 0 12px 12px 0;
}

.gallery-list li:nth-of-type(5n) {
	margin-right: 0;
}

.gallery-list li a {
	display: block;
	position: relative;
	z-index: 1;
}

.gallery-list li:not(.noimg) a:before {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	border: 1px solid var(--color-border-dark);
	width: calc(100% - 2px);
	height: calc(100% - 2px);
}

/* .spec
------------------------------------*/
.spec,
.estate-map,
.detail-list {
	padding: 0 42px;
}

.spec {
	margin-bottom: 90px;
}

.spec-list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}

.spec-list li {
	position: relative;
	box-sizing: border-box;
	width: 30%;
	margin: 0 5% 16px 0;
	padding-left: 18px;
	font-size: 15px;
	line-height: 1.3;
	white-space: nowrap;
}

.spec-list li:nth-of-type(3n-2) { width: 26%; }
.spec-list li:nth-of-type(3n-1) { width: 34%; }
.spec-list li:nth-of-type(3n) { margin-right: 0; }

.spec-list li:before {
	display: block;
	content: '';
	position: absolute;
}

.spec-list li.on:before {
	background: url(img/share/ico-circle-s.svg) no-repeat;
	background-size: 100% auto;
	top: 4px;
	left: 0;
	width: 10px;
	height: 11px;
}

.spec-list li.off:before {
	background: url(img/share/ico-close-s.svg) no-repeat;
	background-size: 100% auto;
	top: 6px;
	left: 0;
	width: 10px;
	height: 10px;
}

/* .estate-map
------------------------------------*/
.estate-map {
	margin-bottom: 75px;
}

.estate-map iframe {
	width: 100%;
	height: 390px;
	margin-bottom: 30px;
}

.estate-map .inner {
	position: relative;
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
}

.estate-map .address {
	padding-right: 60px;
}

.estate-map address {
	display: block;
	margin-bottom: 16px;
	font-size: 16px;
	line-height: 1.5;
	white-space: nowrap;
}

.estate-map address span {
	display: block;
	margin-bottom: 5px;
	font-size: 13px;
	letter-spacing: 0.06em;
}

.estate-map .link a {
	font-size: 16px;
}

.estate-map .route {
	align-self: flex-start;
	position: relative;
	margin-top: 1px;
	padding: 0 0 0 32px;
}

.estate-map .route:before {
	display: block;
	content: '';
	position: absolute;
	top: -5px;
	left: 0;
	background: var(--color-border-light);
	width: 1px;
	height: calc(100% + 10px);
}

.estate-map .route > div {
	position: relative;
	margin-bottom: 10px;
	padding-left: 32px;
	font-size: 14px;
	line-height: 1.6;
}

.estate-map .route > div:last-of-type {
	margin-bottom: 0;
}

.estate-map .route > div i {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}

.estate-map .route > div span {
	display: inline-block;
}

.estate-map .route > div.train i { top: 1px; left: 0; }
.estate-map .route > div.bus i { top: -1px; left: 2px; }
.estate-map .route > div.train i img { width: 17px; height: auto; }
.estate-map .route > div.bus i img { width: 13px; height: auto; }

/* .detail-list
------------------------------------*/
.detail-list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	max-width: 640px;
}

.detail-list > div {
	display: -webkit-box;
	display: flex;
	box-sizing: border-box;
	border-left: 1px solid var(--color-border-dark);
	width: 45%;
	padding: 0 0 12px 10px;
	font-size: 15px;
	line-height: 1.6;
}

.detail-list > div:nth-child(odd) {
	width: 55%;
	padding-right: 25px;
}

.detail-list > div:last-of-type {
	padding-bottom: 0;
}

.detail-list dt {
	width: 120px;
	min-width: 120px;
}

.detail-list + .attention {
	max-width: 640px;
	margin: 20px auto 0;
	padding: 0 42px;
}

.detail-list + .attention p {
	font-size: 13px;
	text-align: justify;
}

/* .form-estate
------------------------------------*/
.form-estate {
	margin: 75px auto 0;
	padding: 0 70px;
}

.form-estate > h2 {
	margin-bottom: 35px;
	font-size: 20px;
	line-height: 1.8;
	letter-spacing: 0.02em;
}

.form-estate .form-wrap dt {
	width: 160px;
}

.form-estate .form-wrap dd,
.form-estate .sec-privacy {
	width: calc(100% - 160px);
}

.form-estate .sec-privacy {
	margin-left: 160px;
}

.form-estate .btn-submit {
	margin-left: 160px;
}

@media (max-width: 1440px) {
	.form-estate .wpcf7-checkbox .wpcf7-list-item:last-of-type {
		position: static;
	}
}

@media (max-width: 1300px) {
	.form-estate {
		padding: 0 60px;
	}
	.form-estate > h2 {
		font-size: 17px;
	}
	.form-estate .form-wrap dt {
		width: 145px;
	}
	.form-estate .form-wrap dd,
	.form-estate .sec-privacy {
		width: calc(100% - 145px);
	}
	.form-estate .sec-privacy,
	.form-estate .btn-submit {
		margin-left: 145px;
	}
	.form-estate .form-wrap input[type="text"],
	.form-estate .form-wrap input[type="email"],
	.form-estate .form-wrap input[type="tel"],
	.form-estate .form-wrap textarea {
		padding-right: 14px;
		padding-left: 14px;
		font-size: 14px;
	}
	.form-estate .form-wrap .btn-select .customSelect {
		padding-right: 12px;
		padding-left: 12px;
		font-size: 14px;
	}
	.form-estate .form-wrap .btn-select {
		white-space: nowrap;
		letter-spacing: 0;
	}
	.form-estate .btn-select .customSelect:after {
		top: 21px;
		right: 11px;
		background-size: 100% auto;
		width: 14px;
		height: 8px;
	}
	.form-estate .form-wrap input[type="date"] {
		padding-top: 11px;
		padding-bottom: 12px;
		font-size: 14px;
	}
	.form-estate .form-wrap dd th {
		width: 75px;
	}
	.form-estate .sec-privacy {
		height: 360px;
	}
	.form-estate .sec-privacy .inner {
		padding: 32px 30px 35px 30px;
	}
	.form-estate .sec-privacy h2,
	.form-estate .sec-privacy p,
	.form-estate .sec-privacy li {
		font-size: 14px;
	}
	.sec-privacy dl {
		margin-top: 45px;
	}
	.sec-privacy dl > div {
		margin-bottom: 50px;
	}
	.form-estate .form-wrap {
		margin-bottom: 35px;
	}
	.form-estate .btn-submit {
		margin-top: 40px;
	}
}

/* .estate-area
------------------------------------*/
.estate-area {
	margin-top: 150px;
	padding: 0 4%;
}

.estate-area > h2 {
	margin-bottom: 60px;
	text-align: center;
}

.estate-area > h2 strong {
	display: block;
	margin-bottom: 22px;
	font-size: 24px;
	letter-spacing: 0.08em;
}

.estate-area > h2 em {
	display: block;
	font-size: 14px;
	letter-spacing: 0.02em;
}

/* .area-list
------------------------------------*/
.area-list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}

.area-list article {
	position: relative;
	box-sizing: border-box;
	border: 1.5px solid var(--color-border-dark);
	width: 48%;
	margin: 0 4% 4.5% 0;
	border-radius: 9px;
}

.area-list article:nth-child(even) { margin-right: 0; }

.area-list article .inner {
	display: block;
	box-sizing: border-box;
	height: 100%;
	padding: 32px 26px 90px;
}

.area-list figure {
	margin-bottom: 32px;
}

.area-list .txt {
	padding: 0 5px;
}

.area-list .genre {
	margin-bottom: 14px;
	font-size: 11px;
	letter-spacing: 0.04em;
}

.area-list h3 {
	margin-bottom: 20px;
	font-size: 20px;
	letter-spacing: 0.02em;
	line-height: 1.6;
}

.area-list p {
	line-height: 1.9;
	text-align: justify;
}

@media (max-width: 1400px) {
	.area-list article .inner {
		padding: 22px 22px 84px;
	}
	.area-list figure {
		margin-bottom: 28px;
	}
	.area-list .txt {
		padding: 0 3px;
	}
	.area-list h3 {
		margin-bottom: 18px;
		font-size: 18px;
	}
	.area-list p {
		font-size: 13px;
		line-height: 1.85;
	}
}

/* .area-btm
------------------------------------*/
.area-btm {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	justify-content: space-between;
	box-sizing: border-box;
	border-top: 1.5px solid var(--color-border-dark);
	position: absolute;
	bottom: 0;
	left: 12px;
	width: calc(100% - 24px);
	min-height: 56px;
	padding: 10px 5px 10px;
}

.area-btm address {
	order: 1;
	position: relative;
	width: auto;
	padding: 0 20px 0 0;
	line-height: 1.4;
}

.area-btm address:after {
	display: block;
	content: '';
	position: absolute;
	top: -5px;
	right: 0;
	background: var(--color-border-dark);
	width: 1.5px;
	height: calc(100% + 10px);
}

.area-btm address a {
	display: inline;
}

.area-btm address a.line:after {
	background: #000000;
}

.area-btm .share {
	order: 2;
	min-width: 100px;
	margin: -2px -4px 0 0;
	text-align: right;
}

.area-btm .share li {
	display: inline-block;
	margin-left: -7px;
}

.area-btm .share li a {
	display: inline-block;
	padding: 5px;
}

.area-btm .share li a img {
	width: 26px;
	height: auto;
}


/* page sales
---------------------------------------------------------------------------*/

/* .sales-list
------------------------------------*/
.sales-list article { margin-bottom: 80px; }
.sales-list article:last-of-type { margin-bottom: 0; }
.sales-list article > a { display: block; }

.sales-list figure {
	position: relative;
	margin-bottom: 42px;
}

.sales-list figure:before {
	display: none;
	content: '';
	position: absolute;
	top: 0;
	left: 1px;
	background-image: linear-gradient(180deg, rgba(0,0,0,0.35) 0%, rgba(0,0,0,0.35) 100%);
	width: 100%;
	height: 100%;
	z-index: 1;
}

.sales-list .sold figure:before { display: block; }
.sales-list .sold figure img { filter: saturate(0); }

.sales-list figure + div {
	position: relative;
	padding-right: 130px;
}

.sales-list h3 {
	margin-bottom: 10px;
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.sales-list h2 {
	font-size: 24px;
	line-height: 1.6;
	letter-spacing: 0.06em;
}

.sales-list .kurasukoto h2 {
	transform: translateY(-6px);
}

.sales-list .kurasukoto h2 img {
	width: 314px;
	height: auto;
}

.sales-list .kurasukoto h2 span {
	display: inline-block;
	margin-left: 12px;
	font-size: 18px;
	transform: translateY(7px);
}

.sales-list i {
	display: none;
	position: absolute;
	top: -4px;
	right: 20px;
	box-sizing: border-box;
	border: 1px solid var(--color-border);
	border-radius: 50%;
	width: 81px;
	height: 81px;
}

.sales-list .sold i { display: block; }

.sales-list i span {
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: auto;
	font-size: 11px;
	letter-spacing: 0.06em;
	white-space: nowrap;
}


/* page area
---------------------------------------------------------------------------*/

/* .area-title
------------------------------------*/
.area-title { margin: 0 auto 140px; }
.area-title:last-of-type { margin-bottom: 0; }

.area-title figure {
	margin-bottom: 50px;
}

.area-title .txt {
	padding: 0 40px;
}

.area-title h2 {
	margin-bottom: 35px;
	font-size: 28px;
	letter-spacing: 0.12em;
	text-align: center;
}

.area-title h2 em { display: none; }
.area-title h2 strong { padding-left: 0.5em; font-weight: 400; }

.area-title p {
	font-size: 16px;
	line-height: 2;
	letter-spacing: 0.06em;
	text-align: justify;
}

.area-title .btn-line {
	margin-top: 45px;
}

.area-title .btn-line a {
	width: var(--scaleWidth);
}

.area-title .cnt {
	margin-top: 30px;
	font-size: 16px;
	letter-spacing: 0.04em;
}


/* page area category
---------------------------------------------------------------------------*/

/* #areaContents.category .area-title
------------------------------------*/
#areaContents.category .area-title,
#areaContents.single .area-title { margin-bottom: 75px; }
#areaContents.category .area-title figure,
#areaContents.single .area-title figure { margin-bottom: 65px; }
#areaContents.category .area-title figure a,
#areaContents.single .area-title figure a { pointer-events: none; }
#areaContents.category .area-title figure img,
#areaContents.single .area-title figure img { border: none; }
#areaContents.category .area-title .btn-line,
#areaContents.single .area-title .btn-line { display: none; }
#areaContents.category .area-title .txt,
#areaContents.single .area-title .txt { padding: 0 9.5%; }

#areaContents.category .area-list-wrap,
#areaContents.single .area-list-wrap { padding: 0 6%; }
#areaContents.category .area-estate-list,
#areaContents.single .area-estate-list { margin-top: 150px; padding: 0 2%; }
#areaContents.category .area-estate-list > h2,
#areaContents.single .area-estate-list > h2 { margin-left: 35px; }
#areaContents.category .estate-list article,
#areaContents.single .estate-list article { display: block; }


/* .area-map
---------------------------------------------------------------------------*/
.area-map-wrap { display: block; opacity: 1; }
.area-map-wrap .close { display: none; }
	
.area-map > div > div > div > div > div > div > div {
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%);
}
.area-map .no-fill { filter: none !important; }

.area-map { box-sizing: border-box; width: 100%; height: 100%; }
.area-map .marker { opacity: 0; }

.iw-wrap:after {
	display: block;
	content: '';
	position: absolute;
	bottom: -12px;
	left: 50%;
	background: #FFFFFF;
	width: 16px;
	height: 16px;
	margin: 0 0 0 -8px;
	transform: rotate(45deg);
}

.gm-style-iw {
	border-radius: 5px !important;
	background-color: #FFFFFF !important;
	top: -10px !important;
}

.gm-style-iw-c {
	background-color: #FFFFFF !important;
	border-radius: 4px !important;
	padding: 0 !important;
	top: -6px !important;
	left: -30px !important;
	transform: translate(0,-100%) !important;
	box-shadow: none !important;
	border: 1px solid var(--color-border-dark) !important;
}

.gm-style-iw-t:before,
.gm-style-iw-t::after {
	background: none !important;
	display: block;
	content: '';
	position: absolute;
	top: inherit !important;
	left: 0 !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	border-style: solid !important;
	border-width: 20px 7px 0 !important;
	transform: translate(-50%,-50%) !important;
	box-shadow: none !important;
}

.gm-style-iw-t:before { bottom: -14px !important; border-color: #FFFFFF transparent transparent transparent !important; z-index: 1; }
.gm-style-iw-t::after { bottom: -17px !important; border-color: var(--color-border-dark) transparent transparent transparent !important; z-index: -1; }
.gm-style-iw-d { overflow: hidden !important; }

.gm-ui-hover-effect {
	top: -1px !important;
	right: -2px !important;
	transition: .15s ease-out !important;
	opacity: 1 !important;
}

.gm-ui-hover-effect:hover { opacity: 0.5 !important; }
.gm-ui-hover-effect img { display: none !important; }

/*
.gm-ui-hover-effect:before {
	display: block;
	content: '';
	position: absolute;
	top: 14px;
	left: 11px;
	background: url(img/share/btn-close-modal.svg) no-repeat !important;
	background-size: 9px 8px;
	width: 9px;
	height: 8px;
}
*/

.gm-style-iw a.map-balloon {
	font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
	display: block;
	padding: 6px 25px 6px 10px;
	color: #1A1A41;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.4;
	letter-spacing: 0.1em;
	cursor: pointer;
}

.gm-style-iw a.map-balloon:hover { opacity: 0.5; }
.area-map .btn-close img { display: none; }
.gm-style .gm-style-iw-tc { display: none !important; }

/* page leasing
---------------------------------------------------------------------------*/
#leasingContents.archive {
	max-width: 1070px;
	padding-left: 50px;
}

.leasing-top {
	width: 770px;
	margin: 0 auto;
}

/* .leasing-slide
------------------------------------*/
.leasing-slide-wrap {
	width: 850px;
	margin: 0 auto 110px;
	padding-top: 40px;
}

.leasing-slide {
	position: relative;
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
}

.leasing-slide .inner {
	width: 412px !important;
	margin: 0 26px 0 0 !important;
}

.leasing-slide .inner a {
	display: block;
	position: relative;
	overflow: hidden;
	border-radius: 3px;
}

.leasing-slide .inner a:hover {
	opacity: 0.8 !important;
}

.leasing-slide .inner a:before {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	border: 1px solid var(--color-border-dark);
	border-radius: 3px;
	width: calc(100% - 2px);
	height: calc(100% - 2px);
	z-index: 2;
}

.leasing-slide figure {
	position: relative;
	z-index: 0:
}

.leasing-slide figure:before {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background-image: linear-gradient(225deg, rgba(255,249,199,0.00) 0%, rgba(45,80,69,0.40) 100%);
	width: 100%;
	height: 100%;
	z-index: 1;
}

.leasing-slide .txt {
	position: absolute;
	bottom: 32px;
	left: 30px;
	color: #FFFFFF;
	white-space: nowrap;
	z-index: 3;
}

.leasing-slide .txt h3 {
	margin-bottom: 12px;
	font-size: 22px;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0.06em;
}

.leasing-slide .txt h2 {
	font-size: 16px;
}

.leasing-slide .txt h2 span {
	font-size: 11px;
}

.leasing-slide .slick-arrow {
	position: absolute;
	top: 50%;
	z-index: 100;
	background: url(img/share/btn-arrow-slide.svg) no-repeat center center;
	width: 51px;
	height: 51px;
	margin-top: -26px;
	text-indent: -9999px;
}

.leasing-slide .slick-prev { left: -26px; transform: scaleX(-1); }
.leasing-slide .slick-next { right: -26px; }

/* .leasing-concept
------------------------------------*/
.leasing-concept {
	margin-bottom: 160px;
}

.leasing-concept .txt {
	white-space: nowrap;
}

.leasing-concept .txt h1 {
	margin-bottom: 28px;
}

.leasing-concept .txt h1 em {
	display: block;
	margin-bottom: 24px;
	font-size: 16px;
}

.leasing-concept .txt h1 strong {
	display: block;
	margin-left: -1px;
	font-size: 26px;
	/* font-weight: 600; */
	line-height: 1.7;
	letter-spacing: 0.03em;
}

.leasing-concept .txt p {
	font-size: 17px;
	line-height: 2.1;
	letter-spacing: 0.04em;
}

/* .leasing-target
------------------------------------*/
.leasing-target {
	margin-bottom: 120px;
}

.leasing-target .inner {
	display: -webkit-box;
	display: flex;
	margin-bottom: 55px;
}

.leasing-target .inner:last-of-type {
	margin-bottom: 0;
}

.leasing-target h2 {
	position: relative;
	width: 240px;
	min-width: 240px;
	padding-top: 8px;
	font-size: 16px;
	white-space: nowrap;
}

.leasing-target h2 i {
	display: block;
	position: absolute;
	top: -36px;
	left: -3px;
}

.leasing-target h2 span {
	display: inline-block;
	margin-bottom: 13px;
}

.leasing-target p {
	font-size: 16px;
	line-height: 2.1;
	text-align: justify;
}

/* .leasing-flow
------------------------------------*/
.leasing-flow {
	margin-bottom: 120px;
}

.leasing-flow dl {
	position: relative;
	margin-left: 2px;
	z-index: 0;
}

.leasing-flow dl:before {
	display: block;
	content: '';
	position: absolute;
	top: 13px;
	left: 3px;
	border-left: 1px dotted var(--color-border);
	width: 1px;
	height: calc(100% - 76px);
}

.leasing-flow dl > div {
	display: -webkit-box;
	display: flex;
	margin-bottom: 30px;
}

.leasing-flow dl > div:last-of-type {
	margin-bottom: 0;
}

.leasing-flow dt {
	position: relative;
	box-sizing: border-box;
	width: 160px;
	min-width: 160px;
	padding: 3px 0 0 25px;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0.04em;
	z-index: 1;
}

.leasing-flow dt:before {
	display: block;
	content: '';
	position: absolute;
	top: 11px;
	left: 0;
	border-radius: 50%;
	background-color: #FFFFFF;
	border: 1px solid var(--color-border-dark);
	width: 5px;
	height: 5px;
}

.leasing-flow dd p {
	line-height: 1.9;
	letter-spacing: 0.04em;
}

/* .leasing-works
------------------------------------*/
.leasing-works > h2 {
	margin-bottom: 30px;
}

.leasing-list {
	border-top: 1px solid var(--color-border);
	margin: 0 -8px;
}

.leasing-list article {
	border-bottom: 1px solid var(--color-border);
}

.leasing-list article a {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	padding: 25px 25px 25px 35px;
}

.leasing-list figure {
	order: 2;
	width: 185px;
	min-width: 185px;
}

.leasing-list .txt {
	order: 1;
	padding: 13px 0 0;
	white-space: nowrap;
}

.leasing-list h3 {
	margin-bottom: 26px;
}

.leasing-list h3 span {
	box-sizing: border-box;
	border: 1px solid var(--color-border-dark);
	border-radius: 20px;
	width: auto;
	margin-left: -1px;
	padding: 3px 5px 3px 6px;
	font-size: 11px;
	font-weight: 600;
}

.leasing-list h2 strong {
	display: block;
	margin-bottom: 16px;
	font-size: 20px;
	letter-spacing: 0.08em;
}

.leasing-list h2 em {
	display: block;
	font-size: 15px;
}

.leasing-list h2 em span {
	font-size: 11px;
}

@media (max-width: 1400px) {
	#leasingContents.archive {
		padding-right: 60px;
		padding-left: 70px;
	}
	.leasing-slide-wrap {
		width: 780px;
		margin-left: -20px;
	}
	.leasing-slide .inner {
		width: 380px !important;
		margin: 0 20px 0 0 !important;
	}
	
	.leasing-target p {
		width: calc(100% - 280px);
	}
	.leasing-flow dd p {
		width: calc(100% - 40px);
	}
}


/* page leasing single
---------------------------------------------------------------------------*/
.leasing-img {
	display: none;
}

/* .leasing-title
------------------------------------*/
.leasing-title {
	margin-bottom: 45px;
}

.leasing-title h1 {
	position: relative;
	padding-left: 80px;
}

.leasing-title h1 i {
	display: block;
	position: absolute;
	top: 6px;
	left: 0;
	border-bottom: 1px solid var(--color-border-dark);
	width: 40px;
	padding-bottom: 2px;
	line-height: 0;
}

.leasing-title h1 strong {
	display: block;
	margin-bottom: 20px;
	font-size: 26px;
	letter-spacing: 0.06em;
}

.leasing-title h1 em {
	display: block;
	font-size: 14px;
}

/* .leasing-lead
------------------------------------*/
.leasing-lead {
	margin-bottom: 130px;
}

.leasing-lead figure {
	margin-bottom: 48px;
}

.leasing-lead .txt {
	position: relative;
	box-sizing: border-box;
	width: calc(100% - 48px);
	margin: 0 auto;
	padding: 0 40px;
}

.leasing-lead .txt:before,
.leasing-lead .txt:after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	background-color: var(--color-border-dark);
	width: 1px;
	height: calc(100%);
}

.leasing-lead .txt:before { left: 0; }
.leasing-lead .txt:after { right: 0; }

.leasing-lead .txt p {
	font-size: 16px;
	line-height: 2.2;
	text-align: justify;
}

.leasing-lead .name {
	margin: 26px 0 0 18px;
	letter-spacing: 0.04em;
}

.leasing-lead .name i:first-of-type { padding: 0 3px; }
.leasing-lead .name i:not(:first-of-type) { padding: 0 2px; }

/* .leasing-common
------------------------------------*/
.leasing-common {
	margin-bottom: 120px;
}

.leasing-common figure {
	position: relative;
	margin-bottom: 75px;
}

.leasing-common figure + figure {
	margin-top: -55px;
}

.leasing-common figcaption {
	display: inline-block;
	position: absolute;
	bottom: 20px;
	left: 20px;
	background-color: #FFFFFF;
	width: auto;
	padding: 4px 5px 4px 6px;
	font-size: 13px;
}

.leasing-common dl {
	padding: 0 45px 0 120px;
}

.leasing-common dl > div { margin-bottom: 50px; }
.leasing-common dl > div:last-child { margin-bottom: 0; }

.leasing-common dt {
	position: relative;
	margin-bottom: 42px;
	color: var(--color-cyan);
	font-size: 16px;
	line-height: 1.8;
}

.leasing-common dt:before {
	display: block;
	content: '';
	position: absolute;
	top: 14px;
	left: -68px;
	background-color: var(--color-cyan);
	width: 34px;
	height: 1px;
}

.leasing-common dd {
	position: relative;
	margin-bottom: 20px;
}

.leasing-common dd:last-child {
	margin-bottom: 0;
}

.leasing-common dd .name {
	position: absolute;
	top: 5px;
	left: -120px;
	width: 85px;
	font-size: 16px;
	line-height: 1.6;
	text-align: right;
	white-space: nowrap;
}

.leasing-common dd p {
	font-size: 16px;
	line-height: 2.2;
	text-align: justify;
}

.leasing-common dd blockquote {
	display: -webkit-box;
	display: flex;
	margin: 30px 0 50px 20px;
}

.leasing-common dd blockquote.left {
	margin-left: 0;
}

.leasing-common dd blockquote:last-child {
	margin-bottom: 0;
}

.leasing-common dd blockquote h3,
.leasing-common dd blockquote p {
	font-size: 14px;
	line-height: 1.8;
}

.leasing-common dd blockquote h3 {
	width: auto;
	margin-right: 18px;
	white-space: nowrap;
}

@media (max-width: 1400px) {
	.leasing-common dd blockquote p { margin-right: 15px; }
	.leasing-common dd blockquote p br { display: none; }
}

/* .leasing-point
------------------------------------*/
.leasing-point figure {
	margin-bottom: 70px;
}

.leasing-point .inner,
.leasing-shop,
.leasing-contact {
	width: calc(100% - 50px);
	margin: 0 auto;
}

.leasing-point h2 {
	margin-bottom: 70px;
}

.leasing-point h2 strong {
	display: block;
	margin-bottom: 15px;
	font-size: 21px;
	font-weight: 600;
	line-height: 1.8;
}

.leasing-point h2 em {
	display: block;
	font-size: 16px;
	letter-spacing: 0.02em;
}

.leasing-point-list article {
	position: relative;
	margin-bottom: 35px;
	padding: 0 0 0 276px;
}

.leasing-point-list article:last-of-type { margin-bottom: 0; }

.leasing-point-list article h3 {
	position: absolute;
	top: 4px;
	left: 0;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.6;
}

.leasing-point-list article p {
	font-size: 16px;
	line-height: 1.95;
	text-align: justify;
}

@media (max-width: 1400px) {
	.leasing-point-list article {
		padding-left: 245px;
	}
}

/* .leasing-shop
------------------------------------*/
.leasing-shop {
	border-top: 1px solid var(--color-border);
	margin-top: 90px;
	padding-top: 25px;
}

.leasing-shop h2 {
	margin-bottom: 0px;
	font-size: 22px;
	line-height: 1.6;
}

.leasing-shop-list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}

.leasing-shop-list article {
	width: 22.4%;
	margin-right: 3.4%;
	margin-top: 40px;
}

.leasing-shop-list article:nth-of-type(4n) {
	margin-right: 0;
}

.leasing-shop-list figure {
	margin-bottom: 26px;
}

.leasing-shop-list h3 {
	margin-bottom: 16px;
}

.leasing-shop-list h3 em {
	display: block;
	margin-bottom: 6px;
	font-size: 10px;
	letter-spacing: 0.02em;
}

.leasing-shop-list h3 strong {
	display: block;
	font-size: 15px;
	line-height: 1.5;
	letter-spacing: 0;
}

.leasing-shop-list a {
	margin-top: 12px;
	width: auto;
	font-size: 12px;
	line-height: 1.4;
	text-decoration: underline;
	word-break: break-all;
}

.leasing-shop-list h3 + a {
	display: inline-block;
	width: auto;
	margin-top: -4px;
}

@media (max-width: 1400px) {
	.leasing-shop-list h3 strong {
		font-size: 14px;
	}
}

/* .leasing-outline
------------------------------------*/
.leasing-outline {
	display: -webkit-box;
	display: flex;
	box-sizing: border-box;
	border: 1px solid var(--color-border);
	margin-top: 120px;
	margin-right: 25px;
	padding: 50px;
}

.leasing-outline .map {
	width: 44%;
	min-width: 44%;
}

.leasing-outline iframe {
	width: 100%;
	height: 100%;
}

.leasing-outline .txt {
	box-sizing: border-box;
	width: 100%;
	padding: 8px 0 4px 48px;
}

.leasing-outline h1 {
	margin-bottom: 26px;
}

.leasing-outline h1 strong {
	display: block;
	margin-bottom: 10px;
	font-size: 20px;
}

.leasing-outline h1 strong span {
	display: inline-block;
	font-size: 12px;
}

.leasing-outline h1 em {
	display: block;
	font-size: 12px;
	letter-spacing: 0.02em;
}

.leasing-outline address,
.leasing-outline dl > div {
	font-size: 14px;
	line-height: 1.6;
}

.leasing-outline address {
	margin-bottom: 10px;
}

.leasing-outline dl > div {
	display: -webkit-box;
	display: flex;
	margin-bottom: 3px;
	white-space: nowrap;
}

.leasing-outline dt {
	width: auto;
	padding-right: 10px;
}

.leasing-outline a.line {
	margin-top: 24px;
	font-size: 14px;
	font-weight: 600;
}

/* media query
-----------------------------------*/
@media (max-width: 1400px) {
	.leasing-outline { padding: 38px; }
	.leasing-outline .txt { padding-left: 46px; }
}

/* .leasing-contact
------------------------------------*/
.leasing-contact {
	display: -webkit-box;
	display: flex;
	margin-top: 80px;
}

.leasing-contact figure {
	width: 32%;
/* 	min-width: 32%; */
	min-width: 270px;
}

.leasing-contact .txt {
	padding: 0 25px 0 50px;
}

.leasing-contact h2 {
	margin-bottom: 14px;
	font-size: 20px;
	/* font-weight: 600; */
	line-height: 1.7;
}

.leasing-contact p {
	font-size: 16px;
	line-height: 2;
	text-align: justify;
}

.leasing-contact a.line {
	margin-top: 16px;
	font-size: 16px;
	font-weight: 600;
}

@media (max-width: 1400px) {
	.leasing-contact .txt {
		padding: 0 20px 0 45px;
	}
	.leasing-contact h2 {
		font-size: 19px;
	}
	.leasing-contact p {
		margin-bottom: 8px;
		font-size: 15px;
		line-height: 1.95;
	}
}

/* .leasing-other
------------------------------------*/
.leasing-other {
	margin: 85px auto 0;
}


/* page about
---------------------------------------------------------------------------*/
#aboutContents .sec-lead {
	margin-bottom: 140px;
}

#aboutContents .sec-lead p {
	line-height: 2.1;
}

#aboutContents .sec-lead > figure {
	margin: 65px -7px 80px;
}

#aboutContents .sec-lead .outline {
	position: relative;
	padding: 0 0 0 37%;
}

#aboutContents .sec-lead .outline .logo {
	position: absolute;
	bottom: 0;
	left: -5px;
}

#aboutContents .sec-lead .outline-inner {
	position: absolute;
	top: 90px;
	left: 0;
	white-space: nowrap;
}

#aboutContents .sec-lead .outline-inner h1 {
	margin-bottom: 14px;
	font-size: 16px;
	letter-spacing: 0.02em;
}

#aboutContents .sec-lead .outline-inner p {
	margin-bottom: 40px;
	font-size: 16px;
	line-height: 1.6;
}

#aboutContents .sec-lead .outline .profile {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: end;
	align-items: flex-end;
	margin-bottom: 25px;
}

#aboutContents .sec-lead .outline .profile:last-child {
	margin-bottom: 0;
}

#aboutContents .sec-lead .outline .profile figure {
	width: 51%;
	min-width: 51%;
}

#aboutContents .sec-lead .outline .profile .txt {
	box-sizing: border-box;
	padding: 0 2% 0 6%;
	transform: translateY(4px);
}

#aboutContents .sec-lead .outline .profile h2 {
	margin-top: 32px;
	margin-bottom: 16px;
	font-size: 16px;
}

#aboutContents .sec-lead .outline .profile p {
	margin-bottom: 8px;
	font-size: 12px;
	line-height: 1.7;
	letter-spacing: 0.03em;
}

#aboutContents .sec-lead .outline .profile .sns {
	margin: 22px 0 0 -1px;
}

#aboutContents .sec-lead .outline .profile .sns li {
	display: inline-block;
	margin-right: 6px;
}

#aboutContents .sec-lead .outline .profile .sns li img {
	width: 28px;
	height: auto;
}

#aboutContents .sec-lead .outline ul {
	margin-top: -2px;
	padding-right: 6%;
}

#aboutContents .sec-lead .outline li {
	font-size: 16px;
}

#aboutContents .sec-lead .outline li a {
	line-height: 1;
}

@media (max-width: 1340px) {
	#aboutContents .sec-lead .outline-inner {
		top: 50px;
	}
	#aboutContents .sec-lead .outline-inner h1,
	#aboutContents .sec-lead .outline-inner p {
		font-size: 15px;
	}
	#aboutContents .sec-lead .outline .profile .txt {
		padding-right: 0;
	}
	#aboutContents .sec-lead .outline .profile p {
		font-size: 11px;
		letter-spacing: 0;
	}
	#aboutContents .sec-lead .outline li { font-size: 14px; }
}

/* .sec-olive
------------------------------------*/
.sec-olive {
	position: relative;
}

.sec-olive > figure {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	margin-bottom: 35px;
}

.sec-olive > figure img { align-self: flex-start; }
.sec-olive > figure picture:nth-of-type(1) { width: 64.4%; }
.sec-olive > figure picture:nth-of-type(2) { width: 34.8%; }

.sec-olive > p {
	font-size: 16px;
	line-height: 2;
	text-align: justify;
}

.sec-olive .outline {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: end;
	align-items: flex-end;
	margin-top: 60px;
}

.sec-olive .outline figure {
	width: 32%;
}

.sec-olive .outline .txt {
	position: relative;
	box-sizing: border-box;
	width: 68%;
	padding: 0 0 2px 35px;
	white-space: nowrap;
}

.sec-olive .outline .txt .sns {
	position: absolute;
	top: -5px;
	left: 300px;
}

.sec-olive .outline .txt h4 {
	margin-bottom: 16px;
	font-size: 15px;
}

.sec-olive .outline .txt h3 {
	margin-bottom: 10px;
	font-size: 22px;
	letter-spacing: 0.02em;
}

.sec-olive .outline .txt p {
	font-size: 13px;
	letter-spacing: 0.06em;
}

.sec-olive .outline .txt p + a {
	display: inline-block;
	width: auto;
	margin-top: 10px;
	font-size: 18px;
	letter-spacing: 0.02em;
}

.sec-olive .outline .logo {
	position: absolute;
	bottom: 0;
	right: 2%;
}

.sec-olive .map {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 510px;
	margin-top: 120px;
}

.sec-olive .map iframe {
	position: absolute;
	top: -150px;
	left: 0;
	width: 100%;
	height: calc(100% + 300px);
	filter: grayscale(100%);
}

.sec-olive .map address {
	display: inline-block;
	box-sizing: border-box;
	position: absolute;
	bottom: 25px;
	left: 25px;
	background-color: #FFFFFF;
	width: auto;
	padding: 20px;
	font-size: 14px;
}

.sec-olive .map address em {
	display: block;
	margin-bottom: 6px;
	font-size: 12px;
	letter-spacing: 0.08em;
}

.sec-olive .map address strong {
	display: block;
	margin-bottom: 10px;
	font-size: 16px;
	line-height: 1.4;
}

.sec-olive .map address .tel {
	display: block;
	font-size: 15px;
}

@media (max-width: 1300px) {
	.sec-olive .outline figure { width: 29%;}
	.sec-olive .outline .txt { width: 71%; }
	.sec-olive .outline .txt .sns { left: 270px; }
	.sec-olive .outline .txt h4 { font-size: 14px; }
	.sec-olive .outline .txt h3 { font-size: 22px; }
	.sec-olive .outline .txt p { font-size: 13px; }
	.sec-olive .outline .txt p + a { font-size: 17px; margin-top: 8px; }
}


/* .grecaptcha-badge
---------------------------------------------------------------------------*/
.grecaptcha-badge { pointer-events: none; z-index: -999; opacity: 0; }
body.contact .grecaptcha-badge { pointer-events: auto; z-index: 999; opacity: 1; }


/* .bnr-footer
---------------------------------------------------------------------------*/
/*body.top footer { padding-bottom: calc(60px + 46px); }
body.top footer .logo { bottom: 113px; }*/

.bnr-footer {
	position: fixed;
	bottom: -46px;
	left: 370px;
	width: calc(100% - 370px);
	height: 46px;
	z-index: 1000;
}

.bnr-footer .bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: linear-gradient(225deg, #4D8270 4%, #495F80 99%);
	opacity: 0.94;
	z-index: 0;
}

.bnr-footer a {
	display: block;
	position: relative;
	padding: 16px 0 15px 130px;
	color: #FFFFFF;
	white-space: nowrap;
	z-index: 1;
}

.bnr-footer a:hover {
	opacity: 0.6;
}

.bnr-footer a strong {
	display: block;
	position: absolute;
	top: 15px;
	left: 30px;
	font-size: 17px;
	letter-spacing: 0.06em;
}

.simply-scroll-clip {
	overflow: hidden;
}

.bnr-footer .txt {
	font-size: 16px;
	letter-spacing: 0.06em;
}

.bnr-footer .txt em {
	display: inline-block;
	width: auto;
	margin-left: 30px;
}

.bnr-footer .txt em + em {
	margin-left: 60px;
}


/* datetimepicker
---------------------------------------------------------------------------*/
.xdsoft_today_button {
	display: none !important;
}


/* print
---------------------------------------------------------------------------*/
@media print {
	
}