* {
    float: none;
    position: static;
    margin: 0;
    padding: 0;
}
div, p {
    margin: 0 auto;
}
.clear {
    clear: both;
}
.clearfix::after {
    content: "";
    display: block;
    clear: both;
}
img {
    max-width: 100%;
    border: none;
    vertical-align: bottom;
}
a {
    text-decoration: none;
    color: #000;
}
@media screen and (min-width: 520px) {
    a[href^="tel:"] {
        pointer-events: none;
    }
}
.txtL,
.txtCL {
    text-align: justify;
    line-height: 3;
}
@media print, screen and (min-width: 960px) {
    .txtCL {
        text-align: center;
    }
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    .txtL {
        line-height: 2.5;
    }
}
@media screen and (max-width: 519px) {
    .txtL {
        line-height: 2;
    }
}
.mini90 {
    font-size: 90%;
}
.mini {
    font-size: 80%;
}
@media print, screen and (min-width: 960px) {
    .tablet-br,
    .tablet-sp-br {
        display: none !important;
    }
}
@media screen and (max-width: 959px) {
    .pc-br,
    .pc-space {
        display: none !important;
    }
}
@media screen and (max-width: 519px) {
    .tablet-br,
    .pc-tablet-space {
        display: none !important;
    }
}
@media screen and (min-width: 520px) {
    .sp-br,
    .sp-fix-tel {
        display: none !important;
    }
}

/* body */
body {
    text-align: center;
    font-size: 1.1rem;
    line-height: 1.8;
}
@media screen and (max-width: 519px) {
    body {
        /* Android Chrome 40 upper */
        font-size: 1rem;
        line-height: 1.6;
    }
}
.BodyMain,
.BodyMainP {
    background: #fff;
    color: #333;
    font-family: "¥Ò¥é¥®¥Î³Ñ¥´ Pro W3","Hiragino Kaku Gothic Pro",HiraKakuPro-W3,"¥á¥¤¥ê¥ª",Meiryo,verdana,sans-serif;
    -webkit-text-size-adjust: 100%;
}
@media print, screen and (min-width: 960px) {
    .BodyMain {
        margin: 0 auto 48px;
    }
    .container {
        width: 99%;
        max-width: 1280px;
    }
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    .BodyMain {
        margin: 0 auto 48px;
    }
    .container {
        width: 95%;
    }
}
@media screen and (max-width: 519px) {
    .BodyMain {
        margin: 0 auto 38px;
    }
    .container {
        width: 90%;
    }
}

.copyright {
    font-family: unset;
    font-weight: normal;
    background: #f7d7b3;
}
@media screen and (min-width: 520px) {
    .copyright {
        font-size: 0.75rem;
    }
}
@media screen and (max-width: 519px) {
    .copyright {
        font-size: 0.7rem;
    }
}

