@charset "UTF-8";
.estate_flow {max-width: 1246px;background-color: #FFF;box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.16); border-radius: 20px; padding: 60px 90px 50px; box-sizing: border-box; margin: 0px auto;}
.estate_flow > h2 {font-size: 12px;text-align: center;}
.estate_flow > p.en {color: #018CD7; font-weight: 700; font-size: 26px; text-align: center;}
.estate_flow > div.flow_cont {margin-top: 40px; display: flex; justify-content: space-between;}
.estate_flow > div.flow_cont > div {width: 31.5%; padding: 30px 20px; box-sizing: border-box; border-radius: 20px; display: flex; flex-direction: column; position:relative;filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, .16)); background-color: #FFF;}
.estate_flow > div.flow_cont > div:before {content: ""; background-color: #FFF; height: 40px; width: 22px; position: absolute; clip-path: polygon(0 0, 0 100%, 100% 50%);right: -20px;top: calc(50% - 20px);}
.estate_flow > div.flow_cont > div:last-child:before {content: none;}
.estate_flow > div.flow_cont > div div {min-height: 84px; display: flex;}
.estate_flow > div.flow_cont > div dl {width: 80px; text-align: center;}
.estate_flow > div.flow_cont > div dl dt {font-size: 16px;color: #018CD7; font-weight: 700; }
.estate_flow > div.flow_cont > div dl dd {margin-top: 10px;}
.estate_flow > div.flow_cont > div h3 {width: calc(100% - 80px); text-align: center; font-size: 24px; font-weight: 700; display: flex; justify-content: center; align-items: center;}
.estate_flow > div.flow_cont > div > p.txt {margin-top: 20px;}
.estate_flow > div.flow_cont > div > p.bt a {display: block; width: 260px; background-color: #263238; color: #FFF; border-radius: 50px; text-align: center;font-weight: 700; font-size: 14px; padding: 10px 0px; margin: 20px auto 0px;}
.estate_flow > dl {display: flex; margin-top: 30px;}
.estate_flow > dl dt {font-size: 16px; flex-shrink: 0; color: #FFF; font-weight: 700; background-color: #263238; padding: 3px 10px; margin: 0px 20px 0px 0px;}
.estate_flow > dl dd {font-size: 14px;}
.estate_flow > dl dd strong {font-weight: 700; font-size: 18px; margin-right: 1em;}
br.sp {display: none;}

.estate_bt {max-width: 1246px;background-color: #FFF;box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.16); border-radius: 20px; padding: 60px 60px 60px; box-sizing: border-box; margin: 60px auto 4px;}
.estate_bt > h2 {font-weight: 700; font-size: 26px; position: relative; padding-left: 30px; cursor: pointer;transition: 0.5s;}
.estate_bt > h2:before {content: ""; height: 100%; width: 3px; border-radius: 20px; background-color: #018CD7; position: absolute;left: 0; top: 0;}
.estate_bt > h2:hover {opacity: .7;transition: 0.5s;}

.estate_bt > h2:after {position: absolute; right: 0; top: 0; content: ''; width: 48px; height: 48px; border-radius: 50%; background-color: #263238; z-index: 1;}
.estate_bt > h2 span:after,.estate_bt > h2 span:before {position: absolute;content:'';width: 28px;height: 8px;background-color:#FFF;z-index: 2; border-radius: 2px;}
.estate_bt > h2 span:before{right: 10px;top:20px; transform: rotate(0deg);transition: all 0.3s;}
.estate_bt > h2 span:after{right: 10px;top:20px;transform: rotate(90deg);transition: all 0.3s;}
.estate_bt > h2.active span:before{transform: rotate(0deg);}
.estate_bt > h2.active span:after{transform: rotate(0deg);}


.estate_bt_main {display: none;}
.estate_bt_main h3 {background-color: #263238; font-size: 15px; color: #FFF; text-align: center; font-weight: 700; padding: 5px 0px;}
.estate_bt_main div.cate {margin-top: 40px;}
.estate_bt_main div.cate ul {display: flex; justify-content: space-between; margin-top: 30px;}
.estate_bt_main div.cate ul li {width: 15.4%; min-height: 126px; display: flex; justify-content: center; align-items: center;}
.estate_bt_main div.cate ul li svg {height: 35px; width: auto;}
.estate_bt_main div.cate ul li svg .e {fill:#263238;}
.estate_bt_main div.cate ul li input[type=radio] {display: none;}
.estate_bt_main div.cate ul li label {cursor: pointer;display: inline-block; width: 100%; height: 100%;}
.estate_bt_main div.cate ul li dl {text-align: center; width:100%; height: 100%; background-color: #EFEFEF; padding: 26px 0px;box-sizing: border-box; }
.estate_bt_main div.cate ul li dl dt {font-size: 16px; font-weight: 700; line-height: 130%;}
.estate_bt_main div.cate ul li dl dd {flex-grow: 1; margin-top: 10px;}
.estate_bt_main div.cate ul li label dl dd {margin-top: 25px;}
.estate_bt_main div.cate ul li input:checked + dl {background-color: #263238; }
.estate_bt_main div.cate ul li input:checked + dl dt {color: #FFF;}
.estate_bt_main div.cate ul li input:checked + dl dd svg .e {fill:#FFF;}
.estate_bt_main div.cate ul li a {background-color: #EFEFEF; display: block; width: 100%; height: 100%;}
.estate_bt_main div.cate ul li a dl dt {font-size: 14px;}
.estate_bt_main div.area {margin-top: 30px;}
.estate_bt_main div.area ul {display: flex; justify-content: space-between; margin-top: 30px;}
.estate_bt_main div.area ul li {width: 13.7%; min-height: 66px; display: flex; justify-content: center; align-items: center;}
.estate_bt_main div.area ul li input[type=radio] {display: none;}
.estate_bt_main div.area ul li label {cursor: pointer;display: inline-block; width: 100%; height: 100%;}
.estate_bt_main div.area ul li span {display: flex; justify-content: center; align-items: center; width:100%; height: 100%; background-color: #EFEFEF; font-size: 17px; font-weight: 700;}
.estate_bt_main div.area ul li input:checked + span {background-color: #263238; color: #FFF;}

.estate_list {max-width: 1066px; margin: 60px auto 60px; display: none;}
.estate_list p.none {text-align: center; font-size: 14px;}
div.list {display: flex; justify-content: space-between; margin-bottom: 60px; border-bottom: 1px solid #D5D7D8; padding-bottom: 60px;}
div.list > figure {width: 528px; position:relative;}
div.list > figure div.splide img {width: 100%; display: block; height: auto; aspect-ratio: 16/10; object-fit: cover;}
div.list > figure figcaption ul {position:absolute; left: 20px; top: 20px; display: flex;}
div.list > figure figcaption ul li {font-size: 12px; background-color: #008CD7; border-radius: 10px; color: #FFF; padding: 5px 20px;}
div.list > figure figcaption ul li + li {margin-left: 7px;}
div.list > div.item_info {width: calc(100% - 575px);}
div.list > div.item_info h2 {font-size: 22px; font-weight: 700;}
div.list > div.item_info h3 {font-size: 16px; font-weight: 700; color: #008CD7; line-height: 100%; margin-top: 15px;}
div.list > div.item_info h3 strong {font-size: 30px;}
div.list > div.item_info ul {margin-top: 20px;}
div.list > div.item_info ul li {font-size: 16px; padding-left: 30px; position:relative;}
div.list > div.item_info ul li + li {margin-top: 5px;}
div.list > div.item_info ul li.map:before {content: ""; width: 18px; height: 24px; background: url(../images/estate_map.svg) no-repeat; background-size: cover; position: absolute; left: 0; top: 3px;}
div.list > div.item_info ul li.move:before {content: ""; width: 18px; height: 21px; background: url(../images/estate_move.svg) no-repeat; background-size: cover; position: absolute; left: 0; top: 4px;}
div.list > div.item_info > div { margin-top: 18px; display: flex; justify-content: space-between; flex-wrap: wrap;gap:14px 0px;}
div.list > div.item_info > div dl {width: 33%; display: flex;}
div.list > div.item_info > div dl dt {font-size: 14px; border: 1px solid #263238; border-radius: 4px; padding: 3px 10px; margin-right: 0.5em;line-height: 130%;}
div.list > div.item_info > div dl dd {font-size: 16px; line-height: 130%; margin-top: 3px;}
div.list > div.item_info > p.bt a {display: block; width: 272px; background-color: #263238; color: #FFF; border-radius: 50px; text-align: center;font-weight: 700; font-size: 14px; padding: 10px 0px; margin: 24px 0px 0px 0px;}

.splide__pagination__page.is-active {background: #263238!important;}
.splide__pagination__page {background: #FFF!important;}
.splide__arrow {background: #263238!important;}
.splide__arrow svg {fill: #FFF!important;}
.splide__arrow--next {right: -1em!important;}
.splide__arrow--prev {left: -1em!important;}

.consult {max-width: 1246px; margin: 60px auto 50px;background-color: #FFF;box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.16); border-radius: 20px; padding: 60px 60px 50px; box-sizing: border-box; }
.consult > h2 {font-weight: 700; font-size: 26px; position: relative; padding-left: 30px; transition: 0.5s;}
.consult > h2:before {content: ""; height: 100%; width: 3px; border-radius: 20px; background-color: #018CD7; position: absolute;left: 0; top: 0;}
.consult > p.txt {margin-top: 20px; font-size: 16px; text-align: left;}
.consult > ul {display: flex; justify-content: center; margin-top: 30px; background-color: #FAFAFA; border-radius: 30px; padding: 50px 0px;}
.consult > ul li {width:457px; height: 76px;}
.consult > ul li + li {margin-left: 14px;}
.consult > ul li a {display: block; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; font-size: 18px; font-weight: 700; color: #FFF; background-color: #263238; border-radius: 50px; line-height: 140%; text-align: center;}
.consult > ul li + li a {background-color: #D5D7D8; color: #253238;font-size: 18px;}

@media only screen and (max-width:1246px){
.estate_flow {max-width: 1246px; margin: 0px 20px; padding: 60px 60px 50px;}

.estate_bt {max-width: 1246px; margin: 60px 20px 0px;}

.consult {max-width: 1246px; margin: 60px 20px 50px;}

}
@media only screen and (max-width:1066px){
.estate_list {max-width: 1066px; margin: 60px 20px 60px;}
div.list > figure {width: calc(100% - 364px); position:relative;}
div.list > div.item_info {width: 334px;}
div.list > div.item_info > div dl {width: 49%; display: flex;}

.consult {max-width: 1246px; margin: 60px 20px 50px;background-color: #FFF;box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.16); border-radius: 20px; padding: 60px 60px 50px; box-sizing: border-box;}
.consult > ul {display: flex; flex-direction: column; justify-content: center; margin-top: 30px; }
.consult > ul li {width:457px; height: 76px; margin: 0px auto;}
.consult > ul li + li { margin: 20px auto 0px;}

}
@media only screen and (max-width:1000px){
.estate_flow > div.flow_cont {margin-top: 40px; display: flex; flex-direction: column; justify-content: space-between;}
.estate_flow > div.flow_cont > div {width: 100%; padding: 30px 20px; box-sizing: border-box; border-radius: 20px; display: flex; flex-direction: column; position:relative;filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, .16)); background-color: #FFF;}
.estate_flow > div.flow_cont > div:before {content: ""; background-color: #FFF; height: 22px; width: 40px; position: absolute; clip-path: polygon(0 0, 50% 100%, 100% 0%);right: 0px; left: 0; bottom: -20px; top: auto; margin: 0px auto;}
.estate_flow > div.flow_cont > div + div {margin-top: 60px;}
.estate_flow > div.flow_cont > div:last-child:before {content: none;}
.estate_flow > div.flow_cont > div div {min-height: 84px; display: flex; justify-content: center;}
.estate_flow > div.flow_cont > div dl {width: 80px; text-align: center; margin-right: 20px;}
.estate_flow > div.flow_cont > div dl dt {font-size: 16px;color: #018CD7; font-weight: 700; }
.estate_flow > div.flow_cont > div dl dd {margin-top: 10px;}
.estate_flow > div.flow_cont > div h3 {width: auto; text-align: center; font-size: 24px; font-weight: 700; display: flex; justify-content: center; align-items: center;}

.estate_bt_main div.cate ul {display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 30px; gap:10px 0;}
.estate_bt_main div.cate ul li {width: 32.5%; min-height: 126px; display: flex; justify-content: center; align-items: center;}

.estate_bt_main div.area ul {display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 30px;gap:10px 0;}
.estate_bt_main div.area ul li {width:32.5%; min-height: 66px; display: flex; justify-content: center; align-items: center;}


}

@media only screen and (max-width:946px){
.room_cont > p.en {font-size: 100px; white-space: nowrap; color: #F4F4F4; position: absolute; left: 40%; top: 7px; z-index: -1; line-height: 100%; font-weight: 300; }

}

@media only screen and (max-width:768px){
.splide-thumbnails {display: block;}

.estate_list {max-width: 1066px; margin: 60px 40px 60px;}
div.list {display: flex; flex-direction: column; justify-content: space-between; margin-bottom: 60px; border-bottom: 1px solid #D5D7D8; padding-bottom: 60px;}
div.list > figure {width: 100%; position:relative;}
div.list > div.item_info {width: 100%; margin-top: 20px;}

}
@media only screen and (max-width:764px){



}
@media only screen and (max-width:600px){

.consult > ul li {width:100%; height: 76px; margin: 0px auto;}


}

@media only screen and (max-width:500px){

.estate_flow {max-width: 1246px; margin: 0px 20px; padding: 50px 20px 50px;}
.estate_flow > h2 {font-size: 10px;text-align: center;}
.estate_flow > p.en {color: #018CD7; font-weight: 700; font-size: 20px; text-align: center;}
.estate_flow > div.flow_cont {margin-top: 30px; display: flex; flex-direction: column; justify-content: space-between;}
.estate_flow > div.flow_cont > div {width: 100%; padding: 30px 20px; box-sizing: border-box; border-radius: 20px; display: flex; flex-direction: column; position:relative;filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, .16)); background-color: #FFF;}
.estate_flow > div.flow_cont > div:before {content: ""; background-color: #FFF; height: 22px; width: 30px; position: absolute; clip-path: polygon(0 0, 50% 100%, 100% 0%);right: 0px; left: 0; bottom: -20px; top: auto; margin: 0px auto;}
.estate_flow > div.flow_cont > div + div {margin-top: 40px;}
.estate_flow > div.flow_cont > div:last-child:before {content: none;}
.estate_flow > div.flow_cont > div div {min-height: auto; display: flex; align-items: center; justify-content: flex-start;}
.estate_flow > div.flow_cont > div dl {width: 60px; text-align: center; margin-right: 20px; flex-shrink: 0;}
.estate_flow > div.flow_cont > div dl dt {font-size: 12px;color: #018CD7; font-weight: 700; }
.estate_flow > div.flow_cont > div dl dd {margin-top: 10px;}
.estate_flow > div.flow_cont > div h3 {width: calc(100% - 60px); text-align: center; font-size: 18px; font-weight: 700; display: flex; justify-content: center; align-items: center; margin-left: -50px;}
.estate_flow > div.flow_cont > div > p.txt {margin-top: 20px; font-size: 14px;}
.estate_flow > div.flow_cont > div > p.bt a {display: block; width:auto; max-width: 260px; background-color: #263238; color: #FFF; border-radius: 50px; text-align: center;font-weight: 700; font-size: 14px; padding: 10px 0px; margin: 20px auto 0px;}
.estate_flow > dl {display:block; flex-direction: column; align-items: flex-start; justify-content: center; text-align: center; margin-top: 30px;}
.estate_flow > dl dt {font-size: 12px; flex-shrink: 0; color: #FFF; font-weight: 700; background-color: #263238; padding: 3px 10px; margin: 0px 20px 0px 0px; margin: 0px auto; display:inline-block;}
.estate_flow > dl dd {font-size: 14px; text-align: center; margin-top: 16px;}
.estate_flow > dl dd strong {font-weight: 700; font-size: 14px; margin-right: 0em;}
br.sp {display: block;}

.estate_bt {max-width: 1246px;background-color: #FFF;box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.16); border-radius: 20px; padding: 40px 20px 40px; box-sizing: border-box; margin: 60px 20px 4px;}

.estate_bt > h2 {font-weight: 700; font-size: 22px; position: relative; padding-left: 30px; cursor: pointer;transition: 0.5s;}
.estate_bt > h2:after {position: absolute; right: 0; top:6px; content: ''; width: 28px; height: 28px; border-radius: 50%; background-color: #263238; z-index: 1;}
.estate_bt > h2 span:after,.estate_bt > h2 span:before {position: absolute;content:'';width: 16px;height: 4px;background-color:#FFF;z-index: 2; border-radius: 1px;}
.estate_bt > h2 span:before{right: 6px;top:18px; transform: rotate(0deg);transition: all 0.3s;}
.estate_bt > h2 span:after{right: 6px;top:18px;transform: rotate(90deg);transition: all 0.3s;}
.estate_bt > h2.active span:before{transform: rotate(0deg);}
.estate_bt > h2.active span:after{transform: rotate(0deg);}

.estate_bt > p.en {color: #018CD7; font-weight: 700; font-size: 20px; text-align: center;}
.estate_bt_main div.cate {margin-top: 30px;}
.estate_bt_main h3 {background-color: #263238; font-size: 12px; color: #FFF; text-align: center; font-weight: 700; padding: 5px 0px;}
.estate_bt_main div.cate ul {display: flex; justify-content: space-between; margin-top: 20px;gap:7px 0;}
.estate_bt_main div.cate ul li {width: 49%; min-height:auto; display: flex; justify-content: space-between; align-items: center; box-sizing: border-box;}
.estate_bt_main div.cate ul li svg {height: auto; max-height: 20px; max-width: 24px; width: auto; display: block;}
.estate_bt_main div.cate ul li svg .e {fill:#263238;}
.estate_bt_main div.cate ul li input[type=radio] {display: none;}
.estate_bt_main div.cate ul li label {cursor: pointer;display: inline-block; width: 100%; height: 100%;}
.estate_bt_main div.cate ul li dl {text-align: center; width:100%; height: 100%; background-color: #EFEFEF; padding: 0px 16px;box-sizing: border-box; display: flex; justify-content: space-between; align-items: center; height: 48px; }
.estate_bt_main div.cate ul li dl dt {font-size: 12px; font-weight: 700; line-height: 130%; text-align: left;}
.estate_bt_main div.cate ul li dl dd {flex-grow:1; margin-top: 0px; font-size: 0;width:auto; max-width: 24px; }
.estate_bt_main div.cate ul li label dl dd {margin-top: 0px; width:auto; max-width: 24px; display:inline-block; text-align: right;}
.estate_bt_main div.cate ul li input:checked + dl {background-color: #263238; }
.estate_bt_main div.cate ul li input:checked + dl dt {color: #FFF;}
.estate_bt_main div.cate ul li input:checked + dl dd svg .e {fill:#FFF;}
.estate_bt_main div.cate ul li a {background-color: #EFEFEF; display: block; width: 100%; height: 100%;}
.estate_bt_main div.cate ul li a dl dt {font-size: 11px;}

.estate_bt_main h3 {background-color: #263238; font-size: 12px; color: #FFF; text-align: center; font-weight: 700; padding: 5px 0px;}
.estate_bt_main div.area {margin-top: 30px;}
.estate_bt_main div.area ul {display: flex; justify-content: space-between; margin-top: 20px;gap:7px 0;}
.estate_bt_main div.area ul li {width: 49%; min-height: auto; height: 48px; display: flex; justify-content: center; align-items: center;}
.estate_bt_main div.area ul li input[type=radio] {display: none;}
.estate_bt_main div.area ul li label {cursor: pointer;display: inline-block; width: 100%; height: 100%;}
.estate_bt_main div.area ul li span {display: flex; justify-content: flex-start; align-items: center; width:100%; height: 100%; background-color: #EFEFEF; font-size: 12px; font-weight: 700; padding: 0px 16px; box-sizing: border-box;}
.estate_bt_main div.area ul li input:checked + span {background-color: #263238; color: #FFF;}

.estate_list {max-width: 1066px; margin: 50px 40px 50px;}
div.list {display: flex; flex-direction: column; justify-content: space-between; margin-bottom: 50px; border-bottom: 1px solid #D5D7D8; padding-bottom: 50px;}
div.list > figure {width: 100%; position:relative;}
div.list > figure div.splide img {width: 100%; display: block; height: auto;}
div.list > figure figcaption ul {position:absolute; left: 10px; top: 10px; display: flex;}
div.list > figure figcaption ul li {font-size: 10px; background-color: #008CD7; border-radius: 10px; color: #FFF; padding: 5px 10px;}
div.list > figure figcaption ul li + li {margin-left: 7px;}
div.list > div.item_info {width: 100%;}
div.list > div.item_info h2 {font-size: 18px; font-weight: 700;}
div.list > div.item_info h3 {font-size: 14px; font-weight: 700; color: #008CD7; line-height: 100%; margin-top: 15px;}
div.list > div.item_info h3 strong {font-size: 26px;}
div.list > div.item_info ul {margin-top: 20px;}
div.list > div.item_info ul li {font-size: 14px; padding-left: 30px; position:relative;}
div.list > div.item_info ul li + li {margin-top: 5px;}
div.list > div.item_info ul li.map:before {content: ""; width: 18px; height: 24px; background: url(../images/estate_map.svg) no-repeat; background-size: cover; position: absolute; left: 0; top: 3px;}
div.list > div.item_info ul li.move:before {content: ""; width: 18px; height: 21px; background: url(../images/estate_move.svg) no-repeat; background-size: cover; position: absolute; left: 0; top: 4px;}
div.list > div.item_info > div { margin-top: 18px; display: flex; justify-content: space-between; flex-wrap: wrap;gap:14px 0px;}
div.list > div.item_info > div dl {width: 49%; display: flex;}
div.list > div.item_info > div dl dt {font-size: 12px; border: 1px solid #263238; border-radius: 4px; padding: 3px 10px; margin-right: 0.5em;line-height: 130%;}
div.list > div.item_info > div dl dd {font-size: 14px; line-height: 130%; margin-top: 3px;}
div.list > div.item_info > p.bt a {display: block; width: 272px; background-color: #263238; color: #FFF; border-radius: 50px; text-align: center;font-weight: 700; font-size: 14px; padding: 10px 0px; margin: 24px 0px 0px 0px;}

.consult {max-width: 1246px; margin: 50px 20px 50px;background-color: #FFF;box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.16); border-radius: 20px; padding: 50px 20px 50px; box-sizing: border-box;}
.consult > h2 {font-weight: 700; font-size: 22px; position: relative; padding-left: 30px; transition: 0.5s;}

.consult > p.en {color: #018CD7; font-weight: 700; font-size: 20px; text-align: center;}
.consult > p.txt {margin-top: 20px; font-size: 14px; text-align:left; padding: 0px 20px;}
.consult > ul {padding: 20px; border-radius: 10px;}
.consult > ul li {width:100%; height: 67px; margin: 0px auto;}
.consult > ul li a {display: block; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; font-size: 14px; font-weight: 700; color: #FFF; background-color: #263238; border-radius: 50px;}
.consult > ul li + li { margin: 10px auto 0px; height: 48px;}


}
