@charset "utf-8";

.fOswald{
    font-family: "Oswald", sans-serif;
}
.mainWrapper{
    color: #424951;
}
.boxCmnTit{
    position: absolute;
    top: -70px;
    left: calc((100% - 1490px) / 2);
}
.cmnTitEng{
    font-size: var(--pcFontSize100);
    line-height: var(--pcLineHeight100_11);
    letter-spacing: var(--pcLetterSpacing100_4);
}
.cmnTitJp{
    font-size: var(--pcFontSize22);
    padding-left: 60px;
    position: relative;
    margin-top: 30px;
}
.cmnTitJp:before{
    content: '';
    position: absolute;
    left: 0;
    top: 11px;
    background: #424951;
    width: 40px;
    height: 1px;
}
#main{
    width: 100%;
}
@media only screen and (max-width:1600px){
    .boxCmnTit{
        left: 20px;
    }
}
@media only screen and (max-width:767px){
    .boxCmnTit{
        left: 4%;
        top: -20px;
    }
    .cmnTitEng {
        font-size: var(--spFontSize38);
        line-height: var(--pcLineHeight100_11);
        letter-spacing: 0;
    }
    .cmnTitJp {
        font-size: var(--spFontSize15);
        padding-left: 30px;
        position: relative;
        margin-top: 15px;
    }
    .cmnTitJp:before {
        top: 5px;
        width: 20px;
        height: 1px;
    }
}
/*-----------------------------------------------
    header
-----------------------------------------------*/
#header .headerInner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: calc(100% - 30px);
    height: 120px;
    margin: 0 0 0 auto;
}
#header .headerInfo {
    width: auto;
}
#header .headerLink .listLink, 
#header .headerLink .listLinkImg {
    align-items: center;
    width: auto;
}
#header .headerInfo {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    display: flex;
    flex-direction: row;
    width: calc(100% - 58%);
    align-items: center;
    justify-content: flex-start;
}
#header .headerInfo .txt {
    font-size: var(--pcFontSize16);
    font-weight: bold;
    margin-left: 50px;
    white-space: normal;
}
#header .headerLink {
    width: auto;
}
#header .imgLogo {
    width: 210px;
}
#header .headerInfo .txtBox {
    margin-top: 8px;
}
#header .listLinkImg .linkItem {
    width: 150px;
}
@media only screen and (max-width:1700px){
    #header .listLinkImg .linkItem {
        width: 125px;
    }
}
@media only screen and (max-width:1600px){
    #header .headerInfo .txt {
        font-size: var(--pcFontSize12);
        margin-left: 20px;
    }
    #header .listLink .linkItem + .linkItem {
        margin-left: 3%;
    }
    #header .imgLogo {
        width: 150px;
    }
    #header .listLinkImg .linkItem {
        width: 25%;
    }
}
@media only screen and (max-width:767px){
    #header .headerInfo .txtBox {
        margin-top: 0;
        display: block;
    }
    #header .headerInfo .txt {
        font-size: var(--spFontSize10);
        margin-left: 10px;
        padding-right: 10px;
    }
    #header .headerInfo {
        position: static;
        width: auto;
        justify-content: flex-start;
    }
    #header .headerLink {
        display: none;
    }
    #header .headerInner {
        width: 92%;
        margin: 0 auto;
        height: auto;
        min-height: 54px;
    }
}
/*-----------------------------------------------
    menu
-----------------------------------------------*/
@media only screen and (max-width:767px){
    #menu {
        background: rgba(34, 34, 34, 0.949);
        color: #fff;
    }
    #menu .listNavi {
        display: block;
    }
    #menu .naviItem {
        width: 100%;
    }
    #menu .linkItem .tit::after {
        display: none;
    }
    #menu .secContact {
        margin-top: 28px;
        height: auto;
        margin-top: 40px;
    }
    #menu .secContact .boxContent {
        width: 100%;
    }
    #menu .secContact.lazyloaded {
        background:none;
        display: block;
    }
    #menu .secContact .boxBtn a {
        width: 100%;
        height: 61px;
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: var(--spFontSize14);
        color: #fff;
        background: #002d59;
    }
    #menu .secContact .boxBtn a.linkReserve {
        color: #222222;
        background: #fac500;
        margin-left: 0px;
        margin-top: 10px;
    }
    #menu .secContact .boxBtn {
        display: block;
        margin-top: 0px;
    }
    #menu .secContact.lazyloaded .boxBtn .innerTxt:before {
        width: 24px;
        height: 24px;
        background-size: cover;
    }
    #menu .secContact .boxBtn .innerTxt {
        position: relative;
        padding-left: 40px;
    }
    #menu .linkItem .tit::before{
        position: absolute;
        content: '';
        margin: auto;
        display: block;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: rgba(255, 255, 255, 0.122);
    }
    #menu .linkItem .tit::after{
        position: absolute;
        content: '';
        margin: auto;
        display: block;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: rgba(255, 255, 255, 0.122);
    }
    #menu .secContact .txt01 {
        font-size: var(--spFontSize13);
    }
    #menu .secContact .txt02 {
        font-size: var(--spFontSize24);
        margin-top: 10px;
    }
    #menu .secContact .txt02 .iconTel {
        height: 18px;
        margin-right: 10px;
    }
    #menu .secContact .txtUnder:before {
        content: '';
        width: 18px;
        height: 60px;
        position: absolute;
        left: -30px;
        top: 6px;
    }
    #menu .secContact.lazyloaded .txtUnder:before {
        background: url(../img/estate_template/iconUnderLeft.png) center top / cover no-repeat;
    }
    #menu .secContact .txtUnder::after {
        content: '';
        width: 18px;
        height: 60px;
        position: absolute;
        transform: rotate(180deg);
        right: -30px;
        top: 6px;
    }
    #menu .secContact.lazyloaded .txtUnder::after {
        background: url(../img/estate_template/iconUnderLeft.png) center top / cover no-repeat;
    }
    #menu .secContact .txt03 {
        font-size: var(--spFontSize10);
        color: #fff;
        margin-top: 10px;
    }
    #menu .secContact .txtUnder {
        margin-top: 30px;
        position: relative;
        display: inline-block;
    }
    #menu .linkItem .tit {
        font-size: var(--spFontSize18);
        padding-top: 7px;
    }
    #menu .linkItem .tit .jpTit {
        margin-top: 8px;
        font-size: var(--spFontSize14);
    }
}
/*-----------------------------------------------
    index
-----------------------------------------------*/
/*-----------------------------------------------
    ファーストビュースライド
-----------------------------------------------*/
/* secHeroTopTop */
.secHeroTop{
    position: relative;
    /* overflow: hidden; */
}
.secHeroTop .img{
    width: 100%;
    height: 900px;
}
.secHeroTop .swiper-button-prev,
.secHeroTop .swiper-button-next{
    width: 80px;
    height: 80px;
    margin-top: 0;
    top: calc(50% - 40px);
    border-radius: 40px;
}
.secHeroTop .swiper-button-prev{
    left: 25px;
}
.secHeroTop .swiper-button-next{
    right: 25px;
}
.secHeroTop .swiper-pagination{
	width: 100%;
	display: block;
	width: 14px;
    bottom: -30px !important;
	right: 30px;
    position: absolute;
    margin: 30px 0 0 auto;
    text-align: right;
}
.secHeroTop .swiper-pagination.disabled{
	pointer-events: none;
}
.secHeroTop .swiper-pagination-bullet{
	margin: 0;
	opacity: 1;
	width: 40px;
	height: 2px;
    border-radius: unset;
    background: #e2e2e2;
}
.secHeroTop .swiper-pagination-bullet:nth-child(n+2){
	margin-top: 12px;
}
.secHeroTop .swiper-pagination-bullet-active{
	position: relative;
}
.secHeroTop .swiper-pagination-bullet-active::before{
    content: "";
    width: 0;
    height: 100%;
    background: #222;
    position: absolute;
    top: 0;
    left: 0;
    animation: pagination 3s linear forwards;
}
/* .secHeroTop .swiper-slide.active .img{
    animation: visual_move 7000ms linear;
} */
.secHeroTop .swiper-button-next:after, 
.secHeroTop .swiper-button-prev:after{
    display: none;
}
@keyframes pagination {
    0% {
        width: 0;
    }
    to {
        width: 100%;
    }
}

@keyframes visual_move {
    0% {
        transform: translate3d(-2%, 0, 0)
    }
    to {
        transform: translate3d(0%, 0, 0)
    }
}
@media only screen and (max-width:767px){
	.secHeroTop .img{
        height: 122.67vw;
	}
	.secHeroTop .swiper-pagination{
		
	}
    .secHeroTop .swiper-button-prev, 
    .secHeroTop .swiper-button-next{
        width: 58px;
        height: 58px;
        margin-top: 0;
        top: calc(50% - 29px);
    }
    .secHeroTop .swiper-button-next{
        right: -10px;
    }
    .secHeroTop .swiper-button-prev{
        left: -10px;
    }
    .secHeroTop .swiper-pagination-bullet {
        margin: 0;
        opacity: 1;
        width: 5px;
        height: 5px;
        border-radius: 50%;
        background: #dadada;
    }
    .secHeroTop .swiper-pagination-bullet-active {
        background: #222222;
    }
    .secHeroTop .swiper-pagination {
        width: 100%;
        display: block;
        width: 14px;
        bottom: -18px !important;
        right: 10px;
        position: absolute;
    }
    .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, 
    .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
        margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 3px) !important;
    }
    .secHeroTop .swiper-pagination-bullet-active::before{
        display: none;
    }
}

/*-----------------------------------------------
    bg01
-----------------------------------------------*/
.bg01.estateBg{
    padding: 80px 0 0 0;
    overflow: hidden;
}
.bg01.estateBg:not(:has(.secContact)){
    padding: 80px 0 140px 0;
}
.bg01.estateBg.lazyloaded{
    background: url(../img/estate_template/bg01.gif)center top / cover no-repeat;
}
@media only screen and (max-width:767px){
    .bg01.estateBg.lazyloaded {
        background: url(../img/estate_template/bg01_sp.gif) center top / cover no-repeat;
    }
    .bg01.estateBg {
        padding: 45px 0 0 0;
    }
    .bg01.estateBg:not(:has(.secContact)) {
        padding: 35px 0 0px 0;
    }
}

