@charset "utf-8";

main {
    font-size: 16px;
}

sup {
    font-size: 0.7em;
    vertical-align: super;
    line-height: 0;
}

.mv {
    width: 100%;
    position: relative;
}

.mv .image_cap {
    color: #fff;
}

.cap {
    font-size: 11px;
}

.image_cap {
    font-size: 11px;
    position: absolute;
    bottom: 5px;
    right: 5px;
    z-index: 2;
}

.section_title {
    font-family: var(--sub-font);
    font-weight: 400;
    font-size: 28px;
}

.section_title-image {
    display: block;
    margin-bottom: 30px;
}

.global-navigation_list li.design a {
    background-color: #403f44;
}


header .global-navigation_list li {
    position: relative;
}

header .global-navigation_list li span.new {
    position: absolute;
    top: 0px;
    right: 0;
    font-size: 9px;
    background: #403f44;
    color: #fff;
    padding: 0 2px;
    line-height: 1.3em;
    transition: all 0.3s;
    z-index: 2;
    background: #fff;
    color: #403f44;
}

header .global-navigation_list li:hover .new {
    background: #fff;
    color: #403f44;
}


@media screen and (max-width: 767px) {
    .cap {
        font-size: 10px;
    }

    .section_title {
        font-size: 15px;
    }

    .section_title-image {
        margin-bottom: 10px;
    }
}


/* design-history */
.design-history .section_title {
    text-align: center;
    margin-bottom: 40px;
}

.design-history {
    padding: 80px 0;
}

.design-history .section_title img {
    max-width: 300px;
}

.design-history .text_wrap {
    text-align: center;
    line-height: 2;
}

.design-history .map_wrap {
    margin-top: 48px;
}

.design-history .map_image {
    position: relative;
}

.design-history .map_image .cap {
    text-align: right;
    margin-top: 10px;
}

.design-history .map_list {
    display: flex;
    flex-wrap: wrap;
    gap: 5px 15px;
    margin-top: 45px;
}

.design-history .map_list li {
    font-size: 14px;
    display: flex;
    align-items: center;
    position: relative;
}

.design-history .map_list li::before {
    content: "";
    display: block;
    width: 15px;
    height: 15px;
    margin-right: 10px;
    background-size: contain;
}

.design-history .map_list li:nth-of-type(1):before {
    background-image: url(../../design/img/icon_a.svg);
}

.design-history .map_list li:nth-of-type(2):before {
    background-image: url(../../design/img/icon_b.svg);
}

.design-history .map_list li:nth-of-type(3):before {
    background-image: url(../../design/img/icon_c.svg);
}

.design-history .map_list li:nth-of-type(4):before {
    background-image: url(../../design/img/icon_d.svg);
}

.design-history .map_list li:nth-of-type(5):before {
    background-image: url(../../design/img/icon_e.svg);
}

.design-history .map_list li:nth-of-type(6):before {
    background-image: url(../../design/img/icon_f.svg);
}

.design-history .map_list li:nth-of-type(7):before {
    background-image: url(../../design/img/icon_g.svg);
}

.design-history .map_list li:nth-of-type(8):before {
    background-image: url(../../design/img/icon_h.svg);
}

.design-history .map_list li:nth-of-type(9):before {
    background-image: url(../../design/img/icon_i.svg);
}

.design-history .map_list li:nth-of-type(10):before {
    background-image: url(../../design/img/icon_j.svg);
}

.design-history .map_list li:nth-of-type(11):before {
    background-image: url(../../design/img/icon_k.svg);
}

.design-history .map_list li:nth-of-type(12):before {
    background-image: url(../../design/img/icon_l.svg);
}

.design-history .map_list li:nth-of-type(13):before {
    background-image: url(../../design/img/icon_m.svg);
}

.design-history .map_list li:nth-of-type(14):before {
    background-image: url(../../design/img/icon_n.svg);
}


@media screen and (max-width: 767px) {
    .design-history {
        padding: 60px 0;
    }

    .design-history .text_wrap {
        font-size: 13px;
    }

    .design-history .map_list li {
        font-size: 11px;
    }
}

/* land-plan */
.land-plan {
    padding: 80px 0 120px;
}

.land-plan .section_title-image {
    max-width: 165px;
    line-height: 1;
}

.land-plan_text {
    font-size: 14px;
    margin-top: 28px;
}

.land-plan_image {
    margin-top: 28px;
}

.land-plan_list {
    display: flex;
    justify-content: space-between;
    gap: 30px;
}

.land-plan_list .text {
    font-size: 11px;
    text-align: right;
}

