@charset "UTF-8";
/*--------------------------------------

Theme Name: eggsnthings_store1
Template: eggsnthings1
Author: PPAW
Version:1.1

--------------------------------------*/
/***************************************

header

***************************************/
/* mainv */
@media screen and (min-width: 768px) {
    #page_mainv {
        position: relative;
        z-index: 10;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #page_mainv {
        position: static;
        height: auto;
    }
}
.slider {
    width: 100%;
}
@media screen and (min-width: 768px) {
    .slider {
        position: relative;
        z-index: 20;
        height: 100%;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    .slider {
        height: 250px;
    }
}
.slider_item {
    width: 100%;
    background-size: cover;
    background-position: center center;
}
@media screen and (min-width: 768px) {
    .slider_item {
        height: 393px;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    .slider_item {
        height: 250px;
    }
}
.thumbnail_wrap {
    margin: 0 auto;
    background-color: #000;
}
@media screen and (min-width: 768px) {
    .thumbnail_wrap {
        width: 1080px;
        position: relative;
        top: -110px;
        z-index: 30;
        display: flex;
        justify-content: flex-end;
        background-color: inherit;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    .thumbnail_wrap {
        width: 100%;
    }
}
@media screen and (min-width: 768px) {
    .thumbnails {
        width: 400px;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    .thumbnails {
        width: 100%;
    }
}
.thumbnails_item {
    cursor: pointer;
}
@media screen and (min-width: 768px) {
    .thumbnails_item {
        margin-left: 5px;
        padding: 0 5px;
    }
}
.thumbnails_item img {
    border: 2px solid #fff;
}
.thumbnails .slick-current {
    opacity: 0.8;
}
/* main_content */
#main_content {
    padding-top: 0 !important;
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #main_content {
    padding-top: 61px !important;
    }
}
/* breadcrumb */
#breadcrumb strong {
    font-weight: normal;
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #breadcrumb {
        padding-top: 0;
    }
}
/***************************************

store_contents

***************************************/
#store_contents {
    margin: 0 auto;
}
@media screen and (min-width: 768px) {
    #store_contents {
        width: 1080px;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #store_contents {
        width: 92%;
    }
}
/* store_ttl */
#store_ttl {
    /* border-bottom: 1px solid #682605; */
    padding-bottom: 10px;
    line-height: 1;
}
@media screen and (min-width: 768px) {
    #store_ttl {
        display: flex;
        align-items: center;
        margin-bottom: 80px;
        font-family: serif;
        /* äºˆç´„ãƒœã‚¿ãƒ³ã‚’éžè¡¨ç¤ºã«ã—ãŸéš›ã«è¿½åŠ  */
        justify-content: center;
        background-color: #181B39;
        color: #fff;
        padding: 1.5rem;
        border-radius: 5px;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #store_ttl {
        /* margin-bottom: 30px; */
        font-family: serif;
    }
}
#store_ttl h1 {
    font-weight: bold;
    margin-right: 20px;
}
@media screen and (min-width: 768px) {
    #store_ttl h1 {
        font-size: 27px;
        /* äºˆç´„ãƒœã‚¿ãƒ³ã‚’éžè¡¨ç¤ºã«ã—ãŸéš›ã«è¿½åŠ  */
        font-size: 36px;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #store_ttl h1 {
        font-size: 21px;
        text-align: center;
        margin-bottom: 10px;
    }
}
#store_ttl .store_tel {
    text-align: center;
    position: relative;
}
#store_ttl .store_tel p {
    text-align: center;
    vertical-align: middle;
    font-weight: bold;
    letter-spacing: normal;
    line-height: 1;
}
@media screen and (min-width: 768px) {
    #store_ttl .store_tel p {
        font-size: 16px;
        position: absolute;
        width: 100%;
        left: 0;
        bottom: 108%;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #store_ttl .store_tel p {
        font-size: 13px;
        margin-bottom: 5px;
    }
}
#store_ttl .store_tel p:before {
    content: "ã€€";
    background: url(assets/images/icn_book.png) center center no-repeat;
    background-size: contain;
    vertical-align: middle;
    display: inline-block;
    margin-right: 2px;
    margin-bottom: 4px;
}
@media screen and (min-width: 768px) {
    #store_ttl .store_tel p:before {
        width: 20px;
        height: 13px;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #store_ttl .store_tel p:before {
        width: 14px;
        height: 9px;
    }
}
#store_ttl .store_tel a {
    display: inline-block;
    padding: 3px 40px;
    background: #000;
    color: #fff;
    line-height: 1;
    border-radius: 5px;
}
@media screen and (min-width: 768px) {
    #store_ttl .store_tel a {
        font-size: 28px;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #store_ttl .store_tel a {
        font-size: 20px;
    }
}
/* recommend */
#recommend {
    margin-bottom: 7.5rem;
}
#recommend .sec_ttl {
    padding-bottom: 0;
    margin-bottom: 2rem;
}
#recommend .sec_ttl h2 {
    color: #181B39 !important;
    font-weight: bold;
}
.recommend_list_wrap {}
.recommend_list {
    margin-bottom: 5rem;
}
.recommend_list_title {
    padding-bottom: 0.75rem;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid #b7b9ce;
}
.recommend_list_title._non {
    border: none;
}
.recommend_list_title._non h3 ._head {
    display: none;
}
.recommend_list_title h3 {
    display: flex;
    align-items: center;
    column-gap: 1rem;
}
.recommend_list_title h3 ._head {
    display: flex;
    justify-content: center;
    align-items: center;
    aspect-ratio: 1;
    font-family: "Slabo 27px", serif;
    font-size: 1.5rem;
    color: #fff;
    background: #b22b2a;
    border-radius: 50%;
    width: 2.5rem;
    height: 2.5rem;
}
.recommend_list_title h3 ._head._non {
    display: none;
}
.recommend_list_title h3 ._body {
    font-size: 1.2rem;
    line-height: 1.5;
    text-align: left;
}
.recommend_list_img {
    margin-bottom: 1.5rem;
}
.recommend_list_img img {}
.recommend_list_txt {}
.recommend_list_txt p {}
.recommend_list_txt p br {}

