:root{
    --orange: #e67e22;
    --green: #007a64;
    --lightgreen: #2ecc71;
    --vk-size-text: 16px;
    --fa-family: "Font Awesome 7 Free";
    --vk-color-text-link-hover: saddlebrown;
}
html,body{
    scroll-behavior: smooth;
    font-family:"Noto Sans JP", "Noto Sans CJK JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}
a{
    &:hover{

        color:color-mix(in srgb, currentColor 85%, white);
    }
}
.basefontsize{
    font-size: var(--vk-size-text);
    line-height: 1.6;
}
@media screen and (max-width: 640px){
    .d-sp-none{
        display: none !important;
    }
}
@media screen and (min-width: 641px) {
    .d-pc-none {
        display: none !important;
    }
}
.container{
    container-name: container;
    container-type: inline-size;
}
.link_deco{
    text-decoration: underline;
    text-decoration-style: dashed;
    text-decoration-color: currentColor;
    text-underline-offset: .2em;
    text-decoration-thickness: 1px;
    color: navy;
}

/* VK blocksの調整 */
.vk_button .vk_button_link.btn-lg, .editor-styles-wrapper .vk_button .vk_button_link.btn-lg{
    font-size: calc(var(--vk-size-text) * 1.25);
}
/* END VK blocksの調整 */

/* PC用ドロワー */
.pc_drawer_cover{
    position: fixed;
    right: 0;
    top: 0;
    left: 0;
    bottom: 0;
    z-index: 1000;
    background: #f8f5ed;
    display: grid;
    align-items: center;
    overflow: auto;
    padding: 4rem;
}
.pc_drawer_wrapper{
    @media (max-width: 991px){
        display: none;
    }
    & summary{
        list-style: none;
        width: 50px;
        height: 50px;
        background: #000;
        font-size: 0%;
        display: grid;
        align-items: center;
        justify-content: center;
        position: fixed;
        z-index: 1001;
        right: 15px;
        top: 15px;
        &:after{
            content: "\f0c9";
            font-weight: 900;
            font-family: var(--fa-family);
            color: #fff;
            font-size: 24px;
            position: absolute;
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            display: grid;
            align-content: center;
            text-align: center;
          }
        .admin-bar &{
            top: 47px;
        }
    }
    &[open]{
        & summary{
            &:after{
                content: "\f00d";
            }
        }
    }
    & .nav_lv1{
        column-count: 2;
        column-gap: 2rem;
        >li{
            border-bottom: solid 1px #ccc;
            padding-bottom: .25rem;
            margin-bottom: .25rem;
            font-size: 1.25rem;
        }
        & a {
            display: flex;
            align-items: center;
            justify-content: flex-start;
            gap: .5em;
            padding: .25em 0;
            &:before{
                content: '\f138';
                font-family: var(--fa-family);
                font-weight: 900;
                color: var(--orange);
            }
        }
    }
    & .nav_lv2{
        break-inside: avoid;
        margin-top: .5rem;
        >li{
            margin-bottom: .25rem;
        }
        & a{
            &:before{
                content: '\f0da';
            }
        }
    }
}
/* END PC用ドロワー */

.site-header{
    background: #fff;
}
.site-header-logo{
    display: block !important;
    max-width: 15rem !important;
    @media (min-width: 992px) {
        padding-right: 2rem;
    }
    & img{
        min-width: 10rem;
    }
}

.device-mobile .global-nav-list>li{
    padding: 14px 1em;

}
.device-pc .global-nav-list {
    @media (min-width: 992px) {
        flex-wrap: wrap;
        gap: 0;
        width: auto;
    }
    > li {
        margin-top: 0;
        margin-bottom: 0;
        > a {
            @media (min-width: 992px) {
                padding: .25em 1em;
            }
            &:hover{
                color: var(--orange);
            }
        }
    }
}
.global-nav--layout--float-right{
    @media (min-width: 992px) {
        margin-right: 80px;
        .header_scrolled &{
            display: grid;
        }
    }
}

.vk-mobile-nav-menu-btn{
    background: #000;
    &:after{
        content: "\f0c9";
        font-weight: 900;
        font-family: var(--fa-family);
        color: #fff;
        font-size: 24px;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        display: grid;
        align-content: center;
        text-indent: 0;
        text-align: center;
    }
    &.menu-open{
        background: #000;
        &:after{
            content: "\f00d";
        }
    }
}

@media screen and (max-width: 640px) {
    .toggle-menu-open{
        padding-top: 60px;
        a{
            padding-top: 12px;
            padding-bottom: 12px;
        }
        & .ctaBox2601-buttons{
            gap: 8px;
        }
        & .ctaBox2601{
            display: block !important;
            padding-top: 0;
            a{
                padding-left: 5px;
                padding-right: 5px;
                text-align: center;
            }
            a:after{
                content: none;
            }
            & strong{
                text-align: center;
            }
        }
    }
    .toggle-menu--fontL{
        font-size: 1.2em;
    }
    .toggle-menu--shoplist{
        display: flex;
        flex-wrap: wrap;
        padding-bottom: .5rem;
        & .parent{
            width: 100%;
        }
        & .sub{
            padding-left: 0;
            & a{
                border-bottom: none;
                padding: 8px 10px 0;
                margin-bottom: 4px;
                &:before{
                    content: '';
                    display: inline-block;
                    width: .4em;
                    height: .4em;
                    background: var(--orange);
                    border-radius: 50%;
                    margin-right: .5em;
                    margin-bottom: .2em;
                }
                &:after{
                    content: none;
                }
            }
        }
    }
    .toggle-menu--2collist{
        display: grid;
        gap: 0 .5rem;
        grid-template-columns:1fr 1fr;
        & a{
            padding-top: 12px;
            padding-bottom: 12px;
        }
    }
}

.vk-mobile-nav{
    & .menu-item{
        a{
            &:before{
                content: '▼';
                display: inline-block;
                transform: scale(.6,.8) rotate(-90deg);
                color: var(--orange);
            }
        }
    }
    & .nav_lv2{
        display: grid;
        grid-template-columns: 1fr 1fr;
        & a{
            &:before{
                content: '・';
                transform: none;
                margin-right: .25em;
            }
        }
    }
}

.page-header{
    background: url("../images/common/page-header.webp") bottom/cover no-repeat;
    color: #fff;
    letter-spacing: 0.05em;
}

.sideFloating{
    margin: 0;
    padding: 0;
    position: fixed;
    right: 10px;
    top: 150px;
}
@media (max-width: 1000px) {
    .sideFloating{
        display: none;
    }
}
.sideFloatingButtons{
    display: inline-grid;
    gap: 10px;
}
.sideFloatingButton{
    display: inline-flex;
    gap: 0;
    flex-direction: column;
    width: 6em;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    line-height: 1.4;
    text-align: center;
    padding: 1rem;
    color: #fff;
    background: #e67e22;
    color: #fff;
    font-weight: bold;
    border-radius: 8px;
    border-style: solid;
    border-width: 0 2px 2px 0;
    border-color: saddlebrown;
    & i{
        font-size: 2.4em;
        opacity: .8;
        margin-bottom: .25em;
        transition: transform .2s;
    }
    &:hover{
        opacity: 1;
        & i{
            transform: scale(1.2);
            transition: transform .2s;
        }
    }
}
.sideFloatingButton-green{
    background: #2ecc71;
    border-color: darkgreen;
}



.mobileFooterButtons{
    position: fixed;
    bottom: 0;
    width: 100%;
    left: 0;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    background: #f5f5f5;
}
@media screen and (min-width: 1001px){
    .mobileFooterButtons {
        display: none;
    }
}
.mobileFooterButton-li{
    flex: 50% 0 0;
    padding: 1px;
}
.mobileFooterButton-li-full{
    flex-basis: 100%;
}
.mobileFooterButton{
    font-size: 4vw;
    line-height: 1.4;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #2ecc71;
    color: #fff;
    padding: .75em .25em;
    overflow: hidden;
    & .icon {
        margin-right: .25em;
        opacity: .4;
        transform: scale(2.6) rotate(15deg);
    }
    & .arrow{
        opacity: 0;
        transition: transform .2s;
    }
    &:hover{
        opacity: 1;
        & .arrow{
            opacity: 1;
            transform: translateX(100%);
            transition: transform .2s;
        }
    }
}
.mobileFooterButton-orange{
    background: #e67e22;
}

.ctaBox2601{
    padding-top: 2rem;
    padding-bottom: 2rem;
}
.ctaBox2601-buttons{
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
    container-name: ctaBox2601-buttons;
    container-type: inline-size;
}
.ctaBox2601-button{
    display: flex;
    flex-basis: 40%;
    flex-direction: column;
    align-items: center;
    background: #2ecc71;
    color: #fff;
    padding: 1.5em 1em;
    border-width: 0 4px 4px 0;
    border-color: darkgreen;
    border-radius: 8px;
    border-style: solid;
    flex-grow: 1;
    gap: 0;
    line-height: 1.4;
    & strong{
        font-size: 1.75em;
        font-weight: 900;
        display: inline-block;
        letter-spacing: .1em;
    }
    & i{
        transform: translateX(-25%) scale(.8);
        transition: transform .2s;
    }
    &:hover{
        opacity: 1;
        & i{
            transform: scale(.8);
            transition: transform .2s;
        }
    }
}
.ctaBox2601-button-orange{
    background: #e67e22;
    border-color: saddlebrown;
}
@container ctaBox2601-buttons (max-width: 480px) {
    .ctaBox2601-button{
        flex-basis: auto;
    }
}

#Main-footer{
    padding-bottom: 50px;
}
.Main-footer-logo{
    max-width: 60rem;
}
.sitefooter_ctaBox_area{
    padding-top: 30px;
    padding-bottom: 30px;
    background: #fff;
}

