@charset "UTF-8";

:root {
    --font-en-main: "Crimson Text", serif;
}
body {
    font-family: var(--font-en-main);
}

.title > small {
    align-self: auto;
    margin-left: min(0.83vw, 1.0rem);
}

@media screen and (min-width: 768px) {
    .headline .lead {
        line-height: 1.4;
    }
    .column .detail .headline .lead {
        font-size: min(2.5vw, 3.0rem);
    }
    #local .headline .lead {
        font-size: min(2.5vw, 3.0rem);
    }
    .text {
        font-size: min(1.5vw, 1.8rem);
    }

    .page .container .column .block_title {
        font-size: min(2.83vw, 3.4rem);
    }
    .page .container .column .block_detail > p {
        font-size: min(1.5vw, 1.8rem);
        line-height: 1.6;
    }
    .btn > a {
        font-size: min(1.5vw, 1.8rem);
    }

    .reserve > a {
        padding-top: 35px;
        padding-bottom: 35px;
    }
    .reserve p {
        font-size: min(1.5vw, 1.8rem);
    }

    .page .title {
        line-height: 1;
    }
    #page-maiko .column > .text {
        line-height: 1.8;
    }

    .local_map .gallery {
        left: 3vw;
    }
    .local_map .map_wrap #pin03 {
        right: 15.5vw;
    }
    .local_map .map_wrap #pin07 {
        left: 26.5vw;
    }
    .local_map .map_wrap #pin09 {
        left: 30vw;
    }
    .local_map .map_wrap #pin11 {
        top: 11.8vw;
        left: 62vw;
    }
    .local_map .map_wrap #pin11 > a {
        flex-direction: column;
        row-gap: 5px;
    }
    .local_map .map_wrap #pin02 > a > p,
    .local_map .map_wrap #pin04 > a > p,
    .local_map .map_wrap #pin11 > a > p {
        flex-direction: column;
    }
    .local_map .map_wrap p > br {
        display: none;
    }
    .local_map .map_wrap #pin11 .pin_img {
        position: static;
    }

    #page-reserve .searchCalElement > ul > li li dl dt span {
        font-size: min(1.17vw, 1.4rem);
    }
    #page-reserve .searchCalNote li {
        align-items: center;
    }
    #page-reserve .searchCalNote li svg {
        margin-bottom: 3px;
        margin-right: min(0.67vw, 0.8rem);
    }
}
@media screen and (max-width: 767px) {
    .headline .lead {
        line-height: 1.4;
    }
    .list_detail > p {
        font-size: 2.2vw;
        line-height: 1.4;
    }

    .title > small {
        margin-top: 1vw;
        margin-left: 2vw;
    }
    .column_list > dl > dt {
        width: 55%;
    }
    .column_list > dl > dd {
        width: 45%;
    }

    .local_map .map_wrap p {
        line-height: 1.2;
    }
    .local_map .map_wrap #pin01 {
        top: 5.75vw;
        left: 6vw;
    }
    .local_map .map_wrap #pin01 > a {
        row-gap: 0.5vw;
    }
    .local_map .map_wrap #pin02 {
        left: 4.25vw;
    }
    .local_map .map_wrap #pin02 > a > p {
        text-align: right;
    }
    .local_map .map_wrap #pin03 > a > p {
        margin-top: 0;
    }
    .local_map .map_wrap #pin05 {
        top: 31vw;
        left: 26.5vw;
    }
    .local_map .map_wrap #pin06 {
        top: 43.5vw;
        left: 18.5vw;
    }
    .local_map .map_wrap #pin06 > a {
        flex-direction: row-reverse;
    }
    .local_map .map_wrap #pin07 {
        top: 52vw;
        left: 21vw;
    }
    .local_map .map_wrap #pin08 {
        top: 60.5vw;
    }
    .local_map .map_wrap #pin09 {
        left: 5vw;
    }
    .local_map .map_wrap #pin10 {
        left: 19vw;
    }
    .local_map .map_wrap #pin10 > a {
        flex-direction: column;
        row-gap: 0.5vw;
    }
    .local_map .map_wrap #pin11 {
        top: 28.5vw;
        left: 51.89vw;
    }
    .local_map .map_wrap #pin11 > a {
        flex-direction: row;
        align-items: center;
    }
    .local_map .map_wrap #pin11 > a > p {
        margin-top: -3vw;
    }
    .local_map .map_wrap #pin11 .pin_img {
        left: 0;
    }

    #page-reserve .searchCalElement > ul {
        flex-direction: column;
        row-gap: 30px;
    }
    #page-reserve .searchCalElement > ul > li:first-child, #page-reserve .searchCalElement > ul > li:nth-child(2) {
        width: 100%;
    }
    #page-reserve .searchCalNote {
        row-gap: 20px;
    }
    #page-reserve .searchCalNote ol {
        flex-wrap: wrap;
        justify-content: space-between;
        row-gap: 10px;
    }
     #page-reserve .searchCalNote li {
        width: 50%;
        margin-right: 0;
    }
    #page-reserve .searchCalNote li svg {
        margin-right: 2vw;
    }

    #page-sub .block .text {
        line-height: 1.8;
    }

    #footer .menu {
        column-gap: 8vw;
    }
}