@charset "UTF-8";
/* =====
 * ALL DEVICE::Start
========================================================= */
.block-top-03 {
    background: transparent url(../img/top/img-10.jpg) no-repeat 50% 0;
    background-size: cover;
    position: relative;
}
.block-top-03::before {
    background: transparent url(../img/top/img-11.png) no-repeat 100% 0;
    background-size: contain;
    width: 5em;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    content: "";
    display: block;
}
.block-top-03::after {
    background: transparent url(../img/top/img-12.png) no-repeat 0 100%;
    background-size: contain;
    width: 5em;
    position: absolute;
    top: 0;
    bottom: 0;
    right: left;
    content: "";
    display: block;
}
.block-top-03 figure {
    max-width: 960px;
    margin: 0 auto;
}
.block-top-03 a.btn-style-01 {
    display: block;
    width: 10em;
    padding: 1em 3em;
    font-size: 111.11%;
    margin: 0 auto;
}
/* =====
 * ALL DEVICE::End
========================================================= */
@media only screen and (max-width:768px) {
/* =====
 * SP::Start
========================================================= */
    #Billboard {
        background: transparent url(../img/top/mv-02.jpg) no-repeat 50% 0;
        background-size: auto 100%;
    }
    #Billboard::before {
        display: block;
        content: "";
        width: 100%;
        padding-top: 65vw;
        background: transparent url(../img/top/mv-01.png) no-repeat 50% 50%;
        background-size: contain;
    }
    #Billboard .slider {
        background: transparent url(../img/top/bg-01.jpg) no-repeat 50% 100%;
        background-size: auto 60%;
        padding-bottom: 2em;
    }
    #Billboard .recommend-content {
        width: 27em;
        background-color: #fff;
        margin: 1em;
    }
    #Billboard .recommend-content a {
        display: block;
        text-decoration: none;
        color: #353535;
    }
    #Billboard .recommend-content figure {
        text-align: center;
    }
    #Billboard .recommend-content figcaption {
        display: inline-block;
        border-bottom: 2px solid #243248;
        color: #243248;
        font-size: 150%;
        font-weight: bold;
        padding: 0.75em 0 0.5em;
    }
    #Billboard .recommend-content p {
        padding: 1em 2em 3em;
    }

    /* BLOCK::TOP::01
    -----------------------*/
    #Main .block-top-01 {
        background: transparent url(../img/common/grad-02.png) no-repeat 50% 50%;
        background-size: 100% 100%;
    }
    #Main .block-top-01 .arealist,
    #Main .block-top-01 .newslist {
            margin-bottom: 2em;
    }
    /* BLOCK::TOP::02
    -----------------------*/
    #Main .block-top-02 {
        background: transparent url(../img/top/img-08.jpg) no-repeat 50% 50%;
        background-size: cover;
    }
    #Main .block-top-02 .contents {
    }
    #Main .block-top-02 .contents div {
        margin: 0;
    }
    #Main .block-top-02 .contents div a,
    #Main .block-top-02 .recruit div a {
        display: block;
        padding: 4em 0;
        text-align: center;
        text-decoration: none;
        font-weight: 600;
        color: #fff;
        background-color: rgba(32,32,32,0.8);
        border-top: 0.1em solid #000;
        border-bottom: 0.1em solid #000;
    }
    #Main .block-top-02 .contents div h4,
    #Main .block-top-02 .recruit div h4 {
        font-size: 125%;
        -webkit-transform: skewY(3deg);
        -ms-transform: skewY(3deg);
        transform: skewY(3deg);
        margin-bottom: 0.5em;
    }
    #Main .block-top-02 .contents div h4 ruby,
    #Main .block-top-02 .recruit div h4 ruby {
        display: block;
        font-family: 'Lato', sans-serif;
        font-weight: 100;
        font-size: 300%;
        line-height: 1;
        margin-bottom: 0.25em;
    }
    #Main .block-top-02 .contents div p,
    #Main .block-top-02 .recruit div p {
        font-size: 125%;
        font-weight: 400;
        -webkit-transform: skewY(3deg);
        -ms-transform: skewY(3deg);
        transform: skewY(3deg);
    }
    #Main .block-top-02 .contents div p span,
    #Main .block-top-02 .recruit div p span {
        display: block;
        position: relative;
        text-align: center;
        text-decoration: none;
        font-family: 'Lato', sans-serif;
        font-weight: 300;
        line-height: 1.5;
        padding: 0.5em 4em;
        border: 1px solid #fff;
        width: 10em;
        margin: 1em auto 0;
    }
    #Main .block-top-02 .recruit div a {
        background-color: rgba(255,255,255,0.2);
        color: #1d968c;
        border-bottom: 0 none transparent;
    }
    #Main .block-top-02 .recruit div p span {
        border: 1px solid #1d968c;
    }
    /* BLOCK::TOP::03
    -----------------------*/
    #Main .block-top-03 .container {
        padding: 2em 0;
    }
    #Main .block-top-03 .container article {
        border-top: 1px solid #d9d9d9;
        border-bottom: 1px solid #d9d9d9;
        position: relative;
        padding: 1em 0;
        margin-top: 2em;
    }
    #Main .block-top-03 .container article + article {
        border-top: 0 none transparent;
        margin: 0;
    }
    #Main .block-top-03 .container article a {
        text-decoration: none;
        color: #555;
        line-height: 2;
    }
    #Main .block-top-03 .container article h4 {
        white-space: nowrap;
        width: 26em;
        text-overflow: ellipsis;
        overflow: hidden;
        font-size: 112.5%;
        font-weight: 600;
    }
    #Main .block-top-03 .container article time {
        float: left;
        background-color: #1d968c;
        line-height: 2;
        color: #fff;
        padding: 0 1em;
        margin-right: 1em;
        font-weight: 600;
    }
    #Main .block-top-03 .more {
        padding: 2em 2em 0;
        margin: 0;
        text-align: center;
    }