@media screen and (min-width: 768px) {
#recommend {}
#recommend .sec_ttl {
    margin-bottom: 3rem;
}
#recommend .sec_ttl h2 {
}
.recommend_list_wrap {
    justify-content: space-between;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 4%;
}
.recommend_list {display: grid;grid-template-rows: subgrid;grid-row: span 3;}
.recommend_list_title {}
.recommend_list_title h3 {
    font-weight: bold;
}
.recommend_list_title h3 ._head {font-size: 1.5rem;width: 3rem;height: 3rem;}
.recommend_list_title h3 ._body {
    font-size: 1.5rem;
}
.recommend_list_img {
    aspect-ratio: 1.5;
    overflow: hidden;
}
.recommend_list_img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.recommend_list_txt {}
.recommend_list_txt p {}
.recommend_list_txt p br {}

}

@media all and (-ms-high-contrast: none) {
    #store_ttl h1 {
        padding-top: 0.3em;
    }
    .recommend_list h3 {
        padding-top: 0.13em;
    }
}
/* promotion */
@media screen and (min-width: 768px) {
    #store_contens #promotion {
        margin-bottom: 55px;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #store_contens #promotion {
        margin-bottom: 40px;
        width: 100%;
    }
}
/* promotion */
#promotion {
    margin: 0 auto;
}
@media screen and (min-width: 768px) {
    #promotion {
        width: 1080px;
        margin-bottom: 130px;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #promotion {
        width: 100%;
        margin-bottom: 70px;
    }
}
@media screen and (min-width: 768px) {
    .promotion_wrap {
        display: flex;
        justify-content: space-between;
    }
    .promotion_wrap>.promotion_img_area {
        width: 640px;
        margin: 0;
    }
    .promotion_wrap>.promotion_img_area>.promotion_img {
        width: 100%;
        display: block;
    }
    .promotion_wrap>.promotion_img_area.img_two>.promotion_img {
        width: 50%;
    }
    .promotion_wrap>.promotion_txt_area {
        width: 400px;
        margin: 0;
        padding-top: 30px;
    }
    .promotion_wrap>.promotion_txt_area h3 {
        font-size: 24px;
        font-weight: bold;
        margin-bottom: 0.75rem;
        padding: 0.75rem 0.5rem;
        text-align: center;
        font-family: serif;
    }
    .promotion_wrap>.promotion_txt_area p {}
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    .promotion_wrap>.promotion_img_area>.promotion_img {
        margin-bottom: 20px;
        display: block;
    }
    .promotion_wrap>.promotion_txt_area {}
    .promotion_wrap>.promotion_txt_area h3 {
        font-size: 20px;
        font-weight: bold;
        margin-bottom: 16px;
        text-align: center;
        font-family: serif;
    }
    .promotion_wrap>.promotion_txt_area p {}
}
@media screen and (min-width: 768px) {
    .promotion_wrap.column1 {
        display: block;
    }
    .promotion_wrap.column1>.promotion_img_area {
        width: 100%;
    }
    .promotion_wrap.column1>.promotion_img_area>.promotion_img {
        width: 100%;
        display: block;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    .promotion_wrap.column1>.promotion_img_area>.promotion_img {
        margin-bottom: 20px;
        display: block;
    }
    .promotion_wrap.column1>.promotion_img_area>.promotion_img:last-child {
        margin-bottom: 0;
    }
}
/* pdf_link */
#pdf_link {
    text-align: center;
    margin: 40px auto 60px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
#pdf_link .btn_y {
    margin: 0 5px;
    width: 125px;
}
@media screen and (min-width: 768px) {
    #pdf_link .btn_y {
        width: 275px;
        margin: 0 10px;
        font-size: 23px;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #pdf_link .btn_y {
        width: 80%;
        margin: 10px auto;
        font-size: 20px;
    }
}
/* store_course */
@media screen and (min-width: 768px) {
    #store_course {
        margin-bottom: 167px;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #store_course {
        margin-bottom: 50px;
    }
}
/* info_contents */
@media screen and (min-width: 0px) and (max-width: 767px) {
    #info_contents {
        width: 100%;
    }
}
/* sns */
@media screen and (min-width: 0px) and (max-width: 767px) {
    #sns {
        width: 100%;
    }
}
/* store_info */
#store_info {
    background-size: cover;
    background-position: center center;
    position: relative;
    z-index: 10;
    margin-bottom: 40px;
}
#store_info:before {
    background-color: #181B39;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: '';
    z-index: 20;
}
@media screen and (min-width: 768px) {
    #store_info {
        padding: 53px 0 62px;
        position: relative;
    }
    #store_info::before {}
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #store_info {
        padding: 40px 0;
    }
}
#store_info * {
    color: #fff;
}
.store_info_tel a {
    font-size: 200%;
    font-weight: bold;
    letter-spacing: 0.25rem;
    font-family: 'Crimson Text', serif;
}
#store_info h2 {
    text-align: center;
    font-weight: bold;
    position: relative;
    z-index: 30;
}
@media screen and (min-width: 768px) {
    #store_info h2 {
        font-size: 27px;
        margin-bottom: 40px;
        font-family: serif;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #store_info h2 {
        font-size: 23px;
        margin-bottom: 30px;
        font-family: serif;
    }
}
.store_info_content {
    position: relative;
    z-index: 30;
    margin: 0 auto;
}
@media screen and (min-width: 768px) {
    .store_info_content {
        width: 1080px;
        display: flex;
        justify-content: space-between;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    .store_info_content {
        width: 92%;
    }
}
@media screen and (min-width: 768px) {
    .store_info_left {
        width: 507px;
        height: 341px;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    .store_info_left {
        width: 100%;
        height: 250px;
    }
}
.store_info_left iframe {
    width: 100%;
    height: 100%;
}
@media screen and (min-width: 768px) {
    .store_info_right {
        width: 543px;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    .store_info_right {
        width: 100%;
        margin-top: 20px;
    }
}
.store_info_right table {
    width: 100%;
}
.store_info_right table th {
    width: 27%;
    padding: 3px 10px 3px 0;
    border-right: 1px dotted #fff;
    vertical-align: top;
    font-weight: bold;
}
@media screen and (min-width: 768px) {
    .store_info_right table th {
        min-width: 120px;
        font-size: 15px;
        white-space: nowrap;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    .store_info_right table th {
        font-size: 12px;
        white-space: nowrap;
    }
}
.store_info_right table td {
    letter-spacing: normal;
    width: 73%;
    padding: 3px 10px 3px 15px;
    vertical-align: top;
}
@media screen and (min-width: 768px) {
    .store_info_right table td {
        font-size: 14px;
        word-break: break-all;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    .store_info_right table td {
        font-size: 11px;
        word-break: break-all;
    }
}
/* guide map è¿½è¨˜ */
@media screen and (min-width: 768px) {
    #guide_map {
        padding: 40px 0 100px;
    }
    .guide_map_list_wrap {
        text-align: center;
    }
    .guide_map_list_wrap a {
        text-align: center;
        width: 185px;
        display: inline-block;
        border-radius: 5px;
        line-height: normal !important;
        padding: 8px;
        background-color: #000000;
        color: #fff;
        border: none;
        text-decoration: none !important;
        font-weight: bold;
        font-family: serif;
        font-size: 18px;
        margin: 0 10px;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #guide_map {
        padding: 30px 0 70px;
    }
    .guide_map_list_wrap {
        text-align: center;
        overflow: hidden;
    }
    .guide_map_list_wrap a {
        text-align: center;
        display: block;
        float: left;
        border-radius: 5px;
        line-height: normal !important;
        padding: 8px;
        width: 48%;
        background-color: #000;
        color: #fff;
        border: none;
        text-decoration: none !important;
        font-weight: bold;
        font-family: serif;
        font-size: 18px;
        margin: 0 4% 10px 0;
    }
    .guide_map_list_wrap a:nth-child(2n) {
        margin: 0 0 10px 0;
    }
}
/* original_menu è¿½è¨˜ */
@media screen and (min-width: 768px) {
    #original_menu {
        padding: 0 0 100px;
    }
    .original_menu_list_wrap {
        text-align: center;
    }
    .original_menu_list_wrap a {
        text-align: center;
        width: 240px;
        display: inline-block;
        border-radius: 5px;
        line-height: normal !important;
        padding: 8px;
        background-color: #000000;
        color: #fff;
        border: none;
        text-decoration: none !important;
        font-weight: bold;
        font-family: "Slabo 27px", serif;
        font-size: 18px;
        margin: 0 10px;
        position: relative;
    }
    .original_menu_list_wrap a::before,
    .original_menu_list_wrap a::after {
        position: absolute;
        content: '';
        background-color: #fff;
        width: 10px;
        height: 1px;
    }
    .original_menu_list_wrap a::before {
        transform: rotate(45deg);
        top: 18px;
        right: 20px;
    }
    .original_menu_list_wrap a::after {
        transform: rotate(-45deg);
        top: 25px;
        right: 20px;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #original_menu {
        padding: 30px 0 70px;
    }
    .original_menu_list_wrap {
        text-align: center;
        overflow: hidden;
    }
    .original_menu_list_wrap a {
        text-align: center;
        display: block;
        border-radius: 5px;
        line-height: normal !important;
        padding: 8px;
        width: 80%;
        background-color: #000000;
        color: #fff;
        border: none;
        text-decoration: none !important;
        font-weight: bold;
        font-family: "Slabo 27px", serif;
        font-size: 18px;
        margin: 0 auto 10px;
        position: relative;
    }
    .original_menu_list_wrap a::before,
    .original_menu_list_wrap a::after {
        position: absolute;
        content: '';
        background-color: #fff;
        width: 10px;
        height: 1px;
    }
    .original_menu_list_wrap a::before {
        transform: rotate(45deg);
        top: 18px;
        right: 20px;
    }
    .original_menu_list_wrap a::after {
        transform: rotate(-45deg);
        top: 25px;
        right: 20px;
    }
}
/* ä¸Šéƒ¨äºˆç´„ãƒœã‚¿ãƒ³ è¿½è¨˜ */
#store_ttl .store_tel a {
    padding: 4px 10px 2px;
    text-align: center;
    line-height: 34px;
}
#store_ttl a.store_rsv_btn {
    font-family: "Crimson Text", "ãƒ’ãƒ©ã‚®ãƒŽæ˜Žæœ Pro", "Hiragino Mincho Pro", 'Noto Serif JP', "MS Pæ˜Žæœ", "MS PMincho", serif;
    font-weight: bold;
    line-height: 39px;
}
@media screen and (min-width: 768px) {
    #store_ttl .store_tel p {
        text-align: left;
        margin-bottom: 3px;
    }
    #store_ttl .store_tel a {
        width: 250px;
        height: 45px;
        vertical-align: top;
    }
    #store_ttl a.store_rsv_btn {
        font-size: 20px;
        margin-right: 0.5em;
        font-family: serif;
    }
    #store_ttl .store_tel a span {
        font-size: 14px;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #store_ttl h1 {
        margin-right: 0;
        /* äºˆç´„ãƒœã‚¿ãƒ³ã‚’éžè¡¨ç¤ºã«ã—ãŸéš›ã«è¿½åŠ  */
        background-color: #181B39;
        padding: 1rem;
        color: #fff;
        border-radius: 5px;
    }
    #store_ttl .store_tel {
        margin-top: 20px;
        margin-bottom: 20px;
    }
    #store_ttl .store_tel p {
        margin-bottom: 10px;
    }
    #store_ttl .store_tel a {
        width: 240px;
    }
    #store_ttl a.store_rsv_btn {
        font-size: 16px;
        margin-bottom: 10px;
        line-height: 36px;
        font-family: serif;
    }
    #store_ttl .store_tel a span {
        font-size: 14px;
    }
}
/*kitchhike*/
.kitchhike a,
.kitchhike img {
    display: block;
}
@media screen and (min-width: 768px) {
    .kitchhike {
        padding: 0 0 60px;
        text-align: center;
    }
    .wImg>* {
        width: 49%;
    }
    .wImg {
        display: flex;
        justify-content: space-between;
    }
    .sImg a,
    .sImg img {
        margin: 0 auto;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    .kitchhike {
        padding: 0 0 30px;
        text-align: center;
        border-bottom: 1px solid #682605;
    }
    .wImg>* {
        margin-bottom: 20px;
    }
    .wImg>*:last-child {
        margin-bottom: 0;
    }
}
/*payment*/
.paymentIcn {
    display: flex;
    flex-wrap: wrap;
}
.paymentIcn li {
    padding: 5px 0;
}
.paymentTxt a {
    font-weight: bold;
    text-decoration: underline;
}
@media screen and (min-width: 768px) {
    .payment {
        padding-bottom: 25px;
        border-bottom: 1px solid #682605;
        margin-bottom: 50px;
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        display: none;
    }
    .paymentIconWrap {
        padding-right: 30px;
    }
    .paymentIcn {
        /*max-width: 330px;*/
        flex-shrink: 0;
    }
    .paymentIcn li {
        margin: 0 5px 10px;
        border-radius: 5px;
        background-color: #fff;
        box-shadow: 5px 5px 5px rgb(0 0 0 / 10%);
    }
    .paymentTxt {}
    .paymentIcnsL li {
        width: auto;
    }
    .paymentIcnsL li img {
        height: 50px;
        margin: 10px;
    }
    .paymentIcnsS li {
        width: auto;
    }
    .paymentIcnsS li img {
        height: 30px;
        margin: 5px;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    .payment {
        display: none;
        text-align: center;
        padding: 0 5% 30px;
        border-bottom: 1px solid #682605;
        margin-bottom: 30px;
    }
    .paymentIcn {}
    .paymentIcn li {}
    img {
        width: 100%;
        height: auto;
    }
    .paymentTxt {
        margin-top: 15px;
        /*text-align: left;*/
        padding: 5px;
    }
    .paymentTxt p {
        font-size: 12px;
        letter-spacing: 0;
    }
    .paymentIcnsL li {
        width: auto;
        background-color: #fff;
        margin: 0 3px 6px;
        border-radius: 3px;
        box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.1);
    }
    .paymentIcnsL li img {
        width: auto;
        height: 28px;
        margin: 3px;
    }
    .paymentIcnsS li {
        width: auto;
        background-color: #fff;
        margin: 0 3px 6px;
        border-radius: 3px;
        box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.1);
    }
    .paymentIcnsS li img {
        width: auto;
        height: 22px;
        margin: 3px;
    }
}
.original_menu_list_wrap a {
    background-color: #fff;
    border-radius: 25px;
    color: #000;
}
.original_menu_list_wrap a::before {
    background-color: #000;
}
.original_menu_list_wrap a::after {
    background-color: #000;
}
/* 2024.08.12 */
#gallery {
    margin-bottom: 5rem;
}
div.img {
    margin-top: 4rem;
}
div.img .gallery-atmTop li {
    margin: 0;
    width: 16.666666%;
}
div..img .gallery-atmTop li:nth-child(-n+3) {
    width: 33.33333333%;
}
.conBox1 {
    margin: 0 auto 4rem;
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    .conBox1 {
        margin: 0 auto 10vw;
    }
}
.conBox1:last-child {
    /* margin-bottom: 5rem; */
}
.topContent #sec5 .img {
    margin-top: 4rem;
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    div.img {
        margin-top: 3vw;
    }
}
div.img .gallery-atmTop li {
    margin: 0;
    width: 16.666666%;
}
div.img .gallery-atmTop li:nth-child(-n+3) {
    width: 33.33333333%;
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    div.img .gallery-atmTop li {
        width: 33.33333333%;
    }
}
.gallery {
    display: flex;
    flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
    .gallery li {
        width: 19%;
        margin-right: 1.25%;
        margin-top: 0.8rem;
    }
    .gallery li:nth-child(5n) {
        margin-right: 0;
    }
    .gallery li:nth-child(-n+5) {
        margin-top: 0;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    .gallery li {
        width: 24%;
        margin-right: 1.3333%;
        margin-top: 1.5vw;
    }
    .gallery li:nth-child(4n) {
        margin-right: 0;
    }
    .gallery li:nth-child(-n+4) {
        margin-top: 0;
    }
}
.gallery li a {
    display: block;
    width: 100%;
    overflow: hidden;
}
.gallery li a span {
    display: block;
    width: 100%;
    height: 0;
    box-sizing: content-box;
    padding-bottom: 100%;
    background-position: center;
    background-size: cover;
    transition: .4s;
}
.gallery li a:hover {
    opacity: 1;
}
.gallery li a:hover span {
    transform: scale(1.05);
}
/*.gallery li {
  position: relative;
  padding: 1%;
  width: 33.33333%;
  margin: 0;
}*/
@media screen and (min-width: 768px) {
    .gallery li {
        margin-top: 1.2rem;
    }
    .gallery li:nth-child(-n+5) {
        margin-top: 1.2rem;
    }
    .gallery li:nth-child(-n+3) {
        margin-top: 0;
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    .gallery li {
        margin-top: 1.5vw;
    }
    .gallery li:nth-child(-n+4) {
        margin-top: 1.5vw;
    }
    .gallery li:nth-child(-n+3) {
        margin-top: 0;
    }
}
.gallery li a {
    display: block;
    height: 100%;
    overflow: hidden;
}
.gallery li a img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.gallery li a figure {
    padding-bottom: 79.4%;
    background-size: cover;
    background-position: center;
    transition: 0.4s;
}
.gallery li a figcaption {
    display: inline-block;
    line-height: 1.2;
    background: #fff;
    font-weight: bold;
    letter-spacing: 0.1em;
    font-size: 1.2142rem;
    padding: 0.5em 0.9em;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 10;
    color: #494949;
    transition: .4s;
}
@media screen and (min-width: 768px) {
    .gallery li a figcaption {
        box-shadow: 0 0 0.5rem 0.5rem rgba(0, 0, 0, 0.1);
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    .gallery li a figcaption {
        box-shadow: 0 0 1vw 1vw rgba(0, 0, 0, 0.1);
    }
}
.gallery li a:hover figure {
    transform: scale(1.05);
}
.gallery li a:hover figcaption {
    transform: translateY(-50%);
}
/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9999;
    overflow: hidden;
}
#cboxOverlay {
    position: fixed;
    width: 100%;
    height: 100%;
}
#cboxMiddleLeft, #cboxBottomLeft {
    clear: left;
}
#cboxContent {
    position: relative;
}
#cboxLoadedContent {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}
#cboxTitle {
    margin: 0;
}
#cboxLoadingOverlay, #cboxLoadingGraphic {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow {
    cursor: pointer;
}
.cboxPhoto {
    float: left;
    margin: auto;
    border: 0;
    display: block;
    max-width: none;
    -ms-interpolation-mode: bicubic;
}
.cboxIframe {
    width: 100%;
    height: 100%;
    display: block;
    border: 0;
}
#colorbox, #cboxContent, #cboxLoadedContent {
    box-sizing: content-box;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
}
/*
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay {
    background: #fff;
}
#colorbox {
    outline: 0;
}
#cboxTopLeft {
    width: 25px;
    height: 25px;
    background: url(assets/images/border1.png) no-repeat 0 0;
}
#cboxTopCenter {
    height: 25px;
    background: url(assets/images/border1.png) repeat-x 0 -50px;
}
#cboxTopRight {
    width: 25px;
    height: 25px;
    background: url(assets/images/border1.png) no-repeat -25px 0;
}
#cboxBottomLeft {
    width: 25px;
    height: 25px;
    background: url(assets/images/border1.png) no-repeat 0 -25px;
}
#cboxBottomCenter {
    height: 25px;
    background: url(assets/images/border1.png) repeat-x 0 -75px;
}
#cboxBottomRight {
    width: 25px;
    height: 25px;
    background: url(assets/images/border1.png) no-repeat -25px -25px;
}
#cboxMiddleLeft {
    width: 25px;
    background: url(assets/images/border2.png) repeat-y 0 0;
}
#cboxMiddleRight {
    width: 25px;
    background: url(assets/images/border2.png) repeat-y -25px 0;
}
#cboxContent {
    background: #fff;
    overflow: hidden;
}
.cboxIframe {
    background: #fff;
}
#cboxError {
    padding: 50px;
    border: 1px solid #ccc;
}
#cboxLoadedContent {
    margin-bottom: 20px;
}
#cboxTitle {
    position: absolute;
    bottom: 0px;
    left: 0;
    text-align: center;
    width: 100%;
    color: #999;
}
#cboxCurrent {
    position: absolute;
    bottom: 0px;
    left: 100px;
    color: #999;
}
#cboxLoadingOverlay {
    background: #fff url(images/loading.gif) no-repeat 5px 5px;
}
/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {
    border: 0;
    padding: 0;
    margin: 0;
    overflow: visible;
    width: auto;
    background: none;
}
/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {
    outline: 0;
}
#cboxSlideshow {
    position: absolute;
    bottom: 0px;
    right: 42px;
    color: #444;
}
#cboxPrevious {
    position: absolute;
    bottom: 0px;
    left: 0;
    color: #444;
}
#cboxNext {
    position: absolute;
    bottom: 0px;
    left: 63px;
    color: #444;
}
#cboxClose {
    position: absolute;
    bottom: 0;
    right: 0;
    display: block;
    color: #444;
}
/*
  The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
  when an alpha filter (opacity change) is set on the element or ancestor element.  This style is not applied to or needed in IE9.
  See: http://jacklmoore.com/notes/ie-transparency-problems/
*/
.cboxIE #cboxTopLeft,
.cboxIE #cboxTopCenter,
.cboxIE #cboxTopRight,
.cboxIE #cboxBottomLeft,
.cboxIE #cboxBottomCenter,
.cboxIE #cboxBottomRight,
.cboxIE #cboxMiddleLeft,
.cboxIE #cboxMiddleRight {
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF, endColorstr=#00FFFFFF);
}
/*2024.8.25*/
@media screen and (min-width: 768px) {
    #store_ttl {
        background-color: #fff;
        color: #181B39;
    }
}
.course_btn.course_btn_readmore {
    border: 1px solid #181B39;
    background-color: #181B39;
}
.course_btn .icn, .course_btn .txt {
    color: #fff;
}
.store_list h3 {
    border: 1px solid #181B39;
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #store_ttl h1 {
        margin-right: 0;
        background-color: #fff;
        padding: 1rem;
        color: #181B39;
        border-radius: 5px;
    }
}
.store_ttl_logo {
    margin-bottom: 80px;
}
.store_ttl_logo img {
    display: block;
    width: 30%;
    margin: 0 auto;
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #store_contents {
        padding-top: 10px;
    }
    .store_ttl_logo {
        margin-bottom: 20px;
    }
}
#store_ttl h1 {
    text-align: center;
    line-height: 1.2;
}
/* google review */
#google_review h1+p {
    font-size: 1em;
    opacity: .5;
}
.index-voice {
    margin: 5em 0;
}
.all_review_info {
    text-align: center;
    margin-bottom: 40px;
    display: flex;
    flex-direction: column;
}
.rating_all {
    font-family: "Google Sans Display", "Google Sans", Roboto, "Noto Sans JP", Arial, sans-serif;
    font-size: 7rem;
    font-weight: 400;
}
.all_rate {
    margin-top: -20px;
}
.all_rate[rating='1']::before {
    content: "★☆☆☆☆";
    color: #ffc800;
    font-size: 3rem;
}
.all_rate[rating='2']::before {
    content: "★★☆☆☆";
    color: #ffc800;
    font-size: 3rem;
}
.all_rate[rating='3']::before {
    content: "★★★☆☆";
    color: #ffc800;
    font-size: 3rem;
}
.all_rate[rating='4']::before {
    content: "★★★★☆";
    color: #ffc800;
    font-size: 3rem;
}
.all_rate[rating='5']::before {
    content: "★★★★★";
    color: #ffc800;
    font-size: 3rem;
}
.voice_wrap {
    width: 90%;
    margin: 0 auto 5em;
}
.voice_box {
    margin-bottom: 3em;
}
.voice_box ul {}
.index-voice-list-box {}
.index-voice-list {}
.voice-list-box {
    margin: 0 0 3em;
}
.voice-list-box a {}
.localguide {
    display: flex;
    flex-direction: row;
    align-items: center;
    margin: 0 0 0.5em;
}
.localguide>div {
    margin: 0 10px;
}
.localguide>img {
    width: 30px;
    height: 30px;
}
.info-rate[rating='1']::before {
    content: "★☆☆☆☆";
    color: #ffc800;
}
.info-rate[rating='2']::before {
    content: "★★☆☆☆";
    color: #ffc800;
}
.info-rate[rating='3']::before {
    content: "★★★☆☆";
    color: #ffc800;
}
.info-rate[rating='4']::before {
    content: "★★★★☆";
    color: #ffc800;
}
.info-rate[rating='5']::before {
    content: "★★★★★";
    color: #ffc800;
}
.voice-list-box .date-txt {
    font-size: 0.9em;
    color: #999;
    margin-bottom: 0.5em;
}
.voice-list-box a .txt-box {}
.voice-list-box a .txt-box .read-more {
    margin: 0.4em 0 0;
    text-align: right;
}
.voice-list-box a .txt-box .read-more span {
    display: inline-block;
    transform: scaleX(0.5);
    font-weight: bold;
    margin-right: 0.5em;
}
.index-voice-list-box .btn-box {}
.index-voice-list-box .btn-box .btn-readmore {}
.index-voice-list-box .btn-box .btn-readmore a {}
@media (min-width: 992px) {
    .index-voice .index-voice-list {
        margin: 0 1em;
    }
}
@media (min-width: 768px) {
    .index-voice .index-voice-list {
        margin: 0 1em;
    }
}
.index-voice .index-voice-list {
    margin: 0 1em;
}
#google_review.single {}
#google_review.single .voice-main {
    width: 90%;
    margin: 0 auto 5em;
    font-size: 16px;
}
#google_review.single .voice-main .box-l {
    margin-bottom: 5em;
    font-size: 16px;
}
#google_review.single .voice-main .box-r {}
#google_review.single .voice-main .single-sec .date-txt {
    opacity: .5;
    margin-bottom: 1em;
}
.nav-pagenate-single {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.nav-pagenate-single li {
    margin: 0 .25em;
}
.nav-pagenate-single li a {
    padding: 0.5em 2em;
    display: grid;
    place-content: center;
    background-color: rgb(126 132 181 / 7%);
}
.nav-pagenate-single li.prev a, .nav-pagenate-single li.next a {
    transform: scaleX(0.5);
}
.nav-pagenate-single li.prev a {
    transform-origin: left;
}
.nav-pagenate-single li.next a {
    transform-origin: right;
}
#pagenation {}
#pagenation .pagination {}
#pagenation .pagination .screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
}
#pagenation .pagination .nav-links {
    display: flex;
    justify-content: center;
    align-items: center;
}
#pagenation .pagination .nav-links .page-numbers {
    padding: 0.5em;
    min-width: 2.5em;
    margin: 0 0.25em;
    display: grid;
    place-content: center;
}
#pagenation .pagination .nav-links .page-numbers.current {
    border: none;
    min-width: auto;
    margin: 0 0.25em;
}
#pagenation .pagination .nav-links .page-numbers.dots {
    border: none;
    min-width: auto;
    margin: 0;
}
#pagenation .pagination .nav-links .page-numbers.prev,
#pagenation .pagination .nav-links .page-numbers.next {
    padding: 0.5em 2em;
    transform: scaleX(0.5);
}
#pagenation .pagination .nav-links .page-numbers.prev {
    transform-origin: right;
}
#pagenation .pagination .nav-links .page-numbers.next {
    transform-origin: left;
}
#pagenation .pagination .nav-links span {}
#pagenation .pagination .nav-links a {
    background-color: rgb(126 132 181 / 7%);
}
@media screen and (min-width: 768px) {
    .voice_wrap {
        display: flex;
        justify-content: center;
        flex-direction: row-reverse;
        column-gap: 5em;
    }
    .voice_box {
        width: 800px;
    }
    #pagenation .pagination .nav-links .page-numbers.current {
        font-size: 1.25em;
    }
}

