@charset "UTF-8";

/*---------------------------------------------------
 common
----------------------------------------------------*/
.z-index-99 {
    z-index: 99 !important;
}

.z-index-999 {
    z-index: 999 !important;
}

.d-contents {
    display: contents;
}

@media screen and (min-width: 992px) {
    a[href^="tel:"] {
        pointer-events: none;
    }

    .d-lg-contents {
        display: contents;
    }
}

.cursor-pointer {
    cursor: pointer;
}


.link-hover {
    transition: 0.3s;
}

.link-hover:hover {
    opacity: 0.7;
    transition: 0.3s;
}

@media screen and (min-width: 992px) {

}


/*---------------------------------------------------
 TOP
----------------------------------------------------*/

/*TOPセクション縦幅*/
.section-py-100 {
    padding-top: 100px;
    padding-bottom:  100px;
}


/* ファーストビュー */
.fv .swiper-container,
.fv .swiper-slide {
    height: 100vh;
}
.fv .swiper-slide picture,
.fv .swiper-slide img {
    width: 100%;
    height: 100%;
}
.fv .swiper-slide img {
    object-fit: cover;
}

.top-modelhouse-link {
    position: relative;
}

.top-modelhouse-link::before,
.top-modelhouse-link::after {
    position: absolute;
    content: "";
}

.top-modelhouse-link::before {
    width: 20px;
    height: 20px;
    background-color: #222;
    border: 1px solid #fff;
    border-radius: 50%;
    top: 50%;
    right: calc(-1em - 10px);
    transform: translateY(-50%);
}

.top-modelhouse-link::after {
    top: 50%;
    right: calc(-1em - 3px);
    width: 6px;
    height: 6px;
    border-bottom: 0.094em solid #fff;
    border-right: 0.094em solid #fff;
    transform: translateY(calc(-50% - 1px)) rotate(45deg);
}

.top-area-title {
    display: flex;
    align-items: center;
}

.top-area-title-text {
    white-space: nowrap;
}

.top-area-title::before,
.top-area-title::after {
    content: "";
    display: inline-block;
    background-image : linear-gradient(to right, #333 2px, transparent 2px);
    background-size: 6px 2px;
    background-repeat: repeat-x;
    background-position: left bottom;
    width: 100%;
    height: 2px;
}

.top-area-title::before {
    margin-right: 40px;
}

.top-area-title::after {
    margin-left: 40px;
}

.top-modelhouse-text-wrapper {
    background-color: #F8F7F6;
    height: 100%;
}

.link-box-more {
    position: relative;
}

.link-box-more::before,
.link-box-more::after {
    position: absolute;
    content: "";
}

.link-box-more::before {
    width: 1.25em;
    height: 1.25em;
    background-color: #222;
    border: 1px solid #fff;
    border-radius: 50%;
    top: 50%;
    right: calc(-1em - 10px);
    transform: translateY(-50%);
}

.link-box-more::after {
    top: 50%;
    right: calc(-1em - 3px);
    width: 5px;
    height: 5px;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: translateY(-50%) rotate(-45deg);
}

.modelhouse-caption {
    position: absolute;
    background-color: #F1F1F4;
    top: 10px;
    left: 10px;
    border-radius: 2px;
}

@media screen and (min-width: 992px) {
    .top-modelhouse-thumbnail-wrapper {
        border-top-left-radius: 10px;
        border-bottom-left-radius: 10px;
    }

    .top-modelhouse-text-wrapper {
        border-top-right-radius: 10px;
        border-bottom-right-radius: 10px;
        padding: 0 40px;
    }
}


/*---------------------------------------------------
 about
----------------------------------------------------*/


@media screen and (min-width: 992px) {

}

/*---------------------------------------------------
 swiper
----------------------------------------------------*/

.swiper-container {
    position: relative;
}

.swiper-button-prev {
    left: -3vw;
}

.swiper-button-next {
    right: -3vw;
}

.modelhouse-swiper-arrow {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.top-swiper-central .swiper-button-prev-central,
.top-swiper-central .swiper-button-next-central,
.top-swiper-east .swiper-button-prev-east,
.top-swiper-east .swiper-button-next-east,
.top-swiper-south .swiper-button-prev-south,
.top-swiper-south .swiper-button-next-south,
.top-swiper-north .swiper-button-prev-north,
.top-swiper-north .swiper-button-next-north {
    height: 22px;
}

.top-swiper-central .swiper-button-prev-central::before,
.top-swiper-central .swiper-button-next-central::before,
.top-swiper-east .swiper-button-prev-east::before,
.top-swiper-east .swiper-button-next-east::before,
.top-swiper-south .swiper-button-prev-south::before,
.top-swiper-south .swiper-button-next-south::before,
.top-swiper-north .swiper-button-prev-north::before,
.top-swiper-north .swiper-button-next-north::before {
    position: absolute;
    content: "";
    background-color: #222;
    border-radius: 50%;
    bottom: 0;
    width: 22px;
    height: 22px;
    margin: auto;
}

.top-swiper-central .swiper-button-prev-central::after,
.top-swiper-central .swiper-button-next-central::after,
.top-swiper-east .swiper-button-prev-east::after,
.top-swiper-east .swiper-button-next-east::after,
.top-swiper-south .swiper-button-prev-south::after,
.top-swiper-south .swiper-button-next-south::after,
.top-swiper-north .swiper-button-prev-north::after,
.top-swiper-north .swiper-button-next-north::after {
    position: absolute;
    content: "";
}

.top-swiper-central .swiper-button-prev-central::after,
.top-swiper-east .swiper-button-prev-east::after,
.top-swiper-south .swiper-button-prev-south::after,
.top-swiper-north .swiper-button-prev-north::after {
    top: 50%;
    right: 28%;
    width: 7px;
    height: 7px;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: translate(-28%, -50%) rotate(135deg);
}

.top-swiper-central .swiper-button-next-central::after,
.top-swiper-east .swiper-button-next-east::after,
.top-swiper-south .swiper-button-next-south::after,
.top-swiper-north .swiper-button-next-north::after {
    top: 50%;
    right: 35%;
    width: 7px;
    height: 7px;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: translate(-35%, -50%) rotate(-45deg);
}

.button-arrow {
    position: relative;
}

.button-arrow::after {
    position: absolute;
    content: "";
    border-right: 2px solid #222;
    border-bottom: 2px solid #222;
    width: 7px;
    height: 7px;
    top: 0.5em;
    right: 0;
    transform: translateY(-50%) rotate(-45deg);
}

@media screen and (min-width: 992px) {

}

@media screen and (min-width: 1400px) {
    .swiper-button-prev {
        left: 4vw;
    }

    .swiper-button-next {
        right: 4vw;
    }
}

/* お知らせ部分 */