/* =====
 * SP::End
========================================================= */
}
@media only screen and (min-width:769px) {
/* =====
 * PC::Start
========================================================= */
    body,html {height:100%;}
    #Billboard {
        background: transparent url(../img/top/mv-02.jpg) no-repeat 50% 0;
        background-size: cover;
        position: relative;
    }
    #Billboard::before {
        display: block;
        content: "";
        width: 100%;
        padding-top: 40em;
        background: transparent url(../img/top/mv-01.png) no-repeat 50% 50%;
        background-size: auto 80%;
    }
    #Billboard::after {
        display: block;
        content: "※1 住宅流通新報社調べ";
        color: #fff;
        font-size: 87.5%;
        position: absolute;
        bottom: 0;
        right: 0;
        padding: 0.75em 2em;
    }
    #Billboard .slider {
        background: transparent url(../img/top/bg-01.jpg) no-repeat 50% 100%;
        background-size: 100% 60%;
        padding: 0 10px 2em;
    }
    #Billboard .slider .slick-list {
    }
    #Billboard .recommend-content {
        width: 27em;
        background-color: #fff;
        margin: 10px;
    }
    #Billboard .recommend-content a {
        display: block;
        text-decoration: none;
        color: #353535;
    }
    #Billboard .recommend-content figure {
        text-align: center;
        overflow: hidden;
    }
    #Billboard .recommend-content figure img {
        width: 100%;
        height: auto;
        transition: all cubic-bezier(0.445, 0.05, 0.55, 0.95) 200ms;
        -webkit-filter: grayscale(50%);
        -moz-filter: grayscale(50%);
        -ms-filter: grayscale(50%);
        -o-filter: grayscale(50%);
        filter: grayscale(50%);
    }
    #Billboard .recommend-content a:hover figure img {
        transform-origin: center;
        -webkit-transform: scale(0.98, 0.96);
        -ms-transform: scale(0.98, 0.96);
        transform: scale(0.98, 0.96);
        -webkit-filter: grayscale(0);
        -moz-filter: grayscale(0);
        -ms-filter: grayscale(0);
        -o-filter: grayscale(0);
        filter: grayscale(0);
    }
    #Billboard .recommend-content figcaption {
        display: inline-block;
        border-bottom: 2px solid #243248;
        color: #243248;
        font-size: 100%;
        font-weight: bold;
        padding: 0.75em 0 0.5em;
        white-space: nowrap;
    }
    #Billboard .recommend-content figcaption small {
        letter-spacing: 0;
    }
    #Billboard .recommend-content p {
        line-height: 1.5;
        padding: 1em 1.5em 0;
        min-height: 7.5em;
        font-size: 87.5%;
    }
    /* BLOCK::TOP::01
    -----------------------*/
    #Main .block-top-01 {
        background: transparent url(../img/common/grad-02.png) no-repeat 50% 50%;
        background-size: 100% 100%;
    }
    #Main .block-top-01 .information > header {
        display: table;
        width: 100%;
        border-spacing: 20px;
        margin-top: -20px;
    }
    #Main .block-top-01 .arealist,
    #Main .block-top-01 .newslist {
        display: table-cell;
    }
        /* BLOCK::TOP::02
    -----------------------*/
    #Main .block-top-02 {
        background: transparent url(../img/top/img-08.jpg) no-repeat 50% 50%;
        background-size: cover;
        position: relative;
        padding: 0 3em;
        overflow: hidden;
    }
    #Main .block-top-02::before,
    #Main .block-top-02::after {
        content: "";
        display: block;
        background-color: #fff;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        transform: skewX(-45deg);
        opacity: 0;
        transition: all cubic-bezier(0.19, 1, 0.22, 1) 2400ms;
    }
    #Main .block-top-02::before {
        left: 0;
    }
    #Main .block-top-02::after {
        right: 0;
    }
    #Main .block-top-02.staging::before {
        left: -100%;
        opacity: 1;
    }
    #Main .block-top-02.staging::after {
        right: -100%;
        opacity: 1;
    }
    #Main .block-top-02 .container .pc img {
        display: block;
        width: 100%;
        max-width: 960px;
        height: auto;
        margin: 0 auto 2em;
        position: relative;
        z-index: 2;
    }
    #Main .block-top-02 .container > ul {
        display: table;
        margin: 0 auto;
        position: relative;
        z-index: 2;
    }
    #Main .block-top-02 .container > ul li {
        display: table-cell;
    }
    #Main .block-top-02 .container > ul li a {
        display: block;
        width: 10em;
        padding: 1em 3em;
    }
        /* BLOCK::TOP::03
    -----------------------*/
    #Main .block-top-03 .container {
        padding-bottom: 4em;
    }

    /* =====
 * PC::End
========================================================= */
}
/* =====
 * TAB::Start
========================================================= */
@media only screen and (min-width: 769px) and (max-width: 1260px) {
    #Billboard .slider {padding: 0 0 2em;}
}
/* =====
 * TAB::End
========================================================= */
