@charset "UTF-8";

body * {font-size: 1.4rem;}

::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

/*--------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
ユーティリティ
----------------------------------------------------------------------------
----------------------------------------------------------------------------
--------------------------------------------------------------------------*/

.u_sp {
    display: none;
}

/*---コンテナ---*/
.u_container {
    max-width: 120rem;
    padding: 0 5rem;
}

/*--------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
コンポーネント
----------------------------------------------------------------------------
----------------------------------------------------------------------------
--------------------------------------------------------------------------*/

/*----------------------------------------
ロゴ
----------------------------------------*/
.c_logo .logo-img {
    width: 9.2rem;
    height: 10.4rem;
    margin-bottom: .8rem;
}
.c_logo .logo-txt {
    font-size: 1.5rem;
}

/*------------------------------------
ページタイトル
------------------------------------*/
.c_pagettl .pagettl-img {
    height: 25rem;
}
.c_pagettl .pagettl-img:before {
    bottom: -18rem;
    left: calc(50% - 16rem);
    width: 32rem;
    height: 24.5rem;
}

/*------------------------------------
見出し
------------------------------------*/
.c_headline {
    margin-bottom: 4.8rem;
}
.c_headline span {
    font-size: 3.6rem;
}
.c_headline span:after {
    width: 2.1rem;
    height: 3px;
    margin-top: 1.2rem;
}

/*------------------------------------
READ MORE
------------------------------------*/
.c_morebtn {
    width: 17rem;
}
.c_morebtn.wide {
    max-width: 27.6rem;
}
.c_morebtn.wide span {
    padding: 1.9rem 0;
}

/*------------------------------------
TOPに戻る
------------------------------------*/
.c_page-top {
    right: 2.3rem;
    width: 5rem;
    height: 5rem;
}
.c_page-top img {
    width: 2rem;
    height: 2rem;
}

/*----------------------------------------
固定SNSリンク
----------------------------------------*/
.c_fix-sns {
    position: fixed;
    bottom: 8rem;
    right: 3.6rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 200;
}
.c_fix-sns .sns-txt {
    color: var(--cowhite);
    font-family: var(--ff-secular);
    writing-mode: vertical-rl;
    line-height: 1;
    margin-bottom: 1.8rem;
    filter: drop-shadow(0 0 .6rem rgba(0,0,0, .16));
    transition: .3s ease;
    transform: rotate(.05deg);
}
.c_fix-sns .sns-icon {
    width: 2.4rem;
    height: 2.4rem;
    filter: drop-shadow(0 0 .6rem rgba(0,0,0, .16));
}
.c_fix-sns .sns-icon path {
    transition: .3s ease;
}

.c_fix-sns.color-chenge .sns-txt {
    color: var(--cocco);
}
.c_fix-sns.color-chenge .sns-icon path {
    fill: var(--cocco);
}

/*--------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
レイアウト
----------------------------------------------------------------------------
----------------------------------------------------------------------------
--------------------------------------------------------------------------*/
#l_header .hum-toggle {
    top: 3rem;
    right: 3.2rem;
}

#l_header .header-nav {
    width: 38.8rem;
}
#l_header .header-nav .nav-inner {
    padding: 9rem 0;
}

#l_header .nav-logo {
    width: 10rem;
    height: 11.3rem;
    margin-bottom: 6.8rem;
}

#l_header .nav-list .item:not(:last-child) {
    margin-bottom: 3.2rem;
}
#l_header .nav-list .item a {
    font-size: 2.8rem;
}

/*--------------------------------------------------------------------------
フッター
--------------------------------------------------------------------------*/
#l_footer {
    padding: 3.6rem 0;
}

#l_footer .footer-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: .8rem;
}
#l_footer .footer-inner-left {
    align-items: center;
}

#l_footer .c_logo {
    margin-right: 9rem;
}

#l_footer .shop-details * {
    font-size: 1.5rem;
}