/*-----------------------------------------------
    secNews
-----------------------------------------------*/
.secNews{
    height: 300px;
    padding: 50px 45px;
    background: #fff;
    display: flex;
    border-bottom: 2px solid #e3e5e6;
}
.secNews .boxLeft{
    display: flex;
    align-items: center;
    justify-content: center;
    padding-right: 45px;
    margin-right: 40px;
    border-right: 1px solid #f2f2f2;
}
.secNews .boxLeft{
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
}
.secNews .boxLeft .titLeft{
    font-size: var(--pcFontSize38);
}
.secNews .boxLeft .titsubLeft{
    font-size: var(--pcFontSize14);
    padding-left: 20px;
    position: relative;
    margin-top: 20px;
}
.secNews .boxLeft .titsubLeft:before{
    content: '';
    position: absolute;
    left: 0;
    top: 7px;
    background: #424951;
    width: 10px;
    height: 1px;
}
.secNews .boxRight{
    flex: 1;
    overflow-y: scroll;
}
.secNews .boxRight .listItem{
    padding: 15px 15px 15px 0;
    border-bottom: 1px solid #f2f2f2;
    position: relative;
}
.secNews .boxRight .iconLink::before{
    content: "";
    position: absolute;
    bottom: 40px;
    right: 0;
}
.secNews .boxRight .iconLink::after {
    bottom: 50px;
    right: 11px;
}
.secNews .boxRight .listItem:first-child{
    padding-top: 0;
}
.secNews .boxRight .listItem:last-child{
    padding-bottom: 0;
    border-bottom: none;
}
.secNews .boxRight .boxImg{
    width: 110px;
    padding-top: 84px;
}
.secNews .coverBoxTxt{
    width: calc(100% - 130px);
}
.secNews .boxRight .boxTxt{
    margin-left: 20px;
    /* width: calc(100% - 130px); */
    padding-right: 40px;
}
.secNews .boxRight .txt01{
    font-size: var(--pcFontSize13);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.secNews .boxRight .txt02{
    font-size: var(--pcFontSize16);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-top: 14px
}
.secNews .listNew{
    margin-right: 30px;
}
.secNews .innerLink{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
}
.secNews .boxPdf{
    display: flex;
    align-items: flex-end;
}
.secNews .iconSpan {
    margin-left: 19px;
}

@media only screen and (max-width:767px){
    .secNews .moreBox {
        padding-top: 0px;
        background: #fff;
        position: relative;
        margin-top: -2px;
    }
    
    .secNews .moreBox .moreBtn {
        position: relative;
        width: 205px;
        height: 35px;
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 0 auto;
        border-radius: 24px;
        background-color: #fff;
        border: 1px solid #002d56;
        font-size: var(--spFontSize11);
        font-weight: bold;
        cursor: pointer;
    }
    .secNews .moreBox .moreBtn::before,
    .secNews .moreBox .moreBtn::after{
        position: absolute;
        content: '';
        margin: auto;
        display: block;
        top: 0;
        bottom: 0;
        left: 60px;
        width: 9px;
        height: 1px;
        background-color: #002d56;
    }
    .secNews .moreBox .moreBtn::after{
        left: 64px;
        width: 1px;
        height: 9px;
    }
    .secNews {
        height: auto;
        padding: 17px 15px 27px;
        background: #fff;
        display: block;
        border-bottom: 2px solid #e3e5e6;
    }
    .secNews .boxLeft {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-direction: row;
    }
    .secNews .boxRight {
        overflow: hidden;
    }
    .secNews .boxLeft .titLeft {
        font-size: var(--spFontSize20);
        margin-right: 10px;
    }
    .secNews .boxLeft .titsubLeft {
        font-size: var(--spFontSize12);
        padding-left: 15px;
        margin-top: 0px;
    }
    .secNews .boxLeft .titsubLeft:before {
        top: 5px;
    }
    .secNews .boxRight .txt02 {
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_15);
        white-space: unset;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2; /*表示マックスの行*/
        overflow: hidden;
        max-height: calc(var(--spFontSize12) * var(--spLineHeight12_15) * 5)px;
        margin-top: 7px;
    }
    .secNews .boxRight .listItem {
        padding: 15px 0;
        border-bottom: 1px solid #f2f2f2;
        position: relative;
    }
    .secNews .boxRight .txt01 {
        font-size: var(--spFontSize10);
        padding-right: 5px;
        width: calc(100% - 13px);
    }
    .secNews .coverBoxTxt{
        width: calc(100% - 110px);
    }
    .secNews .boxRight .boxTxt {
        margin-left: 10px;
        flex: 1;
        padding-right: 30px;
        /* width: calc(100% - 110px); */
    }
    .secNews .listNew {
        margin-right: 0;
    }
    .secNews .boxRight .boxImg {
        width: 100px;
        padding-top: 76px;
    }
    .secNews .boxRight .listItem:first-child {
        padding-top:15px;
    }
    .secNews .boxRight .listItem:nth-child(n+3) {
        display: none;
    }
    .secNews .listNew.active .listItem {
        display: block;
    }
    .secNews .boxRight .iconLink::before{
        bottom: calc(50% - 12px);
        right: 0;
    }
    .secNews .boxRight .iconLink::after {
        bottom: calc(50% - 3px);
        right: 11px;
    }
    .secNews .boxRight .listItem:last-child {
        padding-bottom: 15px;
    }
    .secNews .iconSpan {
        width: 12px;
        margin-left: 0px;
    }
    .secNews .spPdf {
        display: flex;
        align-items: center;
    }
}
.secNews .boxRight::-webkit-scrollbar {
    background: #e2e0e0;
    width: 8px;
}
.secNews .boxRight::-webkit-scrollbar-thumb {
    background-color: #c6c6c6;
    border-radius: 20px;
}

