@charset "UTF-8";
/* --------------------
 Front
-------------------- */
img {
    height: auto;
}

main {
    padding: 15.3846153846vw 0 0;
}

@media (min-width: 769px) {
    main {
        padding: 5.9027777778vw 0 0;
    }
}

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

@media (min-width: 769px) {
    .hero {
        aspect-ratio: 1440/736;
    }
}

.hero__slider {
    aspect-ratio: 390/400;
    height: 100%;
    margin: 0 0 7.6923076923vw;
    -webkit-mask-image: url(../images/pages/front/front-hero-mask-mb.svg);
    mask-image: url(../images/pages/front/front-hero-mask-mb.svg);
    -webkit-mask-position: center bottom;
    mask-position: center bottom;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: cover;
    mask-size: cover;
    width: 100%;
}

@media (min-width: 769px) {
    .hero__slider {
        aspect-ratio: auto;
        bottom: 0;
        height: auto;
        left: 0;
        margin: 0;
        -webkit-mask-image: url(../images/pages/front/front-hero-mask.svg);
        mask-image: url(../images/pages/front/front-hero-mask.svg);
        -webkit-mask-position: right bottom;
        mask-position: right bottom;
        position: absolute;
        right: 0;
        top: 0;
        width: auto;
        z-index: 0;
    }
}

.hero__slider .splide {
    height: 100%;
    position: relative;
    width: 100%;
}

.hero__slider .splide__track {
    height: 100%;
}

.hero__slider .splide__slide img {
    height: 100%;
    object-fit: cover;
    object-position: center;
    width: 100%;
}

.hero__slider .splide__pagination {
    align-items: center;
    bottom: 5.1282051282vw;
    display: flex;
    flex-flow: row nowrap;
    gap: 3.0769230769vw;
    justify-content: center;
    left: auto;
    margin: 0;
    padding: 0;
    right: 0;
    width: 100%;
}

@media (min-width: 769px) {
    .hero__slider .splide__pagination {
        bottom: 2.7777777778vw;
        gap: 0.8333333333vw;
        max-width: 52.7777777778vw;
    }
}

.hero__slider .splide__pagination > li {
    display: block;
    margin: 0;
    padding: 0;
}

.hero__slider .splide__pagination > li button.splide__pagination__page {
    -webkit-appearance: none;
    appearance: none;
    background: none;
    background-color: rgba(var(--color-white-rgb), 0);
    border: 0.2564102564vw solid var(--color-white);
    height: 2.5641025641vw;
    margin: 0;
    opacity: 1 !important;
    transform: none !important;
    transition: background-color var(--duration) var(--cubic) 0s;
    width: 2.5641025641vw;
}

@media (min-width: 769px) {
    .hero__slider .splide__pagination > li button.splide__pagination__page {
        border-width: 0.0694444444vw;
        height: 0.6944444444vw;
        width: 0.6944444444vw;
    }
}

.hero__slider .splide__pagination > li button.splide__pagination__page.is-active {
    background-color: rgba(var(--color-white-rgb), 1);
}