#l_footer .shop-details .tel {
    display: inline-block;
    margin-bottom: 1.5rem;
}
#l_footer .shop-details .hours {
    margin-bottom: 1.2rem;
}
#l_footer .shop-details .hours dl {
    margin-bottom: .4rem;
}
#l_footer .shop-details .hours dl dt {
    width: 5.5em;
}
#l_footer .shop-details .link-icon {
    width: 1.6rem;
    height: 1.6rem;
    margin-left: 1rem;
}

#l_footer .footer-nav .nav-list {
    margin-bottom: 2.4rem;
}
#l_footer .footer-nav .nav-list .item {
    margin-right: -.3em;
    text-align: right;
}
#l_footer .footer-nav .nav-list .item:not(:last-child) {
    margin-bottom: 1.8rem;
}
#l_footer .footer-nav .nav-list .item a {
    font-size: 1.8rem;
}

#l_footer .cp {
    text-align: right;
}

/*--------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
ページ
----------------------------------------------------------------------------
----------------------------------------------------------------------------
--------------------------------------------------------------------------*/

/*--------------------------------------------------------------------------
TOP
--------------------------------------------------------------------------*/

/*----------------------------------------
About
----------------------------------------*/
#p_top .m_about {
    margin-bottom: 14.2rem;
    padding: 8.7rem 0 12rem;
}

#p_top .m_about .about-scrdown {
    left: calc(1.4rem + 2px + 5rem);
}

#p_top .m_about .about-ttl {
    margin-left: 1rem;
}
#p_top .m_about .about-catch {
    font-size: 2.2rem;
    line-height: 1.6;
    margin: 3.6rem min(8.418vw,11.5rem) 0;
}
#p_top .m_about .about-summary {
    font-size: 1.6rem;
    line-height: 2.5;
    margin-top: 2.3rem;
}

/*----------------------------------------
NEWS
----------------------------------------*/
#p_top .m_news {
    margin-bottom: 14.2rem;
}

#p_top .m_news .c_news-list {
    margin-bottom: 4.8rem;
    gap: 0 4.6rem;
}
#p_top .m_news .c_news-list .item {
    width: calc((100% - (4.6rem * 2)) / 3);
}
#p_top .m_news .c_news-list .item .item-img {
    height: 33.6rem;
}

/*----------------------------------------
MENU
----------------------------------------*/
#p_top .m_menu {
    margin-bottom: 10.4rem;
}

#p_top .m_menu .menu-txt {
    font-size: 1.6rem;
    line-height: 1.875;
    margin:  0 auto 4.8rem;
}

#p_top .m_menu .menu-img {
    margin-top: -3.645vw;
    overflow-x: hidden;
}
#p_top .m_menu .menu-img .menu-img-inner {
    width: 160.8rem;
}

@media screen and (max-width:1460px) {
    #p_top .m_menu .menu-img {
        margin: -3.645vw -5.068vw 0 -5.068vw;
    }
    #p_top .m_menu .menu-img .menu-img-inner {
        width: calc(100vw + (5.068vw * 2));
    }
}

/*----------------------------------------
ACSESS
----------------------------------------*/
#p_top .m_acsess {
    margin-bottom: 14.4rem;
}

#p_top .m_acsess .access-map {
    height: 46.7rem;
}

/*--------------------------------------------------------------------------
MENU
--------------------------------------------------------------------------*/

/*----------------------------------------
フードメニュー
----------------------------------------*/
#p_menu .m_food-menu {
    margin-bottom: 15rem;
}

