@charset "UTF-8";

main {
    background-color: #eaf1f5;
}
.l-section {
    background-color: unset;
}
.l-section__container + .l-section__container {
    margin-top: var(--vw-size100);
}
.p-location-walkable {
    color: #0068b7;
}
.p-location-walkable__list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    justify-content: space-between;
    gap: var(--vw-size60);
    margin-block: var(--vw-size60);
    margin-inline: auto;
}
.p-location-walkable__item {
    padding-bottom: 1em;
    border-bottom: 0.5px solid #0068b7;
}
.p-location-walkable__item-title {
    text-align: center;
    font-size: var(--vw-size30);
    letter-spacing: 0.1em;
    padding-bottom: 1.3em;
    margin-bottom: 1.3em;
    border-bottom: 0.5px solid #0068b7;
    position: relative;
    font-weight: 700;
}
.p-location-walkable__item-title::before {
    display: block;
    content: '';
    width: var(--vw-size20);
    height: var(--vw-size3);
    background-color: #0068b7;
    position: absolute;
    bottom: calc(var(--vw-size2) * -1);
    left: 50%;
    transform: translateX(-50%);
}
.p-location-walkable__item-text {
    font-size: var(--vw-size19);
    letter-spacing: 0.1em;
    text-align: center;
    font-weight: 400;
}
.p-location-walkable__item-text-num {
    display: block;
    min-height: 1.6em;
    font-size: var(--vw-size30);
    font-weight: 700;
    display: flex;
    align-items: baseline;
    justify-content: center;
}
.p-location-walkable__item-text-num span {
    font-weight: 100;
    font-size: var(--vw-size24);
    padding-right: 0.3em;
}
#pxBase .p-location-walkable__icon {
    width: var(--vw-size40);
    display: block;
    margin-top: var(--vw-size20);
    margin-inline: auto;
}
.p-location-walkable__text {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: var(--vw-size20)
}
.p-location-walkable__text p {
    font-size: var(--vw-size16);
}
.p-location-walkable__text .c-btn {
    margin-inline: unset;
    max-width: fit-content;
}

/* p-section
---------------- */
.p-section__header {
    display: grid;
    grid-column: full-start / content-start;
    position: sticky;
    top: 120px;
    z-index: 1;
}
.p-section__header-inner {
    width: 100%;
    height: fit-content;
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #0068b7;
    gap: var(--vw-size30);
}
.p-section__header-num {
    min-height: 1.6em;
    font-size: var(--vw-size50);
    font-weight: 700;
    display: flex;
    align-items: baseline;
    justify-content: center;
    border-bottom: 4px solid #0068b7;
    position: relative;
}
.p-section__header-num span {
    font-size: var(--vw-size30);
    font-weight: 100;
    padding-right: 0.3em;
}
.p-section__header-num::before {
    display: block;
    content: '';
    width: 400%;
    height: 0.5px;
    background-color: #0068b7;
    position: absolute;
    bottom: -2px;
    left: -400%;

}
.p-section__header-text {
    writing-mode: sideways-rl;
    font-size: var(--vw-size30);
    letter-spacing: 0.1em;
    font-weight: 700;
}
.p-section__container {
    display: grid;
    grid-column: content-start / full-end;
}
.p-section__heading {
    position: relative;
    height: fit-content;
}
.p-section__h2-lead {
    color: #fff;
    line-height: 2;
    letter-spacing: 0.2em;
    padding-left: min(4em, 10%);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    margin-bottom: unset;
}
.p-section__wrap {
    display: grid;
    grid-template-columns: 2fr 1fr;
    align-items: flex-end;
    gap: var(--vw-size40);
}
.p-section__wrap--reverse {
    direction: rtl;
}
.p-section__wrap--reverse * {
    direction: ltr;
}
.p-section__wrap--reverse .p-section__texts {
    text-align: right;
}
.p-section__wrap--reverse .p-section__title::after {
    margin-left: auto;
}
.p-section__wrap02 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: flex-end;
    gap: var(--vw-size100);
}
.p-section__wrap03 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: flex-end;
    gap: var(--vw-size40);
}
.p-section__wrap04 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--vw-size100);
}
.p-section__wrap05 {
    display: grid;
    grid-template-columns: 2fr 1fr;
    align-items: flex-end;
    gap: var(--vw-size40);
    margin-left: calc(var(--side-gap)*-4);
}
.p-section__wrap06 {
    display: grid;
    grid-template-columns: 2.4fr 1fr;
    align-items: flex-end;
    gap: var(--vw-size40);
}
.p-section__wrap07 {
    display: grid;
    grid-template-columns: 1.6fr 1fr;
    align-items: flex-end;
    gap: var(--vw-size40);
}
.p-section__wrap08 {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--vw-size40);
}
.p-section__wrap09 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: flex-end;
    gap: var(--vw-size40);
    margin-top: calc(var(--vw-size100)/-1) !important;
}
.p-section__texts {
    color: #0068b7;
}
.p-section__title {
    font-size: var(--vw-size24);
}
.p-section__title::after {
    content: "";
    display: block;
    width: 1em;
    height: var(--vw-size4);
    margin-block: var(--vw-size20);
    background-color: #0068b7;
}
.p-section__text01 {
    font-size: var(--vw-size16);
    margin-block: var(--vw-size20);
}
.p-section__text02 {
    font-size: var(--vw-size12);
}
.p-section__img {
    margin-bottom: var(--vw-size20);
}

