@charset "UTF-8";

/* ------- 重要なお知らせ ------- */
#headerNotice{
    width:100%;
    padding:0;
    margin:0;
    border-bottom:1px solid #fff;
}
#headerNotice .headerNotisAndInfo{
    width:100%;
    margin-bottom:1px;
}
#headerNotice .noticeInner{
    width:100%;
    margin:0 auto;
    background-color:transparent;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height:1.3;
    padding:4px 0;
    font-size:100px;
}
#headerNotice .noticeInner a{
    font-weight:500;
}
.txleft{
    text-align:left;
}
.txcenter{
    text-align:center;
}
.txright{
    text-align:right;
}
/* ------- ヘッダー ------- */
#gMenuHeader{
    position:static;
    width:100%;
    height:auto;
    padding:0;
    margin:0 0 1px 0;
    text-align:left;
    background-color:#000;
    z-index:3;
    text-align:left;
}
.logoAndLinkSP{
    display:none;
}
#GnavArea{
/*
    width:1100px;
    margin:0 auto;
    padding:0;
    white-space:nowrap;
*/
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.logoAndLinkPC{
    width:180px;
    float:left;
    margin-right:50px;
}
.logoAndLinkPC img{
    width:100%;
    margin:14px 0 0 0;
}
.toggle_btn{
    display:none;
}
#GnaviMask{
    display:none;
}
/* ------- グローバルメニュー ------- */
#gNavSet{
    display: flex;
    width:870px;
    float:right;
    padding:0;
    color: #ffffff;
    justify-content: space-between;
    flex-direction:row;
    flex-wrap:nowrap;
    background-color:#000;
}
.MenuItem {
    position:relative;
    margin:0;
    padding:0;
    z-index:999;
}
.MenuItem .bigCtgo{
    display:block;
    color:#fff;
    margin:0;
    padding:0 1em;
    cursor:pointer;
    font-size:16px;
    font-weight:700;
    line-height:50px;
}
.MenuItem p a:link {color: #fff;text-decoration: none;}
.MenuItem p a:visited {color: #fff;text-decoration: none;}
.MenuItem p a:hover {color: #ff6e00;text-decoration: none;opacity: 1!important;}
.MenuItem p a:active {color: #fa7;text-decoration: none;}

.bigCtgo:after {
    padding-left:0.3em;
    content: url("/assets/common/_img_bg/round_down_arrow.svg");
    vertical-align: middle; 
}
.MenuItem ul{
    display:none;
    position:absolute;
    top:auto;
    left:0;
    list-style: none;
    background-color:#444;
    margin:0;
    padding:0;
}
.MenuItem ul li{
    text-align:left;
    white-space:nowrap;
    margin:0;
    padding:0;
    font-size:16px;
}

.MenuItem ul li a{
    display:block;
    font-size:16px;
    padding: 20px 2em 20px 1em;
    line-height: 1;
}
.MenuItem ul li a:link {color: #fff;text-decoration: none;}
.MenuItem ul li a:visited {color: #fff;text-decoration: none;}
.MenuItem ul li a:hover {
    color: #ff6e00;
    background-color:#333;
    text-decoration: none;
    opacity:1!important;
}
.MenuItem ul li a:active {color: #fa7;text-decoration: none;}

.MenuItem ul li.midcls {
    text-indent: 0;
}
.MenuItem ul li.midcls a {
    padding-left: 2em;
}

.shopBtn .toEC a{
    display:inline-block;
    font-size:17px;
    line-height:30px;
    padding:0 10px;
    color:#fff;
    font-weight:bold;
    background-color:#ff6e00;
    border-radius: 4px;
    padding-bottom: 1px;
}
.shopBtn .toEC a:hover {
    color: #fff;
    text-decoration: none;
}
.shopBtn .toEC a:active {
    color: #fff;
    text-decoration: underline;
}
.shopBtn .toEC a img{
    vertical-align:middle;
    margin:0 5px 3px 0;
    width: 25px;
    height: auto;
}
.customer{
    display:none;
    text-align:center;
}
.guest{
    display:block;
}
.welcom{
    font-size:15px;
    white-space:nowrap;
    overflow:hidden;
}


.MenuItem:not(.guest) ul li:not(.textForGuest) {
    position: relative;
}
/*
.MenuItem:not(.guest) ul li:not(.textForGuest)::before {
    content: "";
    position: absolute;
    width: 8px;
    height: 8px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%) rotate(45deg);
}
*/
.MenuItem ul li.yoyakuSyaken a,
.MenuItem ul li.yoyakuURL a {
    font-size: 21px;
    line-height: 1.3;
}
.yoyakuURL_sub {
    font-size: 15px;
    font-weight: normal;
}

.MenuItem ul li.textForGuest {
    padding: 9px 21px;
    font-size: 12px;
}

/* ========== スマホ768 -========== */
@media screen and (max-width:767px){
    body{
        /* margin-top:60px; */
    }
    /* --- 重要なお知らせ --- */
    #headerNotice{
        margin-bottom:1vh;
        border-top:1px solid #fff;
        border-bottom:none;
    }
    #headerNotice .headerNotisAndInfo{
        margin-bottom:4px;
    }
    #headerNotice .noticeInner{
        width:100%;
        margin:0;
        background-color:transparent;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        line-height:1.3;
        padding:5px 2vw;
        font-size:25vw;
        overflow:hidden;
    }
    #headerNotice .noticeInner p{
        text-align:left!important;
    }
    /* ------- ヘッダー ------- */
    #gMenuHeader{
        width:100%;
        height:60px;
    }
    .logoAndLinkSP{
        width:100%;
        height:60px;
        display: flex;
        padding:0;
        margin:0;
    }
    .logoAndLinkSP li{
        width:21%;
        text-align:center;
    }
    .logoAndLinkSP li a{
        display:block;
        color:#fff;
        text-align:center;
        font-size: min(3vw, 11.5px);
        font-weight: normal;
    }
    .logoAndLinkSP li img{
        display:block;
        width:auto;
        height:30px;
        margin:8px auto 2px auto;
    }
    .logoAndLinkSP li a .ablogo{
        width:auto;
        height:42px;
        margin:8px auto 0 auto;
    }
    .logoAndLinkSP li a .ablogofull{
        width:50vw;
        max-height:43px;
        line-height:45px;
        margin-left:16px;
    }
    #GnavArea{
        width:100%;
        height:auto;
        margin:0;
        overflow:hidden;
    }
    .logoAndLinkPC{
        display:none;
    }

/* ------- バーガーメニュー ------- */
    #gNavSet {
        display: block;
        position: fixed;
        top: 0;
        left: -85vw;
        bottom: 0;
        width: 87.5vw;
        background: #fafafa;
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        transition: all .5s;
        z-index: 9999;
        opacity: 0;
    }
    .open #gNavSet {
        left: 0;
        opacity: 1;
    }
    #gNavSet .logoAreaSP{
        line-height:60px;
        background-color:#000;
    }
    #gNavSet .logoAreaSP img{
        width:35%;
        margin:0 5vw;
        vertical-align:middle;
    }
    .MenuItem {
        position:static;
        margin:0;
        height:auto;
    }
    .MenuItem .bigCtgo{
        display:block;
        padding: 0.3em 2vw 0.3em 4vw;
        margin: 24px 0 8px;
        color:#333333;
        font-size: min(4.5vw, 24px);
        background-color: #e5e5e5;
        height:auto;
        line-height:normal;
        text-align:left;
    }

    .MenuItem p a:link {color: #000;text-decoration: none;}
    .MenuItem p a:visited {color: #000;text-decoration: none;}
    .MenuItem p a:hover {color: #000;text-decoration: none;opacity: 1!important;}
    .MenuItem p a:active {color: #000;text-decoration: none;}
    
    .bigCtgo:after {
        position: static;
        bottom: 0;
        left: 0;
        right: 0;
        top:0;
        content: "";
        font-size: 0px; 
        color: transparent;
        line-height:normal;
        text-align: center;
        display:none;
    }

    
    .MenuItem a.openAnotherTabW16:after{
        content: url("/assets/common/_img_bg/new_win_icon_b16.svg");
    }
    
    .MenuItem ul{
        display:block;
        position:static;
        top:auto;
        left:auto;
        list-style: none;
        border:none;
        border-top:none;
        background-color:#fff;
        background-color:#fafafa;
        margin:0;
        padding:0;
    }
    .MenuItem ul li{
        display:block;
        list-style: none;
        text-align:left;
        white-space:normal;
        margin:0;
        padding:0;
        border-top: none;
    }
    .MenuItem ul li:not(:first-child){
        border-top: none;
    }
    .MenuItem:not(.guest) ul li:not(.textForGuest) {
        position: relative;
    }
    .MenuItem:not(.guest) ul li:not(.textForGuest)::before {
        content: "";
        position: absolute;
        width: 8px;
        height: 8px;
        border-top: solid 1px #333;
        border-right: solid 1px #333;
        position: absolute;
        top: 50%;
        right: 4.5vw;
        transform: translateY(-50%) rotate(45deg);
    }

    .MenuItem ul li a{
        font-size: min(4.5vw, 24px);
        padding: 5.3vw 4vw;
        text-decoration: none;
    }
    .MenuItem ul li a:link {color: #333333;text-decoration: none;}
    .MenuItem ul li a:visited {color: #333333;text-decoration: none;}
    .MenuItem ul li a:hover {
        color: #333333;
        background-color:transparent;
        text-decoration: none;
        opacity:1!important;
    }
    .MenuItem ul li a:active {color: #333333;text-decoration: none;}
    .customer{
        display:none;
    }
    .customer p a{
        text-align:left;
        font-size:4vw;
        background-color:#ddd;
    }
    .welcom{
        font-size: 4.5vw;
        white-space:nowrap;
        overflow:hidden;
        font-weight:700;
        text-align:left;
    }

    .shopBtn{
        border-top: none;
        height:auto;
        line-height:2;
        margin:0 0 5vh 0;
        padding:0;
    }
    .shopBtn .toEC a{
        display: flex;
        justify-content: center;
        font-size: min(4.5vw,24px);
        color:#fff;
        background-color:#ff6e00;

        width: 78vw;
        margin: 17px auto;
        border-radius: 4px;
        line-height: 3.2;
        text-align: center;
        font-weight: normal;
        padding: 0;
    }
    .shopBtn .toEC a img{
        margin: 0 2.1vw 0 0;
        width: 9.3vw;
        max-width: 50px;
        height: auto;
    }

    /* 店舗会員ログインのみ別スタイル */
    .MenuItem.guest .bigCtgo_login,
    .MenuItem.customer .bigCtgo {
        background-color: unset;
    }
    .MenuItem.guest ul li,
    .MenuItem.customer ul li {
        display: inline-block;
        border: none;
    }
    .MenuItem.guest ul li a,
    .MenuItem.customer ul li a {
        padding-top: 0.2em;
        text-decoration: underline;
    }

    .MenuItem.customer ul li::before{
        display: none;
    }
    /* 店舗会員ログインここまで */

    /* ピットサービス予約のみ別スタイル */
    .MenuItem .openAnotherTabW16::after {
        content: url("/assets/common/_img_bg/new_win_icon_b16.svg");
    }
    .MenuItem ul li.yoyakuSyaken a,
    .MenuItem ul li.yoyakuURL a {
        font-size: min(5.6vw, 32px);
        line-height: 1;
    }

    .yoyakuURL_sub {
        font-size: min(4vw, 24px);
        font-weight: normal;
    }
    /* ピットサービス予約ここまで */

    .MenuItem:not(.guest) ul li {
        position: relative;
    }
    .MenuItem:not(.guest) ul li::before {
        content: "";
        position: absolute;
        width: 2.1vw;
        height: 2.1vw;
        border-top: solid 1px #666666;
        border-right: solid 1px #666666;
        position: absolute;
        top: 50%;
        right: 5vw;
        transform: translateY(-50%) rotate(45deg);
    }

    .bigCtgo_sub {
        font-size: min(3.73vw, 20px);
        font-weight: normal;
        color: #666666;
    }

    .MenuItem ul li.midcls {
        text-indent: 0;
    }

    .subText {
        font-size: min(4vw,20px);
    }

/* ------- バーガーボタン ------- */
    .toggle_btn {
        display: block;
        position: absolute;
        top: 20px;
        right: calc(12.5vw / 2 - 24px / 2);
        width: 30px;
        height: 22px;
        transition: all .5s;
        cursor: pointer;
        z-index: 3;
    }
    .toggle_btn span {
        display: block;
        position: absolute;
        left: 0;
        width: 30px;
        height: 2px;
        background-color: #fff;
        border-radius: 2px;
        transition: all .5s;
    }
    .toggle_btn span:nth-child(1) {
        top: 0;
    }
    .toggle_btn span:nth-child(2) {
        top: 10px;
    }
    .toggle_btn span:nth-child(3) {
        bottom: 0;
    }
    .open .toggle_btn span {
        background-color: #fff;
    }
    .open .toggle_btn span:nth-child(1) {
        -webkit-transform: translateY(20px) rotate(-45deg);
        transform: translateY(10px) rotate(-45deg);
    }
    .open .toggle_btn span:nth-child(2) {
        opacity: 0;
    }
    .open .toggle_btn span:nth-child(3) {
        -webkit-transform: translateY(-10px) rotate(45deg);
        transform: translateY(-10px) rotate(45deg);
    }
/* ------- マスク ------- */
    #GnaviMask {
        display: none;
        transition: all .5s;
    }
    .open #GnaviMask {
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: #000;
        opacity: .7;
        z-index: 2;
        cursor: pointer;
        transition: .5s ease-in-out;
    }

} /* ========== スマホ76 */


#gNavSet > div.shopBtn {
    display: flex;
    align-items: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    #gNavSet > div.shopBtn > p > a.openAnotherTabW16:after {
        padding-left: 2.1vw;
    }
    .MenuItem .bigCtgo {
        margin-top: 12px;
        margin-bottom: 0;
    }
}

/* } */