#p_menu .m_food-menu .menu-list {
    gap: 0 3rem;
    place-content: center;
}
#p_menu .m_food-menu .menu-list .item .item-name {
    margin-bottom: 1.3rem;
}
#p_menu .m_food-menu .menu-list .item .item-name .name-en {
    font-size: 1.4rem;
    margin-bottom: .8rem;
}
#p_menu .m_food-menu .menu-list .item .item-name .name-jp {
    font-size: 2rem;
}
#p_menu .m_food-menu .menu-list .item .item-summary {
    margin-bottom: 3.3rem;
}
#p_menu .m_food-menu .menu-list .item .item-summary p:not(:last-child) {
    margin-bottom: .6rem;
}
#p_menu .m_food-menu .menu-list .item .item-price dl:not(:last-child) {
    margin-bottom: 1.4rem;
}
#p_menu .m_food-menu .menu-list .item .item-price dl dt {
    font-size: 1.5rem;
}
#p_menu .m_food-menu .menu-list .item .item-price dl dd {
    font-size: 2rem;
}

/*その他*/
#p_menu .m_food-menu .menu-list.other .item .item-img {
    height: 34.5rem;
    margin-bottom: 1.8rem;
}

/*クレープ*/
#p_menu .m_food-menu .menu-list.crepe .item {
    display: grid;
    grid-template-columns: minmax(25rem, 55rem);

    gap: 0 7rem;
    grid-template-areas: "img name" "img txt";
}
#p_menu .m_food-menu .menu-list.crepe .item:not(:last-child) {
    margin-bottom: 10.4rem;
}
#p_menu .m_food-menu .menu-list.crepe .item .item-img {
    grid-area: img;
    height: 55rem;
}
#p_menu .m_food-menu .menu-list.crepe .item .item-name {
    display: flex;
    flex-direction: column;
    justify-content: end;
    grid-area: name;
}
#p_menu .m_food-menu .menu-list.crepe .item .item-txt {
    grid-area: txt;
}
#p_menu .m_food-menu .menu-list.crepe .item .item-variation {
    margin-bottom: 3.6rem;
}
#p_menu .m_food-menu .menu-list.crepe .item .item-variation.small li {
    font-size: 1.6rem;
    margin-bottom: 1.2rem;
}
#p_menu .m_food-menu .menu-list.crepe .item .item-variation.big li {
    font-size: 2rem;
    margin-bottom: 1rem;
}
#p_menu .m_food-menu .menu-list.crepe .item .item-price {
    justify-content: flex-start;
}

/*----------------------------------------
ドリンクメニュー
----------------------------------------*/
#p_menu .m_drink-menu {
    margin-bottom: 14rem;
}

#p_menu .m_drink-menu .menu-ttl {
    margin-bottom: 1.4rem;
}
#p_menu .m_drink-menu .menu-ttl .ttl-en {
    font-size: 1.8rem;
    margin-bottom: .8rem;
}
#p_menu .m_drink-menu .menu-ttl .ttl-jp {
    font-size: 2.4rem;
}

#p_menu .m_drink-menu .menu-summary {
    margin-bottom: 3.5rem;
}

#p_menu .m_drink-menu .menu-list {
    gap: 0 10.4rem;
}
#p_menu .m_drink-menu .menu-list .item .item-img {
    height: 12.4rem;
    margin-bottom: 2rem;
}
#p_menu .m_drink-menu .menu-list .item .item-txt .txt-name,
#p_menu .m_drink-menu .menu-list .item .item-txt .txt-price {
    font-size: 2rem;
}

/*--------------------------------------------------------------------------
NEWS
--------------------------------------------------------------------------*/
#p_news-archive {
    padding-bottom: 14.4rem;
}
#p_news-archive .c_news-list {
    margin-bottom: 10rem;
}
#p_news-archive .c_news-list .item a {
    display: flex;
    align-items: center;
}
#p_news-archive .c_news-list .item .item-img {
    width: 27.6rem;
    height: 17.4rem;
    margin-right: 4rem;
}
#p_news-archive .c_news-list .item .item-txt {
    width: calc(100% - 27.6rem - 4rem);
}

/*--------------------------------------------------------------------------
NEWS個別
--------------------------------------------------------------------------*/
#p_news-single {
    padding-bottom: 14.4rem;
}