/* ----------------------------------------- 2025.07.10 ----------------------------------------- */
.brand_title {
    margin-bottom: 45px;
}
.brand_title h2 {
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.05rem;
}
.brand_title h2 br {}
.brand_block {
    margin-bottom: 45px;
}
.brand_title_sub {
    margin-bottom: 30px;
}
.brand_title_sub h3 {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.05rem;
}
.brand_title_sub h3 br {}
.brand_title_sub h3::after {
    content: '';
    width: 108px;
    height: 2px;
    background-color: #181b39;
    background-size: contain;
    display: block;
    margin: 10px auto 0;
}
.brand_box {
    margin-bottom: 3rem;
}
.brand_box._reverse {}
.brand_img {
    margin-bottom: 2rem;
}
.brand_img img {
    width: 100%;
}
.brand_txt {
    text-align: center;
    margin-bottom: 2rem;
}
.brand_txt h4 {
    font-size: 18px;
    letter-spacing: 0.05rem;
    margin-bottom: 0.75rem;
}
.brand_txt h4::before,
.brand_txt h4::after {
    content: '-';
    display: inline-block;
    margin: 0 2rem;
    transform: scaleX(6);
    font-weight: 100;
    opacity: .5;
}
.brand_txt p {
    margin-bottom: 1.5rem;
}
.brand_txt p br {}
@media(min-width:768px) {
    .brand_title {
        margin-bottom: 45px;
    }
    .brand_title h2 {
        font-size: 42px;
    }
    .brand_title h2 br {}
    .brand_block {
        width: 100%;
        max-width: 1015px;
        margin: 0 auto 100px;
    }
    .brand_title_sub {
        margin-bottom: 50px;
    }
    .brand_title_sub h3 {
        font-size: 24px;
    }
    .brand_title_sub h3 br {
        display: none;
    }
    .brand_title_sub h3::after {}
    .brand_box {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 50px;
    }
    .brand_box._reverse {
        flex-direction: row-reverse;
    }
    .brand_img {
        width: 50%;
        margin-bottom: 0;
    }
    .brand_img img {}
    .brand_txt {
        width: 45%;
        margin-bottom: 0;
    }
    .brand_txt h4 {
        text-align: left;
    }
    .brand_txt p {
        font-size: 16px;
        line-height: 1.9;
        text-align: left;
    }
    .brand_txt p br {}
}










/* ----------------------------------------- thanks ----------------------------------------- */