/*-----------------------------------------------
    secConcept
-----------------------------------------------*/
.secConcept{
    width: calc(100% - 70px);
    max-width: 1850px;
    position: relative;
    background: #fff;
    border-radius: 0 100px 0 0;
    margin: 170px auto 0 0;
}
.secConcept .boxFlex{
    display: flex;
    align-items: center;
    padding-top: 150px;
    padding-bottom: 150px;
}
.secConcept .boxImg{
    height: 0;
    width: 54.0545%;
    padding-top: 32.433%;
    /* margin-right: 3.5136%; */
}
.secConcept .boxTxt{
    flex: 1;
    padding-right: 6.4865%;
    margin-left: 3.5136%;
}
.secConcept .titConcept{
    font-size: var(--pcFontSize34);
    line-height: var(--pcLineHeight34_16);
    letter-spacing: var(--pcLetterSpacing34_1);
}
.secConcept .txtConcept{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_2);
    margin-top: 18px;
}
@media only screen and (max-width:767px){
    .secConcept {
        width: 100%;
        max-width: unset;
        position: relative;
        background: #fff;
        border-radius: 0 20px 0 0 ;
        margin: 0 auto;
        margin-top: 70px;
    }
    .secConcept .boxFlex {
        display: block;
        align-items: center;
        padding-top: 80px;
        padding-bottom: 40px;
        width: 92%;
        margin: 0 auto;
    }
    .secConcept .boxImg {
        height: 0;
        width: 104.35%;
        transform: translateX(-4%);
        padding-top: 62.61%;
        margin-right: 0;
    }
    .secConcept .titConcept {
        font-size: var(--spFontSize18);
        line-height: var(--spLineHeight18_17);
        margin-top: 25px;
        letter-spacing: 0;
    }
    .secConcept .txtConcept {
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_18);
        margin-top: 12px;
    }
    .secConcept .boxTxt {
        padding-right: 0;
    }
}
/*-----------------------------------------------
    secLocation
-----------------------------------------------*/
.secLocation{
    position: relative;
}
.secLocation .imgLocation{
    overflow: hidden;
}
.secLocation .categoryCon{
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.secLocation .boxCmnTit {
    position: absolute;
    top: 340px;
    left: calc((100% - 1490px) / 2);
}
.secLocation .cmnTitEng {
    color: #fff;
}
.secLocation .boxFlex {
    margin-top: 180px;
    display: flex;
}
.secLocation .boxFlex .boxImg{
    width: 61.292%;
}
.secLocation .boxFlex .imgInner{
    height: auto;
    width: 100%;
}
.secLocation .boxFlex .boxTxt{
    width: 32.259%;
    margin-right: 6.452%;
    height: fit-content;
    top: 130px;
    left: 0;
    position: sticky;
}
.secLocation .boxFlex .txtImg{
    font-size: var(--pcFontSize12);
    line-height: var(--pcLineHeight12_18);
    margin-top: 37px;
}
.secLocation .titConcept{
    font-size: var(--pcFontSize34);
    line-height: var(--pcLineHeight34_16);
    letter-spacing: var(--pcLetterSpacing34_1);
    margin-top: 60px;
}
.secLocation .txtConcept{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_2);
    margin-top: 18px;
}
@media only screen and (max-width:1600px){
    .secLocation .boxCmnTit {
        left: 20px;
    }
}
@media only screen and (max-width:767px){
    .secLocation .categoryCon {
        display: block;
    }
    .secLocation {
        margin-top: 30px;
    }
    .secLocation .boxCmnTit {
        top: unset;
        bottom: -34px;
        left: 4%;
    }
    .secLocation .imgLocation {
        position: relative;
    }
    .secLocation .boxFlex {
        margin-top: 60px;
        display: block;
    }
    .secLocation .titConcept {
        font-size: var(--spFontSize18);
        line-height: var(--spLineHeight18_17);
        margin-top: 55px;
        letter-spacing: 0;
    }
    .secLocation .boxFlex .boxTxt {
        width: 100%;
        margin-right: 0;
        position: static;
    }
    .secLocation .txtConcept {
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_18);
        margin-top: 13px;
    }
    .secLocation .boxFlex .boxImg {
        width: 100%;
        margin-top: 22px;
    }
    .secLocation .boxFlex .txtImg {
        font-size: var(--spFontSize10);
        line-height: var(--spLineHeight10_18);
        margin-top: 16px;
    }
}
/* categoryCon */
.categoryCon .boxA{
    width: 100%;
}
.categoryCon .patternCon{
    margin-top: 88px;
}
.categoryCon .boxBC .patternCon{
    margin-top: 75px;
}
.categoryCon .titCategory{
    display: flex;
    align-items: center;
    padding-bottom: 26px;
    border-bottom: 1px solid #424951;
}
.categoryCon .titCategory .titEng{
    font-size: var(--pcFontSize40);
    letter-spacing: var(--pcLetterSpacing40_2);
}
.categoryCon .titCategory .titJp{
    font-size: var(--pcFontSize22);
    margin-left: 23px;
}
.categoryCon .boxCategory{
    margin-top: 30px;
}
.categoryCon .boxCategory .boxImg{
    width: 300px;
    height: 0;
    padding-top: 240px;
}
.categoryCon .patternC .boxCategory .boxImg{
    width: 330px;
    padding-top: 264px;
    margin-right: 0;
}
.categoryCon .listCategory{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.categoryCon .listItem{
    display: flex;
    align-items: center;
    width: 47.097%;
}
.categoryCon .listItem:nth-child(n+3){
    margin-top: 30px;
}
.categoryCon .listItem .boxImg{
    width: 300px;
    height:0;
    padding-top: 240px;
    margin-right: 5.48%;
}
.categoryCon .listItem .boxTxt{
    flex: 1;
}
.categoryCon .listItem .innerTit{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_13);
    letter-spacing: var(--pcLetterSpacing18_1);
}
.categoryCon .listItem .innerTxt{
    font-size: var(--pcFontSize13);
    line-height: var(--pcLineHeight13_17);
    margin-top: 15px;
}
.categoryCon .boxUnderList{
    display: flex;
}
.categoryCon .boxUnderList .underList{
    margin-right: 2.581%;
    width: calc((100% - 200px) / 6);
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 50px;
}
.categoryCon .boxUnderList .underList:last-child{
    margin-right: 0px;
}
.categoryCon .boxUnderList .boxUnderimg{
    width: 100%;
    height: 0;
    padding-top: 80%;
}
.categoryCon .boxUnderList .boxUndertxt{
    margin-top: 15px;
}
.categoryCon .boxUnderList .innerTit{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_16);
    letter-spacing: var(--pcLetterSpacing14_05);
    text-align: center;
}
.categoryCon .boxGray{
    margin-top: 45px;
    padding: 28px 26px;
    background: #f6f6f6;
}
.categoryCon .txtGray{
    font-size: var(--pcFontSize13);
    line-height: var(--pcLineHeight13_2);
    letter-spacing: var(--pcLetterSpacing13_05);
}
/* patternB */
.boxBC{
    display: flex;
    flex-wrap: wrap;
    width: 45.162%;
    /* margin-right: 9.67%; */
}
/* .boxBC + .boxBC{
    margin-right: 0;
} */
.boxBC .patternCon + .patternCon{
    margin-left: 9.677%;
}
.boxBC .patternCon:nth-child(2n+1){
    margin-left: 0;
}
.categoryCon .patternCon.patternB,
.categoryCon .patternCon.patternC{
    width: 45.162%;
    width: 100%;
}
.categoryCon .patternCon.patternB .listItem{
    width: 100%;
}
.categoryCon .patternCon.patternC .listItem{
    flex-direction: column;
}
.categoryCon .patternCon.patternC .listItem:nth-child(2n){
    margin-right: 0;
}
.categoryCon .patternCon.patternC .listItem .boxTxt{
    margin-top: 30px;
}
.categoryCon .patternCon.patternB .listItem:nth-child(n+2){
    margin-top: 30px;
}
.categoryCon .patternCon.patternB .listItem:nth-child(2n){
    flex-direction: row-reverse;
}
.categoryCon .patternCon.patternB .listItem:nth-child(2n) .boxImg{
    margin-right: 0;
    margin-left: 5.48%;
}
.categoryCon .patternCon.patternB .boxUnderList,
.categoryCon .patternCon.patternC .boxUnderList{
    flex-wrap: wrap;
}
.categoryCon .patternCon.patternB .underList,
.categoryCon .patternCon.patternC .underList{
    margin-right: 35px;
    width: calc((100% - 70px) / 3);
}
.categoryCon .patternCon.patternB .underList:nth-child(3n),
.categoryCon .patternCon.patternC .underList:nth-child(3n){
    margin-right: 0px;
}
.categoryCon .patternCon.patternB .underList:nth-child(n+4),
.categoryCon .patternCon.patternC .underList:nth-child(n+4){
    margin-top: 25px;
}
.categoryCon .patternCon.patternB .boxUnderList .boxUnderimg,
.categoryCon .patternCon.patternC .boxUnderList .boxUnderimg{
    width: 100%;;
    height: 0;
    padding-top: 80%;
}
@media only screen and (max-width:767px){
    .categoryCon .boxCategory {
        margin-top: 20px;
    }
    .categoryCon .titCategory .titEng {
        font-size: var(--spFontSize24);
        letter-spacing: 0;
    }
    .categoryCon .titCategory .titJp {
        font-size: var(--spFontSize13);
    }
    .categoryCon .titCategory {
        padding-bottom: 20px;
        align-items: center;
        justify-content: space-between;
    }
    .categoryCon .patternCon {
        margin-top: 50px;
    }
    .categoryCon:not(:has(+ .boxFlex)) .patternCon {
        margin-top: 10px;
    }
    .categoryCon .listItem {
        display: block;
        width: 47.83%;
    }
    .categoryCon .listItem .boxImg {
        width: 100%;
        height: 0;
        padding-top: 80%;
        margin-right: 15px;
    }
    .categoryCon .patternC .boxCategory .boxImg {
        width: 100%;
        height: 0;
        padding-top: 80%;
        margin-right: 15px;
    }
    .categoryCon .listItem .innerTit {
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_15);
        letter-spacing: 0;
        margin-top: 10px;
    }
    .categoryCon .listItem .innerTxt {
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_15);
        margin-top: 10px;
    }
    .categoryCon .boxUnderList .underList {
        margin-right: 9px;
        width: calc((100% - 18px) / 3);
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-top: 20px;
    }
    .categoryCon .boxUnderList {
        display: flex;
        flex-wrap: wrap;
        margin-top: 5px;
    }
    .categoryCon .boxUnderList .underList:nth-child(3n){
        margin-right: 0;
    }
    .categoryCon .boxUnderList .boxUnderimg {
        width: 100%;
        height: 0;
        padding-top: 78.92%;
    }
    .categoryCon .boxUnderList .boxUndertxt {
        margin-top: 10px;
    }
    .categoryCon .boxUnderList .innerTit {
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_15);
        text-align: left;
    }
    .categoryCon .txtGray {
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_15);
    }
    .boxBC {
        display: block;
        width: 100%;
    }
    .categoryCon .patternCon.patternB, 
    .categoryCon .patternCon.patternC {
        width: 100%;
    }
    .categoryCon .patternCon.patternB .listItem {
        width: 47.83%;
    }
    .categoryCon .patternCon.patternB .listItem:nth-child(n+2) {
        margin-top: 0px;
    }
    .categoryCon .patternCon.patternB .listItem:nth-child(n+3) {
        margin-top: 30px;
    }
    .categoryCon .patternCon.patternB .listItem:nth-child(2n) .boxImg {
        margin-right: 0;
        margin-left: 0;
    }
    .categoryCon .patternCon.patternB .underList, .categoryCon .patternCon.patternC .underList {
        margin-right: 9px;
        width: calc((100% - 18px) / 3);
    }
    .categoryCon .boxGray {
        margin-top: 30px;
        padding: 15px 15px;
        background: #f6f6f6;
    }
    .boxBC .patternCon + .patternCon {
        margin-left: 0;
    }
    .categoryCon .patternCon.patternC .listItem .boxTxt {
        margin-top: 0;
    }
}
/*-----------------------------------------------
    secMap
-----------------------------------------------*/
/* secMap */
.secMap{
    margin-top: 100px;
    overflow: hidden;
}
.secMap .cmnPageBtn{
    margin-top: 60px;
}
.secMap .cmnPageBtn a {
    margin: 0 auto;
    width: 440px;
    height: 85px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #002d56;
    border-radius: 50px;
    font-size: var(--pcFontSize18);
    font-weight: bold;
    transition: 0.2s;
}
.secMap .cmnPageBtn span {
    position: relative;
    display: inline-block;
    padding-left: 33px;
}
.secMap .cmnPageBtn span::before {
    position: absolute;
    content: '';
    margin: auto;
    display: block;
    top: 0;
    bottom: 0;
    left: 0;
    width: 20px;
    height: 25px;
}
.secMap .cmnPageBtn.lazyloaded span::before {
    background: url(../img/estate_template/iconMap.png) center top / cover no-repeat;
}
@media only screen and (max-width:767px){
    .secMap {
        margin-top: 30px;
    }
    .secMap iframe{
        width: 100%;
        height: 280px;
    }
    .secMap .cmnPageBtn {
        margin-top: 30px;
    }
    .secMap .cmnPageBtn a {
        margin: 0 auto;
        width: 315px;
        height: 60px;
        display: flex;
        justify-content: center;
        align-items: center;
        border: 1px solid #002d56;
        border-radius: 50px;
        font-size: var(--spFontSize13);
        font-weight: bold;
        transition: 0.2s;
    }
    .secMap .cmnPageBtn span::before {
        width: 14px;
        height: 18px;
    }
    .secMap .cmnPageBtn span {
        padding-left: 25px;
    }
}
@media only screen and (max-width:360px){
    .secMap .cmnPageBtn a {
        width: 285px;
    }
}
/*-----------------------------------------------
    secContact
-----------------------------------------------*/
.secContact{
    margin-top: 150px;
    height: 588px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.secContact.lazyloaded{
    background: url(../img/estate_template/bgContact.jpg)center top / cover no-repeat;
}
.secContact .boxContent{
    text-align: center;
}
.secContact .txtContact{
    font-size: var(--pcFontSize28);
    position: relative;
    color: #fff;
    display: inline;
}
.secContact .boxBtn{
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 50px;
}
.secContact .boxBtn a{
    width: 580px;
    height: 105px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--pcFontSize20);
    color: #fff;
    background: #002d59;
}
.secContact .boxBtn a.linkReserve{
    color: #222222;
    background: #fac500;
    margin-left: 40px;
}
.secContact .boxBtn .innerTxt{
    position: relative;
    padding-left: 50px;
}
.secContact.lazyloaded .boxBtn .innerTxt:before{
    content: '';
    position: absolute;
    width: 30px;
    height: 30px;
    top: -9px;
    left: 0;
    background: url(../img/common/iconHeader02.png);
}
.secContact.lazyloaded .linkReserve .innerTxt:before{
    background: url(../img/common/iconHeader04.png);
}
.secContact .txtContact:before{
    content: '';
    position: absolute;
    width: 80px;
    height: 1px;
    right: -100px;
    top: 14px;
    background: #fff;
}
.secContact .txtContact:after{
    content: '';
    position: absolute;
    width: 80px;
    height: 1px;
    left: -100px;
    top: 14px;
    background: #fff;
}
.secContact .txtUnder{
    margin-top: 58px;
    position: relative;
    display: inline-block;
}
.secContact .txtUnder:before{
    content: '';
    width: 31px;
    height: 106px;
    position: absolute;
    left: -60px;
    top: 0;
}
.secContact.lazyloaded .txtUnder:before{
    background: url(../img/estate_template/iconUnderLeft.png)center top / cover no-repeat;
}
.secContact .txtUnder::after{
    content: '';
    width: 31px;
    height: 106px;
    position: absolute;
    transform: rotate(180deg);
    right: -60px;
    top: 0;
}
.secContact.lazyloaded .txtUnder::after{
    background: url(../img/estate_template/iconUnderLeft.png)center top / cover no-repeat;
}
.secContact .txt01{
    font-size: var(--pcFontSize18);
    color: #fff;
}
.secContact .txt02{
    font-size: var(--pcFontSize40);
    color: #fff;
    margin-top: 15px;
    display: flex;
    align-items: center;
}
.secContact .txt02 .iconTel{
    height: 33px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 16px;
    width: 50px;
}
.secContact .txt02 img{
    height: 100%;
    width: 100%;
}
.secContact .txt03{
    font-size: var(--pcFontSize14);
    color: #fff;
    margin-top: 15px;
}