#p_news-single .m_state {
    margin-bottom: 5rem;
}
#p_news-single .m_state .item-ttl {
    font-size: 2.8rem;
    margin-bottom: 1.2rem;
}
#p_news-single .m_state .item-date,
#p_news-single .m_state .item-cata-list li {
    font-size: 1.4rem;
}

#p_news-single .m_detail .c-postContent {
    margin-bottom: 7.5rem;
}

/*--------------------------------------------------------------------------
CONTACT
--------------------------------------------------------------------------*/
#p_contact .u_container {
    width: 102rem;
}

/*----------------------------------------
NOTES
----------------------------------------*/
#p_contact .m_notes {
    margin-bottom: 10rem;
}

#p_contact .m_notes .notes-msg {
    font-size: 1.6rem;
    margin-bottom: 6.8rem;
}

#p_contact .m_notes .notes-sec {
    margin-bottom: 7.2rem;
}
#p_contact .m_notes .notes-sec .sec-ttl {
    font-size: 2rem;
    margin-bottom: 1.3rem;
}
#p_contact .m_notes .notes-sec .tel {
    font-size: 2.8rem;
    margin-bottom: .8rem;
}
#p_contact .m_notes .notes-sec .time * {
    font-size: 1.6rem;
}
#p_contact .m_notes .notes-sec .time dt {
    margin-right: 2.5rem;
}
#p_contact .m_notes .notes-sec p {
    font-size: 1.6rem;
    line-height: 2;
    margin-bottom: 1rem;
}

/*----------------------------------------
FORM
----------------------------------------*/
#p_contact .m_form {
    margin-bottom: 14.4rem;
}

#p_contact .m_form .form-row {
    display: flex;
    margin-bottom: 3.2rem;
}
#p_contact .m_form .form-row dt {
    font-size: 1.8rem;
    width: 24.5rem;
    margin-right: 3.6rem;
    justify-content: space-between;
}
#p_contact .m_form .form-row.textarea dt {
    align-items: start;
    padding-top: 1.1rem;
}
#p_contact .m_form .form-row dd {
    font-size: 1.6rem;
    width: calc(100% - 24.5rem - 3.6rem);
}
#p_contact .m_form .form-row dd.conform-txt {
    padding: 1rem 1.5rem;
}

#p_contact .m_form input[type="text"],
#p_contact .m_form input[type="email"],
#p_contact .m_form input[type="tel"],
#p_contact .m_form input[type="url"],
#p_contact .m_form input[type="date"],
#p_contact .m_form input[type="time"],
#p_contact .m_form input[type="number"],
#p_contact .m_form select,
#p_contact .m_form textarea {
    font-size: 1.6rem;
    padding: 1.1rem 1.5rem;
}

/*プライバシーポリシー*/
#p_contact .m_form .form-consent {
    font-size: 1.6rem;
    letter-spacing: 0;
    margin: 4.4rem 0 6rem;
}

/*ボタン*/
#p_contact .m_form .form-submit.confirm {
    margin-top: 10rem;
}
#p_contact .m_form .form-submit .submit-btn:not(:last-of-type) {
    margin-right: 5rem;
}

/*----------------------------------------
COMPLETE
----------------------------------------*/
#p_contact .m_thanks {
    padding: 18rem 0 30rem;
}
#p_contact .m_thanks .thanks-txt {
    font-size: 2.3rem;
    margin-bottom: 8.6rem;
}

/*--------------------------------------------------------------------------
プライバシーポリシー
--------------------------------------------------------------------------*/
#p_privacy {
    margin-bottom: 14rem;
}
#p_privacy .c_pagettl {
    margin-bottom: 7.5rem;
}

#p_privacy .privacy-sec {
    margin-bottom: 4.8rem;
}
#p_privacy .privacy-sec * {
    font-size: 1.4rem;
}
#p_privacy .privacy-sec .sec-ttl {
    font-size: 1.6rem;
}