/* header & footer & menu */
header,
#fix {
    background: #dfded9;
}
#fix {
    width: 100%;
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 1002;
}
@media print, screen and (min-width: 960px) {
    header {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
}
.menu {
    font-size: 80%;
}
#fix .menu {
    margin: 0;
}
@media screen and (max-width: 959px) {
    .menu {
        background: #f28f1c;
    }
}
.header-logo img,
.footer-logo img {
    vertical-align: middle;
}
h1 span,
h2.footer-logo span {
    font-size: 42%;
    font-weight: normal;
    color: #fff;
}
h2.footer-logo span {
    font-size: 55%;
}
@media print, screen and (min-width: 960px) {
    .header-logo img,
    .footer-logo img {
        max-height: 30px;
    }
    h1 a,
    h2 a {
        display: inline-block;
        text-align: left;
    }
    .tablet-sp-menubtn {
        display: none !important;
    }
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    .header-logo img,
    .footer-logo img {
        height: 25px;
        margin-left: 10px;
    }
}
@media screen and (max-width: 519px) {
    .header-logo img,
    .footer-logo img {
        height: 20px;
        margin-left: 10px;
    }
}
@media screen and (max-width: 959px) {
    .pc-fix-logo {
        display: none !important;
    }
}
.menu-inner {
    display: flex;
    align-items: center;
    position: relative;
}
.menu-inner,
.menu.active {
    z-index: 1003;
}
.menu-link {
    color: #333;
}
@media screen and (max-width: 959px) {
    .menu-link {
        color: #fff;
    }
}
@media print, screen and (min-width: 960px) {
    .menu-inner li {
        border-left: 1px solid #eee;
        padding: 0 10px;
    }
    .menu-inner li:first-child {
        border-left: none;
    }
    .menu-link {
        display: block;
        height: 100%;
    }
}
@media screen and (max-width: 959px) {
    .tablet-sp-header {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .tablet-sp-header-inner:before {
        content: "";
        width: 100%;
        background: linear-gradient(43.37deg, #4d4d4d 6.71%, #bcbbbb 101.43%);
        position: absolute;
        top: 0;
        left: 0;
        z-index: -100;
    }
    .tablet-sp-header-inner {
        width: 100%;
        height: 50px;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .tablet-sp-menubtn {
        width: 50px;
        height: 100%;
        position: relative;
        display: block;
        z-index: 5000;
        border: none;
        background: #f28f1c;
        cursor: pointer;
    }    
    .tablet-sp-menubtn span {
        display: block;
        overflow: hidden;
        white-space: nowrap;
        text-indent: 100%;
        width: 22px;
        height: 3px;
        background: #fff;
        position: absolute;
        transition: 0.2s;
        left: 50%;
        top: 50%;
    }    
    .tablet-sp-menubtn span:nth-child(1) {
        transform: translate(-50%, -9px);
    }    
    .tablet-sp-menubtn span:nth-child(2) {
        transform: translate(-50%, -50%);
    }    
    .tablet-sp-menubtn span:nth-child(3) {
        transform: translate(-50%, 6px);
    }    
    .tablet-sp-menubtn.active span {
        width: 27px;
        height: 3px;
        top: 45%;
    }    
    .tablet-sp-menubtn.active span:nth-child(1) {
        transform: translate(-50%, 50%) rotate(45deg);
    }    
    .tablet-sp-menubtn.active span:nth-child(2) {
        opacity: 0;
        left: 50%;
    }    
    .tablet-sp-menubtn.active span:nth-child(3) {
        transform: translate(-50%, 50%) rotate(-45deg);
    }
    .menu {
        position: fixed;
        top: 50px;
        left: 0;
        width: 100%;
        height: calc(100% - 60px);
        color: #fff;
        overflow: auto;
        opacity: 0;
        visibility: hidden;
        transition: opacity .6s ease, visibility .6s ease;
    }
    .menu.active {
        opacity: 100;
        visibility: visible;
    }
    .menu-inner {
        display: block;
        height: auto;
        margin: 0 auto;
    }
    .menu-link {
        font-weight: bold;
        font-size: 1.15rem;
        letter-spacing: 0.04rem;
        height: 70px;
        display: flex;
        align-items: center;
        padding-left: 7px;
    }
}
ul {
    list-style-type: none;
}

.backG {
    background: #efefef;
}

/* section */
section {
    width: 99%;
    margin: auto;
    box-sizing: border-box;
}
@media print, screen and (min-width: 960px) {
    section {
        max-width: 1280px;
        padding: 30px 10px;
    }
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    section {
        padding: 20px 10px;
    }
}
@media screen and (max-width: 519px) {
    section {
        padding: 15px 10px;
    }
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    section p {
        line-height: 2.3;
    }
}
@media screen and (max-width: 519px) {
    section p {
        line-height: 2;
    }
}

.fadein {
    opacity : 0.1;
    transform : translate(0, 60px);
    transition : all 1000ms;
}
.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}

.waku {
    border: 1px solid #dcdcdc;
}
.vendingmachine .waku {
    border: 8px double #7b5544;
    background: #efefef;
}

.ya {
    position: relative;
    padding: 0 13px 0 0;
    margin: 0;
    vertical-align: unset;
}
.ya::before,
.ya::after {
    display: block;
    position: absolute;
    top: 50%;
    content: "";
}
.ya::before {
    width: auto;
    height: auto;
    bottom: 0;
    margin: 0;
}
.ya::after {
    border-width: 3px 3px 0 0;
    border-style: solid;
    transform: rotate(45deg);
    border-color: #f28f1c;
    left: unset;
    bottom: 0;
    right: 0;
    width: 8px;
    height: 8px;
    margin: -6px 0 0;
}
.yaR {
    vertical-align: middle;
    margin: 0 0 2px 3px;
}

/* page-top */
#page-top {
    position: fixed;
    z-index: 100;
    bottom: 50px;
}
#page-top {
    right: 5px;
}
@media screen and (max-width: 519px) {
    #page-top {
        bottom: 40px;
    }
}
#page-top a {
    font-size: 14px;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    text-align: center;
    position: relative;
    letter-spacing: 2px;
    display: block;
    width: 40px;
    height: 40px;
    background: #f28f1c;
    border-radius: 50%;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    #page-top a {
        width: 44px;
        height: 44px;
    }
}
@media screen and (max-width: 519px) {
    #page-top a {
        width: 40px;
        height: 40px;
    }
}
#page-top a::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    margin-left: -6px;
    margin-top: -4px;
    top: 50%;
    width: 11px;
    height: 11px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    #page-top a::after {
        width: 10px;
        height: 10px;
        margin-left: -6px;
        margin-top: -4px;
    }
}
@media screen and (max-width: 519px) {
    #page-top a::after {
        width: 8px;
        height: 8px;
        margin-left: -5px;
        margin-top: -3px;
    }
}