@media only screen and (max-width:767px){
    .secContact.lazyloaded {
        background: url(../img/estate_template/bgContact_sp.jpg) center top / cover no-repeat;
    }
    .secContact .txtContact {
        font-size: var(--spFontSize16);
        position: relative;
        color: #fff;
        display: inline;
    }
    .secContact .txtContact:before {
        width: 20px;
        right: -29px;
        top: 10px;
    }
    .secContact .txtContact:after {
        width: 20px;
        left: -29px;
        top: 10px;
    }
    .secContact .boxContent {
        text-align: center;
        width: 92%;
        margin: 0 auto;
    }
    .secContact .boxBtn {
        display: block;
        margin-top: 30px;
    }
    .secContact .boxBtn a {
        width: 100%;
        height: 61px;
        font-size: var(--spFontSize14);
    }
    .secContact .boxBtn a.linkReserve {
        margin-top: 10px;
        margin-left: 0px;
    }
    .secContact.lazyloaded .boxBtn .innerTxt:before {
        width: 24px;
        height: 24px;
        top: -9px;
        left: 0;
        background: url(../img/common/iconHeader02.png) center top / cover no-repeat;
    }
    .secContact .boxBtn .innerTxt {
        position: relative;
        padding-left: 35px;
    }
    .secContact.lazyloaded .linkReserve .innerTxt:before {
        background: url(../img/common/iconHeader04.png)center top / cover no-repeat;
    }
    .secContact .txt01 {
        font-size: var(--spFontSize13);
        color: #fff;
    }
    .secContact .txt02 {
        font-size: var(--spFontSize24);
        margin-top: 10px;
    }
    .secContact .txt02 .iconTel {
        height: 17px;
        margin-right: 6px;
        width: 26px;
    }
    .secContact .txt03 {
        font-size: var(--spFontSize10);
        color: #fff;
        margin-top: 10px;
    }
    .secContact .txtUnder::after {
        content: '';
        width: 18px;
        height: 62px;
        position: absolute;
        transform: rotate(180deg);
        right: -30px;
        top: 0;
    }
    .secContact.lazyloaded .txtUnder::after {
        background: url(../img/estate_template/iconUnderLeft.png) center top / cover no-repeat;
    }
    .secContact .txtUnder:before {
        content: '';
        width: 18px;
        height: 62px;
        position: absolute;
        left: -30px;
        top: 0;
    }
    .secContact.lazyloaded .txtUnder:before{
        background: url(../img/estate_template/iconUnderLeft.png) center top / cover no-repeat;
    }
    .secContact .txtUnder {
        margin-top: 30px;
    }
    .secContact {
        margin-top: 80px;
        height: 394px;
    }
}

/*-----------------------------------------------
    bg02
-----------------------------------------------*/
.bg02.estateBg{
    padding: 50px 0 0 0;
    margin-top: 150px;
    overflow: hidden;
}
.bg02.estateBg.lazyloaded{
    background: url(../img/estate_template/bg02.gif)center top no-repeat ;
}
@media only screen and (max-width:767px){
    .bg02.estateBg{
        margin-top: 80px;
    }
    .bg02.estateBg.lazyloaded {
        background: url(../img/estate_template/bg02.jpg) center top / contain no-repeat;
    }
}

/*-----------------------------------------------
    secConcept
-----------------------------------------------*/
.secPlan{
    width: calc(100% - 70px);
    max-width: 1850px;
    position: relative;
    background: #fff;
    border-radius: 0 100px 0 0;
    margin: 150px auto 0 0;
    padding-top: 260px;
}
.planTop{
    
}
.secPlan .imgPlan{
    text-align: center;
}
.secPlan .imgPlan img{
    max-width: 100%;
    width: auto;
}
.planTop .boxFlex{
    display: flex;
    align-items: center;
    /* padding-top: 260px; */
}
.planTop .boxImg{
    height: 0;
    width: 54.0545%;
    padding-top: 600px;
    /* margin-right: 3.5136%; */
}
.planTop .boxTxt{
    flex: 1;
    padding-right: 6.4865%;
    padding-bottom: 120px;
    margin-left: 3.5136%;
}
.planTop .boxTxt:not(:has(.txtCon)){
    padding-bottom: 0px;
}
.planTop .titConcept{
    font-size: var(--pcFontSize34);
    line-height: var(--pcLineHeight34_16);
}
.planTop .txtConcept{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_2);
    margin-top: 16px;
}