.above-form-text{
    font-size: 1.2em;
    line-height: 2;
}
@media screen and (max-width: 640px) {
    .above-form-text{
        text-align: left;
    }
}
.aside-telblock{
    border: solid 1px currentColor;
    padding: 1em .5em;
    max-width: 40rem;
    margin: 3rem auto;
    line-height: 1.6;
    & a{
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 2.6em;
    }
}
.contact_form2026{
    max-width: 60rem;
    margin-left: auto;
    margin-right: auto;
    & .hissu{
        display: inline-flex;
        align-items: center;
        padding: .5em;
        font-size: .8em;
    }
    & dt{
        font-size: 1.3em;
        margin-bottom: 1rem;
        padding: .5rem .25rem;
        background: var(--orange);
        color: #fff;
        p{
            &:last-child{
                margin-bottom: 0;
            }
        }
    }
    & dd{
        margin-bottom: 3rem;
    }
    & .wpcf7-text{
        padding: .5em;
        width: 100%;
        border-radius: .5em;
        border: solid 1px currentColor;
    }
    & .wpcf7-select{
        min-width: min(28em,100%);
        padding: .5em;
        border-radius: .5em;
    }
    & .wpcf7-textarea{
        padding: .5em;
        width: 100%;
        border-radius: .5em;
        border: solid 1px currentColor;
    }
    & .wpcf7-textarea-address{
        height: 4em;
    }
    ~.wpcf7-policy-wrapper{
        text-align: center;
        & a{
            text-decoration: underline;
            text-decoration-style: dotted;
        }
    }
    ~.wpcf7-submit-wrapper{
        margin-top: 4rem;
        text-align: center;
        & p{
            display: flex;
            flex-direction: column;
            align-items: center;
        }
        & .wpcf7-submit{
            font-size: 2rem;
            background: var(--orange);
            color: #fff;
            font-weight: bold;
            padding: 1rem 2rem;
            &[disabled]{
                background: #bbbbbb;
            }
        }
    }
}
/* CF7送信完了時 */
.wpcf7-form.sent{
    position: relative;
    & .wpcf7-response-output{
        position: absolute;
        z-index: 1;
        font-size: 1.2em;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 1rem;
        margin: 0;
        background: rgba(255,255,255,.9);
        line-height: 2;
        word-break: keep-all;
        text-align: center;
    }
}