.slickSlide {
    width: 100%;
    background-color: #efefef;
}
#topImg {
    position: relative;
    z-index: -1;
}
#topImg img {
    border-bottom: 1px solid #ccc;
}
#topCopy img {
    border-bottom: none;
    margin: 2rem 0;
}
#topCopy {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    padding: 1rem 2rem;
    background: rgba(0,0,0,.5);
    border-radius: 8px;
    box-sizing: border-box;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    #topCopy {
        padding: .3rem 3rem;
    }
}
@media screen and (max-width: 519px) {
    #topCopy {
        padding: .3rem 1rem;
    }
}
#topCopy h2 {
    color: #fff;
    font-size: 150%;
}
#topCopy h2 span {
    font-size: 140%;
}
@media print, screen and (min-width: 960px) {
    #topCopy img {
        max-width: 600px;
    }
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    #topCopy img {
        max-width: 400px;
    }
    #topCopy h2 {
        font-size: 120%;
        padding-bottom: .3rem;
    }
}
@media screen and (max-width: 519px) {
    #topCopy img {
        max-width: 280px;
        margin: 15px 0;
    }
    #topCopy h2 {
        font-size: 95%;
        padding-bottom: .3rem;
    }
}
#topImg .img {
    width: 100%;
}
#news {
    text-align: left;
}
#news > ul {
    margin: 2rem auto 0;
}
.label {
    background: #f28f1c;
    color: #fff;
    border-radius: 3px;
    padding: 2px 8px;
    font-size: 80%;
}
@media print, screen and (min-width: 960px) {
    #news > ul {
        display: flex;
        justify-content: space-between;
        max-width: 960px;
    }
    #news > ul li:first-child {
        width: 100px;
    }
    #news > ul li {
        width: 160px;
    }
    #news > ul li:last-child {
        width: 700px;
    }
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    #news > ul {
        width: 450px;
    }
}
@media screen and (max-width: 519px) {
    #news > ul {
        width: fit-content;
        max-width: 310px;
    }
}
#banner {
    width: fit-content;
    border: 3px double #179cc5;
    background-color: #fff;
    background-image: radial-gradient(#e8e8e8 7%, transparent 8.5%), radial-gradient(#e8e8e8 7%, transparent 8.5%);
    background-position: 0 0, 10px 10px;
    background-size: 20px 20px;
}
h2.subtitle {
    margin: 3rem auto 4rem;
    position: relative;
    font-size: 160%;
    color: #666;
}
h2.subtitle:before {
    content: url("../images/icon_cafe.png");
    position: absolute;
    top: -50px;
    left: 0;
    right: 0;
    transform: scale(0.8);
}
h2.subtitle:after {
    content: '';
    width: 80px;
    height: 3px;
    display: inline-block;
    background-color: #f28f1c;
    position: absolute;
    bottom: -10px;
    left: calc(50% - 40px);
}
.sub {
    font-weight: bold;
    font-size: 130%;
    color: #f28f1c;
    line-height: 2;
}
ul.list1,
ul.list3 {
    display: flex;
    align-items: center;
    justify-content: space-around;
    flex-wrap: wrap;
}
ul.list3 {
    margin: 3rem auto 1rem;
}
ul.list1 li {
    width: 150px;
}
@media screen and (max-width: 519px) {
    ul.list1 li {
        width: 120px;
    }
}
ul.list3 li {
    background: #fff;
    border: 1px solid #999;
    border-radius: 6px;
    padding: 10px;
    width: 120px;
}
@media screen and (max-width: 959px) {
    ul.list3 {
        margin: 0 auto;
    }
    ul.list3 li {
        width: 100px;
        margin: 1rem;
    }
}
ul.list1 p {
    line-height: 1.6;
}
ul.list3 p {
    font-size: 80%;
}
ul.list3 p span {
    font-size: 90%;
}
ul.list1 li img {
    margin-bottom: 5px;
}
div.parking,
div.openReport,
div.food {
    background-color: #ffdab0;
    border-radius: 6px;
    margin: 2rem auto;
    max-width: 320px;
    padding: .5rem 1rem;
    box-sizing: border-box;
}
div.openReport {
    max-width: 440px;
    margin: 2rem auto 0;
}
div.food {
    max-width: 368px;
    margin: 2rem auto 0;
}
@media screen and (max-width: 519px) {
    div.openReport {
        width: 90%;
        max-width: 320px;
        padding: .5rem 0;
    }
}
#secom {
    width: 120px;
}
ul.list2 {
    list-style-type: disc;
    text-align: left;
    width: fit-content;
    margin: auto;
}
ul.list2 li::marker {
    color: #f28f1c;
    font-size: 140%;
    line-height: 0;
}
ul.list2 li {
    line-height: 3;
}
@media screen and (max-width: 959px) {
    ul.list2 {
        margin: 0 2rem;
    }
    ul.list2 li {
        line-height: 1.8;
        margin-bottom: 10px;
    }
}