.secPlan .txtUnderImg{
    font-size: var(--pcFontSize12);
    line-height: var(--pcLineHeight12_18);
    margin-top: 36px;
}
.secPlan .boxWrapper{
    margin-top: 120px;
}
.secPlan .boxWrapper:not(:has(.wrapperCon)){
    margin-top: 0px;
}
@media only screen and (max-width:767px){
    .secPlan{
        width: 100%;
        max-width: unset;
        position: relative;
        background: #fff;
        border-radius: 0 30px 0 0;
        margin: 50px auto 0 0;
        padding-top: 120px;
    }
    .planTop {
    
    }
    .secPlan .imgPlan img{
        width: 100%;
    }
    .planTop .boxFlex {
        display: block;
        /* padding-top: 120px; */
        padding-bottom: 23px;
        width: 92%;
        margin: 0 auto;
    }
    .planTop .boxTxt{
        padding-bottom: 23px;
    }
    .planTop .boxImg {
        height: 0;
        width: 102.9%;
        transform: translateX(-4%);
        padding-top: 61.74%;
        margin-right: 0;
    }
    .planTop .titConcept {
        font-size: var(--spFontSize18);
        line-height: var(--spLineHeight18_17);
        margin-top: 25px;
    }
    .planTop .txtConcept {
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_18);
        margin-top: 10px;
    }
    .secPlan .txtUnderImg {
        font-size: var(--spFontSize10);
        line-height: var(--spLineHeight10_18);
        margin-top: 15px;
    }
    .secPlan .boxWrapper{
        margin-top: 0px;
    }
}
/*-----------------------------------------------
    searchEstate
-----------------------------------------------*/
/* searchEstate */
.searchEstate{
    padding-top: 70px;
}
/* .searchEstate .secEstateSlider{
    margin-top: 48px;
} */
.searchEstate .boxSlider{
    position: relative;
}
.searchEstate .swiper {
    overflow: visible;
    margin: 5px auto;
}
.searchEstate .swiper-slide{
    height: auto;
}
.searchEstate .disabled .swiper-slide{
    width: 30.968%;
}
.searchEstate .disabled .swiper-slide:not(:last-child){
    margin-right: 55px;
}
.searchEstate .estateSlider{
    display: block;
    height: 100%;
    transition: 0.4s;
    /* transition: 0.2s; */
}
.searchEstate .inner{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    background-color: #fff;
    height: 100%;
    transition: 0.4s;
}
.searchEstate .imgBox{
    width: 100%;
    height: 0;
    padding-top: 70.835%;
}
.searchEstate .icon{
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 10px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: var(--pcFontSize12);
    z-index: 2;
}
.searchEstate .icon01{
    background-color: #002d59;
}
.searchEstate .icon02{
    background-color: #6b6449;
}
.searchEstate .txtBox{
    width: 100%;
    height: 100%;
    padding: 28px 0px 140px;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.searchEstate .txtBox .landNum{
    font-size: var(--pcFontSize28);
    letter-spacing: var(--pcLetterSpacing28_1);
    line-height: var(--pcLineHeight28_13);
    display: inline;
    background: linear-gradient(transparent 99%, #000000 0%);
}
.searchEstate .estateTit{
    font-size: var(--pcFontSize18);
    font-weight: bold;
    line-height: var(--pcLineHeight18_17);
    text-align: left;
    margin-top: 24px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    max-height: calc(var(--pcFontSize18) * var(--pcLineHeight18_17) * 5)px;
}
.searchEstate .estateTxt{
    font-size: var(--pcFontSize15);
    font-weight: bold;
    line-height: var(--pcLineHeight15_17);
    text-align: left;
    margin-top: 16px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
    overflow: hidden;
    font-weight: 400;
    max-height: calc(var(--pcFontSize15) * var(--pcLineHeight15_17) * 5)px;
}
.searchEstate .infoTxtBox{
    margin-top: 18px;
    line-height: 1.8;
}
.searchEstate .infoTxt{
    font-size: var(--pcFontSize12);
    letter-spacing: var(--pcLetterSpacing12_05);
}
.searchEstate .infoBox{
    padding: 0 5px;
}
.searchEstate .priceBox{
    position: relative;
    margin-top: 30px;
    padding: 30px;
    background: #f6f6f6;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}
/* iconLink */
/* cmnSwiperNav */
.cmnSwiperNav{
    margin: 40px auto 0;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}
.searchEstate .cmnSwiperNav {
    margin: auto;
    position: absolute;
    top: 118px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    width: calc(1550px + 70px);
    justify-content: space-between;
}
.cmnSwiperNav.spOnly{
    display: none;
}
.cmnSwiperNav .swiper-button-prev,
.cmnSwiperNav .swiper-button-next{
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    width: 65px;
    height: 43px;
    border-radius: 21px;
    background-color: #fff;
    box-shadow: 0 0 5px 3px rgba(0, 0, 0, 0.05);
    border-radius: 40px;
    margin: 0;
    transition: all 0.3s ease-out;
}
.cmnSwiperNav .swiper-button-prev{
    transform: rotate(180deg);
}
.cmnSwiperNav .swiper-button-prev::after,
.cmnSwiperNav .swiper-button-next::after{
    content: '';
    color: inherit;
    right: 21px;
}
.cmnSwiperNav .swiper-button-prev::before,
.cmnSwiperNav .swiper-button-next::before{
    width: 23px;
    right: 21px;
}
.cmnSwiperNav .swiper-pagination{
    display: block;
}
.cmnSwiperNav .swiper-pagination{
    position: relative;
    bottom: auto!important;
    left: auto!important;
    width: auto!important;
    display: flex;
    justify-content: center;
    margin: 0 40px;
}
.cmnSwiperNav .swiper-pagination-bullet{
    margin: 0 8px!important;
    opacity: 1;
    width: 15px;
    height: 15px;
    background: #fff;
    transition: all 0.3s ease-out;
}
.cmnSwiperNav .swiper-pagination-bullet-active{
    background: #002d56;
}
/* hover */
.cmnSwiperNav .swiper-button-prev:hover,
.cmnSwiperNav .swiper-button-next:hover{
    background-color: #001b3f;
}
.cmnSwiperNav .swiper-button-prev:hover::before,
.cmnSwiperNav .swiper-button-next:hover::before{
    background-color: #fff;
}
.cmnSwiperNav .swiper-button-prev:hover::after,
.cmnSwiperNav .swiper-button-next:hover::after{
    border-color: transparent transparent transparent #fff;
}
.searchEstate .iconLink::before{
    display: none;
}
.searchEstate .iconLink::after{
    background: url(../img/estate_template/iconArrow02.png)center top / cover no-repeat;
    width: 15px;
    height: 9px;
    top: 3px;
    transform: unset;
    border: none;
    right: 30px;
    bottom: unset;
}
.searchEstate .priceTxtBox{
    position: relative;
    text-align: left;
}
.searchEstate .price{
    font-size: var(--pcFontSize13);
    line-height: var(--pcLineHeight13_18);
    display: block;
}
.searchEstate .priceInfoTxt{
    display: flex;
    align-items: flex-end;
}
.searchEstate .priceInfoTxt .txtLeft{
    font-size: var(--pcFontSize38);
}
.isTablet .searchEstate .priceInfoTxt .txtLeft{
    font-size: var(--pcFontSize34);
}
.isTablet .searchEstate .price {
    font-size: var(--pcFontSize12);
}
.searchEstate .priceInfoTxt .innerTxt{
    display: flex;
    flex-direction: column;
}
.searchEstate .priceInfoTxt .txtTop{
    font-size: var(--pcFontSize12);
}
.searchEstate .priceInfoTxt .txtBottom{
    font-size: var(--pcFontSize18);
    margin-top: 5px;
}

.searchEstate .swiper-button-prev {
    transform: rotate(180deg);
}
.searchEstate .swiper-button-prev, 
.searchEstate .swiper-button-next {
    width: 65px;
    height: 65px;
    border-radius: 65px;
}
.searchEstate .swiper-button-prev::before, 
.searchEstate .swiper-button-next::before {
    width: 23px;
    right: 21px;
}
.searchEstate .swiper-button-prev::after, 
.searchEstate .swiper-button-next::after {
    content: '';
    color: inherit;
    right: 21px;
}
/* hover */
.searchEstate .btnBox{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 20px;
    margin: auto;
    width: 380px;
    height: 85px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #424951;
    color: #424951;
    border-radius: 50px;
}
.searchEstate .btnBox .txtBtn{
    font-size: var(--pcFontSize18);
    font-weight: bold;
    width: 100%;
}
/* SOLDOUT */
.searchEstate .soldOut{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    background-color: rgba(34, 34, 34, .6);
}
.searchEstate .imgSoldout{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}
.searchEstate .imgSoldout img{
    display: flex;
    align-items: center;
    justify-content: center;
    position: static;
    width: auto;
    height: auto;
}
/* memberSlider */
.searchEstate .imgMember{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    background-color: rgba(34, 34, 34, .6);
}
.searchEstate .memberTxt{
    font-size: var(--pcFontSize28);
    font-weight: 500;
    letter-spacing: var(--pcLetterSpacing28_3);
    line-height: var(--pcLineHeight28_13);
    text-align: center;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
}
.searchEstate .memberBox{
    margin-top: 40px;
    margin-bottom: 10px;
}
.searchEstate .memberBtnBox{
    margin-right: 0px;
}
.searchEstate .aMemberBtn{
    position: relative;
    width: 380px;
    height: 85px;
    border-radius: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: var(--pcFontSize18);
    letter-spacing: var(--pcLetterSpacing18_1);
    font-weight: bold;
    color: #fff;
    margin: 0 auto;
    background-color: #ac0008;
    z-index: 2;
}
.searchEstate .aMemberBtn.spNone{
    display: flex;
}
.searchEstate .aMemberBtn.spOnly{
    display: none;
}
.searchEstate .aMemberBtn::after {
    position: absolute;
    content: '簡単登録 45秒!';
    font-size: 0;
    margin: auto;
    display: block;
    top: -26px;
    left: 34px;
    width: 60px;
    height: 60px;
    border-radius: 60px;
}
.searchEstate.lazyloaded .aMemberBtn::after {
    background: #fac500 url(../img/common/txtMember.gif) center center / 48px 28px no-repeat;
}
.searchEstate .memberTxtLink {
    margin-top: 25px;
    font-size: var(--pcFontSize14);
    font-weight: bold;
    width: 100%;
    text-align: center;
}
.searchEstate .memberTxtLink a {
    color: #146add;
    text-decoration: underline;
}
.searchEstate .boxMember .btnBox{
    opacity: 0.4;
    pointer-events: none;
}
.searchEstate .aMemberBtn::before {
    position: absolute;
    content: '';
    margin: auto;
    display: block;
    background: url(../img/estate_template/iconArrow03.png) center top / cover no-repeat;
    width: 15px;
    height: 9px;
    top: 36px;
    transform: unset;
    border: none;
    right: 30px;
    bottom: unset;
}
@media only screen and (max-width:1640px){
    .searchEstate .cmnSwiperNav {
        width: calc(1470px + 70px);
    }
}
@media only screen and (max-width:1500px){
    .searchEstate .cmnSwiperNav {
        width: calc(1320px + 70px);
    }
}
@media only screen and (max-width:767px){
    .searchEstate {
        padding-top: 26px;
    }
    .searchEstate .secEstateSlider {
        /* margin-top: 24px; */
    }
    .cmnSwiperNav.spNone,
    .cmnSwiperNav .spNone{
        display: none;
    }
    .searchEstate .cmnSwiperNav{
        display: none;
    }
    .searchEstate .swiper-slide {
        height: auto;
        display: block;
        width: 47.83%;
    }
    .searchEstate .swiper-slide:nth-child(n+3) {
        margin-top: 30px;
    }
    .searchEstate .swiper-slide:nth-child(n+5) {
        display: none;
    }
    .searchEstate .swiper-wrapper.active .swiper-slide:nth-child(n+5) {
        display: block;
    }
    .searchEstate .swiper-wrapper {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .searchEstate .icon {
        bottom: unset;
        top: 0;
        left: 0;
        padding: 5px;
        font-size: var(--spFontSize10);
    }
    .searchEstate .txtBox {
        padding: 10px 0px 50px;
        text-align: left;
    }
    .searchEstate .txtBox .landNum {
        font-size: var(--spFontSize16);
        line-height: var(--spLineHeight16_13);
        letter-spacing: 0;
        background: linear-gradient(transparent 97%, #000000 0%);
    }
    .searchEstate .estateTit {
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_16);
        margin-top: 10px;
        -webkit-line-clamp: 3;
        max-height: calc(var(--spFontSize11)* var(--spLineHeight11_16)* 3) px;
    }
    .searchEstate .estateTxt {
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_16);
        text-align: left;
        margin-top: 15px;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        overflow: hidden;
        max-height: calc(var(--spFontSize11)* var(--spLineHeight11_16)* 3) px;

        display: none;
    }
    .searchEstate .priceBox {
        margin-top: 8px;
        padding: 15px 15px 43px 16px;
        display: block;
        position: relative;
    }
    .searchEstate .price {
        font-size: var(--spFontSize10);
        line-height: var(--spLineHeight10_15);
    }
    .searchEstate .priceInfoTxt .txtLeft {
        font-size: var(--spFontSize18);
    }
    .searchEstate .priceInfoTxt .innerTxt {
        display: flex;
        flex-direction: row-reverse;
        align-items: flex-end;
    }
    .searchEstate .priceInfoTxt .txtTop {
        font-size: var(--spFontSize10);
    }
    .searchEstate .priceInfoTxt .txtBottom {
        font-size: var(--spFontSize12);
        margin-top: 0px;
    }
    .searchEstate .priceInfoTxt {
        display: flex;
        align-items: flex-end;
        justify-content: flex-end;
        position: absolute;
        bottom: 15px;
        right: 15px;
    }
    .searchEstate .btnBox {
        width: 125px;
        height: 35px;
        bottom: 0px;
    }
    .searchEstate .btnBox .txtBtn {
        font-size: var(--spFontSize11);
        width: auto;
    }
    .searchEstate .iconLink::after {
        display: none;
    }
    .searchEstate .moreBox .moreBtn {
        position: relative;
        width: 185px;
        height: 45px;
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 30px auto 0;
        border-radius: 24px;
        background-color: #424951;
        color: #fff;
        font-size: var(--spFontSize11);
        font-weight: bold;
    }
    .searchEstate .moreBox .moreBtn::before,
    .searchEstate .moreBox .moreBtn::after {
        position: absolute;
        content: '';
        margin: auto;
        display: block;
        top: 0;
        bottom: 0;
        right: 23px;
        width: 9px;
        height: 1px;
        background-color: #fff;
    }
    .searchEstate .moreBox .moreBtn::after {
        right: 27px;
        width: 1px;
        height: 9px;
    }
    .searchEstate .aMemberBtn{
        position: relative;
        width: 125px;
        height: 35px;
        border-radius: 50px;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: var(--spFontSize11);
        font-weight: bold;
        color: #fff;
        margin: 0 auto;
        background-color: #ac0008;
        z-index: 2;
    }
    .searchEstate .aMemberBtn.spNone{
        display: none;
    }
    .searchEstate .aMemberBtn.spOnly{
        display: flex;
    }
    .searchEstate .aMemberBtn::after {
        display: none;
    }
    .searchEstate .memberTxtLink {
        margin-top: 10px;
        font-size: var(--spFontSize10);
        letter-spacing: -1px;
    }
    .searchEstate .aMemberBtn::before {
        display: none;
    }
    .searchEstate .memberTxt {
        font-size: var(--spFontSize16);
        font-weight: 500;
        letter-spacing: 0;
        line-height: var(--spLineHeight22_13);
        text-align: center;
        color: #fff;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
    }
    .searchEstate .memberBox {
        margin-top: 5px;
        margin-bottom: 10px;
    }
    /* soldout */
    .searchEstate .imgSoldout {
        /* width: 89.1%;
        margin: 0 auto; */
    }
    .searchEstate .imgSoldout img{
        width: 89.1%;
    }
}
/*-----------------------------------------------
    secQuality
-----------------------------------------------*/
.secQuality{
    padding: 134px 0;
    margin-top: 1px;
    border-radius: 100px 100px 0 0;
    overflow: hidden;
}
.secQuality.lazyloaded{
    background: url(../img/estate_template/bgQuality.png)center top / cover no-repeat;
}
.secQuality .boxCmnTit {
    position: static;
    color: #fff;
}
.secQuality .cmnTitJp:before {
    background: #fff;
}
.secQuality .boxFlex01 .listItem {
    display: flex;
    align-items: center;
    margin-top: 60px;
}
.secQuality .boxFlex01 .listItem:nth-child(n+2) {
    padding: 0;
    margin-top: 80px;
}
.secQuality .boxFlex01 .listItem:nth-child(2n) {
    flex-direction: row-reverse;
}
.secQuality .boxFlex01 .boxImg {
    height: 0;
    width: 51.613%;
    padding-top: 30.968%;
    margin-right: 3.5136%;
}
.secQuality .boxFlex01 .listItem:nth-child(2n) .boxImg{
    margin-right: 0;
    margin-left: 3.5136%;
}
.secQuality .boxFlex01 .boxtxt {
    flex: 1;
    padding-right: 6.4865%;
}
.secQuality .boxFlex01 .titQuality {
    font-size: var(--pcFontSize34);
    line-height: var(--pcLineHeight34_16);
    color: #fff;
}
.secQuality .boxFlex01 .txtQuality {
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_2);
    margin-top: 20px;
    color: #fff;
}

.secQuality .boxFlex02 .listFlex {
    display: flex;
    flex-wrap: wrap;
}
.secQuality .boxFlex02 .listItem {
    display: flex;
    align-items: center;
    margin-top: 100px;
    flex-direction: column;
    margin-right: 3.549%;
    width: 30.967%;
}
.secQuality .boxFlex02 .listItem:nth-child(3n),
.secQuality .boxFlex02 .listItem:last-child{
    margin-right: 0;
}
.secQuality .boxFlex02 .listItem:nth-child(n+4){
    margin-top:73px;
}

.secQuality .boxFlex02 .boxImg {
    height: 0;
    width: 100%;
    padding-top: 60%;
}
.secQuality .boxFlex02 .boxtxt {
    flex: 1;
    padding-right: 6.4865%;
    width: 100%;
}
.secQuality .boxFlex02 .titQuality {
    font-size: var(--pcFontSize20);
    line-height: var(--pcLineHeight20_17);
    color: #fff;
    margin-top: 34px;
}
.secQuality .boxFlex02 .txtQuality {
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_19);
    margin-top: 10px;
    color: #fff;
}

@media only screen and (max-width:767px){
    .secQuality {
        padding: 76px 0;
        margin-top: 1px;
        border-radius: 20px 20px 0 0;
    }
    .secQuality.lazyloaded{
        background: url(../img/estate_template/bgQuality_sp.png) center top / cover no-repeat;
    }
    .secQuality .boxFlex01 .listItem {
        display: block;
        align-items: center;
        margin-top: 30px;
    }
    .secQuality .boxFlex01 .boxImg {
        height: 0;
        width: 100%;
        padding-top: 60%;
        margin-right: 0;
    }
    .secQuality .boxFlex01 .titQuality {
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_17);
        margin-top: 15px;
    }
    .secQuality .boxFlex01 .boxtxt {
        padding-right: 0;
    }
    .secQuality .boxFlex01 .txtQuality {
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_2);
        margin-top: 10px;
    }
    .secQuality .boxFlex01 .listItem:nth-child(2n) .boxImg {
        margin-right: 0;
        margin-left: 0;
    }
    .secQuality .boxFlex01 .listItem:nth-child(n+2) {
        margin-top: 25px;
    }
    .secQuality .boxFlex02 .listItem {
        margin-top: 20px;
        margin-right: 0;
        width: 47.83%;
    }
    .secQuality .boxFlex02 .listFlex {
        justify-content: space-between;
    }
    .secQuality .boxFlex02 .titQuality {
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_15);
        margin-top: 10px;
    }
    .secQuality .boxFlex02 .txtQuality{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_15);
        margin-top: 10px;
    }
    .secQuality .boxFlex02 .listItem:nth-child(n+2) {
        margin-top: 25px;
    }
    .secQuality .boxFlex02 .listItem:nth-child(n+5) {
        display: none;
    }
    .secQuality .boxFlex02 .listFlex.active .listItem:nth-child(n+5) {
        display: block;
    }
    .secQuality .boxFlex02 .boxtxt {
        padding-right:0;
    }
    .secQuality .moreBox .moreBtn {
        position: relative;
        width: 185px;
        height: 45px;
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 35px auto 0;
        border-radius: 24px;
        background-color: unset;
        color: #fff;
        border: 1px solid #fff;
        font-size: var(--spFontSize11);
        font-weight: bold;
        cursor: pointer;
    }
    .secQuality .moreBox .moreBtn::before,
    .secQuality .moreBox .moreBtn::after {
        position: absolute;
        content: '';
        margin: auto;
        display: block;
        top: 0;
        bottom: 0;
        right: 20px;
        width: 9px;
        height: 1px;
        background-color: #fff;
    }
    .secQuality .moreBox .moreBtn::after {
        right: 24px;
        width: 1px;
        height: 9px;
    }
}
/*-----------------------------------------------
    secEquipment
-----------------------------------------------*/
.secEquipment{
    margin-top: 130px;
    padding: 130px 0;
    background-color: #b3a48f;
    margin-bottom: 1px;
    overflow: hidden;
}
.secEquipment.lazyloaded{
    background: url(../img/estate_template/bgEquipment.png)center top no-repeat;
}
.secEquipment .boxEquipment {
    background: #fff;
    border-radius: 50px;
    padding: 90px 100px;
    margin-top: 80px;
    position: relative;
}
.secEquipment .boxEquipment:before{
    content: '';
    background: #424951;
    height: 60px;
    width: 1px;
    position: absolute;
    top: -30px;
    left: 50%;
}
.secEquipment .boxCmnTit {
    position: static;
    color: #fff;
    text-align: center;
}
.secEquipment .cmnTitJp {
    padding-left: 0px;
}
.secEquipment .cmnTitJp:before {
    display: none;
}

