@charset "UTF-8";
/* ========================================
   @media screen and (min-width: 768px),print
======================================== */
@media screen and (min-width: 768px),print {

    /* land 
    -------------------------------------*/
    #land .system-contents {
      padding: 0;
    }
    #land .system-contents .system-ttl02 {
        font-size: 24px;
        font-weight: 700;
        letter-spacing: 0.05em;
        line-height: 2;
        margin-bottom: 3rem;
        position: relative;
        text-align: center;
        padding: 1rem 0px 1rem 0px;
    }
    #land .system-contents .icon {
        background-color: #aaa;
        padding: 5px 10px 5px 10px;
        color: #fff;
        text-align: center;
        width: 140px;
        margin: 0 auto 0px;
    }
    #land .system-contents .system-i-pic img {
        display: block;
        width: auto;
        max-width: 100%;
        height: auto;
        margin-inline: auto;
    }

    #land .sale-table {
        width: 86%;
        margin: 0 auto 30px;
        border-collapse: collapse;
    }
    #land .sale-table th {
        padding: 15px 15px 15px 15px;
        width: 30%;
        text-align: left;
        font-size: 18px;
        line-height: 1.6;
        letter-spacing: 1px;
        border: 1px solid #aaa;
        background-color: #F4F2ED;
    }
    #land .sale-table td {
        padding: 15px 15px 15px 15px;
        font-size: 18px;
        line-height: 1.6;
        letter-spacing: 1px;
        border: 1px solid #aaa;
    }

    #land .price-frame {
        border-bottom: 1px solid #aaa;
        width: 700px;
        margin: 0 auto 40px;
        padding: 0 0 10px 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
    }
    #land .price-frame .sale-info-row-left {
        margin: 10px 20px 0 20px;
        text-align: center;
        width: 80px;
        font-size: 16px;
        line-height: 1.6;
        letter-spacing: 1px;
    }
    #land .price-frame .sale-price {
        width: 580px;
        font-size: 26px;
        line-height: 1.6;
        letter-spacing: 1px;
        text-align: center;
    }

    #land .land-summary {
        width: 86%;
        max-width: 1000px;
        margin: 0 auto 28px;
        padding: 20px 24px;
        box-sizing: border-box;
    }
    #land .land-summary__heading {
        margin: 0 0 12px;
        font-size: clamp(14px, 12px + 0.35vw, 17px);
        font-weight: 700;
        line-height: 1.35;
        letter-spacing: 0.08em;
        color: #222;
    }
    #land .land-summary__text {
        margin: 0;
        font-size: clamp(13px, 11.5px + 0.3vw, 16px);
        line-height: 1.8;
        letter-spacing: 0.05em;
        color: #333;
    }
    #land .land-summary--recommend {
        background: #f8f7f4;
        border-left: 4px solid #72b862;
    }
    #land .land-summary--recommend .land-summary__text {
        color: #6C7972;
    }
    #land .land-summary--detail {
        background: #fff;
        border: 1px solid #ccc;
        box-shadow: 0 1px 0 rgba(0, 0, 0, 0.04);
    }

    #land .wysiwyg {
        margin-bottom: 30px;
        padding: 20px 0 20px 0;
    }
    #land .system-gaiyo.land-detail {
        width: 100%;
        max-width: 1000px;
        margin: 0 auto 96px;
    }
    #land .system-gaiyo.land-detail .land-detail-list {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        border-left: 1px solid #ccc;
    }
    /* 上罫線は dl 全体ではなくグリッド1行目の各ブロックへ（1件のみ時は左列の幅に収まる） */
    #land .system-gaiyo.land-detail .land-detail-list > .land-detail-row:nth-child(-n + 2) {
        border-top: 1px solid #ccc;
    }
    #land .system-gaiyo.land-detail .land-detail-row {
        display: grid;
        grid-template-columns: 10em 1fr;
        gap: 0;
        align-items: stretch;
        padding: 0;
        border-right: 1px solid #ccc;
        border-bottom: 1px solid #ccc;
        background: #fff;
    }
    #land .system-gaiyo.land-detail .land-detail-row dt {
        display: flex;
        align-items: center;
        height: 100%;
        box-sizing: border-box;
        padding: 10px;
        background-color: #efefef;
        font-size: clamp(12px, 10.667px + 0.174vw, 14px); /* 768 ~ 1920px */
        font-weight: 500;
        line-height: 1.6;
        letter-spacing: 0.05em;
    }
    #land .system-gaiyo.land-detail .land-detail-row dd {
        display: flex;
        align-items: center;
        padding: 10px;
        border-left: 1px solid #ccc;
        font-size: clamp(12px, 10.667px + 0.174vw, 14px); /* 768 ~ 1920px */
        font-weight: 400;
        line-height: 1.6;
        letter-spacing: 0.05em;
    }

    #land .system-contents .icon01 {
        padding-block: 5px 6px;
        padding-inline: 16px;
        font-size: 18px;
        font-weight: 500;
        line-height: 1;
        letter-spacing: 0.15em;
        background-color: #1A1007;
    }

    #land main .page-list a {
        border: 1px solid #eee;
    }
    #land main .system-i-pic {
        max-width: 800px;
        margin-inline: auto;
    }


    #land main .estate.estate--archive-static {
      max-width: 1920px;
      margin-inline: auto;
      background-color: #D4D7D0;
    }
    #land main .estate.estate--archive-static .estate__inner {
        width: min(95%, 1200px);
        margin-inline: auto;
        padding-top: 96px;
        padding-bottom: 80px;
    }
    #land main .estate.estate--archive-static .estate__grid {
        width: min(80%, 1200px);
        margin-inline: auto;
        margin-top: 60px;
    }
    #land main .estate.estate--archive-static .estate__list {
        display: flex;
        flex-wrap: wrap;
        gap: 48px 24px;
    }
    #land main .estate.estate--archive-static .estate__item {
        flex: 0 0 calc((100% - 48px) / 3);
        max-width: calc((100% - 48px) / 3);
        position: relative;
        height: auto;
    }
    #land main .estate.estate--archive-static .estate__item--empty {
        flex: 0 0 100%;
        max-width: 100%;
        text-align: center;
        padding-block: 2rem;
    }
    #land main .estate.estate--archive-static .estate__link {
        position: relative;
        display: block;
    }
    #land main .estate.estate--archive-static .estate__status {
        position: absolute;
        top: 0;
        left: 0;
        padding-top: clamp(4px, 3.33px + 0.087vw, 5px);
        padding-bottom: clamp(4px, 2.67px + 0.174vw, 6px);
        padding-inline: clamp(14px, 12.67px + 0.174vw, 16px);
        font-size: clamp(8px, 5.33px + 0.347vw, 12px);
        font-weight: 500;
        line-height: 1;
        letter-spacing: 0.15em;
        color: #fff;
        background: #1A1007;
        z-index: 2;
    }
    #land main .estate.estate--archive-static .estate-list-image {
        aspect-ratio: 360 / 240;
        overflow: hidden;
        width: 100%;
    }
    #land main .estate.estate--archive-static .estate-list-image img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    #land main .estate.estate--archive-static .estate__body {
        position: relative;
        padding-top: clamp(12px, 4px + 1.042vw, 24px);
        padding-bottom: clamp(15px, 5px + 1.302vw, 30px);
        padding-inline: clamp(8px, 0px + 1.042vw, 20px);
        background-color: #fff;
    }
    #land main .estate.estate--archive-static .estate__body::after {
        content: "";
        position: absolute;
        bottom: 0;
        right: 0;
        width: 24px;
        height: auto;
        aspect-ratio: 1/1;
        background: url("../images/front-page/estate-card-arrow.svg") no-repeat center center;
        background-size: contain;
        z-index: 1;
    }
    #land main .estate.estate--archive-static .estate__list-title {
        font-size: 16px;
        font-weight: 500;
        line-height: 1;
        letter-spacing: 0.05em;
        color: #222;
    }
    #land main .estate.estate--archive-static .estate__meta {
        display: grid;
        grid-template-columns: max-content 1fr;
        column-gap: 8px;
        row-gap: 8px;
        margin-top: 12px;
    }
    #land main .estate.estate--archive-static .estate__meta-row {
        display: contents;
    }
    #land main .estate.estate--archive-static .estate__meta-row dt,
    #land main .estate.estate--archive-static .estate__meta-row dd {
        font-size: clamp(10px, 7.33px + 0.347vw, 14px);
        font-weight: 400;
        line-height: 1;
        letter-spacing: 0.05em;
        color: #222;
    }
    #land main .estate.estate--archive-static .estate__point {
        margin-top: clamp(8px, 2.67px + 0.694vw, 16px);
        font-size: clamp(10px, 7.33px + 0.347vw, 14px);
        font-weight: 400;
        line-height: 1.7142;
        letter-spacing: 0.05em;
        color: #6C7972;
    }
    #land main .estate.estate--archive-static .land-archive-pagenavi {
        margin-top: 56px;
        text-align: center;
    }

    #land main .form-box-inner {
        margin-bottom: 100px;
    }
}