.flex {
    display: flex;
    align-items: center;
    justify-content: space-around;
    flex-wrap: wrap;
}
.fdR {
    flex-direction: row-reverse;
}
.ng {
    font-size: 80%;
    color: #f28f1c;
}
@media print, screen and (min-width: 960px) {
    .ng {
        margin-top: -1.5rem;
    }
}
.ulHead {
    position: relative;
    padding: 0.2em 1em 0.1em 1em;
    margin-top: 30px;
    margin-bottom: 20px;
    display: inline-block;
    top: 0;
    font-size: 110%;
    font-weight: normal;
    letter-spacing: 0.05em;
}
.ulHead:before,
.ulHead:after { 
    position: absolute;
    top: 0;
    content: '';
    width: 8px;
    height: 100%;
    display: inline-block;
}
.ulHead:before {
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    left: 0;
}
.ulHead:after {
    content: '';
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    right: 0;
}
@media print, screen and (min-width: 960px) {
    #notice {
        position: relative;
    }
    #notice {
        width: 920px;
    }
}
.shopBox {
    position: relative;
    margin-bottom: 2rem;
}
@media print, screen and (min-width: 960px) {
    .shopBox {
        width: 657px;
    }
    .shopBox img {
        width: auto;
        height: 450px;
    }
}
@media screen and (max-width: 959px) {
    #notice,
    .shopBox {
        width: 100%;
    }
}
@media print, screen and (min-width: 960px) {
    .qrcode {
        position: absolute;
        content: '';
        bottom: 0;
        right: 10px;
        width: 100px;
    }
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    .qrcode {
        width: 100px;
    }
}
@media screen and (max-width: 519px) {
    .qrcode {
        display: none !important;
    }
    .lineIcon {
        width: 80px;
    }
}
@media print, screen and (min-width: 520px) {
    .lineIcon {
            display: none !important;
    }
}
.shopBox p,
#topImg p {
    position: absolute;
    content: '';
    width: fit-content;
    bottom: 10px;
    right: 10px;
    color: #fff;
    font-size: 110%;
    padding: 0 1rem;
    background-color: rgba(255,255,255,.5);
    border-radius: 6px;
}
.shopBox p {
    background-color: rgba(0,0,0,.7);
}
#topImg p {
    color: #333;
    right: 11%;
}
#map {
    position: relative;
    margin: 1.5rem 0 4rem;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}