.suga_shoplist_block{
    container-name: suga_shoplist_block;
    container-type: inline-size;
    >dt{
        color: var(--orange);
        font-size: 1.25em;
        display: flex;
        align-items: center;
        gap: .5em;
        margin-bottom: .4em;
        &:after{
            content: '';
            display: block;
            flex: 50% 1 1;
            height: 1px;
            background: var(--orange);
        }
    }
    >dd{
        padding-left: .5em;
        color: var(--orange);
        font-weight: bold;
        padding-left: 0;
        & ul{
            display: grid;
            grid-template-columns: repeat(3,1fr);
            gap: .5em;
            @container suga_shoplist_block (max-width: 36em) {
                grid-template-columns: 1fr;
            }
        }
        & li{
            padding: 0;
            margin: 0;
            list-style: none;
            &:before{
                content: none;
            }
        }
        a{
            display: block;
            background: var(--orange);
            color: #fff;
            padding: .5em;
            text-decoration: none;
        }
        +dt{
            margin-top: 1em;
        }
    }
}

#Area .left .area-set ul li a {
    &:after{
        content: '';
        display: inline-block;
        width: .75em;
        height: .8em;
        background: var(--orange);
        clip-path: polygon(50% 20%, 100% 50%, 50% 80%);
    }
}
#Area .left .area-set ul li span{
    display: inline-block;
    padding: 7px 10px;
    border: 2px solid #DF7E39;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    font-weight: bold;
    background-color: #FFF;
}