.secEquipment .listFlex {
    display: flex;
    flex-wrap: wrap;
}
.secEquipment .listItem {
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-right: 3.549%;
    width: 30.967%;
}
.secEquipment .listItem:nth-child(3n),
.secEquipment .listItem:last-child{
    margin-right: 0;
}
.secEquipment .listItem:nth-child(n+4){
    margin-top:65px;
}

.secEquipment .boxImg {
    height: 0;
    width: 100%;
    padding-top: 60%;
}
.secEquipment .boxtxt {
    flex: 1;
    padding-right: 6.4865%;
    width: 100%;
}
.secEquipment .titQuality {
    font-size: var(--pcFontSize20);
    line-height: var(--pcLineHeight20_17);
    margin-top: 32px;
}
.secEquipment .txtQuality {
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_19);
    margin-top: 13px;
}
.secEquipment .boxGray {
    margin-top: 65px;
    padding: 26px 26px;
    background: #f6f6f6;
}
.secEquipment .txtGray {
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_2);
}
.secEquipment .txtUnderImg {
    font-size: var(--pcFontSize12);
    line-height: var(--pcLineHeight12_18);
    margin-top: 30px;
}
.secEquipment + .secContact {
    margin-top: 0px;
}
@media only screen and (max-width:767px){
    .secEquipment {
        padding: 70px 0 80px;
        margin-top: 80px;
        margin-bottom: 1px;
        background: url(../img/estate_template/bgEquipment.jpg) center top / contain no-repeat;
        background-color: #b3a48f;
    }
    .secEquipment .boxEquipment:before {
        height: 30px;
        top: -15px;
    }
    .secEquipment.lazyloaded{
        background: url(../img/estate_template/bgEquipment.jpg) center top / contain no-repeat;
    }
    .secEquipment .boxEquipment {
        border-radius: 20px;
        padding: 30px 4%;
        margin-top: 33px;
    }
    .secEquipment .listItem {
        margin-top: 0px;
        margin-right: 0;
        width: 47.83%;
    }
    .secEquipment .listFlex {
        justify-content: space-between;
    }
    .secEquipment .titQuality {
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_15);
        margin-top: 10px;
    }
    .secEquipment .txtQuality {
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_15);
        margin-top: 10px;
    }
    .secEquipment .listItem:nth-child(n+3) {
        margin-top: 25px;
    }
    .secEquipment .listItem:nth-child(n+7) {
        display: none;
    }
    .secEquipment .listFlex.active .listItem:nth-child(n+7) {
        display: block;
    }
    .secEquipment .boxtxt {
        padding-right: 0;
    }
    .secEquipment .moreBox .moreBtn {
        position: relative;
        width: 185px;
        height: 45px;
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 35px auto 0;
        border-radius: 24px;
        background-color: unset;
        color: #424951;
        border: 1px solid #424951;
        font-size: var(--spFontSize11);
        font-weight: bold;
        cursor: pointer;
    }
    .secEquipment .moreBox .moreBtn::before,
    .secEquipment .moreBox .moreBtn::after {
        position: absolute;
        content: '';
        margin: auto;
        display: block;
        top: 0;
        bottom: 0;
        right: 20px;
        width: 9px;
        height: 1px;
        background-color: #424951;
    }
    .secEquipment .moreBox .moreBtn::after {
        right: 24px;
        width: 1px;
        height: 9px;
    }
    .secEquipment .boxGray {
        margin-top: 43px;
        padding: 15px 15px;
    }
    .secEquipment .txtGray {
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_15);
    }
    .secEquipment .txtUnderImg {
        font-size: var(--spFontSize10);
        line-height: var(--spLineHeight10_18);
        margin-top: 20px;
    }
}

/*-----------------------------------------------
    secBnr
-----------------------------------------------*/
.secBnr{
    margin-top: 150px;
    display: flex;
    margin-bottom: 100px;
    overflow: hidden;
}
/* .secBnr.lazyloaded .linkEvent{
    background: url(../img/estate_template/bnrEvent.jpg)center top / cover no-repeat;
}
.secBnr.lazyloaded .linkColumn{
    background: url(../img/estate_template/bnrColumn.jpg)center top / cover no-repeat;
} */
.secBnr .linkEvent{
    color: #001b3f;
}
.secBnr .linkColumn{
    margin-left: 3.225%;
    color: #FFF;
}
.secBnr .imgBnr{
    width: 100%;
    height: 0;
    padding-top: 32%;
}
.secBnr .linkEvent,
.secBnr .linkColumn{
    width: 48.388%;
    /* height: 240px; */
    /* text-decoration: none;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-left: 50px; */
}
/* .secBnr .boxTit{
    display: flex;
    align-items: center;
}
.secBnr .titLinkEng{
    font-size: var(--pcFontSize46);
}
.secBnr .titLinkJp{
    font-size: var(--pcFontSize18);
    margin-left: 10px;
}
.secBnr .txtBnr{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_16);
    margin-top: 20px;
}
.secBnr .linkEvent.iconLink::before,
.secBnr .linkColumn.iconLink::before{
    content: "";
    position: absolute;
    position: absolute;
    bottom: 110px;
    right: 40px;
}
.secBnr .linkEvent.iconLink::after,
.secBnr .linkColumn.iconLink::after{
    bottom: 121px;
    right: 51px;
} */
@media only screen and (max-width:767px){
    .secBnr {
        margin-top: 80px;
        display: block;
        margin-bottom: 80px;
    }
    .secBnr .linkEvent, .secBnr .linkColumn {
        width: 100%;
    }
    .secBnr .imgBnr {
        width: 100%;
        height: 0;
        padding-top: 46.38%;
    }
    .secBnr .linkColumn {
        margin-left: 0;
        margin-top: 30px;
    }
    /* .secBnr .linkEvent, .secBnr .linkColumn {
        width: 100%;
        height: 160px;
        text-decoration: none;
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding-left: 50px;
    }
    .secBnr.lazyloaded .linkEvent {
        background: url(../img/estate_template/bnrEvent_sp.jpg) center top / cover no-repeat;
    }
    .secBnr .titLinkEng {
        font-size: var(--pcFontSize46);
    } */
}

/*-----------------------------------------------
    secInfo
-----------------------------------------------*/
.secInfo{
    background: #f6f6f6;
    padding: 90px 0 155px;
    text-align: center;
    overflow: hidden;
}
.secInfo .titInfo{
    font-size: var(--pcFontSize34);
    line-height: var(--pcLineHeight34_16);
    letter-spacing: var(--pcLetterSpacing34_1);
}
.secInfo .boxList{
    margin-top: 100px;
    display: flex;
    justify-content: center;
}
.secInfo .leftList,
.secInfo .rightList{
    width: 600px;
}
.secInfo .rightList{
    position: relative;
    padding-left: 80px;
}
.secInfo .rightList:before{
    content: '';
    height: calc(100% + 100px);
    width: 1px;
    background: #424951;
    position: absolute;
    top: -50px;
    left: 0;
}
.secInfo .listItem{
    display: flex;
    margin-bottom: 25px;
}
.secInfo .listItem:last-child{
    margin-bottom: 0px;
}
.secInfo .tit{
    width: 160px;
    text-align: left;
    padding-right: 20px;
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_18);
}
.secInfo .txt{
    flex: 1;
    text-align: left;
    padding-right: 30px;
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_18);
}
@media only screen and (max-width:767px){
    .secInfo .titInfo {
        font-size: var(--spFontSize18);
        line-height: var(--spLineHeight18_17);
        letter-spacing: 0;
    }
    .secInfo {
        padding: 43px 0;
    }
    .secInfo .boxList {
        margin-top: 25px;
        display: block;
    }
    .secInfo .leftList, .secInfo .rightList {
        width: 92%;
        margin: 0 auto;
        padding: 0;
    }
    .secInfo .listItem {
        display: block;
        margin-bottom: 17px;
    }
    .secInfo .tit {
        width: auto;
        text-align: left;
        padding-right: 0;
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_15);
        padding-bottom: 10px;
        border-bottom: 1px solid #424951;
        margin-bottom: 10px;
    }
    .secInfo .txt {
        padding-right: 0;
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_15);
    }
    .secInfo .rightList:before {
        display: none;
    }
}