@media screen and (max-width: 519px) {
    #map {
        margin: 1rem 0 1.5rem;
    }
}
#map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.imgTxt {
    display: flex;
    align-items: center;
    margin: 0 .5rem 1rem;
}
@media screen and (max-width: 959px) {
    .imgTxt {
        display: block;
    }
    #shoplist .imgTxt {
        display: flex;
    }
}
@media screen and (max-width: 519px) {
    #shoplist .imgTxt {
        flex-wrap: wrap;
    }
}
.imgTxt img {
    width: 99%;
}
.imgTxt .txtL {
    margin: 0 2rem 0 0;
}
@media screen and (max-width: 959px) {
    .imgTxt .txtL {
        margin: 1rem 0 0;
    }
}
.listTxt {
    display: inline-block;
    text-align: left;
    padding-left: 1.5rem;
}
#shoplist .listTxt li::marker {
    color: #f28f1c;
    font-size: 140%;
    line-height: 0;
}
#shoplist .listTxt li {
    line-height: 2;
    list-style-type: disc;
}
#shoplist .listTxt {
    margin-right: 1rem;
}
@media print, screen and (min-width: 960px) {
    #shoplist .imgTxt {
        margin: 0 auto;
    }
    #shoplist .listTxt li {
        line-height: 3;
    }
}
#shoplist .imgTxt img {
    max-width: 150px;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    #shoplist .imgTxt {
        align-items: flex-start;
    }
    #shoplist .imgTxt img {
        margin-top: 1rem;
    }
    #shoplist .imgTxt p {
        margin: 0 1rem;
    }
    #shoplist .listTxt li {
        line-height: 3;
    }
}
@media screen and (max-width: 519px) {
    #shoplist .imgTxt img {
        max-width: 120px;
    }
}
.pay {
    background-color: #fff;
    padding: 1rem;
    margin: 2rem auto;
    width: 85%;
    max-width: 960px;
}
.pay p {
    font-size: 130%;
    line-height: 3;
    color: #f28f1c;
    border-radius: 6px;
}
@media screen and (max-width: 519px) {
    .pay p {
        font-size: 100%;
    }
}
.qaBox {
    width: 80%;
    margin: 0 auto;
}
@media print, screen and (min-width: 960px) {
    .qaTxt {
        position: relative;
        width: 98%;
        max-width: 960px;
    }
    #parkingImg,
    #privateroomImg {
        position: absolute;
        width: 360px;
        height: auto;
        bottom: 0;
        right: 0;
    }
    #privateroomImg {
        width: 220px;
        bottom: 318px;
        right: 50px;
    }
    #parkingImg img {
        border-radius: 5rem 0;
    }
    #privateroomImg img {
        border-radius: 5rem 0;
        width: 220px;
        height: 200px;
        object-fit: cover;
        object-position: 50% 90%;
    }
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    #privateroomImg img,
    #parkingImg img {
        height: 233px;
    }
}
@media screen and (max-width: 519px) {
    #privateroomImg {
        width: 65%;
    }
    #parkingImg {
        width: 90%;
    }
}
.qaBox .qa {
    padding: 20px 0;
    border-bottom: 1px solid #c8c8c8;
}
.qaBox .qa .qTxt,
.qaBox .qa .aTxt {
    display: flex;
    align-items: baseline;
    margin: 15px 0;
}
.qaBox .qa .qTxt p {
    margin: 0;
    padding-left: 15px;
    font-weight: bold;
    width: 100%;
    text-align: left;
}
.qaBox .qa .aTxt p {
    margin: 0;
    padding-left: 15px;
    width: 100%;
    text-align: left;
}
.qaBox .qa:last-of-type {
    border-bottom: none;
}
.qaBox .qa .qTxt::before {
    content: "Q";
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background: #dfded9;
    width: 2em;
    height: 2em;
}
.qaBox .qa .aTxt::before {
    content: "A";
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background: #f28f1c;
    width: 2em;
    height: 2em;
}
@media screen and (max-width: 960px) {
    .qaBox {
        width: 95%;
    }
}
.comBox {
    background: #efefef;
    border-radius: 6px;
    box-sizing: border-box;
}
@media print, screen and (min-width: 960px) {
    .companies,
    .comBox {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .comBox {
        flex-direction: row-reverse;
        justify-content: space-around;
    }
    .companies > a {
        margin: 0 20px;
    }
}
@media print, screen and (min-width: 520px) {
    .comBox {
        width: 450px;
        padding: .5rem 0 .2rem;
    }
    .comBox .txt {
        margin: 0;
    }
}
@media screen and (max-width: 959px) {
    .comBox {
        margin: 0 auto 2rem;
    }
}
@media screen and (max-width: 519px) {
    .comBox {
        padding: 1rem 0;
    }
}
.groupLogo {
    height: 80px;
}
.hpLink,
.hpLink2 {
    background: #f28f1c;
    color: #fff;
    border-radius: 6px;
    font-size: 80%;
    padding: 0 4px;
}
.hpLink2 {
    font-size: 100%;
    padding: 1px 6px;
    letter-spacing: 2px;
}
.size {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    margin: 2rem auto 0;
}
@media print, screen and (min-width: 960px) {
    .size {
        width: 50%;
        max-width: 500px;
    }
}
.size > div {
    background: #efefef;
    color: #7b5544;
    border-radius: 6px;
    width: 130px;
    height: 130px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border: 6px solid #e3c098;
    margin: 1rem;
}
@media screen and (max-width: 519px) {
    .size > div {
        width: 100px;
        height: 100px;
    }
}
.size > div p {
    letter-spacing: 3px;
}
.size > div p span {
    font-size: 140%;
}
.drinkMenu,
.foodMenu {
    margin: 2rem auto;
    width: fit-content;
}
.drinkMenu li,
.foodMenu li {
    padding: 5px;
    box-sizing: border-box;
}
.drinkMenu li span {
    font-size: 80%;
}
@media print, screen and (min-width: 960px) {
    .drinkMenu,
    .foodMenu {
        width: 500px;
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        justify-content: flex-start;
    }
    .drinkMenu {
        width: 950px;
    }
    .drinkMenu li,
    .foodMenu li {
        width: calc(100% / 2);
        background: #efefef;
        border: 1px solid #fff;
        font-size: 90%;
    }
    .drinkMenu li:nth-child(1),
    .drinkMenu li:nth-child(4),
    .drinkMenu li:nth-child(5),
    .drinkMenu li:nth-child(8),
    .drinkMenu li:nth-child(9) {
        background: #e3c098;
    }
}
@media screen and (max-width: 959px) {
    .drinkMenu li,
    .foodMenu li {
        text-align: left;
        background-image: url(../images/icon_cafe.png);
        background-repeat: no-repeat;
        background-size: 24px;
        padding: 0 0 0 1.8rem;
        background-position: left;
        line-height: 2.4;
    }
}

@media print, screen and (min-width: 520px) {
    .parImg div {
        width: 33.33%;
        margin: 0;
    }
    .parImg2 {
        flex-wrap: nowrap;
        margin: 0;
    }
}
@media screen and (max-width: 519px) {
    .parImg div,
    .parImg2 div {
        width: 90%;
    }
    .parImg2 div:nth-child(3) {
        width: 70%;
    }
}
.parImg div img,
.parImg2 div img {
    margin: 3rem 0;
    border: 2px solid #fff;
    box-sizing: border-box;
}
.foodContents .parImg img {
    margin: 3rem auto 0;
}
@media screen and (max-width: 519px) {
    .parImg div img,
    .parImg2 div img {
        margin: 1rem 0;
    }
}
.vendingmachine {
    margin-top: 2rem;
}
@media print, screen and (min-width: 960px) {
    .vendingmachine {
        width: 80%;
        max-width: 960px;
    }
}
.vendingmachine img {
    height: 320px;
}
.foodContents {
    margin: 4rem auto 0;
}
.foodContentsTitle {
    margin: 0 auto 3rem;
    width: fit-content;
    position: relative;
    padding: 0 2rem;
    border-top: 2px solid #f28f1c;
    border-bottom: 2px solid #f28f1c;
}
.foodContentsTitle:before,
.foodContentsTitle:after {
    content: "";
    position: absolute;
    top: -10px;
    width: 2px;
    height: calc(100% + 20px);
    background-color: #f28f1c;
}
.foodContentsTitle:before {
    left: 10px;
}
.foodContentsTitle:after {
    right: 10px;
}
.foodContentsTitle p {
    margin: 0;
    padding: 0;
}

.payComment {
    font-size: 140%;
    display: inline;
    background: linear-gradient(transparent 50%, rgba(255, 255, 26, 0.31) 65%);
}
@media screen and (max-width: 519px) {
    .payComment {
        font-size: 120%;
    }
}

.privateroomBox > img {
    height: 250px;
    border-radius: 1em;
}
.privateroomBox p {
    font-size: 120%;
}
.privateroomBox {
    margin: 2rem auto;
}
.comment {
    display: block;
    text-align: justify;
    text-indent: -1rem;
    padding: .5rem 1rem .5rem 1.6rem;
    line-height: 2;
    font-size: 70%;
    background-color: #ffe;
    box-sizing: border-box;
    border-radius: 6px;
    margin: 10px;
}
.comment.Bottom {
    font-size: 80%;
    margin: 10px 0;
}
@media print, screen and (min-width: 960px) {
    .privateroomBox {
        max-width: 1024px;
        width: 100%;
    }
    .imgBox,
    .txtBox {
        margin: 0;
        width: 50%;
    }
    .comment.Bottom {
        width: 500px;
    }
}
@media print, screen and (min-width: 520px) {
    .privateroomBox {
        margin-top: 2rem;
    }
    .privateroomBox p {
        line-height: 3;
    }
}

.report {
    max-width: 1000px;
    padding-top: 0.5rem;
}
.report p {
    width: 49%;
    max-width: 450px;
    margin: 1rem auto;
}
.report p:last-child {
    margin: 1rem 0 2.5rem;
}
@media screen and (max-width: 959px) {
    .report p {
        width: 45%;
    }
    .report p:last-child {
        margin: 0 auto 1.5rem;
    }
}


/* privacy */
.BodyMainP {
    margin: 0 auto;
    line-height: 2;
}
.privacy h1 {
    margin: 0 auto;
    padding: 15px 0 30px;
    font-size: 125%;
    font-weight: normal;
}
.privacy h2 {
    margin: 2rem auto 0;
    text-align: left;
    font-weight: normal;
    font-size: 120%;
}
.privacy ol.top,
.privacy ol {
    text-align: left;
    margin: 1rem auto 0 1.5rem;
}
@media print, screen and (min-width: 960px) {
    .privacy ol {
        margin: 0 auto 1rem 2.8rem;
    }
}
.privacy p {
    text-align: left;
}
#bottom {
    border-top: 1px dotted #ccc;
    margin-top: 2rem;
    padding: 10px 0;
    font-size: 80%;
}
a.linkTxt:hover {
    border-bottom: 2px dotted #f28f1c;
}