.voice_query{
    border: solid 2px var(--orange);
    border-radius: .5em;
    background: #fff;
    margin-bottom: 4em;
    overflow: hidden;
    & h2{
        background: var(--orange);
        font-size: 1.25em;
        padding: .5em;
        color: #fff;
    }
    & dl{
        font-size: 1.25em;
        padding: 0 1em 1em;
    }
    & dt{
        background: #fdf5e6;
        margin-top: 1em;
        margin-bottom: .5em;
        font-weight: bold;
        color: #995416;
    }
    & dt,& dd{
        line-height: 1.6;
        font-weight: normal;
        padding: .25em .5em;
    }
    & .stars{
        color: #ffcc00;
        font-size: 1.25em;
        display: inline-block;
        white-space: nowrap;
        text-shadow: 1px 1px 0 rgba(0,0,0,0.1);
    }
}

.voice_detail_header{
    background: var(--orange);
    color: #fff;
    font-size: 1.6em;
    padding: .5em;
    margin-bottom: .5em;
}

.voice_detail_meta{
    display: grid;
    grid-template-columns: 80px 1fr;
    gap: .5rem;
    & .thumbnail{
        aspect-ratio: 16/9;
        background-size: cover;
        background-position: center center;
        grid-row: 1/-1;
    }
    & .name{
        margin-bottom: 0;
    }
    & dl{
        display: grid;
        grid-template-columns: auto 1fr;
        margin: 0;
    }
}
.voice_detail_body{
    & dd{
        margin-bottom: 2rem;
    }
    & .check-list{
        display: flex;
        flex-wrap: wrap;
        gap: .5rem;
        margin: 0;
        padding: 0;
      & li {
          list-style: none;
        margin: 0;
        padding: 0;
          &:before{
              content: '';
              display: inline-block;
              width: 1em;
              height: 1em;
              border: solid 1px #666;
              margin-right: .5em;
          }
      }
        & .check{
            position: relative;
            &:after{
                position: absolute;
                content: '';
                display: block;
                width: 1.25em;
                height: 1.25em;
                left: -.1em;
                bottom: .2em;
                background: url("../images/common/check-icon.webp") right/contain no-repeat;
            }
        }
    }
}

