@charset "UTF-8";


/*  header ---------------------------------------*/

.fukuoka-property .basicheader {
    position: absolute;
	top: 0;
	left: 0;
    transition: transform 0.4s ease;
}

.fukuoka-property .basicheader.is-fixed {
    position: fixed;
    transform: translateY(-100%);
    transition: transform 0.4s ease;
    opacity: 0;
}

.fukuoka-property .basicheader.is-displayed.is-fixed {
    transform: translateY(0);
    opacity: 1;
}

.fukuoka-property .individualheader {
    position: absolute;
	top: 70px;
	left: 0;
    transition: transform 0.4s ease;
}

.fukuoka-property .individualheader.is-fixed {
    position: fixed;
    transform: translateY(-100%);
    transition: transform 0.4s ease;
    opacity: 0;
}

.fukuoka-property .individualheader.is-displayed.is-fixed {
    transform: translateY(0);
    opacity: 1;
}

.fukuoka-property #basicopenmenu {
    position: absolute;
    transition: transform 0.4s ease;
}

.fukuoka-property #basicopenmenu.is-fixed {
    position: fixed;
    transform: translateY(-100%);
    transition: transform 0.4s ease;
    opacity: 0;
}

.fukuoka-property #basicopenmenu.is-displayed.is-fixed {
    transform: translateY(0);
    opacity: 1;
}

/* .propertyheader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 101;
    transition: transform 0.4s ease;
}

.propertyheader.is-fixed {
    position: fixed;
    transform: translateY(-100%);
    transition: transform 0.4s ease;
    opacity: 0;
}

.propertyheader.is-displayed.is-fixed {
    transform: translateY(0);
    opacity: 1;
} */

.propertyheader-title {
    background: #677076;
    padding: 18px 30px;
    text-align: center;
    color: #fff;
    font-weight: 500;
    font-size: 28px;
    display: none;
    opacity: 0;
    position: absolute;
    top: 140px;
    left: 0;
    width: 100%;
    z-index: 105;
}

.propertyheader-title.is-fixed {
    position: fixed;
    display: block;
    opacity: 0;
    transform: translateY(-100%);
    transition: transform 0.4s ease;
}

.propertyheader-title.is-displayed.is-fixed {
    display: block;
    transform: translateY(0);
    opacity: 1;
}

.propertyheader-title.header-woodytown {
    background: #0F5832;
}

.propertyheader-title.header-dearvillage {
    background: #CB5737;
}



/* property ---------------------------------------*/

.font-mincho {
    font-family: "游明朝", "Yu Mincho", "Noto Serif JP", serif;
}

.font-robotocondensed {
    font-family: "Roboto Condensed", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}

footer {
    padding: unset;
}

/*------ pankuzu ------*/

.propertypankuzu {
    margin-top: 140px;
    /* margin-top: 218px; */
    padding: 18px 30px;
    background: #FBF9F9;
}

.propertypankuzu-inner {
    max-width: 1200px;
    margin: 0 auto;
}

.propertypankuzu-list {
    display: flex;
	justify-content: flex-end;
	align-items: center;
	flex-wrap: wrap;
	gap: 2em;
}

.propertypankuzu-list li {
    position: relative;
}

.propertypankuzu-list li::before {
	display: inline-block;
	content: '〉';
    color: #EF7E00;
    font-size: 12px;
    font-weight: 500;
    width: 1em;
    height: 1em;
    position: absolute;
    top: 50%;
    line-height: 1;
    left: -1.5em;
    transform: translateY(-50%);
}

.propertypankuzu-list li:first-child::before {
    display: none;
}

.propertypankuzu-list li a {
    font-size: 12px;
    font-weight: 500;
}

.propertypankuzu-list li span {
    font-size: 12px;
    font-weight: 500;
}

/*------ content ------*/

.property {
    background: #FBF9F9;
    color: #221815;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", "Noto Sans JP", sans-serif;
    font-feature-settings: "palt" 1;
}

.property-title {
    background: #677076;
    padding: 18px 30px;
    text-align: center;
    color: #fff;
    font-weight: 500;
    font-size: 28px;
    position: sticky;
    /* top: 140px; */
    top: 0;
    z-index: 11;
}

.property-woodytown .property-title,
.propertylot-woodytown .property-title {
    background: #0F5832;
}

.property-dearvillage .property-title,
.propertylot-dearvillage .property-title {
    background: #CB5737;
}


/*------ info ------*/

.propertyheaderinfo {
    padding: 20px 30px;
}

.propertyheaderinfo-list {
    display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 25px;
}

.propertyheaderinfo-item {
    position: relative;
    display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 16px;
    padding-left: 16px;
}