/* ========================================
   @media screen and (max-width: 767px)
======================================== */
@media screen and (max-width: 767px) {

    #land .system-contents .system-ttl02 {
        font-size: 5.8vw;
        font-weight: 700;
        letter-spacing: 0.25vw;
        line-height: 2;
        margin-bottom: 7.25vw;
        text-align: center;
        padding: 3vw 0px 2.41vw 0px;
    }
    #land .system-contents .icon {
        background-color: #aaa;
        padding: 1.21vw 2.41vw 1.21vw 2.41vw;
        color: #fff;
        text-align: center;
        width: 33.82vw;
        margin: 0 auto;
    }

    #land .system-contents .system-i-pic img {
        display: block;
        width: auto;
        max-width: 100%;
        height: auto;
        margin-inline: auto;
    }
    #land .system-contents .icon01 {
        background-color: #1A1007;
    }

    #land .sale-table {
        width: 100%;
        margin: 0 auto 7.25vw;
        border-collapse: collapse;
        border-bottom: 1px solid #aaa;
    }
    #land .sale-table th {
        padding: 3.62vw 3.62vw 3.62vw 3.62vw;
        width: 100%;
        text-align: left;
        font-size: 4.35vw;
        line-height: 1.6;
        letter-spacing: 0.25vw;
        background-color: #F4F2ED;
        display: block;
        border-top: 1px solid #aaa;
        border-left: 1px solid #aaa;
        border-right: 1px solid #aaa;
    }
    #land .sale-table td {
        padding: 3.62vw 3.62vw 3.62vw 3.62vw;
        font-size: 4.35vw;
        line-height: 1.6;
        letter-spacing: 0.25vw;
        border-top: 1px solid #aaa;
        display: block;
        border-left: 1px solid #aaa;
        border-right: 1px solid #aaa;
    }

    #land .price-frame {
        border-bottom: 1px solid #aaa;
        width: 100%;
        margin: 0 auto 9.66vw;
        padding: 0 0 2.41vw 0;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        gap: 2.41vw 4.83vw;
        box-sizing: border-box;
    }
    #land .price-frame .sale-info-row-left {
        margin: 0;
        text-align: center;
        width: auto;
        flex: 0 0 auto;
        font-size: 3.86vw;
        line-height: 1.6;
        letter-spacing: 0.25vw;
    }
    #land .price-frame .sale-price {
        flex: 1 1 auto;
        min-width: 0;
        width: auto;
        font-size: 6.28vw;
        line-height: 1.6;
        letter-spacing: 0.25vw;
        text-align: center;
    }

    #land .land-summary {
        width: min(95%, 1000px);
        margin: 0 auto 7.25vw;
        padding: 4.83vw 4.35vw;
        box-sizing: border-box;
    }
    #land .land-summary__heading {
        margin: 0 0 3.14vw;
        font-size: 4.11vw;
        font-weight: 700;
        line-height: 1.35;
        letter-spacing: 0.08em;
        color: #222;
    }
    #land .land-summary__text {
        margin: 0;
        font-size: 3.62vw;
        line-height: 1.75;
        letter-spacing: 0.05em;
        color: #333;
    }
    #land .land-summary--recommend {
        background: #f8f7f4;
        border-left: 1.21vw solid #72b862;
    }
    #land .land-summary--recommend .land-summary__text {
        color: #6C7972;
    }
    #land .land-summary--detail {
        background: #fff;
        border: 1px solid #ccc;
        box-shadow: 0 1px 0 rgba(0, 0, 0, 0.04);
    }

    #land .system-gaiyo.land-detail {
        width: 100%;
        margin: 0 auto 7.25vw;
    }

    #land .system-contents {
        padding: 0;
    }
    #land .system-gaiyo.land-detail .land-detail-list {
        display: grid;
        grid-template-columns: 1fr;
        row-gap: 0;
        border-top: 1px solid #ccc;
        border-left: 1px solid #ccc;
    }
    #land .system-gaiyo.land-detail .land-detail-row {
        display: grid;
        grid-template-columns: 8em 1fr;
        gap: 0;
        align-items: stretch;
        padding: 0;
        border-right: 1px solid #ccc;
        border-bottom: 1px solid #ccc;
        background: #fff;
    }
    #land .system-gaiyo.land-detail .land-detail-row dt {
        display: flex;
        align-items: center;
        height: 100%;
        box-sizing: border-box;
        padding: 2.41vw;
        background-color: #efefef;
        font-size: 3.14vw;
        font-weight: 500;
        line-height: 1.6;
        letter-spacing: 0.05em;
    }
    #land .system-gaiyo.land-detail .land-detail-row dd {
        display: flex;
        align-items: center;
        padding: 2.41vw;
        border-left: 1px solid #ccc;
        font-size: 3.14vw;
        font-weight: 400;
        line-height: 1.6;
        letter-spacing: 0.05em;
    }

    #land main .page-list a {
        border: 1px solid #eee;
    }

    #land main .estate.estate--archive-static .estate__inner {
        padding-top: 14.01vw;
        padding-bottom: 12vw;
        background-color: #D4D7D0;
    }
    #land main .estate.estate--archive-static .estate__grid {
        width: 100%;
        margin-top: 13.04vw;
        padding-inline: 6.52vw;
    }
    #land main .estate.estate--archive-static .estate__list {
        display: flex;
        flex-direction: column;
        gap: 15vw;
    }
    #land main .estate.estate--archive-static .estate__item {
        width: 100%;
        position: relative;
        height: auto;
    }
    #land main .estate.estate--archive-static .estate__item--empty {
        text-align: center;
        padding-block: 6vw;
    }
    #land main .estate.estate--archive-static .estate__link {
        position: relative;
        display: block;
    }
    #land main .estate.estate--archive-static .estate__status {
        position: absolute;
        top: 0;
        left: 0;
        padding-top: 1.21vw;
        padding-bottom: 1.45vw;
        padding-inline: 3.86vw;
        font-size: 2.9vw;
        font-weight: 500;
        line-height: 1;
        letter-spacing: 0.15em;
        color: #fff;
        background: #1A1007;
        z-index: 2;
    }
    #land main .estate.estate--archive-static .estate-list-image {
        aspect-ratio: 360 / 240;
        overflow: hidden;
        width: 100%;
    }
    #land main .estate.estate--archive-static .estate-list-image img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    #land main .estate.estate--archive-static .estate__body {
        position: relative;
        padding-top: 5.8vw;
        padding-bottom: 7.25vw;
        padding-inline: 4.83vw;
        background-color: #fff;
    }
    #land main .estate.estate--archive-static .estate__body::after {
        content: "";
        position: absolute;
        bottom: 0;
        right: 0;
        width: 5.8vw;
        height: auto;
        aspect-ratio: 1/1;
        background: url("../images/front-page/estate-card-arrow.svg") no-repeat center center;
        background-size: contain;
        z-index: 1;
    }
    #land main .estate.estate--archive-static .estate__list-title {
        font-size: 3.86vw;
        font-weight: 500;
        line-height: 1;
        letter-spacing: 0.05em;
        color: #222;
    }
    #land main .estate.estate--archive-static .estate__meta {
        display: grid;
        grid-template-columns: max-content 1fr;
        column-gap: 1.93vw;
        row-gap: 1.93vw;
        margin-top: 2.9vw;
    }
    #land main .estate.estate--archive-static .estate__meta-row {
        display: contents;
    }
    #land main .estate.estate--archive-static .estate__meta-row dt,
    #land main .estate.estate--archive-static .estate__meta-row dd {
        font-size: 3.38vw;
        font-weight: 400;
        line-height: 1;
        letter-spacing: 0.05em;
        color: #222;
    }
    #land main .estate.estate--archive-static .estate__point {
        margin-top: 3.86vw;
        font-size: 3.38vw;
        font-weight: 400;
        line-height: 1.7142;
        letter-spacing: 0.05em;
        color: #6C7972;
    }
    #land main .estate.estate--archive-static .land-archive-pagenavi {
        margin-top: 12vw;
        text-align: center;
    }
}