.one_column__main{
    width: 100%;
    max-width: 90dvw;
    margin-left: auto;
    margin-right: auto;
}
#Main-footer .main-footer-inner{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    img{
        width: 20em;
    }
}
.foot-sub a{
    &:before{
        display: inline-block;
        content: '-';
        width: 1em;
    }
}

.search-title{
    background: #fff;
    padding: .5em;
    border-radius: 8px;
    margin-bottom: 1em;
    font-size: 2em;
}

.search-item{
    font-size: var(--basefontsize);
    line-height: 1.6;
    & h2{
        font-size: 1.4em;
        margin-bottom: .25em;
        text-decoration: underline;
    }
}

.single_shop_info_container{
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(16rem,1fr));
    gap: 1em;
}
.single_staff_info_container{
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(16rem,1fr));
    gap: 1em;
    & dl{
        margin-top: 0;
        margin-bottom: 0;
    }
    & .box1{
        .wp-block-image{
            height: 100%;
            & img{
                display: block;
                width: 100%;
                height: 100% !important;
                object-fit: cover;
            }
        }
    }
}

.vk_post-postType-staff{
    border-radius: 4px;
    box-shadow: 0 0 6px rgba(0,0,0,.1);
    background: #fff;
    flex-basis: calc(33.33% - 30px);
    text-align: center;
    padding: 10px 10px 20px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    margin-bottom: 30px;
    @container (max-width: 600px) {
        flex-basis: 100%;
    }
    & .thumb{
        aspect-ratio: 4/3;
        border-radius: 8px;
        width: 100%;
        overflow: hidden;
        margin-bottom: 1rem;
        & img{
            display: block;
            object-fit: cover;
            width: 100%;
            height: 100%;
        }
    }
    & .name{
        color: var(--orange);
        font-weight: bold;
        margin-bottom: .25em;
    }
    & .shops{
        margin-bottom: 1rem;
    }
    & .button{
        display: flex;
        justify-content: space-between;
        align-items: center;
        background: var(--orange);
        color: #fff;
        padding: .5em .5em .5em 1.5em;
        gap: .25em;
        border-radius: 2em;
        margin-top: auto;
        margin-bottom: 0;
        border: solid 2px var(--orange);
        &:before{
            content: '';
        }
        &:after{
            content: '';
            display: inline-block;
            width: .75em;
            height: 1em;
            background: #fff;
            clip-path: polygon(50% 20%, 100% 50%, 50% 80%);
        }
    }
    &:hover{
        & .button{
            background: #fff;
            color: var(--orange);
            &:after{
                background: var(--orange);
            }
        }
    }
}