.propertyheaderinfo-item::before {
	display: inline-block;
	content: '';
	background: #EF7E00;
	width: 2px;
	height: 90%;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.propertyheaderinfo-item-title {
    font-weight: 700;
    font-size: 16px;
    letter-spacing: 0.04em;
}

.propertyheaderinfo-item-text {
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.04em;
}


/*------ kv ------*/

.propertykv-wrapper {
    overflow: hidden;
}

.propertykv {
    position: relative;
}

.propertykv-list-item img {
    width: 100%;
}

.propertykv .swiper-container-horizontal>.swiper-pagination-bullets, .propertykv .swiper-pagination-custom, .propertykv .swiper-pagination-fraction {
    bottom: 20px;
}

.propertykv .swiper-pagination-bullet{
	background: #EEF0F2;
	opacity:1;
	margin:0 3px;
	outline: none;
    width: 6px;
    height: 6px;
}

.propertykv .swiper-pagination-bullet-active{
	background: #FF7400;
	outline: none;
}

.propertykv .swiper-button-next, .propertykv .swiper-button-prev {
    width: 27px;
    height: 55px;
    background-size: 27px 55px;
    margin-top: 0;
    transform: translateY(-50%);
}

.propertykv .swiper-button-next, .propertykv .swiper-container-rtl .swiper-button-prev {
    background-image: url("../img/property/icon_arrow_next.svg");
    right: 80px;
    left: auto;
    outline: none;
}
.propertykv .swiper-button-prev, .propertykv .swiper-container-rtl .swiper-button-next {
    background-image: url("../img/property/icon_arrow_prev.svg");
    left: 80px;
    right: auto;
    outline: none;
}


/*------ anker ------*/

.propertyanker {
    padding: 0 30px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
    position: relative;
    z-index: 2;
}

.propertyanker-title {
    display: none;
}

.propertyanker-open {
    display: none;
}

.propertyanker-list {
    display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

.propertyanker-item a {
    padding: 19px 42px;
    letter-spacing: 0.04em;
    font-size: 14px;
    font-weight: 700;
    border-left: 1px solid #E7E7E7;
    display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
    transition: all 0.25s ease;
}

.propertyanker-item.has-icon a {
    gap: 5px;
}

.propertyanker-item.has-icon a i {
    width: 15px;
    height: 15px;
    background: url('../img/property/icon_back.svg') no-repeat center center;
}

.propertyanker-item a:hover {
	opacity: 0.7;
}

.propertyanker-item:last-child a {
    border-right: 1px solid #E7E7E7;
}


/*------ fixed anker ------*/

.propertyfixedanker {
    position: fixed;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    z-index: 100;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.propertyfixedanker.show {
    opacity: 1;
    visibility: visible;
}

.propertyfixedanker-item + .propertyfixedanker-item {
    margin-top: 5px;
}

.propertyfixedanker-item a {
    display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
    width: 180px;
    padding: 16px 10px 16px 45px;
    background: #F4EFEF;
    color: #333;
    font-size: 13px;
    font-weight: 700;
    border-radius: 0 5px 5px 0;
    letter-spacing: 0.1em;
    line-height: 1.4;
    transition: all 0.25s ease;
    position: relative;
}

.propertyfixedanker-item a:hover {
	width: 200px;
}

.propertyfixedanker-item.is-active a {
    width: 200px;
    pointer-events: none;
    cursor: default;
}

.propertyfixedanker-item a::before {
	content: '';
	width: 6px;
	height: 6px;
	border-top: 2px solid #EF7E00;
	border-right: 2px solid #EF7E00;
    position: absolute;
    left: 25px;
    top: 53%;
    transform: translateY(-50%) rotate(45deg);
}

.propertyfixedanker-item.has-icon a::before {
    width: 10px;
    height: 10px;
    background: url('../img/property/icon_back.svg') no-repeat center center;
    background-size: 100%;
	transform: none;
    border: none;
    top: 42%;
}


/*------ point ------*/

.propertypoint {
    padding: 50px 30px 55px;
    position: relative;
}

.propertypoint::after {
    display: block;   
	content: '';
	background: url('../img/property/bg.png') no-repeat left top; 
	background-size: 100%;
	width: 100vw;
	height: 32vw;
	position: absolute;
	left: 0;
	top: 0;
    z-index: 1;
}

.propertypoint-inner {
    max-width: 900px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
}

.propertypoint-notice {
    background: #fff;
    padding: 30px 30px;
    margin-bottom: 70px;
}

.propertypoint-notice-title {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.48;
    margin-bottom: 14px;
    text-align: center;
}

.propertypoint-notice-text {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
    text-align: center;
}

.propertypoint-message {
    font-size: 26px;
    font-weight: 600;
    text-align: center;
    letter-spacing: 0.02em;
    padding-bottom: 45px;
}

.propertypoint-block {
    background: #fff;
    margin-top: 40px;
    margin-bottom: 30px;
    padding: 60px 90px 50px;
    position: relative;
}

.propertypoint-title {
    display: inline-block;
    text-align: center;
    width: 180px;
    padding: 10px 0;
    font-size: 15px;
    font-weight: 600;
    background: #677076;
    color: #fff;
    border-radius: 50px;
    position: absolute;
    top: -21px;
    left: 50%;
    transform: translateX(-50%);
    letter-spacing: 0.14em;
}

.property-woodytown .propertypoint-title {
    background: #0F5832;
}

.property-dearvillage .propertypoint-title {
    background: #CB5737;
}

.propertypoint-head {
    display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
	gap: 50px;
    margin-bottom: 12px;
}

.propertypoint-icon {
    width: 16px;
    height: 22px;
    text-align: center;
    position: relative;
}

.propertypoint-icon::before {
	display: inline-block;
	content: '';
	background: #677076; 
	width: 1px;
	height: 30px;
    position: absolute;
    top: 50%;
    right: -22px;
    transform: translateY(-50%);
}

.propertypoint-icon img {
    height: 22px;
    width: auto;
}

.propertypoint-head-title {
    font-weight: 700;
    font-size: 18px;
    letter-spacing: 0.04em;
    line-height: 1.2;
}

.propertypoint-text {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.75;
    padding-left: 67px;
    margin-bottom: 34px;
}

.propertypoint-list-item:last-child .propertypoint-text {
    margin-bottom: 0;
}

.propertypoint-free {
    background: #fff;
    padding: 50px 90px 50px;
}

.free-area *:first-child {
    margin-top: 0;
}

.free-area *:last-child {
    margin-bottom: 0;
}

.free-area h2 {
    font-size: 21px;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.5;
    position: relative;
    padding-left: 21px;
    margin-bottom: 30px;
}

.free-area h2:not(:first-child) {
    margin-top: 60px;
}

.free-area h2::before {
	display: inline-block;
	content: '';
	background:#B8D200;
	width: 3px;
	height: 100%;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.free-area h3 {
    position: relative;
    margin-top: 30px;
    font-size: 16px;
    font-weight: 700;
    line-height: 2;
    letter-spacing: 0.1em;
    padding-left: 23px;
}

.free-area h3::before {
    position: absolute;
    top: 9px;
    left: 0;
    z-index: 1;
    width: 14px;
    height: 14px;
    background: #AACE25;
    border-radius: 50%;
    content: '';
}

.free-area h4, .free-area h5, .free-area h6 {
    font-weight: bold;
}

.free-area p {
    margin-top: 20px;
    margin-bottom: 30px;
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.04em;
}

.free-area p a {
    color: #3366ff;
}

.free-area img {
    max-width: 100%;
}

.free-area ul {
    margin-top: 20px;
    margin-bottom: 30px;
}

.free-area ul li {
    font-size: 16px;
    line-height: 1.8;
    letter-spacing: 0.04em;
    position: relative;
    padding-left: 1.2em;
    margin-bottom: 3px;
}

.free-area ul li:last-child {
    margin-bottom: 0;
}

.free-area ul li::before {
	display: inline-block;
	content: '';
    background: #AACE25;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    position: absolute;
    top: 10px;
    left: 0;
}

.free-area ol {
    margin-top: 20px;
    margin-bottom: 30px;
}

.free-area ol li {
    font-size: 16px;
    line-height: 1.6;
    letter-spacing: 0.04em;
    list-style-type: decimal;
    list-style-position: inside;
    margin-bottom: 3px;
}

.free-area ol li:last-child {
    margin-bottom: 0;
}

.free-area div {
    margin-top: 20px;
    margin-bottom: 30px;
}

.free-area .wp-block-embed__wrapper {
    width: 100%;
    aspect-ratio: 16 / 9;
}

.free-area p:has(iframe:not(.instagram-media)) {
    width: 100%;
    aspect-ratio: 16 / 9;
}

.free-area iframe:not(.instagram-media) {
    width: 100%;
    height: 100%;
    object-fit: cover;
    max-width: 100%;
}

.free-area .instagram-media {
    max-width: 100% !important;
    min-width: unset !important;
}

.free-area img {
    max-width: 100%;
}

.free-area strong {
    font-weight: 700;
}

.free-area em {
    font-style: italic;
}

/*------ feature ------*/

.propertyfeature {
    padding: 55px 30px 130px;
    background: #fff;
    position: relative;
    z-index: 1;
}

.propertyfeature-inner {
    max-width: 1000px;
    margin: 0 auto;
}

.propertyfeature-title {
    font-size: 24px;
    font-weight: 700;
    position: relative;
    padding-left: 1.2em;
    line-height: 1.4;
    letter-spacing: 0.04em;
    margin-bottom: 30px;
}

.propertyfeature-title::before {
	display: inline-block;
	content: '';
	background: #EF7E00;
    width: 21px;
    height: 21px;
    border-radius: 50%;
    position: absolute;
    top: 7px;
    left: 0;
}

.propertyfeature-youtube {
    background: #FBF9F9;
    margin-bottom: 60px;
}

.propertyfeature-youtube iframe {
    max-width: 100%;
}

.propertyfeature-insta {
    background: #FBF9F9;
    margin-bottom: 60px;
}

.propertyfeature-insta > * {
    max-width: 315px !important;
    margin: 0 auto !important;
}

.propertyfeature-quality-list {
    display: flex;
	justify-content: flex-start;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 25px 20px;
}

.propertyfeature-quality-list li {
    width: calc(33.33% - 13.33px);
}

.propertyfeature-quality-list-item {
    display: flex;
	justify-content: flex-start;
	align-items: flex-start;
    flex-direction: column;
	flex-wrap: wrap;
    height: 100%;
    background: #FBF9F9;
    transition: all 0.25s ease;
}

.propertyfeature-quality-list-item:hover {
    opacity: 0.7;
}

.propertyfeature-quality-image {
}

.propertyfeature-quality-image img {
    width: 100%;
}

.propertyfeature-quality-title {
    flex: 1;
    display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
    width: 100%;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.4;
    background: #FBF9F9;
    padding: 20px 50px 20px 26px;
    position: relative;
}

.propertyfeature-quality-title::after {
    display: block;   
	content: '';
	background: url('../img/property/icon_plus.svg') no-repeat center center; 
	background-size: 100%;
	width: 26px;
	height: 26px;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translate(0,-50%);
}

.propertymodalimage img {
    width: 100%;
}

#cboxContent {
    padding: 70px 0;
    background-color: transparent;
}

#cboxClose {
    display: none;
}

.modal {
    border-radius: 20px;
}

.modal-inner {
    padding: 40px;
    border-radius: 20px;
}

.modal-block {
    display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 0 30px;
}

.modalimage {
    width: 30vw;
    max-width: 400px;
    min-width: 270px;
}

.propertymodalimage {
    width: 100%;
    max-width: 100%;
    min-width: unset;
}

.modalimage img {
    width: 100%;
}

/* .modal-freearea {
    margin-top: 50px;
    padding: 0 30px 50px;
} */

.modal-detail {
    flex: 1;
}

.modal-detail-title {
    font-size: 21px;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.5;
    margin-top: 15px;
    margin-bottom: 30px;
}

.modal-detail-text {
    margin-top: 20px;
    margin-bottom: 30px;
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.04em;
}

.modal-detail-link {
    margin-top: 20px;
}

.modal-detail-link a {
    display: inline-block;
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.04em;
    position: relative;
    padding-left: 20px;
    transition: all 0.25s ease;
}

.modal-detail-link a:hover {
	opacity: 0.7;
}

.modal-detail-link a::before {
    content: '';
    width: 8px;
    height: 8px;
    border-top: 2px solid #EF7E00;
    border-right: 2px solid #EF7E00;
    position: absolute;
    left: 0;
    top:  8px;
    transform: rotate(45deg);
}

.modal-inner-close {
    top: 0;
    right: 0;
    background: url(../img/property/icon_modal_close.svg) no-repeat left top;
    background-size: 50px;
    width: 50px;
    height: 50px;
	z-index: 90;
}


/*------ onsale ------*/

.propertyonsale {
    padding: 53px 30px 50px;
}

.propertyonsale-inner {
    max-width: 1000px;
    margin: 0 auto;
}

.propertysection-title {
    font-size: 28px;
    font-weight: 600;
    position: relative;
    padding-left: 20px;
    line-height: 1.4;
    letter-spacing: 0.04em;
    margin-bottom: 45px;
    position: relative;
}

.propertyinfo-title {
    margin-bottom: 35px;
}

.propertysection-title::before {
	display: inline-block;
	content: '';
	background: #EF7E00;
	width: 6px;
	height: 100%;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.propertyonsale-list {
    display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 20px;
}

.propertyonsale-list-item {
    width: calc(50% - 10px);
}

.propertyonsale-list-item a {
    display: block;
    padding: 30px 30px 24px;
    background: #fff;
    transition: all 0.25s ease;
    position: relative;
}

.propertyonsale-list-item a:hover {
	opacity: 0.7;
}

.propertyonsale-list-item.is-negotiation a::before,.propertyonsale-list-item.is-pricerevision a::before {
    display: block;   
	content: '';
	width: 90px;
	height: 36px;
	position: absolute;
	right: 0;
	top: 0;
    transition: all 0.25s ease;
}

.propertyonsale-list-item.is-negotiation a::before {
	background: #EF7E00;
}

.propertyonsale-list-item.is-pricerevision a::before {
	background: #9EBF00;
}

.propertyonsale-list-item.is-negotiation a::after,
.propertyonsale-list-item.is-pricerevision a::after {
    display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	position: absolute;
	right: 0;
	top: 0;
	width: 90px;
	height: 36px;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.48;
    letter-spacing: 0.02em;
    text-align: center;
    color: #fff;
    transition: all 0.25s ease;
}

.propertyonsale-list-item.is-negotiation a::after {
	content: '商談中';
}

.propertyonsale-list-item.is-pricerevision a::after {
	content: '新価格';
}

.propertyonsale-list-head {
    display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	gap:7%;
    padding-bottom: 15px;
    border-bottom: 1px solid #D9D9D9;
}

.propertyonsale-list-head-image {
    width: 46.51%;
}

.propertyonsale-list-head-image img {
    width: 100%;
}

.propertyonsale-list-head-detail {
    flex: 1;
}

.propertyonsale-list-head-num {
    display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
    gap: 5px;
}

.propertyonsale-list-head-num span {
    font-size: 30px;
    font-weight: 600;
    line-height: 1.4;
}

.propertyonsale-list-head-num small {
    font-weight: 700;
    font-size: 16px;
    line-height: 1.4;
    position: relative;
    top: 3px;
}

.propertyonsale-list-head-price {
    display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
    gap: 5px;
    color: #EF7E00;
    margin-bottom: 15px;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
}

.propertyonsale-list-head-price span {
    font-size: 40px;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1;
}

.propertyonsale-list-head-price small {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.1;
    position: relative;
    top: 8px;
}

.propertyonsale-list-head-text {
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1.6;
}

.propertyonsale-list-body {
    padding-top: 13px;
}

.propertyonsale-list-info {
    display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 0px 10px;
}

.propertyonsale-list-info-item {
    width: calc(50% - 10px);
}

.propertyonsale-list-info-item:nth-of-type(2n-1) {
    width: calc(53.51% - 10px);
}

.propertyonsale-list-info-item:nth-of-type(2n) {
    width: 46.49%;
}

.propertyonsale-list-info-list {
    display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: nowrap;
	gap: 0 10px;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.6;
}

.propertyonsale-list-info-list-title {
    white-space: nowrap;
}


/*------ layout ------*/

.propertylayout {
    padding: 52px 30px 54px;
    background: #fff;
}

.propertylayout-inner {
    max-width: 1000px;
    margin: 0 auto;
}

.propertylayout-map {
    text-align: center;
}

.propertylayout-map img {
}

.propertylayout-text {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.8;
    letter-spacing: 0.1em;
    margin-top: 25px;
}

.propertyinfo {
    padding: 60px 30px 60px;
    background: #fff;
}

.propertyinfo-inner {
    max-width: 1000px;
    margin: 0 auto;
}

.propertyinfo-block {
    display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 0 40px;
}

.propertyinfo-block-item {
    width: calc(50% - 20px);
    padding: 18px 0;
    border-bottom: 1px solid #D9D9D9;
    display: flex;
	justify-content: flex-start;
	align-items: center;
}

.propertyinfo-block-item-full {
    width: 100%;
}

.propertyinfo-block-list {
    display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 0 20px;
}

.propertyinfo-block-list-title {
    width: 120px;
    padding: 0 10px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
}

.propertyinfo-block-list-text {
    flex: 1;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 500;
}


/*------ location ------*/

.propertylocation {
    padding: 50px 30px 0;
    background: #fff;
}

.propertylocation-inner {
    max-width: 1000px;
    margin: 0 auto;
}

.propertylocation-map {
    background: #FBF9F9;
    text-align: center;
    margin-bottom: 25px;
    position: relative;
}

.propertylocation-map::after {
    display: block;   
	content: '';
	background: url('../img/property/icon_expansion.svg') no-repeat center center; 
	background-size: 100%;
	width: 50px;
	height: 50px;
	position: absolute;
	right: 20px;
	bottom: 20px;
}

.propertylocation-map-link {
    display: block;
    height: 450px;
}

.propertylocation-map img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.propertylocation-link {
    display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 19px;
    background: #FBF9F9;
    padding: 12px 10px 12px 30px;
    border-radius: 50px;
    border: 1px solid #D9D9D9;
    /* position: absolute;
    top: -4px;
    right: 0; */
    transition: all 0.25s ease;
    max-width: 240px;
    margin: 0 auto;
}

.propertylocation-link:hover {
    opacity: 0.7;
}

.propertylocation-link span {
    font-size: 16px;
    font-weight: bold;
    line-height: 1.4;
    color: #EF7E00;
}

.propertylocation-link i {
    background: url('../img/property/icon_location.svg') no-repeat center center;
    width: 24px;
    height: 24px;
}

.propertylocation-access {
    margin-top: 40px;
}

.propertylocation-access-image {
    text-align: center;
}

.propertylocation-neighborhood {
    margin-top: 55px;
}

.propertylocation-neighborhood-title {
    font-size: 24px;
    font-weight: 700;
    position: relative;
    padding-left: 1.2em;
    line-height: 1.4;
    letter-spacing: 0.04em;
    margin-bottom: 30px;
}

.propertylocation-neighborhood-title::before {
	display: inline-block;
	content: '';
	background: #EF7E00;
    width: 21px;
    height: 21px;
    border-radius: 50%;
    position: absolute;
    top: 7px;
    left: 0;
}

.propertylocation-neighborhood-list {
    display: flex;
	justify-content: flex-start;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 40px 24px;
    padding-bottom: 50px;
    border-bottom: 1px solid #D9D9D9;
}

.propertylocation-neighborhood-list-item {
    width: calc(25% - 18px);
}

.propertylocation-neighborhood-image {
    margin-bottom: 10px;
}

.propertylocation-neighborhood-image img {
    width: 100%;
}

.propertylocation-neighborhood-detail-title {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 8px;
}

.propertylocation-neighborhood-detail-text {
    font-size: 14px;
    line-height: 1.6;
}


/*------ quality ------*/

.propertyquality {
    padding: 60px 30px 0px;
    background: #fff;
}

.propertyquality-inner {
    max-width: 1000px;
    margin: 0 auto;
}

.propertyquality-block {
    display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 40px;
}

.propertyquality-block-item {
    width: calc(50% - 20px);
    padding: 40px 40px 45px;
    background: #FBF9F9;
    display: flex;
	justify-content: flex-start;
	align-items: flex-start;
    flex-direction: column;
	flex-wrap: wrap;
}

.propertyquality-block-item-image {
    margin-bottom: 20px;
    width: 100%;
}

.propertyquality-block-item-image img {
    width: 100%;
}

.propertyquality-block-title {
    width: 100%;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.6;
    margin-bottom: 15px;
    text-align: center;
}

.propertyquality-block-text {
    width: 100%;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.6;
    margin-bottom: 40px;
}

.propertyqulity-block-btn {
    margin-top: auto;
    width: 100%;
}

.propertyqulity-block-btn a {
    display: block;
    background: #fff;
    border: 1px solid #D9D9D9;
    padding: 13px 30px;
    text-align: center;
    font-size: 14.5px;
    font-weight: 700;
    letter-spacing: 0.04em;
    position: relative;
}

.propertyqulity-block-btn a::after { 
	content: '';
	display: inline-block;
	width: 10px;
	height: 10px;
	margin: 0 10px;
	border-top: 2px solid #EF7E00;
	border-right: 2px solid #EF7E00;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translate(0,-50%) rotate(45deg);
}


/*------ cta ------*/

.propertycta {
    padding: 50px 30px 65px;
    background: #FBF9F9;
    position: relative;
}

.propertycta::before {
	display: inline-block;
	content: '';
	background: #EF7E00;
	width: 280px;
	height: 6px;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

.propertycta-inner {
    max-width: 1000px;
    margin: 0 auto;
}

.propertycta-title {
    text-align: center;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.04em;
    margin-bottom: 15px;
}

.propertycta-text {
    font-size: 15px;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: 0.04em;
    margin-bottom: 55px;
    text-align: center;
}

.propertycta-block {
    display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 20px;
    position: relative;
}

.propertycta-block::before {
	display: inline-block;
	content: '';
	background: #AA9898; 
	width: 1px;
	height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}

.propertycta-block-item {
    width: calc(50% - 10px);
}

.propertycta-block-title {
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.6;
    margin-bottom: 15px;
    text-align: center;
}

.propertycta-btn {
    text-align: center;
}

.propertycta-btn a {
    display: inline-block;
    width: 100%;
    max-width: 330px;
    height: 70px;
    padding: 0 10px 0;
    border-radius: 40px;
    background: linear-gradient(90deg, #f89126 0%, #e6382a 100%);
    font-size: 15px;
    font-weight: 700;
    line-height: 70px;
    letter-spacing: 0.2em;
    text-align: center;
    color: #fff;
    position: relative;
}

.propertycta-tel a {
    display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.propertycta-tel a i {
    width: 52px;
    height: 30px;
    background: url('../img/property/icon_free.svg') no-repeat center center;
    background-size: contain;
}

.propertycta-tel a span {
    font-weight: 500;
    font-size: 45px;
    line-height: 1;
}

.propertycta-tel-text {
    font-size: 14px;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: 0.04em;
    text-align: center;
}


/*------ seller ------*/

.propertyseller {
    padding: 80px 30px 100px;
    background: #fff;
}

.propertyseller-inner {
    max-width: 1000px;
    margin: 0 auto;
}

.propertyseller-block {
    display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 0 40px;
}

.propertyseller-block-item {
    width: calc(50% - 20px);
    padding: 11px 0;
    border-bottom: 1px solid #D9D9D9;
    display: flex;
	justify-content: flex-start;
	align-items: center;
}

.propertyseller-block-list {
    display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 0 20px;
}

.propertyseller-block-list-title {
    width: 120px;
    padding: 0 10px;
    font-size: 16px;
    font-weight: 700;
}

.propertyseller-block-list-text {
    flex: 1;
    font-size: 16px;
    font-weight: 500;
}

.propertyfixedcta {
    display: none;
}

.propertyfixedbtn-wrapper {
    position: fixed;
    top: 85%;
    right: 0;
    transform: translateY(-50%);
    display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
    flex-direction: column;
    z-index: 100;
    gap: 1px;
    background: #ebeef0;
}

.propertyfixedbtn {
    width: 85px;
    height: 68px;
    background: #EF7E00;
    display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
    flex-direction: column;
    color: #fff;
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.6;
    text-align: center;
    transition: all 0.25s ease;
}

.propertyfixedbtn:hover {
    opacity: 0.7;
}

.propertyfixedbtn-visit i {
    background: url('../img/property/icon_reserve.svg') no-repeat center center;
    background-size: 100%;
    width: 21px;
    height: 22px;
}

.propertyfixedbtn-request i {
    background: url('../img/property/icon_inquiry.svg') no-repeat center center;
    background-size: 100%;
    width: 21px;
    height: 26px;
}

/*---------------- lot ----------------*/

.propertylot {
    background: #fff;
    color: #221815;
    font-family: "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
}

/*------ lot info ------*/

.propertylotheaderinfo {
    padding: 50px 30px 40px;
    background: #FBF9F9;
}

.propertylotheaderinfo-inner {
    max-width: 1000px;
    margin: 0 auto;
}

.propertylotheaderinfo-block {
    background: #fff;
    padding: 40px 50px;
    display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
	gap: 30px;
    position: relative;
}

.propertylotheaderinfo-building {
    width: 120px;
    background: url('../img/property/lot/bg_building.png') no-repeat center center;
    background-size: 100% 100%;
    display: flex;
	justify-content: center;
	align-items: center;
    flex-direction: column;
	flex-wrap: wrap;
    padding: 20px 10px;
}

.propertylot-woodytown .propertylotheaderinfo-building {
    background: url('../img/property/lot/bg_building_woodytown.png') no-repeat center center;
    background-size: 100% 100%;
}

.propertylot-dearvillage .propertylotheaderinfo-building {
    background: url('../img/property/lot/bg_building_dearvillage.png') no-repeat center center;
    background-size: 100% 100%;
}

.propertylotheaderinfo-building b {
    color: #fff;
    font-size: 52px;
    font-weight: 700;
    letter-spacing: 0.03em;
    line-height: 1;
    text-align: center;
}

.propertylotheaderinfo-building span {
    color: #fff;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.6;
    text-align: center;
}

.propertylotheaderinfo-detail {
    flex: 1;
}

.propertylotheaderinfo-detail-title {
    font-size: 25px;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: 0.04em;
    margin-bottom: 20px;
}

.propertylotheaderinfo-detail-building {
    display: none;
}

.propertylotheaderinfo-detail-inner {
    display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
    gap: 0 35px;
}

.propertylotheaderinfo-detail-inner-list-wrapper {
    flex: 1;
    display: flex;
	justify-content: flex-start;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 0;
    position: relative;
}

.propertylotheaderinfo-detail-inner-list-wrapper::before {
    display: inline-block;
    content: '';
    background: #D9D9D9;
    width: 1px;
    height: 118%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -10px;
}

.propertylotheaderinfo-detail-inner-list {
    display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 0 16px;
}

.propertylotheaderinfo-detail-inner-list:nth-of-type(2n-1) {
    width: calc(60% - 16px);
}

.propertylotheaderinfo-detail-inner-list:nth-of-type(2n) {
    width: 40%;
}

.propertylotheaderinfo-detail-inner-list-title {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    color: #677076;
    letter-spacing: 0.04em;
}

.propertylotheaderinfo-detail-inner-list-text {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.04em;
}

.propertylotheaderinfo-detail-inner-price {
    width: 288px;
    display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.propertylotheaderinfo-detail-inner-price-title {
    font-size: 16px;
    color: #677076;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.6;
}

.propertylotheaderinfo-detail-inner-price-title small {
    font-size: 13px;
}

.propertylotheaderinfo-detail-inner-price-before {
    display: none;
}

.propertylotheaderinfo-detail-inner-price-title .is-before {
    color: #EF7E00;
}

.propertylotheaderinfo-detail-inner-price-negotiation {
    display: block;
	content: '';
	width: 120px;
	height: 40px;
    font-size: 16px;
    font-weight: 700;
    line-height: 40px;
    background: #EF7E00;
    color: #fff;
    letter-spacing: 0.02em;
    text-align: center;
	position: absolute;
	right: 0;
	top: 0;
    transition: all 0.25s ease;
}

.propertylotheaderinfo-detail-inner-price-pricerevision {
    display: block;
	content: '';
	width: 120px;
	height: 40px;
    font-size: 16px;
    font-weight: 700;
    line-height: 40px;
    background: #9EBF00;
    color: #fff;
    letter-spacing: 0.02em;
    text-align: center;
	position: absolute;
	right: 0;
	top: 0;
    transition: all 0.25s ease;
}

.propertylotheaderinfo-detail-inner-price-text {
    color: #EF7E00;
}

.propertylotheaderinfo-detail-inner-price-text b {
    font-size: 50px;
    line-height: 1;
    letter-spacing: -0.05em;
}

.propertylotheaderinfo-detail-inner-price-text span {
    display: inline-block;
    margin-left: 10px;
    font-size: 15px;
}

.propertylotheaderinfo-detail-inner-price-pending,.propertylotheaderinfo-detail-inner-price-finish {
    font-size: 28px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.04em;
    color: #EF7E00;
    text-align: center;
    width: 100%;
}


/*------ lot free ------*/

.propertylotfree {
    padding: 60px 30px 45px;
    background: url('../img/property/bg_lot.png') #fff no-repeat left top;
    background-size: 100%;
    border-bottom: 1px solid #D9D9D9;
}

.propertylotfree-inner {
    max-width: 600px;
    margin: 0 auto;
}


/*------ lot layout ------*/

.propertylotlayout {
    padding: 50px 30px 60px;
    background: #fff;
}

.propertylotlayout-inner {
    max-width: 1000px;
    margin: 0 auto;
}

.propertylotlayout-inner > *:last-child {
    margin-bottom: 0;
}

.propertylotlayout-map {
    text-align: center;
    margin-bottom: 25px;
}

.propertylotlayout-map img {
}

.propertylotlayout-text {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.8;
    letter-spacing: 0.1em;
    margin-bottom: 30px;
}


/*------ lot gallery ------*/

.propertylotgallery {
    padding: 50px 30px 60px;
    background: #FBF9F9;
}

.propertylotgallery-inner {
    max-width: 1000px;
    margin: 0 auto;
}

.propertylotgallery-list-wrapper {
    overflow: hidden;
}

.propertylotgallery-list {
    position: relative;
}

.propertylotgallery-list-item {
    aspect-ratio: 4/3;
    background: #F2EDED;
}

.propertylotgallery-list-item-inner {
    width: 100%;
    height: 100%;
    object-fit: contain;
    text-align: center;
}

.propertylotgallery-list-item img {
    height: 100%;
}

.propertylotgallery-caption {
    margin: 15px 0 20px 0;
    background: #fff;
    padding: 15px;
}

.propertylotgallery-caption-text {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.8;
    display: none;
}

.propertylotgallery-caption-text.active {
    display: block;
}

.propertylotgallery-tmb-wrapper {
    position: relative;
}

.propertylotgallery-tmb-slider {
    overflow: hidden;
}

.propertylotgallery-tmb-list {
    display: flex;
}

.propertylotgallery-tmb-list-item {
    width: calc(12.5% - 7px);
    flex-shrink: 0;
    overflow: hidden;
    cursor: pointer;
    transition: all 0.3s ease;
    border: 2px solid transparent;
    flex-shrink: 0;
    aspect-ratio: 118/96;
    margin-right: 8px;
}

.propertylotgallery-tmb-list-item:last-child {
    margin-right: 0;
}

/* 8個未満の場合のサイズ調整（PC用のみ） */
@media (min-width: 768px) {
    .propertylotgallery-tmb-list:not(:has(.propertylotgallery-tmb-list-item:nth-child(9))) .propertylotgallery-tmb-list-item {
        width: auto;
        flex: 1;
        max-width: 12.5%;
    }
}

.propertylotgallery-tmb-list-item:hover {
    opacity: 0.8;
}

.propertylotgallery-tmb-list-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.propertylotgallery .swiper-button-next, .propertylotgallery .swiper-button-prev {
    width: 15px;
    height: 23px;
    background-size: 15px 23px;
    margin-top: 0;
    transform: translateY(-50%);
}

.propertylotgallery .swiper-button-next, .propertylotgallery .swiper-container-rtl .swiper-button-prev {
    background-image: url("../img/property/icon_arrow_next_gallery.svg");
    right: 40px;
    left: auto;
    outline: none;
}
.propertylotgallery .swiper-button-prev, .propertylotgallery .swiper-container-rtl .swiper-button-next {
    background-image: url("../img/property/icon_arrow_prev_gallery.svg");
    left: 40px;
    right: auto;
    outline: none;
}

.propertylotinfo {
    padding: 50px 30px;
}

.propertylotfeature {
    padding: 10px 30px 60px;
}

.propertylotfeature-inner {
    max-width: 1000px;
    margin: 0 auto;
}

.propertylotonsale {
    background: #FBF9F9;
    margin-bottom: 80px;
    padding: 50px 30px 60px;
}


/* small pc */
@media screen and (min-width: 768px) and (max-width: 1060px){


/*------ anker ------*/

.propertyanker {
    padding: 0 20px;
}

.propertyanker-item a {
    padding: 19px 20px;
    font-size: 13px;
}

}

/* small pc */
@media screen and (min-width: 768px) and (max-width: 960px){

    .propertypoint-block {
        padding: 55px 40px 45px;
    }

    .propertypoint-free {
        padding: 55px 40px 45px;
    }

}




@media screen and (max-width: 767px){

    
    /*  header ---------------------------------------*/

    .fukuoka-property .basicheader {
        transition: transform 0.25s ease;
    }

    .fukuoka-property .basicheader.is-fixed {
        transition: transform 0.25s ease;
    }

    .fukuoka-property .individualheader {
        transition: transform 0.25s ease;
    }

    .fukuoka-property .individualheader.is-fixed {
        transition: transform 0.25s ease;
    }

    .fukuoka-property #basicopenmenu.is-fixed {
        transition: transform 0.25s ease;
    }

    .fukuoka-property .basicheader-mail {
        position: absolute;
    }
    
    .fukuoka-property .basicheader-gnav-wrapper {
        top: 0;
    }

    .fukuoka-property .basicheader-gnav-wrapper.is-active {
        top: 70px;
    }

    .fukuoka-property .basicheader-gnav {
        height: 100vh;
    }
    
    .fukuoka-property .is-active .basicheader-gnav {
        height: auto;
    }

    .propertyheader-title {
        padding: 12px 15px;
        font-weight: 600;
        font-size: 18px;
    }

    .propertyheader-title.is-fixed {
        display: none;
        opacity: 0;
    }

    .propertyheader-title.is-displayed.is-fixed {
        display: none;
        opacity: 0;
    }

    /* property ---------------------------------------*/


    /*------ pankuzu ------*/

    .propertypankuzu {
        display: none;
    }

    /*------ content ------*/

    .property {
        margin-top: 70px;
    }

    .property-title {
        padding: 12px 15px;
        font-weight: 600;
        font-size: 18px;
        position: static;
        top: auto;
    }

    .propertycontent {
    }


    /*------ info ------*/

    .propertyheaderinfo {
        display: block !important;
        padding: 22px 25px;
    }

    .propertyheaderinfo.pc {
        display: none !important;
    }

    .propertyheaderinfo-list {
        gap: 0 20px;
        justify-content: flex-start;
    }

    .propertyheaderinfo-item {
        gap: 19px;
        padding-left: 12px;
        justify-content: flex-start;
    }

    .propertyheaderinfo-item + .propertyheaderinfo-item {
        margin-top: 4px;
    }

    .propertyheaderinfo-item::before {
        height: 90%;
    }

    .propertyheaderinfo-item-title {
        width: 4em;
        font-weight: 700;
        font-size: 13px;
        letter-spacing: 0.04em;
    }

    .propertyheaderinfo-item-text {
        font-weight: 500;
        font-size: 13px;
        letter-spacing: 0.07em;
    }


    /*------ kv ------*/

    .propertykv-wrapper {
        overflow: hidden;
    }

    .propertykv {
        position: relative;
    }

    .propertykv-list-item img {
        width: 100%;
    }

    .propertykv .swiper-container-horizontal>.swiper-pagination-bullets, .propertykv .swiper-pagination-custom, .propertykv .swiper-pagination-fraction {
        bottom: 15px;
    }

    .propertykv .swiper-button-next, .propertykv .swiper-button-prev {
        width: 10px;
        height: 20px;
        background-size: 10px 20px;
    }

    .propertykv .swiper-button-next, .propertykv .swiper-container-rtl .swiper-button-prev {
        right: 15px;
    }
    .propertykv .swiper-button-prev, .propertykv .swiper-container-rtl .swiper-button-next {
        left: 15px;
    }


    /*------ anker ------*/

    .propertyanker-wrapper {
        position: fixed;
        /* top: 70px; */
        top: 0;
        left: 0;
        width: 100%;
        z-index: 10;
        transition: all 0.25s ease;
        transform: translateY(-15px);
        opacity: 0;
        pointer-events: none;
        visibility: hidden;
    }

    .propertyanker-wrapper.is-active {
        transform: translateY(0);
        opacity: 1;
        pointer-events: auto;
        visibility: visible;
    }

    .propertyanker-wrapper.is-header-displayed {
        top: 70px;
    }

    .propertyanker {
        padding: 0;
        box-shadow:  unset;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        z-index: 1000;

         /* アニメーション設定 */
        max-height: 0;
        opacity: 0;
        overflow: hidden;
        transition: all 0.25s ease;
        visibility: hidden;
        transform: translateY(-100px);
    }

    .propertyanker.is-active {
        max-height: 400px; /* メニュー項目数に応じて調整 */
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }

    .propertyanker-title {
        display: block;
        font-size: 15px;
        font-weight: 600;
        padding: 15px 15px;
        background: #677076;
        color: #fff;
        letter-spacing: 0.03em;
    }

    .property-woodytown .propertyanker-title,
    .propertylot-woodytown .propertyanker-title {
        background: #0F5832;
    }

    .property-dearvillage .propertyanker-title,
    .propertylot-dearvillage .propertyanker-title {
        background: #CB5737;
    }

    .propertyanker-open {
        display: block;
        width: 22px;
        height: 20px;
        position: absolute;
        top: 15px;
        right: 20px;
        z-index: 100;
    }

    .propertyanker-open span {
        display: inline-block;
        width: 100%;
        height: 2px;
        background: #fff;
        position: absolute;
        left: 0;
		transition: all .25s ease;
    }

    .propertyanker-open span:nth-child(1) {
        top: 0;
    }

    .propertyanker-open span:nth-child(2) {
        top: 10px;
    }

    .propertyanker-open span:nth-child(3) {
        top: 20px;
    }

    .propertyanker-open.is-active span:nth-child(1) {
        transform: rotate(45deg);
        top: 10px;
    }
    
    .propertyanker-open.is-active span:nth-child(2) {
        opacity: 0;
		left:-25px;
    }
    
    .propertyanker-open.is-active span:nth-child(3) {
        transform: rotate(-45deg);
        top: 10px;
    }

    .propertyanker {
        padding: 10px;
        background: #9BA1A6;
    }

    .propertyanker-list {
        display: flex;
        justify-content: space-between;
        align-items: stretch;
        gap: 0;
    }

    .propertyanker-item {
        width: 50%;
        border-right: 1px solid #EBEEF0;
        background: #fff;
    }

    .propertyanker-item a {
        padding: 10px 18px;
        letter-spacing: 0;
        font-size: 14px;
        border-left: none;
        justify-content: flex-start;
        gap: 10px;
    }

    .propertyanker-item a::before {
        content: '';
        background: #EF7E00;
        width: 10px;
        height: 2px;
    }

    .propertyanker-item a:hover {
        opacity: 1;
    }

    .propertyanker-item:last-child a {
        border-right: none;
    }


    /*------ fixed anker ------*/

    .propertyfixedanker {
        display: none !important;
    }


    /*------ point ------*/

    .propertypoint {
        padding: 28px 0 25px;
        position: relative;
    }

    .propertypoint::after {
        background: url('../img/property/bg_sp.png') no-repeat left top; 
        background-size: 100%;
        width: 100vw;
        height: 90vw;
    }

    .propertypoint-notice {
        background: #fff;
        padding: 30px 25px 25px;
        margin: 0 25px 28px;
    }

    .propertypoint-notice-title {
        font-size: 17px;
        line-height: 1.4;
        margin-bottom: 14px;
        letter-spacing: 0.1em;
    }

    .propertypoint-notice-text {
        font-size: 14px;
        text-align: left;
        letter-spacing: 0.05em;
    }

    .propertypoint-message {
        font-size: 18px;
        line-height: 1.6;
        padding: 0 25px 20px;
    }

    .propertypoint-block {
        background: #fff;
        margin-top: 25px;
        margin-bottom: 25px;
        padding: 45px 25px 30px;
        position: relative;
    }

    .propertypoint-title {
        padding: 8px 20px;
        font-size: 14px;
        top: -18px;
        letter-spacing: 0.14em;
        width: 156px;
    }

    .propertypoint-head {
        align-items: flex-start;
        flex-wrap: nowrap;
        gap: 32px;
        margin-bottom: 12px;
    }

    .propertypoint-icon {
        width: 20px;
        height: 20px;
    }

    .propertypoint-icon::before {
        height: 20px;
        right: -17px;
        top: 70%;
    }

    .propertypoint-icon img {
        height: 20px;
    }

    .propertypoint-head-title {
        font-size: 16px;
        letter-spacing: 0.1em;
        line-height: 1.6;
    }

    .propertypoint-text {
        font-size: 15px;
        letter-spacing: 0.05em;
        padding-left: 0;
        margin-bottom: 25px;
    }

    .propertypoint-free {
        background: #fff;
        padding: 30px 25px 20px;
        margin: 0 15px 0;
    }

    .free-area h2 {
        font-size: 17px;
        letter-spacing: 0.05em;
        line-height: 1.4;
        position: relative;
        margin-bottom: 15px;
        padding-left: 17px;
    }

    .free-area h2::before {
        left: 0px;
    }

    .free-area h3 {
        margin-top: 20px;
        font-size: 15px;
        padding-left: 23px;
    }

    .free-area h3::before {
        top: 8px;
        left: 0;
        width: 13px;
        height: 13px;
    }

    .free-area p {
        margin-top: 15px;
        margin-bottom: 20px;
        font-size: 15px;
        font-weight: 500;
        line-height: 1.6;
        letter-spacing: 0.04em;
    }

    .free-area img {
        max-width: 100%;
    }

    .free-area ul {
        margin-top: 15px;
        margin-bottom: 20px;
    }

    .free-area ul li {
        font-size: 15px;
        font-weight: 500;
        line-height: 1.6;
        letter-spacing: 0.04em;
        padding-left: 1em;
    }

    .free-area ul li::before {
        width: 6px;
        height: 6px;
        top: 10px;
        left: 0;
    }

    .free-area ol {
        margin-top: 15px;
        margin-bottom: 20px;
    }

    .free-area ol li {
        font-size: 15px;
        font-weight: 500;
        line-height: 1.6;
        letter-spacing: 0.04em;
        list-style-type: decimal;
        list-style-position: inside;
    }


    /*------ feature ------*/

    .propertyfeature {
        padding: 35px 25px 45px;
        background: #FBF9F9;
    }

    .propertyfeature-inner {
        max-width: 1000px;
        margin: 0 auto;
    }

    .propertyfeature-title {
        font-size: 17px;
        padding-left: 1.2em;
        letter-spacing: 0.02em;
        margin-bottom: 16px;
    }

    .propertyfeature-title::before {
        width: 15px;
        height: 15px;
        top: 5px;
    }

    .propertyfeature-youtube {
        background: #FBF9F9;
        margin-bottom: 35px;
        aspect-ratio: 16/9;
    }

    .propertyfeature-youtube iframe {
        max-width: 100%;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .propertyfeature-insta {
        background: #FBF9F9;
        margin-bottom: 35px;
    }

    .propertyfeature-insta > * {
        max-width: 340px !important;
    }

    .propertyfeature-quality-list {
        gap: 10px 20px;
    }

    .propertyfeature-quality-list li {
        width: calc(50% - 10px);
        background: #fff;
    }

    .propertyfeature-quality-list-item:hover {
        opacity: 1;
    }

    .propertyfeature-quality-title {
        font-size: 14px;
        font-weight: 700;
        letter-spacing: 0.04em;
        line-height: 1.4;
        padding: 10px 20px 10px 2px;
    }

    .propertyfeature-quality-title::after {
        width: 20px;
        height: 20px;
        right: 0;
    }

    .modal {
        background-color: transparent;
        padding: unset;
    }

    #cboxContent {
        padding: 40px 0;
        background-color: transparent;
    }

    /* .modal-freearea {
        margin-top: 30px;
        padding: 0 15px 30px;
    } */

    .modal {
        border-radius: 10px;
    }

    .modal-inner {
        padding: 20px;
        border-radius: 10px;
    }

    .modal-block {
        display: block;
    }

    .modalimage {
        width: 100%;
        max-width: 100%;
        min-width: unset;
    }

    .modal-detail {
        margin-top: 20px;
    }

    .modal-detail-title {
        font-size: 18px;
        margin-bottom: 20px;
    }

    .modal-detail-text {
        font-size: 14px;
        margin-bottom: 20px;
    }

    .modal-detail-link a {
        font-size: 14px;
    }

    .modal-detail-link a:hover {
        opacity: 1;
    }

    .modal-detail-link a::before {
        width: 6px;
        height: 6px;
        top: 8px;
    }

    .modal-inner-close {
        background-size: 30px;
        width: 30px;
        height: 30px;
        margin: 0;
    }


    /*------ onsale ------*/

    .propertyonsale {
        padding: 25px 25px 25px;
    }

    .propertyonsale-inner {
        max-width: 1000px;
        margin: 0 auto;
    }

    .propertysection-title {
        font-size: 18px;
        font-weight: 600;
        padding-left: 19px;
        line-height: 1.4;
        letter-spacing: 0;
        margin-bottom: 25px;
    }

    .propertysection-title::before {
        width: 4px;
    }

    .propertyonsale-list {
        display: block;
    }

    .propertyonsale-list-item {
        width: 100%;
    }

    .propertyonsale-list-item a {
        padding: 20px 20px 15px 20px;
    }

    .propertyonsale-list-item a:hover {
        opacity: 1;
    }

    .propertyonsale-list-item.is-negotiation a::before,.propertyonsale-list-item.is-pricerevision a::before {
        width: 60px;
        height: 20px;
    }

    .propertyonsale-list-item.is-negotiation a::after,
    .propertyonsale-list-item.is-pricerevision a::after {
        width: 60px;
        height: 20px;
        font-size: 10px;
    }

    .propertyonsale-list-item + .propertyonsale-list-item {
        margin-top: 10px;
    }

    .propertyonsale-list-head {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        flex-wrap: wrap;
        gap:20px;
        padding-bottom: 15px;
        border-bottom: 1px solid #D9D9D9;
    }

    .propertyonsale-list-head-image {
        width: 56.66%;
    }

    .propertyonsale-list-head-image img {
        width: 100%;
    }

    .propertyonsale-list-head-detail {
        flex: 1;
    }

    .propertyonsale-list-head-num {
        display: block;
        margin-bottom: 10px;
    }

    .propertyonsale-list-head-num span {
        font-size: 16px;
        font-weight: 700;
        line-height: 1.4;
    }

    .propertyonsale-list-head-num small {
        font-weight: 700;
        font-size: 16px;
        line-height: 1.4;
        top: unset;
    }

    .propertyonsale-list-head-price {
        gap: 2px;
        margin-bottom: 10px;
        font-size: 20px;
        font-weight: 500;
    }

    .propertyonsale-list-head-price span {
        font-size: 30px;
        font-weight: 600;
        line-height: 1;
    }

    .propertyonsale-list-head-price small {
        font-size: 14px;
    }

    .propertyonsale-list-head-text {
        font-size: 13px;
        font-weight: 500;
        letter-spacing: 0;
        line-height: 1.48;
    }

    .propertyonsale-list-body {
        padding-top: 15px;
    }

    .propertyonsale-list-info {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        flex-wrap: wrap;
        gap: 0px 4px;
    }

    .propertyonsale-list-info-item {
        width: auto;
    }

    .propertyonsale-list-info-item:nth-of-type(2n-1) {
        width: calc(63% - 4px);
    }

    .propertyonsale-list-info-item:nth-of-type(2n) {
        width: 37%;
    }

    .propertyonsale-list-info-list {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        flex-wrap: nowrap;
        gap: 0 10px;
        font-size: 13px;
        font-weight: 500;
        line-height: 1.6;
    }


    /*------ layout ------*/

    .propertylayout {
        padding: 30px 25px 30px;
        background: #fff;
    }

    .propertylayout-inner {
        max-width: 1000px;
        margin: 0 auto;
    }

    .propertylayout-map {
        background: #FBF9F9;
        text-align: center;
    }

    .propertylayout-text {    font-size: 13px;
        font-weight: 500;
        line-height: 1.7;
        letter-spacing: 0.1em;
        margin-bottom: 0;
    }

    .propertyinfo {
        padding: 30px 25px 0;
        background: #fff;
    }

    .propertyinfo-inner {
        max-width: 1000px;
        margin: 0 auto;
    }

    .propertyinfo-block {
        display: block;
        border-top: 1px solid #D9D9D9;
    }

    .propertyinfo-block-item {
        width: 100%;
        padding: 12px 0;
        border-bottom: 1px solid #D9D9D9;
    }

    .propertyinfo-block-item:last-of-type {
        border-bottom: none;
    }

    .propertyinfo-block-item-full {
        width: 100%;
    }

    .propertyinfo-block-list {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        flex-wrap: wrap;
        gap: 0;
    }

    .propertyinfo-block-list-title {
        width: 90px;
        padding: 0 0 0 10px;
        font-size: 14px;
        line-height: 1.55;
        letter-spacing: 0.04em;
    }

    .propertyinfo-block-list-text {
        flex: 1;
        font-size: 14px;
        line-height: 1.55;
        letter-spacing: 0.04em;
    }


    /*------ location ------*/

    .propertylocation {
        padding: 30px 25px 0;
        background: #fff;
    }


    .propertylocation-link {
        gap: 15px;
        background: #fff;
        padding: 10px 10px 10px 20px;
        position: static;
        top: unset;
        right: unset;
        max-width: 198px;
        margin: 0 auto 24px;
        letter-spacing: 0.02em;
    }

    .propertylocation-link:hover {
        opacity: 1;
    }

    .propertylocation-link span {
        font-size: 13px;
        line-height: 1.4;
    }

    .propertylocation-link i {
        background: url('../img/property/icon_location.svg') no-repeat center center;
        background-size: 100%;
        width: 20px;
        height: 20px;
    }

    .propertylocation-map {
        background: #FBF9F9;
        text-align: center;
        margin-bottom: 22px;
    }

    .propertylocation-map::after {
        display: none;
    }

    .propertylocation-map-link {
        display: block;
        height: auto;
        pointer-events: none;
        cursor: default;
    }

    .propertylocation-access {
        margin-top: 24px;
        margin-bottom: 24px;
    }

    .propertylocation-neighborhood {
        margin-top: 30px;
        padding-top: 25px;
        border-top: 1px solid #D9D9D9;
    }

    .propertylocation-neighborhood-title {
        font-size: 17px;
        padding-left: 1.2em;
        letter-spacing: 0.02em;
        margin-bottom: 16px;
    }

    .propertylocation-neighborhood-title::before {
        width: 15px;
        height: 15px;
        top: 5px;
    }

    .propertylocation-neighborhood-list {
        gap: 10px 20px;
        padding-bottom: 25px;
    }

    .propertylocation-neighborhood-list-item {
        width: calc(50% - 10px);
    }

    .propertylocation-neighborhood-image {
        margin-bottom: 12px;
    }

    .propertylocation-neighborhood-image img {
        width: 100%;
    }

    .propertylocation-neighborhood-detail-title {
        font-size: 14px;
        font-weight: 700;
        line-height: 1.4;
        margin-bottom: 4px;
    }

    .propertylocation-neighborhood-detail-text {
        font-size: 14px;
        line-height: 1.7;
    }


    /*------ quality ------*/

    .propertyquality {
        padding: 30px 25px 50px;
        background: #fff;
        position: relative;
    }

    .propertyquality-block {
        display: block;
    }

    .propertyquality-block-item {
        width: 100%;
        padding: 0;
        background: #fff;
        display: block;
    }

    .propertyquality-block-item + .propertyquality-block-item {
        margin-top: 25px;
    }

    .propertyquality-block-item-image {
        margin-bottom: 15px;
        width: 100%;
        border: 1px solid #D9D9D9;
    }

    .propertyquality-block-item-image img {
        width: 100%;
    }

    .propertyquality-block-title {
        font-size: 15px;
        letter-spacing: 0.04em;
        line-height: 1.6;
        margin-bottom: 10px;
        text-align: center;
    }

    .propertyquality-block-text {
        font-size: 14px;
        letter-spacing: 0.04em;
        line-height: 1.6;
        margin-bottom: 20px;
    }

    .propertyqulity-block-btn {
        margin-top: auto;
        width: 100%;
    }

    .propertyqulity-block-btn a {
        width: 280px;
        max-width: 100%;
        margin: 0 auto;
        border-radius: 40px;
        background: #fff;
        border: 1px solid #D9D9D9;
        padding: 14px 20px;
        font-size: 13.5px;
        letter-spacing: 0.08em;
    }

    .propertyqulity-block-btn a::after { 
        width: 8px;
        height: 8px;
        margin: 0;
        right: 20px;
    }


    /*------ cta ------*/

    .propertycta {
        padding: 45px 25px 35px;
        position: relative;
    }

    .propertycta::before {
        width: 100px;
    }

    .propertycta-title {
        font-size: 20px;
        letter-spacing: 0.02em;
        margin-bottom: 20px;
    }

    .propertycta-text {
        font-size: 13px;
        line-height: 1.8;
        letter-spacing: 0.02em;
        margin-bottom: 25px;
    }

    .propertycta-block {
        display: block;
        background: #fff; 
    }

    .propertycta-block::before {
        display: none;
    }

    .propertycta-block-item {
        width: 100%;
        padding: 30px 30px;
    }

    .propertycta-block-item:not(:first-child) {
        border-top: 1px solid #F3EDED;
        padding: 20px 30px 30px;
    }

    .propertycta-block-title {
        font-size: 14px;
        font-weight: 700;
        letter-spacing: 0.04em;
        line-height: 1.6;
        margin-bottom: 17px;
        text-align: center;
    }

    .propertycta-btn {
        text-align: center;
    }

    .propertycta-btn a {
        height: 56px;
        line-height: 56px;
        letter-spacing: 0.08em;
    }

    .propertycta-tel a i {
        width: 34px;
        height: 20px;
    }

    .propertycta-tel a span {
        font-weight: 500;
        font-size: 34px;
        line-height: 1;
    }

    .propertycta-tel-text {
        font-size: 12px;
        font-weight: 500;
        line-height: 1.6;
        letter-spacing: 0.04em;
        text-align: center;
    }


    /*------ seller ------*/

    .propertyseller {
        padding: 30px 25px 50px;
        background: #fff;
    }

    .propertyseller-inner {
        max-width: 1000px;
        margin: 0 auto;
    }

    .propertyseller-block {
        display: block;
        border-top: 1px solid #D9D9D9;
    }

    .propertyseller-block-item {
        width: 100%;
        padding: 12px 0;
        border-bottom: 1px solid #D9D9D9;
    }

    .propertyseller-block-list {
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-wrap: wrap;
        gap: 0 10px;
    }

    .propertyseller-block-list-title {
        width: 95px;
        font-size: 14px;
        font-weight: 700;
        letter-spacing: 0.04em;
        line-height: 1.4;
        padding: 0 0 0 10px;
    }

    .propertyseller-block-list-text {
        flex: 1;
        font-size: 14px;
        font-weight: 500;
        letter-spacing: 0.04em;
        line-height: 1.4;
    }

    .property-bottom-logo {
        display: block !important;
        text-align: center;
        margin-bottom: 20px;
    }

    .propertyfixedcta {
        display: block;
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        background: #fff;
        z-index: 2;
    }

    .propertyfixedcta-block {
        display: flex;
        justify-content: space-between;
        align-items: stretch;
        flex-wrap: wrap;
    }

    .propertyfixedcta-block-item {
        width: 50%;
        padding: 10px 15px;
    }

    .propertyfixedcta-block-item a {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        flex-direction: column;
    }

    .propertyfixedcta-block-item p {
        width: 100%;
        text-align: center;
        font-size: 12px;
        font-weight: 500;
        line-height: 1.5;
        color: #221815;
    }

    .propertyfixedcta-block-inquiry {
        background: #EF7E00;
        color: #fff;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
    }

    .propertyfixedcta-block-inquiry i {
        width: 18px;
        height: 18px;
        background: url(../img/property/icon_mail.svg) no-repeat center center;
        background-size: 18px;
    }

    .propertyfixedcta-block-inquiry span {
        font-size: 14px;
        font-weight: 700;
        color: #fff;
    }

    .propertyfixedcta-block-tel i {
        width: 24px;
        height: 19px;
        background: url(../img/property/icon_free_bk.svg) no-repeat center center;
        background-size: 24px;
    }

    .propertyfixedcta-block-tel span {
        font-size: 19px;
        font-weight: 700;
        color: #221815;
    }

    .propertyfixedcta-block-item-inner {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 10px;
    }

    .propertyfixedcta-block-tel .propertyfixedcta-block-item-inner {
        gap: 2px;
    }

    .propertyfixedbtn-wrapper{
        display: none;
    }


    /*---------------- lot ----------------*/

    .propertylot {
        margin-top: 70px;
    }

    /*------ lot info ------*/

    .propertylotheaderinfo {
        padding: 20px 25px 32px;
        background: #fff;
    }

    .propertylotheaderinfo-block {
        background: #fff;
        padding: 0;
        display: block;
    }

    .propertylotheaderinfo-building {
        display: none;
    }

    .propertylotheaderinfo-detail-title-wrapper {
        background: #FBF9F9;
        display: flex;
        justify-content: flex-start;
        align-items: stretch;
        flex-wrap: wrap;
        gap: 0 20px;
        padding-right: 20px;
    }

    .propertylotheaderinfo-detail-title {
        flex: 1;
        font-size: 17px;
        font-weight: 700;
        line-height: 1.4;
        letter-spacing: 0.05em;
        margin-bottom: 0;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        flex-wrap: wrap;
    }

    .propertylotheaderinfo-detail-building {
        width: 70px;
        background: url('../img/property/lot/bg_building.png') no-repeat center center;
        background-size: 100% 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        flex-wrap: wrap;
        padding: 10px 10px;
    }

    .propertylot-woodytown .propertylotheaderinfo-detail-building {
        background: url('../img/property/lot/bg_building_woodytown.png') no-repeat center center;
        background-size: 100% 100%;
    }

    .propertylot-dearvillage .propertylotheaderinfo-detail-building {
        background: url('../img/property/lot/bg_building_dearvillage.png') no-repeat center center;
        background-size: 100% 100%;
    }

    .propertylotheaderinfo-detail-building b {
        color: #fff;
        font-size: 30px;
        font-weight: 500;
        letter-spacing: 0.03em;
        line-height: 1;
        text-align: center;
    }

    .propertylotheaderinfo-detail-building span {
        color: #fff;
        font-size: 13px;
        font-weight: 500;
        letter-spacing: 0.03em;
        line-height: 1.6;
        text-align: center;
    }

    .propertylotheaderinfo-detail-inner {
        display: block;
    }

    .propertylotheaderinfo-detail-inner-list-wrapper {
        display: flex;
        justify-content: flex-start;
        align-items: stretch;
        flex-wrap: wrap;
        gap: 0 10px;
        position: relative;
        padding: 22px 10px;
        border-bottom: 1px solid #D9D9D9;
    }

    .propertylotheaderinfo-detail-inner-list-wrapper::before {
        display: none;
    }

    .propertylotheaderinfo-detail-inner-list {
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
        gap: 0 10px;
    }

    .propertylotheaderinfo-detail-inner-list:nth-of-type(2n-1) {
        width: calc(65% - 10px);
    }

    .propertylotheaderinfo-detail-inner-list:nth-of-type(2n) {
        width: calc(35% - 10px);
    }

    .propertylotheaderinfo-detail-inner-list-title {
        font-size: 13px;
        line-height: 1.6;
        color: #677076;
        font-weight: 700;
        letter-spacing: 0.04em;
    }

    .propertylotheaderinfo-detail-inner-list-text {
        font-size: 13px;
        line-height: 1.6;
        font-weight: 500;
        letter-spacing: 0.04em;
    }

    .propertylotheaderinfo-detail-inner-price {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-wrap: wrap;
        border-bottom: 1px solid #D9D9D9;
        padding: 14px 10px;
    }

    .propertylotheaderinfo-detail-inner-price-title {
        font-size: 14px;
        color: #677076;
        font-weight: 500;
        letter-spacing: 0.04em;
        line-height: 1.6;
        text-align: center;
    }

    .propertylotheaderinfo-detail-inner-price-title small {
        font-size: 12px;
    }

    /* .propertylotheaderinfo-detail-inner-price-title .is-negotiation {
    } */

    .propertylotheaderinfo-detail-inner-price-title .is-before {
        display: none;
    }

    .propertylotheaderinfo-detail-inner-price-before {
        display: block;
        font-size: 14px;
        font-weight: 500;
        letter-spacing: 0.02em;
        line-height: 1.7;
    }

    .propertylotheaderinfo-detail-inner-price-negotiation {
        width: 60px;
        height: unset;
        font-size: 13px;
        line-height: 1.4;
        padding: 5px;
        background: #fff;
        color: #EF7E00;
        border: 1px solid #EF7E00;
        letter-spacing: 0.02em;
        text-align: center;
        position: static;
        right: unset;
        top: unset;
    }

    .propertylotheaderinfo-detail-inner-price-pricerevision {
        width: 60px;
        height: unset;
        font-size: 13px;
        line-height: 1.4;
        padding: 5px;
        background: #fff;
        color: #EF7E00;
        border: 1px solid #EF7E00;
        letter-spacing: 0.02em;
        text-align: center;
        position: static;
        right: unset;
        top: unset;
    }

    .propertylotheaderinfo-detail-inner-price-text {
        color: #EF7E00;
    }

    .propertylotheaderinfo-detail-inner-price-text b {
        font-size: 32px;
        font-weight: 600;
        letter-spacing: -0.02em;
    }

    .propertylotheaderinfo-detail-inner-price-text span {
        display: inline-block;
        font-weight: 500;
        margin-left: 5px;
        font-size: 15px;
    }

    .propertylotheaderinfo-detail-inner-price-pending,.propertylotheaderinfo-detail-inner-price-finish {
        font-size: 18px;
        font-weight: 700;
        line-height: 1.74;
        letter-spacing: 0.04em;
    }


    /*------ lot free ------*/

    .propertylotfree {
        padding: 25px 25px 30px;
        background: #FBF9F9;
        border-bottom: none;
    }

    .propertylotfree-block {
        background: #fff;
        padding: 25px 25px;
    }

    .propertylotfree-title {
        font-size: 17px;
        font-weight: 700;
        letter-spacing: 0.03em;
        line-height: 1.55;
        margin-bottom: 20px;
        padding-left: 17px;
        position: relative;
    }

    .propertylotfree-list {
        margin-bottom: 30px;
    }

    .propertylotfree-list-item {
        font-size: 15px;
        font-weight: 500;
        line-height: 1.6;
        letter-spacing: 0.04em;
        margin-bottom: 3px;
        padding-left: 17px;
    }

    .propertylotfree-list-item::before {
        width: 6px;
        height: 6px;
        top: 11px;
        left: 2px;
    }

    .propertylotfree-youtube {
        background: #FBF9F9;
        aspect-ratio: 16/9;
    }

    .propertylotfree-youtube iframe {
        max-width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .propertylotfree-insta {
        background: #FBF9F9;
    }

    .propertylotfree-insta > * {
        max-width: 100% !important;
        min-width: unset !important;
    }


    /*------ lot layout ------*/

    .propertylotlayout {
        padding: 30px 25px 35px;
        background: #fff;
    }

    .propertylotlayout-map {
        margin-bottom: 18px;
    }

    .propertylotlayout-text {
        font-size: 13px;
        font-weight: 500;
        line-height: 1.7;
        letter-spacing: 0.1em;
        margin-bottom: 20px;
    }


    /*------ lot gallery ------*/

    .propertylotgallery {
        padding: 30px 25px;
    }

    .propertylotgallery-inner {
        max-width: 1000px;
        margin: 0 auto;
    }

    .propertylotgallery-list-wrapper {
        overflow: hidden;
    }

    .propertylotgallery-list {
        position: relative;
    }

    .propertylotgallery-caption {
        margin: 0 0 8px 0;
        text-align: left;
        padding: 12px 25px 15px;
    }

    .propertylotgallery-caption-text {
        font-size: 13px;
        font-weight: 500;
        letter-spacing: 0.04em;
        line-height: 1.6;
    }

    .propertylotgallery-caption-text.active {
        display: block;
    }

    .propertylotgallery-tmb-list-item {
        width: calc(20% - 4px);
        margin-right: 5px;
    }

    /* スマホで5個未満の場合のサイズ調整 */
    .propertylotgallery-tmb-list:not(:has(.propertylotgallery-tmb-list-item:nth-child(6))) .propertylotgallery-tmb-list-item {
        width: auto;
        flex: 1;
        max-width: calc(20% - 4px);
    }

    .propertylotgallery-tmb-list-item:hover {
        opacity: 0.8;
    }

    .propertylotgallery-tmb-list-item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    .propertylotgallery .swiper-button-next, .propertylotgallery .swiper-button-prev {
        display: none;
    }

    .propertylotinfo {
        padding: 35px 25px 35px;
    }

    .propertylotfeature {
        padding: 30px 25px;
        background: #FBF9F9;
    }
    
    .propertylotfeature-inner {
        max-width: 1000px;
        margin: 0 auto;
    }

    .propertylotonsale {
        background: #fff;
        margin-bottom: 40px;
    }

    .propertylotonsale .propertyonsale-list-item a {
        background: #FBF9F9;
    }
}