/* p-shopping
-------------- */
/* .p-shopping {} */

/* .p-amusement
-------------- */
.p-amusement__img03 {
    margin-top: var(--vw-size100);
}

/* p-dailylife
---------------- */
.p-dailylife .c-heading {
    margin-block: var(--vw-size40);
}
.p-dailylife .c-heading__h2 {
    margin-block: var(--vw-size40);
}
.p-dailylife .c-heading__h2-en {
    font-size: clamp(2rem, 2.2292787944vw, 3rem);
}
.p-dailylife__splide__texts {
    width: fit-content;
    margin-inline: auto;
    color: #0068b7;
    text-align: center;
    margin-block: var(--vw-size40);
}
.p-dailylife__splide__title {
    font-size: min(15px,var(--vw-size30));
    font-weight: 700;
}
.p-dailylife__splide__text {
    font-size: var(--vw-size16);
}
.p-dailylife__splide {
    width: 100%;
    min-width: 0;
}
.p-dailylife__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    width: min(1200px, 80vw);
    margin-inline: auto;
}
.p-dailylife__splide .splide__arrow svg {
    display: none;
}
.p-dailylife__splide .splide__arrow {
    background: url(../img/location/splide_arrow.svg) no-repeat center center/cover;
    width: var(--vw-size100);
    height: var(--vw-size100);
    top: 40%;
}
.p-dailylife__splide .splide__arrow--prev {
    transform: rotate(-180deg) translateY(50%);
}


/* p-lifeinformation
--------------------- */
.p-lifeinformation__container {
    background-color: #fff;
    padding: var(--vw-size100);
}