/* サイドバー */
.sidebar_header{
    font-size: 1rem;
    font-weight: bold;
    margin-bottom: .5rem;
    &:after{
        content: '';
        display: block;
        width: 100%;
        height: 1px;
        margin-top: .5rem;
        background: linear-gradient(to right,var(--orange) 4rem,#e5e5e5 4rem);
    }
}
.sidebar_postlist{
    padding: 0;
    & li{
        list-style: none;
        & a{
            display: grid;
            grid-template-columns: 33% 1fr;
            gap: .5rem;
            padding: .5rem;
            background: #fff;
            font-size: .9rem;
            line-height: 1.6;
        }
    }
    & .img{
        aspect-ratio: 4/3;
        & img{
            display: block;
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
    }
    & .title{
        text-decoration: dashed;
        margin-bottom: 0;
        margin-top: -.3em;
    }
}
.sidebar_banners{
    padding: 0;
    & li{
        list-style: none;
        & a{
            display: block;
            padding: .5rem;
            &:hover{
                opacity: .8;
            }
            & img{
                display: block;
            }
        }
    }
}
/* END サイドバー */

/* site-footer */
.site-footer{
    background: #effffe linear-gradient(to top,#000 3rem,transparent 3rem);
    padding-top: 4rem;
}
.before_copyright_inner{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 2rem 4rem;
    padding-bottom: 4rem;
    & .left{
        flex:14rem 0 0;
        & img{
            display: block;
            max-width: 18rem;
            margin-bottom: 2rem;
        }
    }
    & .right{
        display: flex;
        flex-wrap: wrap;
        gap: 2rem;
        >ul{
            padding-left: 0;
            margin: 0;
        }
        li{
            list-style: none;
            color: var(--orange);
        }
    }
    @media screen and (max-width: 640px) {
        justify-content: center;
        & .left{
            flex:100% 0 0;
            display: grid;
            justify-content: center;
        }
        & .right{
            display: grid;
            grid-template-columns: repeat(2,1fr);
            grid-template-rows: auto auto;
            grid-auto-flow: column;
            gap: 0 2rem;
        }
    }
}
.site-footer-copyright{
    display: grid;
    height: 3rem;
    align-content: center;
    text-align: center;
    color: #fff;
}
/* END site-footer */

/* サイド・フッター固定 */

.sideFloating{
    margin: 0;
    padding: 0;
    position: fixed;
    z-index: 10;
    right: 10px;
    top: 150px;
}
@media (max-width: 1000px) {
    .sideFloating{
        display: none;
    }
}
.sideFloatingButtons{
    display: inline-grid;
    gap: 10px;
    & li{
        color: #fff;
        list-style: none;
        margin: 0;
        padding: 0;
    }
}
.sideFloatingButton{
    display: inline-flex;
    gap: 0;
    flex-direction: column;
    width: 6em;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    line-height: 1.4;
    text-align: center;
    padding: .5em;
    text-decoration: none;
    color: #fff;
    background: #e67e22;
    color: #fff;
    font-weight: bold;
    border-radius: 8px;
    border-style: solid;
    border-width: 0 2px 2px 0;
    border-color: saddlebrown;
    & i{
        font-size: 2.4em;
        opacity: .8;
        margin-bottom: .25em;
        margin-right: 0;
        transition: transform .2s;
    }
    &:hover{
        opacity: 1;
        & i{
            transform: scale(1.2);
            transition: transform .2s;
        }
    }
}
.sideFloatingButton-green{
    background: #2ecc71;
    border-color: darkgreen;
}



.mobileFooterButtons{
    position: fixed;
    bottom: 0;
    width: 100%;
    left: 0;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    background: #f5f5f5;
    padding: 0;
    margin: 0;
    gap: 1px;
    & li{
        margin: 0;
        list-style: none;
        padding: 0;
    }
    & a{
        text-decoration: none;
    }
}
@media screen and (min-width: 1001px){
    .mobileFooterButtons {
        display: none;
    }
}
.mobileFooterButton-li{
    flex: 50% 0 0;
    padding: 1px;
}
.mobileFooterButton-li-full{
    flex-basis: 100%;
}
.mobileFooterButton{
    font-size: 4vw;
    line-height: 1.4;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #2ecc71;
    color: #fff;
    padding: .75em .25em;
    overflow: hidden;
    & .icon {
        margin-right: .25em;
        opacity: .4;
        transform: scale(2.6) rotate(15deg);
    }
    & .arrow{
        opacity: 0;
        transition: transform .2s;
    }
    &:hover{
        opacity: 1;
        & .arrow{
            opacity: 1;
            transform: translateX(100%);
            transition: transform .2s;
        }
    }
}
.mobileFooterButton-orange{
    background: #e67e22;
}
/* END サイド・フッター固定 */

/* ポップアップ */

body.scroll-lock{
    overflow: hidden;
    padding-right: 15px;
}
.popup-overlay{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 99999;
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s,visibility .3s;
}
.popup-overlay.show{
    opacity: 1;
    visibility: visible;
}
.popup-overlay-inner{
    position: relative;
    width: min(40rem,80vw);
    padding: 1rem;
    background: rgba(0,0,0,.6);
}
.popup-overlay-scroller{
    max-height: 80dvh;
    overflow: auto;
    & .aligncenter{
        display: block;
        margin-left: auto;
        margin-right: auto;
    }
}
.popup-overlay-inner a:hover img{
    opacity: 1;
}
#popup-button-close{
    position: absolute;
    width: 3rem;
    height: 3rem;
    background: #fff;
    right: -1.5rem;
    top: -1.5rem;
    border-radius: 50%;
    color: #999;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    cursor: pointer;
    opacity: .9;
    & i{
        margin-right: 0;
    }
}
/* END ポップアップ */

.vk_post-postType-story{
    & .vk_post_taxonomy_title,& .vk_post_taxonomy-shop_cat{
        display: none;
    }
    & .vk_post_taxonomy_terms{
        & a{
            text-decoration: dotted;
            text-decoration-thickness: 1px;
            text-decoration-line: underline;
            font-size: 0.85rem;
          &:before{
              content: '#';
          }
        }
    }
    & .author_data{
        display: grid;
        grid-template-columns: 40px 1fr;
        align-items: center;
        gap: .5rem;
    }
    & .avatar{
        aspect-ratio: 1/1;
        border-radius: 50%;
        overflow: hidden;
        & img{
            display: block;
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
    }
}

.custom_search_form{
    border: solid 1px #e5e5e5;
    padding: 1rem;
    border-radius: 8px;
    background: #fff;
    margin-bottom: 4rem;
    & .labels{
        display: flex;
        flex-wrap: wrap;
        gap: .5em;
        & label{
            display: inline-block;
            background: #fff;
            border: solid 2px #a5a5a5;
            border-radius: 4px;
            padding: .25em .5em;
            &:has(input:checked){
                border-color: var(--orange);
            }
        }
    }
    & .button_wrap{
        margin-top: 2rem;
        text-align: center;
    }
    input[type="submit"]{
        background: var(--green);
        color: #fff;
        padding: .5em 1em .5em 1.5em;
        border-radius: 4px;
        border: solid 1px var(--green);
        letter-spacing: .5em;
        text-align: center;
        min-width: 6em;
    }
}
.editor_container{
    display: grid;
    align-items: center;
    grid-template-columns: 12rem 1fr;
    background: #fff;
    padding: 1rem;
    gap: 1rem;
    margin-bottom: 2rem;
    & a{
      text-decoration-thickness: 1px;
        text-decoration-style: dashed;
        text-decoration-color: var(--green);
        text-underline-offset: .25em;
    }
    & .name{
        & strong {
            font-size: 1.4rem;
            font-weight: bold;
        }
    }
    & .text_area{
        margin-top: 1rem;
        grid-column: 1/-1;
    }
    & .other_posts_link{
        text-align: right;
    }
}
.anchor_list{
    display: flex;
    flex-basis: 100%;
    flex-wrap: wrap;
    justify-content: center;
    gap: .5em;
    & li{
        list-style: none;
    }
    & a{
        display: inline-block;
        background: #fff;
        border: solid 2px #a5a5a5;
        border-radius: 4px;
        padding: .25em .5em;
        text-decoration: none;
    }
}

.googlemap_container{
    position: relative;
    width: 100%;
    height: 300px;
    margin-bottom: 4rem;
    & iframe{
        position: absolute;
        top: 0;
        left: 0;
        width: 100% !important;
        height: 100% !important;
    }
}