/*-----------------------------------------------
    secRegistration
-----------------------------------------------*/
.secRegistration{
    padding-top: 105px;
    overflow: hidden;
}
.secRegistration .linkBnr{
    margin-bottom: 40px;
    display: block;
}
.secRegistration .linkBnr:last-child{
    margin-bottom: 0px;
}
@media only screen and (max-width:767px){
    .secRegistration {
        padding-top: 52px;
    }
    .secRegistration .linkBnr {
        margin-bottom: 20px;
    }
}

/*-----------------------------------------------
    contentUnder
-----------------------------------------------*/
.secContact.contentUnder.lazyloaded {
    background: none;
}
.secContact.contentUnder {
    margin-top: 120px;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 100px;
    overflow: hidden;
}
.secContact.contentUnder .boxBtn {
    margin-top: 0px;
}
.boxBackBtn {
    margin-top: 0px;
}
@media only screen and (max-width:767px){
    .secContact.contentUnder {
        margin-top: 60px;
        padding-bottom: 10px;
    }
    .boxBackBtn {
        margin-top: 50px;
    }
}


/*-----------------------------------------------
    secDetailsPopup
-----------------------------------------------*/
#container{
    overflow: unset;
}
#container.pop{
    padding-top: 0;
}
.secDetailsPopup{
    overflow: hidden;
    display: none;
	position: relative;
    border-radius: 10px 10px 0 0;
}
.secDetailsPopup .wrapperPopup{
    width: 1400px;
    background: #fff;
    overflow: hidden;
    position: relative;
    z-index: 1002;
}
.secDetailsPopup .overlay {
    width: 100%;
    height: 100%;
    min-height: 100vh;
    background: rgba(0, 0, 0, 0.502);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1000;
}
.secDetailsPopup .innerWrapper{
    padding: 100px 0;
}
.secDetailsPopup .landNum{
    font-size: var(--pcFontSize50);
    line-height: var(--pcLineHeight50_16);
    letter-spacing: var(--pcLetterSpacing50_2);
}
.secDetailsPopup .estateTit{
    font-size: var(--pcFontSize20);
    line-height: var(--pcLineHeight20_17);
    margin-top: 16px;
}
.secDetailsPopup .priceBox{
    position: relative;
    margin-top: 50px;
    padding: 35px;
    background: #f6f6f6;
}
.secDetailsPopup .priceBox .estateTxt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_16);
    padding-bottom: 20px;
    border-bottom: 1px solid #d9d9d9;
    margin-bottom: 20px;
}
.secDetailsPopup .priceBox .priceTxtBox{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_16);
}
.secDetailsPopup .priceBox .price{
    margin-right: 20px;
}
.secDetailsPopup .priceBox .txtLeft{
    font-size: var(--pcFontSize38);
    margin-right: 5px;
}
.secDetailsPopup .priceBox .priceInfoTxt{
    display: flex;
    align-items: flex-end;
}
.secDetailsPopup .priceBox .innerTxt{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.secDetailsPopup .priceBox .txtTop{
    font-size: var(--pcFontSize12);
}
.secDetailsPopup .priceBox .txtBottom{
    font-size: var(--pcFontSize18);
}
.secDetailsPopup .priceBox .flexUnder{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
/* slider ↓↓↓↓↓↓ */
.secMainSlider .boxSlider {
    width: 100%;
    margin-top: 52px;
}
.secMainSlider .swiper{
    overflow: visible;
    width: 100%;
    margin: 0 auto 0 0;
    position: relative;
}
.secMainSlider .imgSlider{
    width: 100%;
}
.secMainSlider .swiper-scrollbar.swiper-scrollbar-horizontal {
    position: static;
    height: 8px;
    width: 100%;
    margin-top: 50px;
}
.secMainSlider .boxImg{
    display: block;
    width: 100%;
    height: 0;
    padding-top: 58.334%;
    position: relative;
    overflow: hidden;
}
.secMainSlider .imgiconzoom{
    position: absolute;
    top: 653px;
    right: 75px;
    width: 31px;
    height: 31px;
    z-index: 2;
}
.secMainSlider .swiper-pagination-fraction {
    bottom: 10px;
    left: unset;
    width: auto;
    top: 653px;
    right: 15px;
    width: 54px;
    height: 31px;
    background: #424951;
    border-radius: 20px;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
}
/* slider ↑↑↑↑↑↑ */
.secMainSlider .titSlider{
    font-size: var(--pcFontSize34);
    line-height: var(--pcLineHeight34_16);
    margin-top: 26px;
}
.secMainSlider .txtSlider{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_2);
    margin-top: 13px;
}
.secpopupGallery{
    margin-top: 75px;
}
.secpopupGallery .titGallery{
    font-size: var(--pcFontSize46);
    letter-spacing: var(--pcLetterSpacing46_2);
    text-align: center;
}
.secpopupGallery .titSubGallery{
    font-size: var(--pcFontSize18);
    text-align: center;
    margin-top: 30px;
}
.secpopupGallery .listGallery{
    display: flex;
    flex-wrap: wrap;
    margin-top: 45px;
}
.secpopupGallery .imgInner{
    width: 19.334%;
    margin-right: 10px;
    position: relative;
}
.secpopupGallery .imgInner .imgiconzoom{
    position: absolute;
    bottom: 5px;
    right: 5px;
    width: 31px;
    height: 31px;
}
.secpopupGallery .imgInner a{
    width: 100%;
}
.secpopupGallery .imgInner:nth-child(5n){
    margin-right: 0px;
}
.secpopupGallery .imgInner:nth-child(n+6){
    margin-top: 10px;
}
.secpopupGallery .imgInner .boxImg{
    padding-top: 100%;
}

.secpopupGallery .secYoutube{
    margin-top: 70px;
}
.secpopupGallery .secYoutube iframe{
    max-width: 100%;
    width: 960px;
    height: 540px;
    margin: 0px auto;
    display: block;
}
.secpopupGallery .secMp4{
    margin-top: 70px;
}
.secpopupGallery .secMp4 .video{
    max-width: 100%;
    width: 960px;
    height: 540px;
    margin: 0px auto;
    display: block;
}
.secOverview{
    margin-top: 90px;
}
.secOverview .titOverview{
    font-size: var(--pcFontSize46);
    text-align: center;
}
.secOverview .titSubOverview{
    font-size: var(--pcFontSize18);
    text-align: center;
    margin-top: 30px;
}
/* secList */
.secOverview .secList{
    width: 1080px;
    margin: 0 auto;
    background: #fff;
}
.secOverview .secList .itemMain{
    position: relative;
    margin-top: 50px;
}
.secOverview .secList .linkMain{
    height: 65px;
}
.secOverview .secList .linkMain{
    position: relative;
    display: flex;
    align-items: center;
    font-size: var(--pcFontSize17);
    color: #fff;
    text-decoration: none;
    padding: 0 50px 0 20px;
    background-color: #424951;
}
.secOverview .secList .linkMain:before,
.secOverview .secList .linkMain:after {
    content: "";
    background: #fff;
    width: 12px;
    height: 1px;
    position: absolute;
    right: 30px;
    top: calc(50% - 1px);
    display: block;
    transition: all 0.4s ease;
}
.secOverview .secList .linkMain:after {
    transform: rotate(90deg);
}
.secOverview .secList .linkMain.on:after {
    transform: rotate(360deg);
}
.secOverview .secList .boxSubList{
    display: none;
    padding: 0;
    border-bottom: 1px solid #424951;
    border-right: 1px solid #424951;
}
.secOverview .secList .linkSub{
    display: block;
    font-size: var(--pcFontSize13);
    text-decoration: none;
}
.secOverview .secList th {
    width: 160px;
    padding: 16px 18px;
    font-size: var(--pcFontSize13);
    line-height:var(--pcLineHeight13_17);
    background: #EDF0F1;
    vertical-align: top;
    border: 1px solid #424951;
    vertical-align: middle;
}
.secOverview .secList td {
    width: 380px;
    min-height: 55px;
    padding: 16px 18px;
    font-size: var(--pcFontSize13);
    line-height:var(--pcLineHeight13_17);
    line-height: 1.5;
    letter-spacing: 1px;
    vertical-align: middle;
    border: 1px solid #424951;
}
.secOverview .secList .itemMain:nth-child(4) td,
.secOverview .secList .itemMain:nth-child(5) td{
    width: calc(100% - 160px);
}

.secOverview .secList .tr {
    display: flex;
}
.secOverview .secList .th {
    width: 160px;
    padding: 16px 18px;
    font-size: var(--pcFontSize13);
    line-height:var(--pcLineHeight13_17);
    background: #EDF0F1;
    vertical-align: top;
    border: 1px solid #424951;
    vertical-align: middle;
    border-bottom: none;
    border-right: none;
}
.secOverview .secList .td {
    width: calc(100% - 160px);
    min-height: 55px;
    padding: 16px 18px;
    font-size: var(--pcFontSize13);
    line-height: var(--pcLineHeight13_17);
    flex: 1;
    letter-spacing: 1px;
    vertical-align: middle;
    border: 1px solid #424951;
    border-bottom: none;
    border-right: none;
}
.secOverview .secList .itemMain:nth-child(4) .td,
.secOverview .secList .itemMain:nth-child(5) .td{
    width: calc(100% - 160px);
}

.secOverview .secList .rightTxt{
    font-size: var(--pcFontSize13);
    line-height:var(--pcLineHeight13_17);
    text-align: right;
    margin-top: 50px;
}

.secDetailsPopup .secContact {
    margin-top: 0;
    height: 548px;
}
.secDetailsPopup .secContact.lazyloaded {
    background: url(../img/estate_template/bg03.gif) center top / cover no-repeat;
}
.secDetailsPopup .secContact .txtContact {
    color: #424951;
}
.secDetailsPopup .secContact .txtContact:before {
    background: #424951;
}
.secDetailsPopup .secContact .txtContact:after {
    background: #424951;
}
.secDetailsPopup .secContact .txt01 {
    color: #424951;
}
.secDetailsPopup .secContact .txt02 {
    color: #424951;
}
.secDetailsPopup .secContact .txt03 {
    color: #424951;
}
.secDetailsPopup .secContact.lazyloaded .txtUnder::after {
    background: url(../img/estate_template/iconUnderLeftB.png) center top / cover no-repeat;
}
.secDetailsPopup .secContact.lazyloaded .txtUnder::before {
    background: url(../img/estate_template/iconUnderLeftB.png) center top / cover no-repeat;
    left: -30px;
}

.secDetailsPopup .closePopupBtn {
    margin: 50px auto;
    width: 200px;
    height: 53px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #424951;
    font-size: var(--pcFontSize14);
    color: #fff;
    border-radius: 50px;
    position: relative;
    cursor: pointer;
}
.secDetailsPopup .closePopupBtn:before,
.secDetailsPopup .closePopupBtn:after{
    content: '';
    position: absolute;
    width: 11px;
    height: 1px;
    background: #fff;
    top: 26px;
    left: 30px;
}
.secDetailsPopup .closePopupBtn:before{
    transform: rotate(45deg);
}
.secDetailsPopup .closePopupBtn:after{
    transform: rotate(135deg);
}
.secDetailsPopup .closeBtnRight{
    content: '';
    position: fixed;
    width: 56px;
    height: 150px;
    /* background: #424951; */
    top: 30px;
    left: 1400px;
    /* display: flex;
    align-items: center;
    justify-content: center; */
    z-index: 1003;
    /* border-radius: 0 10px 10px 0; */
    cursor: pointer;
}
.secDetailsPopup .closeBtnRight:hover{
    -webkit-filter: brightness(1.1);filter: brightness(1.1); 
}
.secDetailsPopup .closeBtnRight .txtClose{
    font-size: 15px;
    font-weight: bold;
    color: #fff;
}
@media only screen and (max-width:1480px){
    .secDetailsPopup .wrapperPopup {
        width: 1250px;
    }
    .secDetailsPopup .closeBtnRight {
        left: 1250px;
    }
}
@media only screen and (max-width:767px){
    #container{
        overflow: hidden;
    }
    #header.pophead{
        background: #fff;
        max-width: 100%;
        transition: transform 0.2s ease-in-out;
        transform: scale(0.92);
        transform-origin: center top;
        border-radius: 8px;
    }
    #header.pophead:before{
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #fff;
        z-index: 99;
        border-radius: 8px;
    }
    .secDetailsPopup {
        margin-top: 15px;
        overflow: scroll;
        height: 98vh;
    }
    .secDetailsPopup .wrapperPopup {
        width: 100%;
        border-radius: 10px 10px 0 0;
    }
    .secDetailsPopup.slideShow .innerWrapper {
        animation: slideShow 0.2s ease-in-out forwards;
    }
    @keyframes slideShow{
        0%{
            transform: translateY(100%);

        }
        100%{
            transform: none;
        }
    }
    /* .secDetailsPopup.slideShow .innerWrapper{
        animation: slideHide 0.2s ease-in-out forwards;
    } */
    @keyframes slideHide{
        0%{
            transform: none;
        }
        100%{
            transform: translateY(100%);
        }
    }
    .secDetailsPopup .innerWrapper {
        padding: 0;
        border-radius: 10px 10px 0 0;
        display: flex;
        flex-direction: column;
    }
    .secDetailsPopup .landNum {
        font-size: var(--spFontSize16);
        line-height: var(--spLineHeight16_13);
        padding: 20px 50px 20px 4%;
        background: #f6f6f6;
        border-radius: 10px 10px 0 0;
        order: 1;
        letter-spacing: 0;
        position: fixed;
        top: 12px;
        z-index: 999;
        width: 100%;
    }
    .secDetailsPopup.slideShow .landNum {
        top: 0px;
    }
    .secMainSlider .boxSlider {
        width: 100%;
        margin-top: 20px;
    }
    .secDetailsPopup .estateTit {
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_17);
        margin-top: 20px;
        order: 2;
    }
    .secDetailsPopup .secMainSlider {
        order: 3;
    }
    .secDetailsPopup .priceBox {
        order: 4;
        margin-top: 0px;
        padding: 25px 4%;
        border-radius: 10px 10px 0 0;
    }
    .secDetailsPopup .priceBox .estateTxt {
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_16);
        padding-bottom: 20px;
        margin-bottom: 20px;
    }
    .secDetailsPopup .priceBox .priceTxtBox {
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_16);
        max-width: 60%;
    }
    .secDetailsPopup .priceBox .price {
        margin-right: 0;
        display: block;
    }
    .secDetailsPopup .priceBox .priceInfoTxt {
        display: flex;
        align-items: center;
        max-width:35%;
    }
    .secDetailsPopup .priceBox .innerTxt {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
    .secDetailsPopup .priceBox .txtTop {
        font-size: var(--spFontSize10);
    }
    .secDetailsPopup .priceBox .txtBottom {
        font-size: var(--spFontSize13);
        margin-top: 3px;
    }
    .secDetailsPopup .priceBox .txtLeft {
        font-size: var(--spFontSize30);
        margin-right: 2px;
    }
    .secDetailsPopup .secpopupGallery {
        order: 5;
    }
    .secDetailsPopup .secOverview {
        order: 6;
    }
    .secMainSlider .titSlider {
        font-size: var(--spFontSize18);
        line-height: var(--spLineHeight18_17);
        margin-top: 5px;
    }
    .secMainSlider .txtSlider {
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_17);
        margin-top: 20px;
    }
    .secMainSlider .boxImg {
        padding-top: 58.4%;
    }
    .secpopupGallery .titGallery {
        font-size: var(--spFontSize28);
        text-align: center;
    }
    .secpopupGallery .titSubGallery {
        font-size: var(--spFontSize15);
        margin-top: 15px;
    }
    .secMainSlider .swiper-scrollbar.swiper-scrollbar-horizontal {
        display: none;
    }
    .secMainSlider .swiper-pagination-fraction {
        bottom: unset;
        left: unset;
        width: auto;
        top: calc(58.4vw - 28px);
        right: 5px;
        width: 40px;
        height: 23px;
        border-radius: 30px;
        font-size: 11px;
    }
    .secMainSlider .imgiconzoom {
        top: calc(58.4vw - 28px);
        right: 47px;
        width: 23px;
        height: 23px;
        z-index: 2;
    }
    .secpopupGallery {
        margin-top: 55px;
    }
    .secpopupGallery .imgInner {
        width: 49.276%;
        margin-right: 1.44%;
    }
    .secpopupGallery .listGallery {
        margin-top: 30px;
    }
    .secpopupGallery .imgInner:nth-child(5n) {
        margin-right: 1.44%;
    }
    .secpopupGallery .imgInner:nth-child(2n) {
        margin-right: 0px;
    }
    .secpopupGallery .imgInner:nth-child(n+3) {
        margin-top: 5px;
    }
    .secpopupGallery .imgInner .imgiconzoom {
        bottom: 5px;
        right: 5px;
        width: 23px;
        height: 23px;
    }
    .secpopupGallery .secYoutube {
        margin-top: 30px;
        position: relative;
        height: 51.736vw;
    }
    .secpopupGallery .secYoutube .secYoutube{
        width: 100%;
        height: 0;
        padding-top: 56.235%;
        position: relative;
    }
    .secpopupGallery .secYoutube iframe{
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
    }
    .secpopupGallery .secMp4{
        margin-top: 30px;
        position: relative;
        height: 51.736vw;
    }
    .secpopupGallery .secMp4 .video{
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
    }
    .secpopupGallery .secMp4 video{
        width: 100%;
        height: 100%;
    }
    .secOverview {
        margin-top: 55px;
    }
    .secOverview .titOverview{
        font-size: var(--spFontSize28);
        text-align: center;
    }
    .secOverview .titSubOverview{
        font-size: var(--spFontSize15);
        margin-top: 15px;
        margin-bottom: 30px;
    }
    .secOverview .secList {
        width: 100%;
    }
    .secOverview .secList .linkMain {
        height: 45px;
    }
    .secOverview .secList .linkMain {
        position: relative;
        display: flex;
        align-items: center;
        font-size: var(--spFontSize13);
        color: #fff;
        text-decoration: none;
        padding: 0px 15px;
        background-color: #424951;
    }
    .secOverview .secList .linkMain:before, .secOverview .secList .linkMain:after {
        width: 11px;
        height: 1px;
        right: 15px;
    }
    .secOverview .secList .tr {
        /* display: block; */
        flex-wrap: wrap;
        width: 100%;
    }
    .secOverview .secList .th {
        width: 80px;
        padding: 13px 10px;
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_15);
    }
    .secOverview .secList .td {
        width: calc(100% - 80px);
        min-width: calc(100% - 80px);
        min-height: 44px;
        padding: 13px 10px;
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_15);
        letter-spacing: 0px;
    }
    .secOverview .secList .itemMain {
        margin-top: 10px;
    }
    .secOverview .secList .rightTxt {
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_15);
        text-align: left;
        margin-top: 30px;
    }
    .secDetailsPopup .secContact {
        margin-top: 55px;
        height: 394px;
    }
    .secDetailsPopup .closePopupBtn {
        margin: 42px auto 110px;
        width: 55px;
        padding-left: 15px;
        height: auto;
        display: block;
        align-items: center;
        justify-content: center;
        background: unset;
        text-align: center;
        font-size: var(--spFontSize12);
        color: #424951;
        border-radius: 0;
        padding-bottom: 5px;
        border-bottom: 1px solid #424951;
        position: relative;
        cursor: pointer;
    }
    .secDetailsPopup .closePopupBtn:before, .secDetailsPopup .closePopupBtn:after {
        content: '';
        position: absolute;
        width: 11px;
        height: 1px;
        background: #424951;
        top: 5px;
        left: 3px;
    }
    .secDetailsPopup .closeBtnRight {
        width: 29px;
        height: 29px;
        background: unset;
        top: 30px;
        left: unset;
        right: 15px;
        border-radius: 0;
    }
}
#footer .wrapContact {
    display: none;
}