.land-plan .case-studies_list-title {
    font-size: 14px;
    text-align: center;
    font-weight: bold;
    margin-top: .5em;
}

.land-plan .case-studies_list-text {
    font-size: 11px;
    text-align: center;
}

.case-studies_wrap {
    margin-top: 28px;
}

.case-studies_text {
    font-size: 14px;
}

@media screen and (max-width: 767px) {
    .land-plan {
        padding: 60px 0 100px;
    }

    .land-plan_text {
        font-size: 13px;
    }

    .land-plan_list {
        flex-wrap: wrap;
    }

    .land-plan_list li {
        width: 45%;
    }

    .case-studies_text {
        font-size: 13px;
    }
}


/* .case-studies */
.case-studies {
    margin-top: 75px;
}

.case-studies h3 {
    font-size: 15px;
    margin-bottom: .5em;
}

.case-studies_list {
    display: flex;
    justify-content: space-between;
    gap: 20px;
}

@media screen and (max-width: 767px) {
    .case-studies_list {
        flex-direction: column;
    }
}

/* townscape-asset */
.townscape-asset {
    background-color: #f9f8f4;
    padding: 100px 0 120px;
}

.townscape-asset .section_title {
    margin-bottom: 120px;
}

@media screen and (max-width: 767px) {
    .townscape-asset {
        padding: 80px 0 100px;
    }

    .townscape-asset .section_title {
        margin-bottom: 80px;
        font-size: 18px;
    }
}


/* facade */
.facade .facade_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.facade_image {
    width: 66%;
}

.facade_image .cap {
    text-align: right;
}

.facade_text {
    width: 29%;
}

.facade_text .section_title {
    font-size: 20px;
    margin-bottom: 20px;
}

.facade_text .section_title img {
    max-width: 110px;
}

.facade_text .text {
    font-size: 14px;
}

@media screen and (max-width: 767px) {
    .facade .facade_wrap {
        flex-direction: column-reverse;
    }

    .facade_image {
        width: 100%;
    }

    .facade_text .section_title {
        font-size: 15px;
    }

    .facade_text {
        width: 100%;
    }

    .facade_text .text {
        font-size: 13px;
        margin-bottom: 20px;
    }
}


/* approach */
.approach {
    margin-top: 115px;
    display: flex;
    flex-direction: column;
}

.approach_image .cap {
    text-align: right;
}

.approach .section_title-image {
    line-height: 1;
    margin-top: 27px;
}

.approach .section_title-image img {
    max-width: 156px;
}

.approach .section_title {
    margin-bottom: 30px;
}

.approach .text {
    font-size: 14px;
}

@media screen and (max-width: 767px) {
    .approach {
        margin-top: 80px;
        flex-direction: column-reverse;
    }

    .approach .text {
        font-size: 13px;
        margin-bottom: 20px;
    }

    .approach .section_title {
        font-size: 15px;
    }

    .approach .section_title-image {
        margin-top: 0;
    }
}



/* lounge */
.lounge {
    margin-top: 120px;
    display: flex;
    flex-direction: column;
}

.lounge_image .cap {
    text-align: right;
}

.lounge .section_title-image {
    line-height: 1;
    margin-top: 27px;
}

.lounge .section_title-image img {
    max-width: 115px;
}

.lounge .section_title {
    margin-bottom: 30px;
}

.lounge_text .text {
    font-size: 14px;
}

@media screen and (max-width: 767px) {
    .lounge {
        margin-top: 80px;
        flex-direction: column-reverse;
    }

    .lounge .section_title-image {
        margin-top: 0;
    }

    .lounge_text .text {
        font-size: 13px;
        margin-bottom: 20px;
    }

    .lounge .section_title {
        font-size: 15px;
    }
}

/* elevator-hall */
.elevator-hall {
    margin-top: 120px;
}

.elevator-hall .elevator-hall_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.elevator-hall_image {
    width: 60%;
}

.elevator-hall_image .cap {
    text-align: right;
}

.elevator-hall_text {
    width: 33%;
}

.elevator-hall_text .section_title {
    font-size: 20px;
    margin-bottom: 20px;
}

.elevator-hall_text .section_title img {
    max-width: 220px;
}

.elevator-hall_text .text {
    font-size: 14px;
}

@media screen and (max-width: 767px) {
    .elevator-hall {
        margin-top: 80px;
    }

    .elevator-hall .elevator-hall_wrap {
        flex-direction: column;
    }

    .elevator-hall_image {
        width: 100%;
    }

    .elevator-hall_text {
        width: 100%;
        font-size: 13px;
        margin-bottom: 20px;
    }

    .elevator-hall_text .section_title {
        font-size: 15px;
    }
}