@media screen and (max-width: 991px) {
    .l-section__container + .l-section__container {
        margin-top: var(--vw-size40);
    }
    .p-shopping,
    .p-amusement,
    .p-dailylife
     {
        grid-template-columns: [full-start] calc(var(--side-gap)*3) [content-start] 1fr [content-end] var(--side-gap) [full-end]
    }
    .p-dailylife .c-heading__h2 {
        margin-block: 0;
    }
    .p-section__wrap {
        grid-column: full-start / full-end;
        grid-template-columns: 1fr;
    }
    .p-section__wrap02 {
        grid-column: full-start / full-end;
        grid-template-columns: 1fr;
        margin-inline: calc(var(--side-gap)*2);
    }
    .p-section__wrap02 .p-section__texts {
        margin-inline: unset;
    }
    .p-section__wrap03 {
        grid-column: full-start / full-end;
        grid-template-columns: 1fr;
        margin-inline: calc(var(--side-gap)*2);
    }
    .p-section__wrap03 .p-section__texts {
        margin-inline: unset;
    }
    .p-section__wrap04 {
        grid-column: full-start / full-end;
        grid-template-columns: 1fr;
        /* margin-inline: calc(var(--side-gap)*2); */
    }
    .p-section__wrap05 {
        grid-column: full-start / full-end;
        grid-template-columns: 1fr;
        /* margin-inline: calc(var(--side-gap)*2); */
        margin-left: unset;
    }
    .p-section__wrap06 {
        grid-column: full-start / full-end;
        grid-template-columns: 1fr;
        /* margin-inline: calc(var(--side-gap)*2); */
        margin-left: unset;
    }
    .p-section__wrap07 {
        grid-column: full-start / full-end;
        grid-template-columns: 1fr;
        /* margin-inline: calc(var(--side-gap)*2); */
        margin-left: unset;
    }
    .p-section__wrap08 {
        grid-column: full-start / full-end;
        grid-template-columns: 1fr;
        /* margin-inline: calc(var(--side-gap)*2); */
        margin-left: unset;
    }
    .p-section__wrap09 {
        grid-column: full-start / full-end;
        grid-template-columns: 1fr;
        /* margin-inline: calc(var(--side-gap)*2); */
        margin-left: unset;
        margin-top: var(--vw-size40) !important;
    }
    .p-location-walkable__list {
        margin-block: var(--vw-size40);
        grid-template-columns: 1fr;
        align-items: center;
        gap: var(--vw-size40)
    }
    .p-location-walkable__item-title {
        font-size: var(--vw-size12);
    }
    .p-location-walkable__item {
        width: 90%;
        margin-inline: auto;
    }
    .p-location-walkable__item-text {
        font-size: var(--vw-size14);
        width: fit-content;
        margin-inline: auto;
    }
    .p-location-walkable__item-text-num {
        font-size: var(--vw-size20);
    }
    .p-location-walkable__text {
        flex-direction: column;
        gap: 0;
    }
    .p-location-walkable__text .c-btn {
        width: unset;
    }
    .p-location-walkable__text .c-btn__link {
        padding-inline: 3em;
    }
    .p-location__img01 {
        margin-inline: calc(var(--side-padding)/-1);
    }
    .p-section__header {
        position: static;
    }
    .p-section__header-inner {
        gap: var(--vw-size20);
    }
    .p-section__header-num {
        font-size: var(--vw-size18);
        border-width: 3px;
    }
    .p-section__header-num span {
        font-size: var(--vw-size10);
    }
    .p-section__header-text {
        font-size: var(--vw-size16);
    }
    .p-section__title {
        font-size: var(--vw-size18);
    }
    .p-section__title::after {
        height: var(--vw-size2);
    }
    .p-section__texts {
        margin-inline: var(--side-gap);
    }
    .p-section__text01 {
        font-size: var(--vw-size12);
        line-height: 2;
    }
    .p-amusement__img03 {
        margin-top: 0;
    }
    .p-dailylife .c-heading {
        margin-bottom: 0;
    }
    .p-dailylife__grid {
        grid-template-columns: 1fr;
        width: 70vw;
    }
    .p-dailylife__splide .splide__arrow {
        width: var(--vw-size30);
        height: var(--vw-size30);
        top: 30%;
    }
    .p-dailylife__splide__texts {
        margin-top: var(--vw-size20);
    }
    .splide__arrow--next {
        right: 0;
    }
    .splide__arrow--prev {
        left: 0;
    }
    .p-shopping__img02 {
        width: 80vw;
    }
    .p-amusement__img02 {
        width: 70vw;
    }
    .p-amusement__img03-wrap {
        display: flex;
        flex-direction: column;
        align-items: flex-end;
    }
    .p-amusement__img03-wrap .p-section__texts {
        text-align: right;
    }
    .p-amusement__img03-wrap .p-section__title::after {
        margin-left: auto;
    }
    .p-amusement__img03 {
        width: 70vw;
    }
    .p-lifeinformation__container {
        grid-column: full-start / full-end;
        padding-inline: var(--side-gap);
    }
}

.gm-style-iw-ch {
    display: none;
}
.gm-style .gm-style-iw-c {
    flex-direction: row-reverse;
}
.gm-style .gm-style-iw-d {
    padding-top: 1em;
}

/* modaal
------------- */
.icon-plus{
    display: none;
}
.p-location__img01-modaal__btn,
.p-dailylife__img02-modaal__btn {
    pointer-events: none;
}
@media screen and (max-width: 991px) {
    .p-location__img01-modaal__btn,
    .p-dailylife__img02-modaal__btn {
        pointer-events: all;
    }
    .p-location__img01-modal-img,
    .p-dailylife__img02-modal-img {
        width: 160vw;
    }
    .modaal-wrapper .modaal-close {
        top: 10%;
        background-color: #00000088;
    }
    .icon-plus{
        display: block;
        position: absolute;
        top: 10px;
        right: 10px;
        width: 30px;
        height: 30px;
    }
    .icon-svg._black .cls-1 {
        stroke: #fff;
    }
}