@charset "utf-8";

/*-------------------------------------------------------------------------
MAIN
-------------------------------------------------------------------------*/

#contents_outer {
    background: #fff!important;
}
#contents {
    width: auto;
    padding: 0!important;
}
.l-main * {
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-size: 12px;
    color: #595656;
    line-height: 1.5;
    box-sizing: border-box;
}
img {
    vertical-align: top;
}
a:hover {
    text-decoration: none;
}
.wrap {
    width: 1080px;
    margin: auto;
}
[class*="list-item--"]{
    display        : flex;
    justify-content: center;
}
    .list-item--row4 li {
        width: 261px;
        margin: 0 6px;
    }
.noto {
    font-family: 'Noto Sans JP', sans-serif;
}

.section {
    padding: 60px 0;
}
.bg-elem {
    background: url("../images/top/bg_cross.png");
}
.bg-elem2 {
    background: url("../images/top/bg_cross02.png");
}
.section__ttl-ja,
.section__ttl-en {
    text-align: center;
    line-height: 1;
    color: #595656;
}
.section__ttl-ja {
    font-size  : 25px;
    letter-spacing: 0.1em;
}
.section__ttl-en {
    font-size: 13px;
    margin: 9px 0 27px;
    font-family: "游明朝 Light";
    letter-spacing: 0.44em;
}
:root {
    --:;
}


/*-------------------------------------------------------------------------
main-view
-------------------------------------------------------------------------*/
[class*="main-view__item"] {
    height: 636px;
    margin: 77px 0 0;
    position: relative;
    overflow-x: hidden;
}
[class*="main-view__item"]:focus {
    outline: none;
}
.main-view__item--01 {
    background: url(/images/top/img_main01.jpg) no-repeat center top;
}
.main-view__item--02 {
    background: url(/images/top/img_main02.jpg) no-repeat center top;
}
.main-view__item--03 {
    background: url(/images/top/img_main03.jpg) no-repeat center top;
}

/* SLIDER
--------------------------- */
.main-slider {
    position: absolute;
    top     : 0;
    left    : 0;
    z-index : 0;
    width: 100%;
}
    [class*="main-slider__items--"]{
        background-repeat  : no-repeat;
        background-position: center 0;
        width: 100%;
        height: 680px!important;
    }
    .main-slider__items--slider1 { background-image: url("../images/top/bg_main1.png");}
    .main-slider__items--slider2 { background-image: url("../images/top/bg_main2.png");}
    .main-slider__items--slider3 { background-image: url("../images/top/bg_main3.png");}

/*-------------------------------------------------------------------------
BANNER
-------------------------------------------------------------------------*/

.banner-list__link {
    display: block;
    background-color: #f5f2e7;
    box-shadow: 1px 0 3px rgba(0,0,0,.2);
    text-align: center;
    padding: 0 0 14px;
    transition: .3s;
}

.banner-list__link:hover {
    background-color: #E7E1CF;
    color      : #394465;
}

    .banner-list__link img {
        display: block;
        margin: 0 0 14px;
        transition: .3s;
    }
    .banner-list__link:hover img {
        opacity: .8;
    }
    .banner-list__text {
        font-size  : 18px;
        font-weight: bold;
        color      : #394465;
        line-height: 1;
    }

/*-------------------------------------------------------------------------
検索
-------------------------------------------------------------------------*/
.cont-search {
    padding: 60px 0;
}

    /*フリー検索*/
    .freeSearch {
        width: 1080px;
        margin: 0 auto 20px;
        padding: 15px 15px 15px 20px;
        background: #8e92a0;
    }
    .free_search_btn {
        transition: .3s;
    }

    /*メイン検索*/
    .mainSearch__list {
        width: 1080px;
        margin: auto;
        display: flex;
        justify-content: space-between;
    }
        [class*="mainSearch__item"] {
            width: 352px;
            position: relative;
        }
        [class*="mainSearch__item"] a {
            padding: 18px 0 15px;
            font-size: 18px;
            color: #fff;
            text-align: center;
            display: block;
            position: relative;
            transition: .3s;
        }
        .mainSearch__item--house a {
            background: #61575d;
        }
        .mainSearch__item--mansion a {
            background: #384465;
        }
        .mainSearch__item--investment a {
            background: #7a728a;
        }
            [class*="mainSearch__item"] a:hover {
                opacity: .8;
            }
                [class*="icn-search"] {
                    margin: auto;
                    display: block;
                    position: absolute;
                    top: 0;
                    bottom: 0;
                    left: 20px;
                }
                .icn-search__house {
                    width: 43px;
                    height: 35px;
                    background: url(/images/top/icn_search_house.png) center / contain no-repeat;
                }
                .icn-search__mansion {
                    width: 44px;
                    height: 40px;
                    background: url(/images/top/icn_search_mansion.png) center / contain no-repeat;
                }
                .icn-search__investment-mansion {
                    width: 34px;
                    height: 45px;
                    background: url(/images/top/icn-search__investment-mansion.png) center / contain no-repeat;
                }
    .mainSearch__list .popup-search {
        width: 170px;
        height: 168px;
        margin: auto;
        padding: 10px 0 0 2px;
        background: url(/images/bg_search_balloon_02.png) no-repeat left top / contain;
        position: absolute;
        right: 0;
        bottom: 60px;
        left: 0;
    }
        .popup-search li:not(:first-child) {
            margin-top: 5px;
        }
        .mainSearch__list .popup-search .close {
            margin: 0;
            position: absolute;
            top: -10px;
            right: -10px;
        }
            .popup-search a {
                padding: 0;
                background: none;
            }