.hero__slider__dummy {
    bottom: 0;
    display: none;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

@media (min-width: 769px) {
    .hero__slider__dummy {
        display: block;
        padding: 11.1111111111vw 0 0 3.4722222222vw;
    }
}

.hero__slider__dummy__title {
    color: var(--color-white);
    font-family: var(--ff-tsukushi-b);
    font-size: 4.6666666667rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.3;
    margin: 0 0 1.3888888889vw;
    mix-blend-mode: difference;
    padding: 0 0 0 0.5em;
    position: relative;
    text-align: left;
    text-indent: -0.5em;
}

.hero__slider__dummy__content {
    position: relative;
}

.hero__slider__dummy__content p {
    color: var(--color-white);
    font-family: var(--ff-tsukushi-b);
    font-size: 1.4166666667rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    line-height: 1.85;
    margin: 0;
    mix-blend-mode: exclusion;
    text-align: left;
}

.hero__main {
    padding: 0 6.4102564103vw;
}

@media (min-width: 769px) {
    .hero__main {
        bottom: 0;
        left: 0;
        -webkit-mask-image: url(../images/pages/front/front-hero-mask-reverse.svg);
        mask-image: url(../images/pages/front/front-hero-mask-reverse.svg);
        -webkit-mask-position: right bottom;
        mask-position: right bottom;
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-size: cover;
        mask-size: cover;
        padding: 11.1111111111vw 0 0 3.4722222222vw;
        position: absolute;
        right: 0;
        top: 0;
        z-index: 2;
    }
}

.hero__main__title {
    color: #707070;
    font-family: var(--ff-tsukushi-b);
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.3;
    margin: 0 0 5.1282051282vw;
    position: relative;
    text-align: center;
}

@media (min-width: 769px) {
    .hero__main__title {
        font-size: 4.6666666667rem;
        margin: 0 0 1.3888888889vw;
        padding: 0 0 0 0.5em;
        text-align: left;
        text-indent: -0.5em;
    }
}

.hero__main__content {
    margin: 0 0 7.6923076923vw;
    position: relative;
}

@media (min-width: 769px) {
    .hero__main__content {
        margin: 0 0 3.4722222222vw;
    }
}

.hero__main__content p {
    color: #707070;
    font-family: var(--ff-tsukushi-b);
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    line-height: 1.85;
    margin: 0;
    text-align: left;
}

@media (min-width: 769px) {
    .hero__main__content p {
        font-size: 1.4166666667rem;
    }
}

.hero__main__badge {
    align-self: flex-start;
    display: flex;
    flex-flow: row nowrap;
    gap: 4.6153846154vw;
    justify-content: center;
}

@media (min-width: 769px) {
    .hero__main__badge {
        gap: 1.25vw;
        justify-content: flex-start;
    }
}

.hero__main__badge__item {
    opacity: 0;
}

.hero__main__badge__item.-active {
    opacity: 1;
}

.hero__main__badge__item img {
    width: 32.3076923077vw;
}

@media (min-width: 769px) {
    .hero__main__badge__item img {
        width: 13.3333333333vw;
    }
}

.b-fv__img-wrapper {
    overflow-x: clip;
    position: relative;
}

@media (max-width: 768px) {
    .b-fv__img {
        margin-top: 0;
    }
}

.b-fv__img .slick-slide img {
    height: 100%;
    margin: 0;
    width: 100%;
}

.b-fv__img .slick-dots {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    gap: 3.0769230769vw;
    justify-content: center;
}

@media (min-width: 769px) {
    .b-fv__img .slick-dots {
        gap: 1.1111111111vw;
    }
}

.b-fv__img .slick-dots > li {
    height: 2.5641025641vw;
    margin: 0;
    width: 2.5641025641vw;
}

@media (min-width: 769px) {
    .b-fv__img .slick-dots > li {
        height: 0.6944444444vw;
        width: 0.6944444444vw;
    }
}

.b-fv__img .slick-dots > li > button {
    height: 100%;
    padding: 0;
    width: 100%;
}

.b-fv__img__badge {
    bottom: -17.9487179487vw;
    position: absolute;
    right: -5.1282051282vw;
    width: 39.7435897436vw;
    z-index: 1;
}

@media (min-width: 769px) {
    .b-fv__img__badge {
        bottom: 0;
        right: 6.6666666667vw;
        width: 17.6388888889vw;
    }
}

.b-fv__img__badge img {
    aspect-ratio: 254/266;
    height: auto;
    object-fit: contain;
    width: 100%;
}

.column {
    margin: 0 0 20.5128205128vw;
    padding: 15.3846153846vw 0 0;
}

@media (min-width: 769px) {
    .column {
        margin: 0 0 5.5555555556vw;
        padding: 4.1666666667vw 0 0;
    }
}

.column-container {
    margin: 0 auto;
    padding: 0 5.1282051282vw;
    width: 100%;
}

@media (min-width: 769px) {
    .column-container {
        max-width: 82.3611111111vw;
        padding: 0;
    }
}

.column__title {
    margin: 0 0 7.6923076923vw;
    padding: 6.1538461538vw 0 0;
    position: relative;
}

@media (min-width: 769px) {
    .column__title {
        margin: 0 0 3.4722222222vw;
        padding: 2.2222222222vw 0 0;
    }
}

.column__title:before {
    background-color: var(--color-blue-sky);
    border-radius: 0.5128205128vw;
    content: "";
    display: block;
    height: 1.0256410256vw;
    left: 0;
    margin: 0 auto;
    position: absolute;
    right: 0;
    top: 0;
    width: 10.2564102564vw;
}

@media (min-width: 769px) {
    .column__title:before {
        border-radius: 0.1388888889vw;
        height: 0.2777777778vw;
        width: 3.4722222222vw;
    }
}

.column__title__ja {
    color: var(--color-blue-sky);
    font-family: var(--ff-tsukushi-b);
    font-size: 1.75rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.2;
    margin: 0 0 2.0512820513vw;
    text-align: center;
}

@media (min-width: 769px) {
    .column__title__ja {
        font-size: 3rem;
        margin: 0 0 0.5555555556vw;
    }
}

.column__title__en {
    color: var(--color-blue-sky);
    font-family: var(--ff-tsukushi-b);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.2;
    margin: 0;
    text-align: center;
}

@media (min-width: 769px) {
    .column__title__en {
        font-size: 1.1666666667rem;
    }
}

.column__list {
    display: grid;
    gap: 7.6923076923vw;
    grid-gap: 7.6923076923vw;
    grid-template-columns: repeat(1, 1fr);
    margin: 0 0 12.8205128205vw;
}

@media (min-width: 769px) {
    .column__list {
        gap: 2.6388888889vw;
        grid-template-columns: repeat(3, 1fr);
        margin: 0 0 4.1666666667vw;
    }
}

.column__list__item {
    background-color: rgba(var(--color-white-rgb), 0.7);
    border-radius: 5.1282051282vw;
    box-shadow: 0 0 2.5641025641vw 0 rgba(0, 0, 0, 0.15);
    color: var(--color-gray-mid);
    display: block;
    margin: 0;
    overflow: hidden;
    padding: 0;
    text-decoration: none;
}

@media (min-width: 769px) {
    .column__list__item {
        border-radius: 2.7777777778vw;
        box-shadow: 0 0 0.6944444444vw 0 rgba(0, 0, 0, 0.15);
    }
}

.column__list__item:last-child {
    margin-bottom: 0;
}

.column__list__item__fig {
    aspect-ratio: 370/206;
    height: auto;
    width: 100%;
}

.column__list__item__fig img {
    height: 100%;
    object-fit: cover;
    object-position: center;
    width: 100%;
}

.column__list__item__main {
    padding: 7.6923076923vw 6.4102564103vw 6.4102564103vw;
    position: relative;
}

@media (min-width: 769px) {
    .column__list__item__main {
        padding: 2.0833333333vw;
    }
}

.column__list__item__main__meta {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    gap: 2.0512820513vw;
    justify-content: space-between;
    margin: 0 0 5.1282051282vw;
}

@media (min-width: 769px) {
    .column__list__item__main__meta {
        gap: 0.5555555556vw;
        margin: 0 0 1.3888888889vw;
    }
}

.column__list__item__main__meta__date {
    display: block;
    font-size: 0.9375rem;
    margin: 0;
}

@media (min-width: 769px) {
    .column__list__item__main__meta__date {
        font-size: 1.0833333333rem;
    }
}

.column__list__item__main__meta__category {
    align-items: center;
    display: flex;
    flex-flow: row wrap;
    gap: 1.5384615385vw;
    justify-content: flex-end;
    margin: 0;
    padding: 0;
}

@media (min-width: 769px) {
    .column__list__item__main__meta__category {
        gap: 0.5555555556vw;
    }
}

.column__list__item__main__meta__category span {
    background-color: var(--color-white);
    border: 0.2564102564vw solid var(--color-gray-mid);
    border-radius: 1.0256410256vw;
    color: var(--color-gray-mid);
    display: block;
    font-size: 0.75rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.2;
    margin: 0;
    padding: 1.0256410256vw 2.0512820513vw;
    text-align: center;
}

@media (min-width: 769px) {
    .column__list__item__main__meta__category span {
        border-radius: 0.2777777778vw;
        border-width: 0.0694444444vw;
        font-size: 1.1666666667rem;
        padding: 0.2777777778vw 0.8333333333vw;
    }
}

.column__list__item__main__title {
    -webkit-box-orient: vertical;
    display: -webkit-box;
    font-family: var(--ff-tsukushi-b);
    font-size: 1.25rem;
    font-weight: 400;
    letter-spacing: 0.02em;
    -webkit-line-clamp: 3;
    line-height: 1.6;
    margin: 0;
    overflow: hidden;
    text-align: left;
    text-overflow: ellipsis;
    width: 100%;
}

@media (min-width: 769px) {
    .column__list__item__main__title {
        font-size: 1.8333333333rem;
    }
}

.column__action .com-button {
    background-color: var(--color-white);
}

.contact {
    background-color: rgba(var(--color-red-soft-rgb), 0.2);
    border-radius: 5.1282051282vw;
    margin: 10.2564102564vw auto 15.3846153846vw;
    padding: 7.6923076923vw 5.1282051282vw 0;
    position: relative;
    width: calc(100% - 10.25641vw);
}

@media (min-width: 769px) {
    .contact {
        border-radius: 2.7777777778vw;
        margin: 5.5555555556vw auto 8.3333333333vw;
        padding: 4.1666666667vw 20.1388888889vw 4.1666666667vw 7.2916666667vw;
        width: calc(100% - 18.05556vw);
    }
}

.contact__content {
    margin: 0 0 12.8205128205vw;
}

@media (min-width: 769px) {
    .contact__content {
        margin: 0 0 5.2083333333vw;
    }
}

.contact__content p {
    color: var(--color-gray-mid);
    font-family: var(--ff-tsukushi-b);
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.6;
    margin: 0;
    text-align: center;
}

@media (min-width: 769px) {
    .contact__content p {
        font-size: 2.1666666667rem;
    }
}

.contact__content p em {
    background: linear-gradient(to top, transparent 0.1em, var(--color-white) 0.1em, var(--color-white) 0.5em, transparent 0.5em);
    font-style: normal;
    font-weight: inherit;
    padding: 0 0 0.2em;
}

.contact__item-wrapper {
    margin: 0;
    position: relative;
}

@media (min-width: 769px) {
    .contact__item-wrapper {
        background-color: var(--color-white);
        border-radius: 2.7777777778vw;
        display: grid;
        gap: 0;
        grid-gap: 0;
        grid-template-columns: 1fr 1fr;
    }
}

.contact__item {
    background-color: var(--color-white);
    border-radius: 5.1282051282vw;
    margin: 0 0 12.3076923077vw;
    padding: 12.8205128205vw 0 7.6923076923vw;
    position: relative;
}

@media (min-width: 769px) {
    .contact__item {
        background-color: transparent;
        border-radius: 0;
        display: grid;
        gap: 0;
        grid-gap: 0;
        grid-row: span 2;
        grid-template-rows: subgrid;
        margin: 0;
        padding: 5.5555555556vw 0 3.4722222222vw;
    }
}

.contact__item:after {
    background-color: var(--color-gray-lighter);
    bottom: 2.0833333333vw;
    content: "";
    display: none;
    left: auto;
    margin: 0 auto;
    position: absolute;
    right: 0;
    top: 2.0833333333vw;
    width: 0.1388888889vw;
}

@media (min-width: 769px) {
    .contact__item:after {
        display: block;
    }
}

.contact__item:last-child:after {
    display: none;
}

.contact__item__icon {
    align-items: center;
    border-radius: 50%;
    display: flex;
    flex-flow: row nowrap;
    height: 15.3846153846vw;
    justify-content: center;
    left: 0;
    margin: 0 auto;
    position: absolute;
    right: 0;
    top: -7.6923076923vw;
    width: 15.3846153846vw;
}

@media (min-width: 769px) {
    .contact__item__icon {
        height: 5.8333333333vw;
        top: -2.9166666667vw;
        width: 5.8333333333vw;
    }
}

.contact__item__icon[data-type=line] {
    background-color: var(--color-mint);
}

.contact__item__icon[data-type=line] img {
    width: 7.6923076923vw;
}

@media (min-width: 769px) {
    .contact__item__icon[data-type=line] img {
        width: 2.3611111111vw;
    }
}

.contact__item__icon[data-type=tel] {
    background-color: var(--color-blue-sky);
}

.contact__item__icon[data-type=tel] img {
    width: 5.8974358974vw;
}

@media (min-width: 769px) {
    .contact__item__icon[data-type=tel] img {
        width: 1.8055555556vw;
    }
}

.contact__item__title {
    font-family: var(--ff-tsukushi-b);
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 4.1025641026vw;
    text-align: center;
    width: 100%;
}

@media (min-width: 769px) {
    .contact__item__title {
        font-size: 2.1666666667rem;
        margin: 0 0 1.6666666667vw;
    }
}

.contact__item__title .--small {
    font-size: 0.9375rem;
}

@media (min-width: 769px) {
    .contact__item__title .--small {
        font-size: 1.8333333333rem;
    }
}

.contact__item__line {
    width: 100%;
}

.contact__item__line a {
    align-items: center;
    background-color: var(--color-mint);
    border-radius: 7.6923076923vw;
    box-shadow: 0vw 0vw 2.5641025641vw 1.0256410256vw #C4E9E0;
    color: var(--color-white);
    display: flex;
    flex-flow: row nowrap;
    font-family: var(--ff-tsukushi-b);
    font-size: 0.9375rem;
    font-weight: 700;
    height: 12.8205128205vw;
    justify-content: center;
    line-height: 1.2;
    margin: 0 auto;
    position: relative;
    text-align: center;
    width: 66.6666666667vw;
}

@media (min-width: 769px) {
    .contact__item__line a {
        border-radius: 2.0833333333vw;
        box-shadow: 0vw 0vw 0.6944444444vw 0.2777777778vw #C4E9E0;
        font-size: 1.6666666667rem;
        height: 4.1666666667vw;
        width: 20.4861111111vw;
    }
}

.contact__item__line a:after {
    background-image: url(../images/icons/icon-white-circle-arrow-right.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: 0;
    content: "";
    display: block;
    height: 4.6153846154vw;
    margin: auto 0;
    position: absolute;
    right: 4.6153846154vw;
    top: 0;
    width: 4.6153846154vw;
}

@media (min-width: 769px) {
    .contact__item__line a:after {
        height: 1.3888888889vw;
        right: 1.3888888889vw;
        width: 1.3888888889vw;
    }
}

.contact__item__tel {
    width: 100%;
}

.contact__item__tel__number {
    margin: 0 0 1.0256410256vw;
    text-align: center;
}

@media (min-width: 769px) {
    .contact__item__tel__number {
        margin: 0 0 0.2777777778vw;
    }
}

.contact__item__tel__number a {
    color: var(--color-blue-steel);
    display: inline;
    font-family: var(--ff-tsukushi-b);
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
}

@media (min-width: 769px) {
    .contact__item__tel__number a {
        font-size: 2.8333333333rem;
    }
}

.contact__item__tel__note p {
    color: var(--color-blue-steel);
    font-size: 0.75rem;
    font-weight: 400;
    line-height: 1.2;
    margin: 0;
    text-align: center;
}

@media (min-width: 769px) {
    .contact__item__tel__note p {
        font-size: 1.1666666667rem;
    }
}

.contact__fig {
    margin: 0;
    pointer-events: none;
    position: relative;
    text-align: center;
    width: calc(100% - 10.25641vw);
    z-index: 1;
}

@media (min-width: 769px) {
    .contact__fig {
        bottom: 0;
        left: auto;
        padding: 0 2.0833333333vw 0 0;
        position: absolute;
        right: 0;
        width: auto;
    }
}

.contact__fig img {
    aspect-ratio: 364/450;
    height: auto;
    position: relative;
    width: 51.5384615385vw;
    z-index: 1;
}

@media (min-width: 769px) {
    .contact__fig img {
        width: 25.2777777778vw;
    }
}

.contact__fig__balloon {
    align-items: center;
    background-image: url(../images/pages/front/front-contact-balloon.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    display: flex;
    flex-flow: row nowrap;
    height: 30.7692307692vw;
    justify-content: stretch;
    position: absolute;
    right: -15.3846153846vw;
    top: -10vw;
    width: 42.0512820513vw;
    z-index: 0;
}

@media (min-width: 769px) {
    .contact__fig__balloon {
        height: 13.8194444444vw;
        right: -6.9444444444vw;
        top: -4.5138888889vw;
        width: 18.8888888889vw;
    }
}

.contact__fig__balloon p {
    font-family: var(--ff-tsukushi-b);
    font-size: 0.5625rem;
    font-weight: 700;
    line-height: 1.6;
    margin: 0;
    text-align: center;
    width: 100%;
}

@media (min-width: 769px) {
    .contact__fig__balloon p {
        font-size: 1.25rem;
    }
}

.contact__fig__balloon p span[data-local="0"] {
    letter-spacing: -0.5em;
}

.contact__fig__balloon p em {
    background: linear-gradient(to top, transparent 0.1em, rgba(var(--color-pink-pale-rgb), 0.5) 0.1em, rgba(var(--color-pink-pale-rgb), 0.5) 0.5em, transparent 0.5em);
    font-style: normal;
    font-weight: inherit;
    padding: 0 0 0.2em;
}

.residence {
    background: linear-gradient(to bottom, var(--color-white) 10.2564102564vw, var(--color-gray-verylight) 10.2564102564vw);
    margin: 0;
    overflow-x: clip;
    padding: 0 0 20.5128205128vw;
}

@media (min-width: 769px) {
    .residence {
        background: linear-gradient(to bottom, var(--color-white) 5.5555555556vw, var(--color-gray-verylight) 5.5555555556vw);
        padding: 0 0 8.3333333333vw;
    }
}

.residence-container {
    margin: 0 auto;
    padding: 0 5.1282051282vw;
    width: 100%;
}

@media (min-width: 769px) {
    .residence-container {
        max-width: 82.3611111111vw;
        padding: 0;
    }
}

.residence__title {
    margin: 0 0 15.3846153846vw;
    padding: 25.641025641vw 0 0;
    position: relative;
    z-index: 1;
}

@media (min-width: 769px) {
    .residence__title {
        margin: 0 0 5.5555555556vw;
        padding: 11.1111111111vw 0 0;
    }
}

.residence__title:before {
    background-image: url(../images/pages/residences/itonomori/itonomori-deco-03.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 48.3861852433vw;
    left: -17.9487179487vw;
    margin: 0 auto;
    position: absolute;
    right: 0;
    top: 0;
    width: 119.7435897436vw;
    z-index: -1;
}

@media (min-width: 769px) {
    .residence__title:before {
        height: 20.625vw;
        left: -4.1666666667vw;
        width: 51.0416666667vw;
    }
}

.residence__title__ja {
    color: var(--color-red-soft);
    font-family: var(--ff-tsukushi-b);
    font-size: 1.625rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.2;
    margin: 0 0 5.1282051282vw;
    text-align: center;
}

@media (min-width: 769px) {
    .residence__title__ja {
        font-size: 3.3333333333rem;
        margin: 0 0 1.9444444444vw;
    }
}

.residence__title__en {
    color: var(--color-red-soft);
    font-family: var(--ff-tsukushi-b);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.2;
    margin: 0;
    text-align: center;
}

@media (min-width: 769px) {
    .residence__title__en {
        font-size: 1.5rem;
    }
}

.residence__item-wrapper {
    align-items: stretch;
    display: flex;
    flex-flow: row wrap;
    gap: 10.2564102564vw;
    justify-content: space-between;
}

@media (min-width: 769px) {
    .residence__item-wrapper {
        flex-wrap: nowrap;
        gap: 2.6388888889vw;
    }
}

.residence__item {
    background-color: var(--color-white);
    border-radius: 5.1282051282vw;
    flex: 0 0 100%;
    padding: 7.6923076923vw 5.1282051282vw;
}

@media (min-width: 769px) {
    .residence__item {
        border-radius: 2.7777777778vw;
        flex: 0 0 calc(50% - 1.31944vw);
        padding: 4.8611111111vw 4.1666666667vw 4.1666666667vw;
    }
}

.residence__item__title {
    font-family: var(--ff-tsukushi-b);
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.1;
    margin: 0 0 5.1282051282vw;
    padding: 0;
    text-align: center;
}

@media (min-width: 769px) {
    .residence__item__title {
        font-size: 2.5rem;
        margin: 0 0 1.3888888889vw;
    }
}

.residence__item__title .--small {
    font-size: 1.125rem;
}

@media (min-width: 769px) {
    .residence__item__title .--small {
        font-size: 1.8333333333rem;
    }
}

.residence__item__fig {
    margin: 0 0 5.1282051282vw;
}

@media (min-width: 769px) {
    .residence__item__fig {
        margin: 0 0 2.5vw;
    }
}

.residence__item__fig img {
    border-radius: 2.5641025641vw;
    width: 100%;
}

@media (min-width: 769px) {
    .residence__item__fig img {
        border-radius: 1.3888888889vw;
    }
}

.residence__item__action a {
    align-items: center;
    border: 1px solid var(--color-gray-mid);
    border-radius: 7.6923076923vw;
    color: inherit;
    display: flex;
    flex-flow: row nowrap;
    font-family: var(--ff-tsukushi-b);
    font-size: 1.125rem;
    font-weight: 400;
    height: 13.8461538462vw;
    justify-content: center;
    margin: 0 auto;
    min-width: 61.5384615385vw;
    padding: 0 11.5384615385vw;
    position: relative;
    text-align: center;
    width: -webkit-fit-content;
    width: fit-content;
}

@media (min-width: 769px) {
    .residence__item__action a {
        border-radius: 2.0833333333vw;
        font-size: 1.6666666667rem;
        height: 4.1666666667vw;
        min-width: 20.4861111111vw;
        padding: 0 3.125vw;
    }
}

.residence__item__action a:after {
    background-color: var(--color-gray-mid);
    bottom: 0;
    content: "";
    display: block;
    height: 5.1282051282vw;
    margin: auto;
    -webkit-mask-image: url(../../img/common/icon-arrow-gray.png);
    mask-image: url(../../img/common/icon-arrow-gray.png);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    position: absolute;
    right: 5.1282051282vw;
    top: 0;
    width: 5.1282051282vw;
}

@media (min-width: 769px) {
    .residence__item__action a:after {
        height: 1.3888888889vw;
        right: 1.3888888889vw;
        width: 1.3888888889vw;
    }
}

.residence__item__action a[href^="javascript:"] {
    opacity: 0.3;
    pointer-events: none;
}

.feature {
    margin: 0;
    overflow-x: clip;
    padding: 10.2564102564vw 0 20.5128205128vw;
}

@media (min-width: 769px) {
    .feature {
        padding: 8.3333333333vw 0;
    }
}

.feature-container {
    margin: 0 auto;
    padding: 0 5.1282051282vw;
    width: 100%;
}

@media (min-width: 769px) {
    .feature-container {
        max-width: 82.3611111111vw;
        padding: 0;
    }
}

.feature__title {
    margin: 0 0 15.3846153846vw;
    padding: 25.641025641vw 0 0;
    position: relative;
    z-index: 1;
}

@media (min-width: 769px) {
    .feature__title {
        margin: 0 0 5.5555555556vw;
        padding: 11.1111111111vw 0 0;
    }
}

.feature__title:before {
    background-image: url(../images/pages/residences/itonomori/itonomori-deco-03.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 48.3861852433vw;
    left: -17.9487179487vw;
    margin: 0 auto;
    position: absolute;
    right: 0;
    top: 0;
    width: 119.7435897436vw;
    z-index: -1;
}

@media (min-width: 769px) {
    .feature__title:before {
        height: 20.625vw;
        left: -4.1666666667vw;
        width: 51.0416666667vw;
    }
}

.feature__title__ja {
    color: var(--color-red-soft);
    font-family: var(--ff-tsukushi-b);
    font-size: 1.625rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.2;
    margin: 0 0 5.1282051282vw;
    text-align: center;
}

@media (min-width: 769px) {
    .feature__title__ja {
        font-size: 3.3333333333rem;
        margin: 0 0 1.9444444444vw;
    }
}

.feature__title__en {
    color: var(--color-red-soft);
    font-family: var(--ff-tsukushi-b);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.2;
    margin: 0;
    text-align: center;
}

@media (min-width: 769px) {
    .feature__title__en {
        font-size: 1.5rem;
    }
}

@media (min-width: 769px) {
    .feature__item-wrapper {
        padding: 4.1666666667vw 0 0;
    }
}

.feature__item {
    align-items: stretch;
    display: flex;
    flex-flow: row wrap;
    gap: 15.3846153846vw;
    justify-content: flex-end;
    margin: 0 0 30.7692307692vw;
}

@media (min-width: 769px) {
    .feature__item {
        flex-wrap: nowrap;
        gap: 4.5138888889vw;
        margin: 0;
    }
}

.feature__item:last-child {
    margin-bottom: 0;
}

.feature__item__main {
    flex: 0 0 100%;
    min-width: 0px;
}

@media (min-width: 769px) {
    .feature__item__main {
        flex: 1 1 auto;
    }
}

@media (min-width: 769px) {
    .feature__item__main-inner {
        margin: 0 0 0 auto;
        max-width: 34.7222222222vw;
        width: -webkit-fit-content;
        width: fit-content;
    }
}

.feature__item__main__title {
    align-items: center;
    border-bottom: 0.5128205128vw solid #000000;
    display: flex;
    flex-flow: row nowrap;
    font-family: var(--ff-tsukushi-b);
    font-size: 1.125rem;
    font-weight: 400;
    gap: 2.0512820513vw;
    justify-content: flex-start;
    letter-spacing: 0.02em;
    line-height: 1.45;
    margin: 0 0 5.1282051282vw;
    padding: 0 1.0256410256vw 5.1282051282vw;
    position: relative;
}

@media (min-width: 769px) {
    .feature__item__main__title {
        border-bottom-width: 0.1388888889vw;
        font-size: 2.6666666667rem;
        gap: 1.1111111111vw;
        margin: 0 0 1.6666666667vw;
        padding: 0 0.2777777778vw 1.6666666667vw;
        width: -webkit-fit-content;
        width: fit-content;
    }
}

.feature__item__main__title em {
    display: block;
    flex: 0 0 auto;
    font-size: 2.5rem;
    font-style: normal;
    font-weight: inherit;
    line-height: 1;
    min-width: 0px;
}

@media (min-width: 769px) {
    .feature__item__main__title em {
        font-size: 4.25rem;
    }
}

.feature__item__main__title span {
    display: block;
    flex: 1 1 auto;
    min-width: 0px;
}

.feature__item__main__title:before {
    background-image: url(../images/pages/front/front-feature-deco-01-01.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: auto;
    inset: auto;
    pointer-events: none;
    position: absolute;
    width: auto;
    z-index: -1;
}

.feature__item__main__content {
    margin: 0 0 6.1538461538vw;
}

@media (min-width: 769px) {
    .feature__item__main__content {
        margin: 0 0 1.9444444444vw;
    }
}

.feature__item__main__content ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.feature__item__main__content ul li {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.6;
    margin: 0 0 0.5em;
    padding: 0 0 0 1em;
    position: relative;
}

@media (min-width: 769px) {
    .feature__item__main__content ul li {
        font-size: 1.5833333333rem;
    }
}

.feature__item__main__content ul li:last-child {
    margin-bottom: 0;
}

.feature__item__main__content ul li:before {
    content: "・";
    display: block;
    left: 0;
    position: absolute;
    top: 0;
}

.feature__item__main__action .com-button {
    margin-inline: auto;
}

.feature__item__fig {
    flex: 0 0 100%;
    min-width: 0px;
    position: relative;
}

@media (min-width: 769px) {
    .feature__item__fig {
        flex: 0 0 auto;
    }
}

.feature__item__fig:before {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: auto;
    inset: auto;
    pointer-events: none;
    position: absolute;
    width: auto;
    z-index: -1;
}

.feature__item__fig-inner {
    margin: 0 auto;
    position: relative;
    width: -webkit-fit-content;
    width: fit-content;
}

@media (min-width: 769px) {
    .feature__item__fig-inner {
        margin: 0;
    }
}

.feature__item__fig img[data-fig="01-01"] {
    width: 79.8205128205vw;
}

@media (min-width: 769px) {
    .feature__item__fig img[data-fig="01-01"] {
        width: 39.3055555556vw;
    }
}

.feature__item__fig img[data-fig="01-02"] {
    bottom: -8.4615384615vw;
    left: -8.4615384615vw;
    position: absolute;
    width: 40.1923076923vw;
    z-index: 1;
}

@media (min-width: 769px) {
    .feature__item__fig img[data-fig="01-02"] {
        bottom: -4.1666666667vw;
        left: -4.1666666667vw;
        width: 19.7916666667vw;
    }
}

.feature__item__fig img[data-fig="02-01"] {
    width: 79.8205128205vw;
}

@media (min-width: 769px) {
    .feature__item__fig img[data-fig="02-01"] {
        transform: translateX(-2.0833333333vw);
        width: 39.3055555556vw;
    }
}

.feature__item__fig img[data-fig="02-02"] {
    bottom: -9.8717948718vw;
    position: absolute;
    right: 1.4102564103vw;
    width: 40.0512820513vw;
    z-index: 1;
}

@media (min-width: 769px) {
    .feature__item__fig img[data-fig="02-02"] {
        bottom: -4.8611111111vw;
        right: 0.6944444444vw;
        width: 19.7222222222vw;
    }
}

.feature__item__fig img[data-fig="03-01"] {
    width: 79.8205128205vw;
}

@media (min-width: 769px) {
    .feature__item__fig img[data-fig="03-01"] {
        width: 39.3055555556vw;
    }
}

.feature__item__fig img[data-fig="03-02"] {
    left: -2.8205128205vw;
    position: absolute;
    top: -12.6923076923vw;
    width: 39.4871794872vw;
}

@media (min-width: 769px) {
    .feature__item__fig img[data-fig="03-02"] {
        left: -1.3888888889vw;
        top: -6.25vw;
        width: 19.4444444444vw;
    }
}

@media (min-width: 769px) {
    .feature__item[data-local="01"] {
        padding-right: 1.3888888889vw;
    }
}

@media (min-width: 769px) {
    .feature__item[data-local="01"] .feature__item__main {
        padding: 5.5555555556vw 0 0;
    }
}

.feature__item[data-local="01"] .feature__item__main__title {
    border-bottom-color: var(--color-pink-pale);
}

.feature__item[data-local="01"] .feature__item__main__title em {
    color: var(--color-pink-pale);
}

.feature__item[data-local="01"] .feature__item__main__title:before {
    background-image: url(../images/pages/front/front-feature-deco-01-01.svg);
    height: 32.4358974359vw;
    left: -12.8205128205vw;
    top: -10.2564102564vw;
    width: 35vw;
}

@media (min-width: 769px) {
    .feature__item[data-local="01"] .feature__item__main__title:before {
        height: 17.5694444444vw;
        left: -6.9444444444vw;
        top: -5.5555555556vw;
        width: 18.9583333333vw;
    }
}

.feature__item[data-local="01"] .feature__item__fig:before {
    background-image: url(../images/pages/front/front-feature-deco-01-02.svg);
    height: 93.8461538462vw;
    right: -11.5384615385vw;
    top: -5.1282051282vw;
    width: 89.2307692308vw;
}

@media (min-width: 769px) {
    .feature__item[data-local="01"] .feature__item__fig:before {
        height: 50.8333333333vw;
        right: -9.0277777778vw;
        top: -6.9444444444vw;
        width: 48.3333333333vw;
    }
}

@media (min-width: 769px) {
    .feature__item[data-local="02"] {
        flex-direction: row-reverse;
        gap: 2.7777777778vw;
        justify-content: flex-start;
        margin-bottom: 7.6388888889vw;
    }
}

@media (min-width: 769px) {
    .feature__item[data-local="02"] .feature__item__main {
        padding: 12.5vw 0 0;
    }
}

.feature__item[data-local="02"] .feature__item__main-inner {
    margin: 0;
}

.feature__item[data-local="02"] .feature__item__main__title {
    border-bottom-color: var(--color-blue-sky);
}

.feature__item[data-local="02"] .feature__item__main__title em {
    color: var(--color-blue-sky);
}

.feature__item[data-local="02"] .feature__item__main__title:before {
    background-image: url(../images/pages/front/front-feature-deco-02-01.svg);
    height: 24.2307692308vw;
    left: -7.6923076923vw;
    top: -6.4102564103vw;
    width: 26.9230769231vw;
}

@media (min-width: 769px) {
    .feature__item[data-local="02"] .feature__item__main__title:before {
        height: 13.125vw;
        left: -4.1666666667vw;
        top: -3.4722222222vw;
        width: 14.5833333333vw;
    }
}

.feature__item[data-local="02"] .feature__item__fig:before {
    background-image: url(../images/pages/front/front-feature-deco-02-02.svg);
    height: 63.7179487179vw;
    right: 19.2307692308vw;
    top: 11.5384615385vw;
    width: 69.358974359vw;
}

@media (min-width: 769px) {
    .feature__item[data-local="02"] .feature__item__fig:before {
        height: 34.5138888889vw;
        right: 9.0277777778vw;
        top: 4.8611111111vw;
        width: 37.5694444444vw;
    }
}

@media (min-width: 769px) {
    .feature__item[data-local="03"] {
        gap: 9.7222222222vw;
        padding-right: 0.6944444444vw;
    }
}

@media (max-width: 768px) {
    .feature__item[data-local="03"] .feature__item__main {
        margin-bottom: 10.2564102564vw;
    }
}

@media (min-width: 769px) {
    .feature__item[data-local="03"] .feature__item__main {
        padding: 4.8611111111vw 0 0;
    }
}

.feature__item[data-local="03"] .feature__item__main__title {
    border-bottom-color: #e4c365;
}

.feature__item[data-local="03"] .feature__item__main__title em {
    color: #e4c365;
}

.feature__item[data-local="03"] .feature__item__main__title:before {
    background-image: url(../images/pages/front/front-feature-deco-03-01.svg);
    height: 22.5641025641vw;
    left: -8.9743589744vw;
    top: -5.1282051282vw;
    width: 23.5897435897vw;
}

@media (min-width: 769px) {
    .feature__item[data-local="03"] .feature__item__main__title:before {
        height: 12.2222222222vw;
        left: -4.8611111111vw;
        top: -2.7777777778vw;
        width: 12.7777777778vw;
    }
}

.feature__item[data-local="03"] .feature__item__fig:before {
    background-image: url(../images/pages/front/front-feature-deco-03-02.svg);
    height: 85.3846153846vw;
    right: -5.1282051282vw;
    top: -8.9743589744vw;
    width: 72.8205128205vw;
}

@media (min-width: 769px) {
    .feature__item[data-local="03"] .feature__item__fig:before {
        height: 46.25vw;
        right: -2.7777777778vw;
        top: -9.0277777778vw;
        width: 39.4444444444vw;
    }
}

.column2 {
    margin: 0;
    overflow-x: clip;
    padding: 10.2564102564vw 0 20.5128205128vw;
}

@media (min-width: 769px) {
    .column2 {
        padding: 8.3333333333vw 0;
    }
}

.column2-container {
    margin: 0 auto;
    padding: 0 5.1282051282vw;
    width: 100%;
}

@media (min-width: 769px) {
    .column2-container {
        max-width: 82.3611111111vw;
        padding: 0;
    }
}

.column2__title {
    margin: 0 0 15.3846153846vw;
    padding: 25.641025641vw 0 0;
    position: relative;
    z-index: 1;
}

@media (min-width: 769px) {
    .column2__title {
        margin: 0 0 5.5555555556vw;
        padding: 11.1111111111vw 0 0;
    }
}

.column2__title:before {
    background-image: url(../images/pages/residences/itonomori/itonomori-deco-03.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 48.3861852433vw;
    left: -17.9487179487vw;
    margin: 0 auto;
    position: absolute;
    right: 0;
    top: 0;
    width: 119.7435897436vw;
    z-index: -1;
}

@media (min-width: 769px) {
    .column2__title:before {
        height: 20.625vw;
        left: -4.1666666667vw;
        width: 51.0416666667vw;
    }
}

.column2__title__ja {
    color: var(--color-red-soft);
    font-family: var(--ff-tsukushi-b);
    font-size: 1.625rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.2;
    margin: 0 0 5.1282051282vw;
    text-align: center;
}

@media (min-width: 769px) {
    .column2__title__ja {
        font-size: 3.3333333333rem;
        margin: 0 0 1.9444444444vw;
    }
}

.column2__title__en {
    color: var(--color-red-soft);
    font-family: var(--ff-tsukushi-b);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.2;
    margin: 0;
    text-align: center;
}

@media (min-width: 769px) {
    .column2__title__en {
        font-size: 1.5rem;
    }
}

.column2__item-wrapper {
    display: grid;
    gap: 7.6923076923vw;
    grid-gap: 7.6923076923vw;
    grid-template-columns: repeat(1, 1fr);
    margin: 0 0 12.8205128205vw;
}

@media (min-width: 769px) {
    .column2__item-wrapper {
        gap: 2.6388888889vw;
        grid-template-columns: repeat(3, 1fr);
        margin: 0 0 4.1666666667vw;
    }
}

.column2__item {
    background-color: rgba(var(--color-white-rgb), 0.7);
    border-radius: 5.1282051282vw;
    box-shadow: 0 0 2.5641025641vw 0 rgba(0, 0, 0, 0.15);
    color: var(--color-gray-mid);
    display: block;
    margin: 0;
    overflow: hidden;
    padding: 0;
    text-decoration: none;
}

@media (min-width: 769px) {
    .column2__item {
        border-radius: 2.7777777778vw;
        box-shadow: 0 0 0.6944444444vw 0 rgba(0, 0, 0, 0.15);
    }
}

.column2__item:last-child {
    margin-bottom: 0;
}

.column2__item__fig {
    aspect-ratio: 370/206;
    height: auto;
    width: 100%;
}

.column2__item__fig img {
    height: 100%;
    object-fit: cover;
    object-position: center;
    width: 100%;
}

.column2__item__main {
    padding: 7.6923076923vw 6.4102564103vw 6.4102564103vw;
    position: relative;
}

@media (min-width: 769px) {
    .column2__item__main {
        padding: 2.0833333333vw;
    }
}

.column2__item__main__meta {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    gap: 2.0512820513vw;
    justify-content: space-between;
    margin: 0 0 5.1282051282vw;
}

@media (min-width: 769px) {
    .column2__item__main__meta {
        gap: 0.5555555556vw;
        margin: 0 0 1.3888888889vw;
    }
}

.column2__item__main__meta__date {
    display: block;
    font-size: 0.9375rem;
    margin: 0;
}

@media (min-width: 769px) {
    .column2__item__main__meta__date {
        font-size: 1.0833333333rem;
    }
}

.column2__item__main__meta__category {
    align-items: center;
    display: flex;
    flex-flow: row wrap;
    gap: 1.5384615385vw;
    justify-content: flex-end;
    margin: 0;
    padding: 0;
}

@media (min-width: 769px) {
    .column2__item__main__meta__category {
        gap: 0.5555555556vw;
    }
}

.column2__item__main__meta__category span {
    background-color: var(--color-white);
    border: 0.2564102564vw solid var(--color-gray-mid);
    border-radius: 1.0256410256vw;
    color: var(--color-gray-mid);
    display: block;
    font-size: 0.75rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.2;
    margin: 0;
    padding: 1.0256410256vw 2.0512820513vw;
    text-align: center;
}

@media (min-width: 769px) {
    .column2__item__main__meta__category span {
        border-radius: 0.2777777778vw;
        border-width: 0.0694444444vw;
        font-size: 1.1666666667rem;
        padding: 0.2777777778vw 0.8333333333vw;
    }
}

.column2__item__main__title {
    -webkit-box-orient: vertical;
    display: -webkit-box;
    font-family: var(--ff-tsukushi-b);
    font-size: 1.25rem;
    font-weight: 400;
    letter-spacing: 0.02em;
    -webkit-line-clamp: 3;
    line-height: 1.6;
    margin: 0;
    overflow: hidden;
    text-align: left;
    text-overflow: ellipsis;
    width: 100%;
}

@media (min-width: 769px) {
    .column2__item__main__title {
        font-size: 1.8333333333rem;
    }
}

.column2__action .com-button {
    background-color: var(--color-white);
}

.news {
    background: linear-gradient(to bottom, var(--color-white) 10.2564102564vw, var(--color-gray-verylight) 10.2564102564vw);
    margin: 10.2564102564vw 0 0;
    overflow-x: clip;
    padding: 0 0 20.5128205128vw;
}

@media (min-width: 769px) {
    .news {
        background: linear-gradient(to bottom, var(--color-white) 5.5555555556vw, var(--color-gray-verylight) 5.5555555556vw);
        margin: 4.1666666667vw 0 0;
        padding: 0 0 8.3333333333vw;
    }
}

.news-container {
    margin: 0 auto;
    padding: 0 5.1282051282vw;
    width: 100%;
}

@media (min-width: 769px) {
    .news-container {
        max-width: 67.7777777778vw;
        padding: 0;
    }
}

.news__title {
    margin: 0 0 15.3846153846vw;
    padding: 25.641025641vw 0 0;
    position: relative;
    z-index: 1;
}

@media (min-width: 769px) {
    .news__title {
        margin: 0 0 5.5555555556vw;
        padding: 11.1111111111vw 0 0;
    }
}

.news__title:before {
    background-image: url(../images/pages/residences/itonomori/itonomori-deco-03.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 48.3861852433vw;
    left: -17.9487179487vw;
    margin: 0 auto;
    position: absolute;
    right: 0;
    top: 0;
    width: 119.7435897436vw;
    z-index: -1;
}

@media (min-width: 769px) {
    .news__title:before {
        height: 20.625vw;
        left: -4.1666666667vw;
        width: 51.0416666667vw;
    }
}

.news__title__ja {
    color: var(--color-red-soft);
    font-family: var(--ff-tsukushi-b);
    font-size: 1.625rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.2;
    margin: 0 0 5.1282051282vw;
    text-align: center;
}

@media (min-width: 769px) {
    .news__title__ja {
        font-size: 3.3333333333rem;
        margin: 0 0 1.9444444444vw;
    }
}

.news__title__en {
    color: var(--color-red-soft);
    font-family: var(--ff-tsukushi-b);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.2;
    margin: 0;
    text-align: center;
}

@media (min-width: 769px) {
    .news__title__en {
        font-size: 1.5rem;
    }
}

.news__item-wrapper {
    background-color: rgba(var(--color-white-rgb), 0.7);
    border-radius: 5.1282051282vw;
    box-shadow: 0 0 2.5641025641vw 0 rgba(0, 0, 0, 0.15);
    color: var(--color-gray-mid);
    display: block;
    margin: 0 0 10.2564102564vw;
    overflow: hidden;
    padding: 7.6923076923vw 5.1282051282vw;
    text-decoration: none;
}

@media (min-width: 769px) {
    .news__item-wrapper {
        border-radius: 2.7777777778vw;
        box-shadow: 0 0 0.6944444444vw 0 rgba(0, 0, 0, 0.15);
        margin: 0 0 4.1666666667vw;
        padding: 4.1666666667vw;
    }
}

.news__item {
    border-bottom: 0.2564102564vw solid #E5E5E5;
    margin: 0 0 5.1282051282vw;
    padding: 0 0 5.1282051282vw;
}

@media (min-width: 769px) {
    .news__item {
        border-bottom-width: 0.0694444444vw;
        margin: 0 0 1.9444444444vw;
        padding: 0 0 2.0833333333vw;
    }
}

.news__item:last-child {
    margin-bottom: 0;
}

.news__item__link {
    color: var(--color-gray-mid);
    display: block;
    text-decoration: none;
}

.news__item__link__meta {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    gap: 4.1025641026vw;
    justify-content: flex-start;
    margin: 0 0 5.1282051282vw;
}

@media (min-width: 769px) {
    .news__item__link__meta {
        gap: 1.3888888889vw;
        margin: 0 0 1.3888888889vw;
    }
}

.news__item__link__meta__date {
    display: block;
    font-size: 0.9375rem;
    margin: 0;
}

@media (min-width: 769px) {
    .news__item__link__meta__date {
        font-size: 1.0833333333rem;
    }
}

.news__item__link__meta__category {
    align-items: center;
    display: flex;
    flex-flow: row wrap;
    gap: 1.5384615385vw;
    justify-content: flex-end;
    margin: 0;
    padding: 0;
}

@media (min-width: 769px) {
    .news__item__link__meta__category {
        gap: 0.5555555556vw;
    }
}

.news__item__link__meta__category span {
    background-color: var(--color-white);
    border: 0.2564102564vw solid var(--color-gray-mid);
    border-radius: 1.0256410256vw;
    color: var(--color-gray-mid);
    display: block;
    font-size: 0.75rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.2;
    margin: 0;
    padding: 1.0256410256vw 2.0512820513vw;
    text-align: center;
}

@media (min-width: 769px) {
    .news__item__link__meta__category span {
        border-radius: 0.2777777778vw;
        border-width: 0.0694444444vw;
        font-size: 1.1666666667rem;
        padding: 0.2777777778vw 0.8333333333vw;
    }
}

.news__item__link__title {
    font-family: var(--ff-tsukushi-b);
    font-size: 1.25rem;
    font-weight: 400;
    letter-spacing: 0.02em;
    line-height: 1.6;
    margin: 0;
    overflow: hidden;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
}

@media (min-width: 769px) {
    .news__item__link__title {
        font-size: 1.8333333333rem;
    }
}

.msg {
    margin: 0;
    overflow-x: clip;
    padding: 10.2564102564vw 0 20.5128205128vw;
}

@media (min-width: 769px) {
    .msg {
        padding: 8.3333333333vw 0 10.4166666667vw;
    }
}

.msg-container {
    margin: 0 auto;
    padding: 0 5.1282051282vw;
    width: 100%;
}

@media (min-width: 769px) {
    .msg-container {
        max-width: 59.7222222222vw;
        padding: 0 0 0 0.8333333333vw;
    }
}

.msg__title {
    margin: 0 0 15.3846153846vw;
    padding: 25.641025641vw 0 0;
    position: relative;
    z-index: 1;
}

@media (min-width: 769px) {
    .msg__title {
        margin: 0 0 6.9444444444vw;
        padding: 11.1111111111vw 0 0;
    }
}

.msg__title:before {
    background-image: url(../images/pages/residences/itonomori/itonomori-deco-03.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 48.3861852433vw;
    left: -17.9487179487vw;
    margin: 0 auto;
    position: absolute;
    right: 0;
    top: 0;
    width: 119.7435897436vw;
    z-index: -1;
}

@media (min-width: 769px) {
    .msg__title:before {
        height: 20.625vw;
        left: -4.1666666667vw;
        width: 51.0416666667vw;
    }
}

.msg__title__ja {
    color: var(--color-red-soft);
    font-family: var(--ff-tsukushi-b);
    font-size: 1.625rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.2;
    margin: 0 0 5.1282051282vw;
    text-align: center;
}

@media (min-width: 769px) {
    .msg__title__ja {
        font-size: 3.3333333333rem;
        margin: 0 0 1.9444444444vw;
    }
}

.msg__title__en {
    color: var(--color-red-soft);
    font-family: var(--ff-tsukushi-b);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.2;
    margin: 0;
    text-align: center;
}

@media (min-width: 769px) {
    .msg__title__en {
        font-size: 1.5rem;
    }
}

.msg__main {
    align-items: stretch;
    display: flex;
    flex-flow: row wrap;
    gap: 10.2564102564vw;
    justify-content: space-between;
    margin: 0 0 15.3846153846vw;
}

@media (min-width: 769px) {
    .msg__main {
        flex-wrap: nowrap;
        gap: 2.0833333333vw;
        margin: 0 0 4.1666666667vw;
    }
}

.msg__main__head {
    flex: 0 0 auto;
}

.msg__main__head__title {
    font-family: var(--ff-tsukushi-b);
    font-size: 1.625rem;
    font-weight: 700;
    line-height: 1.6;
    margin: 0;
    white-space: nowrap;
}

@media (min-width: 769px) {
    .msg__main__head__title {
        font-size: 3.5rem;
    }
}

.msg__main__head__title span[data-local="01"] {
    letter-spacing: -0.5em;
}

.msg__main__contents {
    flex: 0 1 auto;
}

.msg__main__contents__content p {
    font-family: var(--ff-tsukushi-b);
    font-size: 1rem;
    font-weight: 700;
    line-height: 2.3;
    margin: 0;
}

@media (min-width: 769px) {
    .msg__main__contents__content p {
        font-size: 1.5rem;
    }
}

.msg__fig {
    text-align: center;
}

.msg__fig img {
    width: 100%;
}

@media (min-width: 769px) {
    .msg__fig img {
        width: 48.4722222222vw;
    }
}