@charset "utf-8"; /* 共通 */
@media screen and (max-width: 1024px) {
    .nosp {
        display: none;
    }
    .nopc {
        display: block;
    }
    
    /* header */
    h1 {
        max-width: 200px;
    }
    .rightli {
        padding-right: 20px;
    }
    .rightli ul {
        width: 100%;
        display: block;
        padding-left: 20px;
        padding-right: 20px;
    }
    .rightli ul li {
        width: auto;
        margin-right: 20px;
        margin-left: 0;
    }
    nav {
       width: 90%;
    }
    nav ul {
        padding-left: 20px;
        padding-right: 20px;
    }
    nav ul:last-child {
        padding-top: 30px;
    }
    /* content */
    #content {
        width: auto;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 10px;
        padding-right: 10px;
    }
    .mainpic .appeal {
        display: flex;
        flex-direction: column;
        justify-content: center;
        left: 10px;
    }
    .mainpic .appeal>p {
        font-size: 20px;
    }
    .mainpic .appeal a {
        display: inline-block;
        margin: 0 auto;
        text-align: center;
    }
    #content .flexbox {
        width: 100%;
        display: block;
        
    }
    .sidearea {
        width: auto;
        max-width: none;
        height: auto;
        margin-right: 0;
        margin-bottom: 30px;
        padding-left: 10px;
        padding-right: 10px;
    }
    .search {
        margin-bottom: 30px;
    }
    .search h2 {
        background-size: 25px;
    }
    .search div {
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap;
    }
    .search div a {
        display: inline-block;
        margin-top: 15px;
        margin-right: 30px;
        font-size: 16px;
    }
    .banner a {
        width: auto;
        padding-left: 20px;
        padding-right: 20px;
    }
    #content {
        width: 100%;
    }
    #content .rightbox {
        width: 100%;
    } 
    #content .recom .flexbox {
        display: flex;
        justify-content: flex-start;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }
    #property .recom .flexbox {
        display: block;
    }
    #content .recom .recomlist>div {
        width: 40%;
        margin-top: 20px;
        margin-right: 20px;
    }
    #property .recom .recomlist div {
        width: 100%;
    }
    
    footer img {
        width: 70%;
    }
    footer ul {
        margin-top: 20px;
    }
    .news>div {
        padding-left: 0;
    }
    .news div div {
        width: 95%;
        margin-left: 0;
        margin-right: 0;
        padding-left: 2.5%;
        padding-right: 2.5%;
        display: block;
    }
    .news div div p {
        width: 100%;
        margin-top: 10px;
    }
    .news div div p:nth-child(2) {
        width: auto;
        padding-left: 30px;
        padding-right: 30px;
        display: inline-block;
    }
    .news div div p:last-child {
        width: 100%;
    }
    #retop {
        font-size: 18px;
    }
    footer div.flexbox {
        display: block;
    }
}
@media screen and (max-width: 768px) {
    h3 {
        font-size: 20px;
    }
    .leftbox .banner a {
        display: block;
    }
    #content .rightbox {
        width: 100%;
    }
    #content .recom .flexbox {
        display: block;
    }
    #content .recom .recomlist>div {
        width: 100%;
        margin-top: 20px;
        margin-right: 0;
        display: block;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }
    .recomlist div img {
        width: 100%;
    }
    #property .recomlist>div>img {
        width: 100%;
    }
    .detail .recomlist th {
        width: 100%;
        padding-right: 1em;
    }
    .detail .recomlist td {
        display: table-cell;
    }
    .detail .recomlist td a {
        margin-top: 10px;
        margin-left: 0;
        display: inline-block;
    }
    .about div.company div {
        display: block;
    }
    .about div.company p:first-child {
        width: 100%;
        padding-right: 0;
        padding-top: 10px;
        padding-bottom: 10px;
    }
    #contactarea .sidearea {
        display: none;
    }
    form {
        margin-left: 0;
    }
    .contact ul {
        padding: 10px 0;
    }
    .contact ul li {
        display: block;
    }
    .contact ul li p:first-child {
        width: 100%;
    }
    .contact ul li p:last-child {
        width: 100%;
    }
    .contact ul li p span:last-child {
        width: 100%;
        margin-bottom: 10px;
    }
    .detailpic {
        display: block;
    }
    #property .detail .recomlist .detailpic img,
    #property .detail .recomlist .detailpic img:nth-child(n+2) {
        width: 100%;
        height: auto;
        margin-right: 0;
    }
    #property .detail .recomlist .detailpic img:nth-child(n + 5) {
        display: none;
    }
    .detail .recomlist table tr {
        display: flex;
        flex-wrap: wrap;
    }
    .detail .recomlist table tr th,
    .detail .recomlist table tr td {
        width: 100%;
        display: block;
    }
    .detail .recomlist table tr td {
        padding-top: 0;
    }
    .propertylink a img {
        height: 12px;
    }
    .propertylink a {
        font-size: 18px;
    }
}