/*-------------------------------------------------------------------------
物件
-------------------------------------------------------------------------*/

.bkn-list__link {
    display: block;
    height: 232px;
    position: relative;
}

    .bkn-list__link:hover{
        opacity: .8;
    }
    .bkn-list__img {
        width: 261px;
        height: 174px;
    }

    .bkn-list__panel {
        position: absolute;
        bottom  : 0;
        left    : 0;
        width: 100%;
        height: 90px;
        padding: 30px 12px 0;
    }
    .bkn--new .bkn-list__panel {
        background: -webkit-linear-gradient(top, transparent 0, #7d8397 25%, #7d8397 100%);
        background:    -moz-linear-gradient(top, transparent 0, #7d8397 25%, #7d8397 100%);
        background:         linear-gradient(to bottom, transparent 0, #7d8397 25%, #7d8397 100%);
    }
    .bkn--recommend .bkn-list__panel {
        background: -webkit-linear-gradient(top, transparent 0, #908b81 25%, #908b81 100%);
        background:    -moz-linear-gradient(top, transparent 0, #908b81 25%, #908b81 100%);
        background:         linear-gradient(to bottom, transparent 0, #908b81 25%, #908b81 100%);
    }
        .bkn-list__text {
            text-overflow: ellipsis;
            overflow: hidden;
            white-space: nowrap;
            font-size: 12px;
        }
        .bkn-list__price {
            font-size: 13px;
        }
            .bkn-list__price .price {
                font-size: 20px;
            }
        .bkn-list__text,
        .bkn-list__price,
        .bkn-list__price .price {
            color: #f3ede2;
        }
    /* アイコン */
    .bkn-list__icn-new {
        position: absolute;
        top     : 0;
        left    : 0;
        width: 45px;
        height: 20px;
        line-height: 20px;
        text-align: center;
        font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
        font-size  : 12px;
        font-weight: bold;
        color      : #fff;
        background-color: #7e5951;
    }

/*-------------------------------------------------------------------------
更新情報
-------------------------------------------------------------------------*/

/* LAYOUT
--------------------------- */
.information__panel {
    display        : flex;
    flex-wrap      : wrap;
    justify-content: space-between;
}
    .information__panel-left {
        background-color: #515c76;
        width: 238px;
        text-align: center;
        padding: 21px 0 0;
    }
    .information__panel-right {
        width: calc(100% - 238px);
        background-color: #fff;
        padding: 10px 10px 10px 20px;
    }

/* OBJECT
--------------------------- */
.information__ttl-ja,
.information__ttl-en {
    color: #fff;
    line-height: 1;
    letter-spacing: .2em;
}
.information__ttl-ja {
    font-size  : 25px;
    margin: 0 0 9px;
 }
.information__ttl-en {
    font-size  : 13px;
    margin: 0 0 17px;
}
.information__btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 129px;
    height: 30px;
    text-align: center;
    font-size  : 13px;
    color      : #fff;
    border: 1px solid #fff;
    margin: auto;
}
.information__btn:hover {
    color: #8e92a0;
    background: #fff;
}
.information__scroll {
    height: 110px;
    overflow-y: auto;
}
.info-list {
    margin: 0 10px 4px 0;
    padding: 0 0 6px 0;
    border-bottom: 1px solid #eee;
}
.info-list__ttl,
.info-list__text {
    font-size: 15px;
}
.info-list__ttl {
    font-weight: 500;
    color: #908b81;
}

/*-------------------------------------------------------------------------
こだわり物件
-------------------------------------------------------------------------*/
.commitment__bnrList-wrap:not(:first-child) {
    margin: 35px 0 0;
}
.commitment__bnrTtl {
    text-align: center;
    font-size: 20px;
    color: #515c76;
    margin-bottom: 16px;
    letter-spacing: .2em;
}
.commitment__bnrList {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
[class*="commitment__bnrItem--"] {
    width: calc(100% / 2 - 5px);
    height: 130px;
    box-shadow: 1px 0 3px rgba(0,0,0,.2);
}
.triple [class*="commitment__bnrItem--"] {
    width: 352px;
}
.commitment__bnrItem--building { background: url(/images/top/bnr_commitment01.jpg) no-repeat center / cover; }
.commitment__bnrItem--division { background: url(/images/top/bnr_commitment02.jpg) no-repeat center / cover; }
.commitment__bnrItem--mansion { background: url(/images/top/bnr_commitment03.jpg) no-repeat center / cover; }
.commitment__bnrItem--house { background: url(/images/top/bnr_commitment04.jpg) no-repeat center / cover; }
.commitment__bnrItem--onsen { background: url(/images/top/bnr_commitment05.jpg) no-repeat center / cover; }
.commitment__bnrItem--business { background: url(/images/top/bnr_commitment06.jpg) no-repeat center / cover; }
.commitment__bnrItem--ryokan { background: url(/images/top/bnr_commitment07.jpg) no-repeat center / cover; }

.commitment__bnrLink {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    transition: .3s ease-in-out;
}
.commitment__bnrLink:hover {
    background: rgba(0,0,0,.5);
}

.commitment__text {
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    letter-spacing: .2em;
}


/*-------------------------------------------------------------------------
おすすめ物件
-------------------------------------------------------------------------*/
.bkn-recommend .section__ttl-en {
    margin: 9px 0 0;
}
.bkn-recommend-type {
    padding: 60px 0 60px;
}
.bkn-recommend-type:last-child {
    padding: 60px 0 0;
}
.bkn__wrap {
    margin-top: -120px;
    margin-bottom: 60px;
    padding-top: 120px;
}
.bkn__wrap:last-child {
    margin-bottom: 0;
}
.bkn__ttl {
    text-align: center;
    font-size: 20px;
    color: #492f12;
    margin-bottom: 17px;
}
.bkn__ttl-highlight {
    display: inline-block;
    font-size: 20px;
    background: #ebe4d7;
    padding: 0 10px 0;
    margin-left: 20px;
}
.bkn__list {
    display: flex;
    justify-content: center;
    margin-bottom: 30px;
}
.bkn__item {
    background: #fff;
    width: 352px;
    box-shadow: 1px 0 3px rgba(0,0,0,.2);
}
.bkn__item:not(:first-child) {
    margin-left: 12px;
}

.bkn__img {
    width: 352px;
    height: 280px;
    padding: 20px 0;
}
.bkn__img a {
    display: block;
    width: 100%;
    height: 100%;
    transition: .3s;
    background-size: contain !important;
}
.bkn__img a:hover {
    opacity: .8;
}

.bkn__data {
    padding: 15px;
}
.bkn__name,
.bkn__name a {
    font-size: 16px;
    font-weight: 600;
    color: #454f6b;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-bottom: 9px;
}
.bkn__name a:hover {
    text-decoration: underline;
}

.bkn__info dd {
    font-size: 14px;
}
.bkn__comment {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    line-height: 1.42;
    margin-bottom: 7px;
    min-height: 34px;
}
.bkn__price {
    margin-bottom: 8px;
}
.bkn__price .price {
    font-size: 22px;
    font-weight: 600;
}
.bkn__detail--link {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #515c76;
    font-size: 14px;
    color: #fff;
    padding: 11px 0 10px;
    letter-spacing: .2em;
    transition: .3s;
}
.bkn__detail--link:hover {
    color: #fff;
    opacity: .8;
}
.bkn__moreBtn {
    display: block;
    width: 402px;
    margin: 0 auto;
    text-align: center;
    font-size: 18px;
    color: #d0be8a;
    border: 1px solid #d0be8a;
    box-sizing: border-box;
    background: #fff;
    padding: 9px 0 10px;
    transition: .3s;
}
.bkn__moreBtn:hover {
    color: #fff;
    background: #d0be8a;
    opacity: .8;
}

/*-------------------------------------------------------------------------
会社概要
-------------------------------------------------------------------------*/
.about-hero {
    background-color: #b1abad;
    margin: 0 0 50px;
}
    .about__ttl {
        text-align: center;
    }
        .about__copy {
            font-size: 32px;
            text-align: center;
            margin: 0 0 25px;
            letter-spacing: 7px;
            font-weight: 700;
            line-height: 1.7;
        }
        .about__textWrap {
    margin: 0 auto 20px;
    width: 950px;
}
        .about__text {
            font-family: 'Noto Sans JP', sans-serif;
            font-size: 17px;
            line-height: 2.8;
            color: #595656;
            margin: 0 0 50px;
            letter-spacing: 2.5px;
        }
        .about__text:last-child {
            margin: 0;
        }
    .about-info {
    text-align: end;
    padding: 0 66px 0 0;
}