@charset "utf-8";

#g-nav ul li.nav_ul.location > a::before,#g-nav ul li.nav_ul.location > a::after{
    width: 50%;    
}

.subhead_ttl{
    font-size: calc((100vw - 80px)* 7 / 100);
    letter-spacing: 0.1em;
    text-indent: 0.1em;
}



.shop_flex{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.shop_flex > div:nth-child(n + 3){
    margin-top: 40px;
}
.shop_item01{
    width: 48%;
}
.shop_item01_img{
    margin-bottom: 10px;
}
.shop_item01_ttl{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.shop_name{
    font-size: 16px;
    letter-spacing: 0;
    font-weight: 500;
}
.shop_name .small{
    font-size: 10px;
    display: inline-block;
    padding-left: 1em;
}
.shop_subname{
    font-size: 10px;
    margin-bottom: 1em;
}
.shop_distance{
    font-size: 12px;
    margin-top: 0.6em;
}
.shop_number{
    font-size: 14px;
    background: #fff;
    padding: 0.5em 0.5em;
    text-align: center;
}
.market24{
    font-size: 14px;
    background: #c78774;
    color: #fff;
    padding: 0.5em 0.5em;
    text-align: center;
}
.shop_number .big{
    font-size: 1.8em;
    font-weight: 500;
}
.shop_lead{
    font-size: 12px;
    margin-top: 1em;
    line-height: 1.6;
    text-align: justify;
}

.shop_item02{
    display: flex;
    justify-content: space-between;
    width: 48%;
}
.shop_item02_img{
    width: 60%;
}
.shop_item02_text{
    width: 38%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.shop_item02_text .shop_lead{
    margin-top: 2em;
}
.shop_item02_text .shop_number{
    margin-top: 1em;
}

.shop_item03{
    width: 31%;
}

.shop_map{
    margin-bottom: 60px;
}

.urachiba{
    border: solid 2px #a48b78;
    padding: 20px;
    margin-top: 40px;
}
.urachiba_ttl{
    font-size: 20px;
    margin-bottom: 0.5em;
}
.urachiba_lead{
    line-height: 1.5;
    font-size: 14px;
}

.floormap{
    margin-bottom: 40px;
}
.shop_flex.col3_only .shop_item03{
    margin-top: 0;
}

.sec_ttl.lifeinfo{
    text-transform: uppercase;
    letter-spacing: 0.1em;
}


.lifeinfo_flex{
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
}
.lifeinfo_line{
    width: 48%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.lifeinfo_ttl{
    font-size: 18px;
    font-weight: 600;
    border-bottom: solid 1px #000;
    padding-bottom: 0.2em;
    margin-bottom: 0.5em;
}
.lifeinfo_list li{
    display: flex;
    justify-content: space-between;
}
.lifeinfo_list li:not(:last-child){
    margin-bottom: 0.3em;
}
.lifeinfo_list li p{
    display: inline-block;
    font-size: 12px;
    letter-spacing: 0;
}
.lifeinfo_item:not(:last-child){
    margin-bottom: 20px;
}




@media screen and (max-width:1200px){
    .shop_number {
        font-size: 12px;
    }
    .shop_item02_img {
        width: 56%;
    }
    .shop_item02_text {
        width: 42%;
    }
}

@media screen and (max-width:1000px){
    .shop_item02{
        /* flex-wrap: wrap; */
        display: block;
    }
    .shop_item02_img{
        width: 100%;
        margin-bottom: 10px;
    }
    .shop_item02_text{
        width: 100%;
    }
    .shop_item02_text .shop_lead {
        margin-top: 1em;
    }
    .shop_number {
        margin-top: 1em;
    }
    .shop_name {
        font-size: 14px;
    }
    .shop_distance {
        font-size: 10px;
    }
    .shop_subname {
        margin-bottom: 0.5em;
    }

}

@media screen and (max-width:800px){
    .shop_name .small{
        display: block;
        padding-left: 0;
    }
}

@media screen and (max-width:768px){
    .subhead_ttl {
        font-size: 6.5vw;
        letter-spacing: 0.1em;
        text-indent: 0.1em;
    }
    .lifeinfo_ttl {
        font-size: 16px;
    }
    .lifeinfo_list li p {
        font-size: 11px;
    }

    #urachiba,#parenting{
        margin-top: -80px;
        padding-top: 80px;
    }
}

@media screen and (max-width:650px){
    .floormap{
        max-width: 500px;
        margin: 0 auto 40px;
    }
    .lifeinfo_flex{
        flex-wrap: wrap;
    }
    .lifeinfo_line{
        width: 100%;
    }
    .lifeinfo_line:not(:last-child){
        margin-bottom: 20px;
    }
    .lifeinfo_list li p {
        font-size: 12px;
    }
    .shop_item01 {
        width: 100%;
    }
    .shop_item01:not(:first-child){
        margin-top: 30px;
    }
    .shop_flex > div:nth-child(n + 3) {
        margin-top: 30px;
    }
    .shop_number {
        font-size: 11px;
    }
    .shop_flex {
        max-width: 500px;
        margin: 0 auto;
    }
    .shop_item03 {
        width: 48%;
    }
    .shop_flex.col3_only .shop_item03:nth-child(n + 3){
        margin-top: 30px;
    }
    .lifeinfo_flex{
        max-width: 500px;
        margin: 0 auto 60px;
    }
    .urachiba_ttl {
        font-size: 18px;
    }
    .urachiba_lead {
        font-size: 12px;
    }
    .shop_subname {
        letter-spacing: 0;
    }
}

@media screen and (max-width:500px){
    .shop_map_scroll{
        overflow-x: scroll;
    }
    .shop_map_scroll img{
        padding-bottom: 10px;
        min-width: 550px;
    }
    .lifeinfo_map{
        overflow-x: scroll;
    }
    .lifeinfo_map img{
        padding-bottom: 10px;
        min-width: 550px;
    }
}







.scroll_flex{
    display: none;
}
@media screen and (max-width: 500px) {
    .scroll_flex {
        display: flex;
        justify-content: space-between;
        width: 50%;
        margin: 0px auto 0;
        flex-wrap: wrap;
    }
    .scroll_flex_p {
        padding: 10px 0;
        text-decoration: none;
        outline: none;
        font-size: 12px;
        width: 100%;
        text-align: center;
    }
    .scroll_l {
        position: relative;
        color: #000;
        padding: 0;
        display: inline-block;
        text-decoration: none;
        outline: none;
        left: 50%;
        transform: translateX(-50%);
        font-size: 12px;
        /* margin-bottom: 40px; */
    }
    .scroll_flex .scroll_l, .scroll_flex .scroll {
        width: 48%;
        left: unset;
        right: unset;
        transform: unset;
    }
    .scroll {
        position: relative;
        color: #000;
        padding: 0;
        display: inline-block;
        text-decoration: none;
        outline: none;
        left: 50%;
        transform: translateX(-50%);
        font-size: 12px;
    }
    .scroll::before {
        content: "";
        position: absolute;
        bottom: 0;
        width: 100%;
        height: 1px;
        background: #000;
    }
    .scroll::after {
        content: "";
        position: absolute;
        bottom: -4px;
        width: 8px;
        height: 8px;
        border-top: 1px solid #000;
        border-right: 1px solid #000;
        transform: rotate(45deg);
    }
    .scroll::before {
        animation: arrowlong01 2s ease infinite;
    }
    .scroll::after {
        animation: arrowlong02 2s ease infinite;
    }
    @keyframes arrowlong01 {
        0% {
            width: 0;
            opacity: 0
        }
        20% {
            width: 0;
            opacity: 1
        }
        80% {
            width: 105%;
            opacity: 1
        }
        100% {
            width: 105%;
            opacity: 0
        }
    }
    @keyframes arrowlong02 {
        0% {
            left: 0;
            opacity: 0
        }
        20% {
            left: 0;
            opacity: 1
        }
        80% {
            left: 103%;
            opacity: 1
        }
        100% {
            left: 103%;
            opacity: 0
        }
    }

    /* scroll_l */
    .scroll_b{
        padding: 10px 0;
        margin: 10px auto 0;
    }
    .scroll_l {
        position: relative;
        color: #000;
        padding: 0;
        display: inline-block;
        text-decoration: none;
        outline: none;
        left: 50%;
        transform: translateX(-50%);
        font-size: 12px;
        /* margin-bottom: 40px; */
    }
    .scroll_l::before {
        content: "";
        position: absolute;
        bottom: 0;
        width: 100%;
        height: 1px;
        background: #000;
    }
    .scroll_l::after {
        content: "";
        position: absolute;
        bottom: -4px;
        width: 8px;
        height: 8px;
        border-top: 1px solid #000;
        border-right: 1px solid #000;
        transform: rotate(-135deg);
    }
    .scroll_l::before {
        animation: arrowlong03 2s ease infinite;
    }
    .scroll_l::after {
        animation: arrowlong04 2s ease infinite;
    }
    @keyframes arrowlong03 {
        0% {
            right: 0;
            width: 0;
            opacity: 0
        }
        20% {
            right: 0;
            width: 0;
            opacity: 1
        }
        80% {
            right: 0;
            width: 105%;
            opacity: 1
        }
        100% {
            right: 0;
            width: 105%;
            opacity: 0
        }
    }
    @keyframes arrowlong04 {
        0% {
            right: 0;
            opacity: 0
        }
        20% {
            right: 0;
            opacity: 1
        }
        80% {
            right: 103%;
            opacity: 1
        }
        100% {
            right: 103%;
            opacity: 0
        }
    }
}


.gnav .location a:after {
    content: "\025b2";
    color: #fff;
    position: absolute;
    bottom: 3px;
    font-size: 10px;
}