#attentionBox {
    margin: 2rem auto;
    padding: 1rem;
    box-sizing: border-box;
    max-width: 935px;
    width: 100%;
    border: 3px double #f28f1c;
    background-color: #fffff9;
}
#attentionBox h2 {
    text-align: center;
    color: #f28f1c;
}
#attentionBox h2:before {
    content: url("../images/icon_cafe.png");
    display: block;
    margin-bottom: -10px;
}
#attentionBox h3 {
    color: #00a651;
    text-align: center;
    margin: 1.4rem auto .8rem;
    padding: .5rem 0;
    background-color: #edf9d5;
    border-radius: 1rem;
}
#attentionBox ol {
    margin: 0 2rem 1rem;
    line-height: 2.4;
}
#attentionBox ul {
    padding: 0 .65rem;
    font-size: 90%;
}
#attentionBox ul li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 10px;
}
#attentionBox ul li:before {
    content: '';
    display: block;
    position: absolute;
    top: .5em;
    left: 0;
    width: 10px; 
    height: 10px; 
    background-color: #f28f1c; 
    transform: rotate(-45deg); 
}
@media screen and (max-width: 959px) {
    #attentionBox .txtCL,
    #attentionBox ol {
        line-height: 2;
    }
    #attentionBox ol {
        margin: 1rem 0 1rem 1rem;
    }
    #attentionBox h3 {
        text-align: left;
        padding: 1rem;
    }
}
