html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

/* 基本スタイル */
body {
    font-family: "Shippori Mincho B1", serif; font-weight: 400; font-style: normal;
	line-height: 1.8;
    background-color: #222935;
    color: #CCCCCC;
    margin: 0;
    padding: 0;
    font-size: 17px;
}

.container {
    width: 1040px;
    margin: 0 auto;
    padding: 50px 20px;
}

.title{ margin: 0 0 40px 0; display: flex; align-items: baseline; flex-wrap: wrap; justify-content: flex-start;}

h1, h2, h3 {
    color: #C4A85A;
}
h2{ font-size: 48px; font-weight: 400; line-height: 1; margin-right: 20px; }

.underLine1{ width: 230px; border-bottom: 1px #C4A85A solid;}
.underLine2{ width: 230px; border-bottom: 1px #222935 solid;}

.grey{color: #222935;}

.ft28{ font-size: 28px; line-height: 1.2;}
.ft75{ font-size: 75%;}

.sub1{ margin-right: 10px; width: 80px; font-size: 24px;}
.sub2{ margin-right: 32px; font-size: 34px; letter-spacing: 5px;}

.w468{ width: 468px;}
.w100{ width: 100%;}

.mgb10{margin-bottom: 10px;}
.mgb40{ margin-bottom: 40px;}

/* フェードインアニメーション */
.fade-in {
    opacity: 0;
    transform: translateY(-30px);
    transition: opacity 1s ease-out, transform 1s ease-out;
}

.fade-in.visible {
    opacity: 1;
    transform: translateY(0);
}

/* セクションスタイル */
section {

}
header{ display: flex; align-items: center; justify-content: center;}
header h1{
	margin: 0 auto; width: 1080px; height: auto;
}
.menu-items {
	margin: 40px 0 20px;
    display: flex;
    justify-content: space-between;
	align-items: stretch;
}

.menu-items .item {
	position: relative;
    color: #CCCCCC;
	width: 300px;
	padding-bottom: 80px;
}
.menu-items .item p{ font-size: 15px;}
.menu-items .item p.num{ font-size: 24px; color: #C4A85A; }
.menu-items .item p.name{ font-size: 28px; }
a{ position: absolute; bottom: 0; margin: 30px 0 0; width: 300px; height: 60px; border-radius: 30px; background: #C4A85A; color: #222935; text-decoration: none; display: flex; justify-content: center; align-items: center; font-size: 22px;}

footer {
    background: #222935;
    color: #cccccc;
    width: 100%;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
}
.foot{ margin: 0 auto; width: 1080px; text-align: right; display: flex; align-items: center; justify-content: flex-end; }

.flex {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 40px;
}

.left, .right {
    /*flex: 1;*/
}

/* REIZ セクションスタイル */
.reiz,.reservation {
    background-color: #C4A85A;
    color: #222935;
	padding: 60px 0 80px;
}
.menu{ padding: 60px 0 0;}

.point{ margin: 30px 0 30px 30px; width: 100%; display: flex; align-items: center; }
.store{ width: 450px; display: flex;}
.store img{ width: 100%; height: auto; line-height: 0; }
.tel{ font-size: 24px; letter-spacing: 3px;}
.QRbox{ margin: 60px 0 0; display: flex; justify-content: space-around;}
.QR{ width: 100%; text-align: center; font-size: 22px; line-height: 1.2}
.QR img{ width: 145px; margin-bottom: 10px;}