#fNavi {
    display: none;
}
@media only screen and (max-width:767px){
    #fNavi {
        display: none;
    }
    #fNavi_estate{
        display: block;
    }
    #fNavi_estate{
        position: fixed;
        right: 0;
        bottom: 0;
        transform: translateY(100%);
        transition: all 0.2s ease-out;
        z-index: 9999;
        background-color: #fff;
        box-shadow: 0 -5px 10px rgba(0, 27, 63, 0.08);
        width: 100%;
        height: 50px;
    }
    #fNavi_estate.active{
        transform: none;
    }
    #fNavi_estate.hiddenNavi{
        transform: translateY(100%);
    }
    #fNavi_estate .boxBtn{
        display: flex;
    }
    #fNavi_estate .linkContact{
        width: 50%;
        height: 50px;
        background: #002d59;
        color: #fff;
        font-size: 11px;
        font-weight: bold;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    #fNavi_estate .linkReserve{
        width: 50%;
        height: 50px;
        border-left: 1px solid #fff;
        background: #fac500;
        color: #001b3f;
        font-size: 11px;
        font-weight: bold;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    #fNavi_estate .innerTxt{
        position: relative;
        padding-left: 35px;
    }
    #fNavi_estate .linkContact:before {
        content: '';
        position: absolute;
        width: 20px;
        height: 20px;
        top: 12px;
        left: 20px;
        background: url(../img/common/iconHeader02.png) center top / cover no-repeat;
    }
    #fNavi_estate .linkReserve .innerTxt:before {
        content: '';
        position: absolute;
        width: 24px;
        height: 24px;
        top: -9px;
        left: 0;
        background: url(../img/common/iconHeader04.png) center top / cover no-repeat;
    }
}