@charset "utf-8"; body {
    font-size: 87.5%;
}

/*追加*/
.bold {
    font-size: 1.2em;
    font-weight: bold;
}

.pr {
    display: flex;
	justify-content: center;
	align-items: baseline;
}

.box {
	margin-right: 3em;
}

.box:last-child {
    margin-right: 0;
}

.box p {
	margin-bottom: 0;
	text-align: center;
	line-height: 2;
}

m0 {
	margin-right:0!important;
}

.s_img {
	width:auto!important;
} 

.m_img {
	 width: 20%;
	padding-top: 3em;
	margin: 0 auto!important;
}

.qr img{
	padding-bottom: 2em;
	width: 80%;
	
}


.event h4 {
	font-size: 1.2em;
    font-weight: bold;
    margin-bottom: 20px;
    padding: 15px 8px 8px;
    background-color: #ebebeb;
}

/*
.tac {
    text-align: center;
}

.tar {
    text-align: right;
}

.hr {
    border-bottom: 2px dashed #e3e3e3;
    padding-bottom: 3em;
}
.ff {
    font-size: 1.2em;
    font-weight: bold;
    color: #dc0000;
}


.sns_link {
	color: #3E78CF;
}
 */

.sp_only {
	display:none;
}

.m0a {
	margin: 0 auto;
	display: block;
}

/* ■wrap
--------------------------------------------------- */
#wrapper {
}

/* ■header
--------------------------------------------------- */
header {
    display: block;
    border-top: 10px solid #313131;
    background: #ffe100;
}

header:before {
    content: "";
    display: block;
    width: 100%;
    height: 10px;
    background: #d60021;
    position: absolute;
}

.header_logo {
    width: 950px;
    margin: 0 auto;
    position: relative;
    top: -5px;
    text-align: center;
}

.header_logo img {
    width: 372px;
    height: 23px;
    text-align: center;
}

/* ■content
--------------------------------------------------- */
#content {
    width: 100%;
    min-width:1000px;
}

#content_wrap:after {
    content: "";
    display: block;
    clear: both;
}

#content_wrap {
    display: inline-block;
}

#content_wrap {
    display: block;
}

#content_wrap {
    width: 100%;
    margin: 0 auto;
}

/* wide */
#content_wrap.widearea {
    width: 100%;
    max-width: 90%;
    margin: 0 auto;
}

.widearea #main-content {
    width: 100%;
    float: none;
}

.widearea #sub-content {
    display: none;
}


/* ■footer
--------------------------------------------------- */
footer{
    position:relative;
    display: flex;
    flex-direction:column;
    justify-content:center;
    width:100%;
    padding:24px 0 28px 0;
    border-top:4px solid #313131;
    background:#ffe100;
    font-size: 13px;
  }
  footer:before{
    content:"";
    display:block;
    width:100%;
    height:4px;
    margin:0 0 24px 0;
    padding:0;
    background:#d60021
  }
  
  .footer_note1{
    display: inline-block;
    margin:0 auto;
  }
  .footer_note1 > li{
    padding: 0 0 0 3em;
    text-indent: -3em;
  }
  .footer_sponsor{
    display: inline-flex;
    
    align-items:center;
    margin:18px auto 0;
    padding: 0 0 0 0;
    text-indent:0;
  }
  
  .footer_sponsor ul{
    display: inline-flex;
  }
  .footer_sponsor ul li{
    margin:0 16px 0 0;
  }
  .sponsor_icon{
    display: inline-block;
    width:121px;
    margin:0;
    padding: 0;
  }
  .alcohol_caution{
    display: inline-flex;
    font-size:13px;
  }
  .alcohol_caution .icon{
    margin:0 8px 0 0;
  }

/* ■icon
--------------------------------------------------- */
.icon {
    display: inline-block;
}

.arrow--down, .arrow--next, .arrow--up, .icon--a, .icon--caution, .icon--q {
    width: 28px;
    height: 41px;
    background-image: url(../common/img/sprite-img_2023_03.png);
    background-position: 0 -333px;
}

.arrow--down, .arrow--next, .arrow--up, .icon--a, .icon--q {
    width: 38px;
    height: 38px;
    background-position: 0 -290px;
}

.arrow--down, .arrow--next, .arrow--up, .icon--a {
    background-position: -43px -290px;
}

.arrow--down, .arrow--next, .arrow--up {
    width: 17px;
    height: 17px;
    background-position: -132px -290px;
}

.arrow--down, .arrow--next {
    width: 19px;
    height: 19px;
    background-position: -86px -290px;
}

.arrow--next {
    width: 17px;
    height: 17px;
    background-position: -110px -290px;
}

/* ■h2
--------------------------------------------------- */
h2 {
    position: relative;
    min-width: 950px;
    margin: 0 0 25px;
    padding: 25px 0 18px;
    text-align: center;
    border-top: 4px solid #313131;
    background: #ffe100;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.2;
}

h2:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    content: '';
    background: #d60021;
}

.sub_title {
    display: block;
    margin: 0;
    font-family: 'Century Gothic', sans-serif;
    font-size: 18px;
    color: #dc0000;
    font-weight: 300;
    line-height: 1.6;
}

/* ■main_v
--------------------------------------------------- */
section.main_v {
    min-width: 1000px;
    /*background: url(../common/img/top/bg_main_v_2023ff.jpg) center bottom no-repeat;*/
    background: url(../common/img/top/bg_main_v_2019.png) center bottom no-repeat;
    background-size: cover;
}

h1 {
    position: relative;
    width: 950px;
    margin: 0 auto
}

h1 img {
    display: block;
    margin: 0 auto;
    width: 520px;
}

/* ■navarea
--------------------------------------------------- */
section.navarea {
    width: 100%;
    margin: 0 auto;
    padding: 0px;
    position: relative;
}

@media screen and (max-width: 1000px) {
    section.navarea {
        margin: 0 25px;
        margin: 0;
    }
.g-nav{
  margin:0 25px!important;

}
}

.g-nav_link:after, footer:before, header:before {
    position: absolute;
    top: 0;
    left: 0;
    content: ''
}

.nav {
    background: #000
}

.g-nav {
    display: table;
    width: 950px;
    margin: 0 auto;
    padding: 8px 0
}

.g-nav_item {
    display: table-cell;
    width: 238px;
    padding-right: 7px
}

.g-nav_item+.g-nav_item {
    padding-left: 7px;
    border-left: 1px solid #444
}

.g-nav_link {
    position: relative;
    display: block;
    width: 225px;
    height: 53px;
    text-indent: -9999px;
    border-radius: 4px
}

.g-nav_link:after {
    display: block
}

.g-nav_link:not(.is-off):hover {
    text-decoration: none;
    background: #ffe700;
    background: linear-gradient(to bottom, #ffe700 0%, #f18e00 100%)
}

.g-nav_beer:after, .g-nav_top:after {
    width: 225px;
    height: 53px;
    background-image: url(../common/img/sprite-img_2023_03.png);
    background-position: 0 -58px;
}

.g-nav_beer:after {
    background-position: -230px -174px
}

.g-nav_access:after, .g-nav_beer.is-off:after, .g-nav_enjoy.is-off:after, .g-nav_enjoy:after {
    width: 225px;
    height: 53px;
    background-image: url(../common/img/sprite-img_2023_03.png);
    background-position: -230px -58px;
}

.g-nav_access:after, .g-nav_beer.is-off:after, .g-nav_enjoy.is-off:after {
    background-position: 0 -116px
}

.g-nav_beer.is-off:after, .g-nav_enjoy.is-off:after {
    background-position: 0 -232px
}

.g-nav_enjoy.is-off:after {
    background-position: -230px -116px
}

.g-nav .is-on, .g-nav .is-on:hover {
    text-decoration: none;
    background: #fbcb00
}

.g-nav_beer.is-on:after, .g-nav_beer:hover:after, .g-nav_top.is-on:after, .g-nav_top:hover:after {
    width: 225px;
    height: 53px;
    background-image: url(../common/img/sprite-img_2023_03.png);
    background-position: 0 -174px;
}

.g-nav_beer.is-on:after, .g-nav_beer:hover:after {
    background-position: -230px -232px
}

.g-nav_access.is-on:after, .g-nav_access:hover:after, .g-nav_enjoy.is-on:after, .g-nav_enjoy:hover:after {
    width: 225px;
    height: 53px;
    background-image: url(../common/img/sprite-img_2023_03.png);
    background-position: 0 0;
}

.g-nav_access.is-on:after, .g-nav_access:hover:after {
    background-position: -230px 0
}

.l-nav {
    min-width: 950px;
    background: #ddd
}

.l-nav_wrapper {
    width: 950px;
    margin: 0 auto
}

.l-nav_list {
    display: table;
    margin: 0 auto;
    border-spacing: 10px;
    border-collapse: separate
}

.l-nav_list+.l-nav_list {
    margin-top: -6px
}

.l-nav_item {
    display: table-cell;
    width: 152px;
    height: 40px;
    padding: 6px 8px;
    vertical-align: middle;
    border-radius: 4px;
    background: #fff;
}

.l-nav_item--top {
    width: 258px
}

.l-nav_item--enjoy {
    width: 109px
}

.l-nav_link {
    line-height: 1.4;
    position: relative;
    display: block
}

.brand_nav-item>a:hover .brand_nav-txt, .l-nav_link:hover .l-nav_text {
    text-decoration: underline
}

.l-nav a.l-nav_link, .l-nav a.l-nav_link:link {
    color: #313131
}

.l-nav_text {
    display: inline-block;
    margin-left: 24px;
    font-size: 15px;
}

.l-nav .icon {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto 0
}

/* ■system
--------------------------------------------------- */
section.system {
    width: 950px;
    margin: 0 auto 40px;
    padding: 50px 25px;
    border-radius: 8px;
    background-color: #fff;
}

section.system .box img {
    min-width: 308px;
}

.deposit_note{
margin:2em 0 0 1em;
text-indent: -1em;
font-size:0.9em;

}

@media screen and (max-width: 1000px) {
    section.system {
        margin: 0 25px;
    }
}

.what_deposit{
width:100%;
margin:0px auto 40px;
border: 1px solid #008cd6;
border-radius:4px;
}
.what_deposit .inner_title{
padding:10px 20px;
background: #008cd6;
color:#fff;
font-size: 20px;
letter-spacing: 0.05em;
}
.what_deposit p{
padding:0 20px;
}
/* ■menu_note
--------------------------------------------------- */
.menu_note{
margin:0 0 0 1em;
text-indent: -1em;
color:red;
}
.menu_note li{

}


/* ■brand_nav
--------------------------------------------------- */

.nav_newmark{
position: absolute;
top:0.75em;
left:0;
display: inline-block;
margin-right:5px;
padding:4px .5em 2px;
background-color: #f54444;
border-radius:10px;
font-size:11px;
line-height: 14px;
color:#fff;
letter-spacing: .15em;
}
.nav_limmark{
position: absolute;
top:0.75em;
left:0;
display: inline-block;
margin-right:5px;
padding:4px .5em 2px;
background-color: #f54444;
border-radius:10px;
font-size:11px;
line-height: 14px;
color:#fff;
letter-spacing: .15em;
}
/* brandnav 2025-08 */
.brand_nav{
  display: flex;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items:flex-end;
  margin:15px 15px 0 0;
}
.brand_nav-item{
  width:168px;
}
.brand_nav-item a{
color:rgb(7, 81, 154);
}
.brand_nav-item a img{
  display: block;
  margin:0 0 0.3em 0;
}

/* ■beerfood
--------------------------------------------------- */
section.beerfood {
    width: 950px;
    margin: 0 auto 40px;
    padding: 30px 0px 0px 25px;
    border-radius: 8px;
    background-color: #fff;
}
.mwid {
	max-width: 140px;	
}

@media screen and (max-width: 1000px) {
section.beerfood {margin: 0 25px;}
}

/* wrapper */
.menu{
padding:25px 0;
}

/* small_title */
.small_title{
display:table;
width:900px;
border-top: 6px solid #ffe100;
border-bottom: 2px solid #ebebeb;
}
.small_title span{
display:table-cell;
padding:20px 0 15px 10px;
width:166px;
vertical-align:middle;
}
.small_title h3{
display:table-cell;
padding:25px 0 0px 30px;
font-size: 33px;
vertical-align:middle;
color: #313131;
font-weight:700;
}
.small_title h3 span{
display:block;
padding:.25em 0 0 0;
width:5em;
text-align: center;
background-color: #f54444;
border-radius:20px;
font-size: 24px;
color:#fff;
letter-spacing: .15em;
line-height: 1.4;
}
/*
.brand {padding: 25px 0;}
.section_img-title {
    font-size: 18px;
    font-weight: 700;
    margin: 10px 0 5px;
    color: #313131
}

.section_img-title .icon {
    margin-right: 5px;
    vertical-align: middle
}

.section_img-txt {
    margin: 0 0 0 0;
    font-size: 14px;
    color: #313131;
}
.brand_title {
    font-size: 33px;
    line-height: 1;
    position: relative;
    height: 114px;
    margin-bottom: 40px;
    padding-left: 197px;
    border-top: 6px solid #ffe100;
    border-bottom: 2px solid #ebebeb;
	margin-right:25px;
}


.brand_title-logo {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10px;
    margin: auto 0;
}
img.brand_title-logo{
max-width:156px!important;
}
.brand_title-txt {
    line-height:126px;
	font-weight: bold;
}
*/
/* ss-title */
.brand_section-title {
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    margin-top: 30px;
	margin-right:25px;
    padding: 10px 20px;
    background: #ebebeb
}
/*
.brand_title-logo {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10px;
    margin: auto 0;
}

.brand_title-txt {
    line-height: 106px;
	font-weight: bold;
}
*/

/* drink-wrapper */
.drink {
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.drink_list {
    box-sizing: border-box;
    width: 448px;
    margin-bottom: -2px;
    border-bottom: 2px dashed #e3e3e3
}

.drink_list:nth-child(even) {
    padding: 3px 10px 25px 10px
}

.drink_list:nth-child(odd) {
    padding: 3px 18px 25px 0;
    border-right: 2px dashed #e3e3e3
}

/* drink inner-item */
.drink_inner {
display: table;
width:100%;
}

.drink_img {
width: 190px;
padding-right: 15px;
}

.drink_img,.drink_info {
display: table-cell;
vertical-align: top
}
.drink_caption {
font-weight: 700
}

.drink_txt+.drink_price {
margin-top: 2em
}

/* food-title */
.brand_section-title {
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    margin-top: 30px;
    padding: 10px 20px;
    background: #ebebeb
}
/* food wrapper */
.food_list {
width:900px;
    position: relative;
    padding:0px 0 20px;
    border-bottom: 2px dashed #e3e3e3
}

/* food item */
.food_inner {
    display: table;
	width:100%;
	margin:5px 0 0 0;
}
.food_img {
display:table-cell;
    width: 190px;
    padding-right: 20px
}
.food_info{
display:table-cell;
vertical-align:top;
	}

/* inner-title 2025-08 */
h4.item_name{
    display: flex;
    flex-wrap:nowrap;
}
h4.item_name span{
    display: block;
    box-sizing: content-box;
padding:15px 0 4px;
    align-content:center;
    min-height:2.4em;
font-size: 18px;
font-weight: 700;
line-height:120%;
}
h4.item_name span.item_icon{
width:1em;
margin-right:0.25em;
color: #ffe100;
}
/* inner-title
h4.item_name{
display:table;
width:100%;
}
h4.item_name span{
display:table-cell;
padding:15px 0 0 0;
font-size: 18px;
font-weight: 700;
vertical-align:middle;
line-height:120%;
}
h4.item_name span.item_icon{
display:table-cell;
width:1em;
padding:25px 0.15em 15px 0px;
color: #ffe100;
vertical-align:top;
}
 */
/* inner-title(newmark) 2025-08 */
h4.item_name_new{
    display: flex;
    flex-wrap:nowrap;
    justify-content:space-between;
    width:100%;
}
h4.item_name_new span{
    display: block;
    box-sizing: content-box;
    width:calc(100% - 56px);
padding:15px 0 4px;
    align-content:center;
    min-height:2.4em;
font-size: 18px;
font-weight: 700;
line-height:120%;

}
h4.item_name_new span.item_icon{
    width:50px;
    margin-left:0px;
}

/* inner-title(newmark)
h4.item_name_new{
display:table;
width:100%;
}
h4.item_name_new span{
display:table-cell;
padding:8px 0 0 0;
font-size: 18px;
font-weight: 700;
vertical-align:middle;
line-height:120%;
}
h4.item_name_new span.item_icon{
display:table-cell;
width:3.15em;
padding:5px 0.15em 15px 0;
color: #ffe100;
vertical-align:top;
}
 */
/* inner-title(フード価格用) */
.food_price{
width:7em;
width:auto;
text-align:right;
font-size:14px!important;
font-weight:300!important;
vertical-align:middle!important;
}

 
 /* foodタイトルと価格表記 */
 .food_title{
 display: flex;
 align-items:flex-start;
 padding:25px 0 10px 0;
  }
 .food_title .item_icon{
display:table-cell;
width:1em;
padding:0px 0.15em 0px 0px;
font-size: 18px;
line-height:120%;
color: #ffe100;
}
 .food_title h4{
 flex-grow:99;
font-size: 18px;
line-height:120%;
font-weight: 700;
 }
 .food_title .food_price{
width:auto;
margin:0;
text-align:right;
font-size:14px!important;
font-weight:300!important;
vertical-align:middle!important;
}
 
 
/* __ */
.menu .totop {
    width: 900px
}

/* eventitem

.inner_img {
    display: inline;
    width: auto;
    vertical-align: middle;
	height: 70px;
	padding: 0 0.5em;
}

 h4 .inner_img {
    display: inline;
    vertical-align: middle;
	height: 40px;
	padding: 0 0.5em;
	transform: translateY(-5px);
}

.pad30 {
	padding-right: 30px;
}
 */



/*
.brand_nav {
    overflow: hidden;
    padding: 0 13px 0 25px;
    background: #fff
}

.brand_nav-item {
    float: left;
    width: 140px;
    margin: 0 12px -2px 0
}

.brand_nav-item>a {
    display: block;
    min-height: 130px;
    padding-top: 14px;
    border-bottom: 2px solid #ebebeb
}

.brand_nav-item:nth-child(-n+6)>a {
    min-height: 120px
}
*/



/*
.drink {
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.drink_list {
    box-sizing: border-box;
    width: 448px;
    margin-bottom: -2px;
    border-bottom: 2px dashed #e3e3e3
}

.drink_list:nth-child(even) {
    padding: 25px 0 25px 20px
}

.drink_list:nth-child(odd) {
    padding: 25px 20px 25px 0;
    border-right: 2px dashed #e3e3e3
}

.drink_inner {
    display: table;
}

.drink_img {
    width: 190px;
    padding-right: 15px;
}


.drink_img,.drink__info {
    display: table-cell;
    vertical-align: top
}

.drink_caption {
    font-weight: 700
}

.drink_txt+.drink__price {
    margin-top: 2em
}
*/



/*
.food_list {
    position: relative;
    padding: 20px 0;
    border-bottom: 2px dashed #e3e3e3
}

.food_inner {
    display: table
}

.food .inner_title {
    width: 800px
}

.food_img {
    width: 190px;
    padding-right: 20px
}

.food_img,.food_info {
    display: table-cell;
    vertical-align: top
}

.enjoy_body b,.food_caption {
    font-weight: 700
}

.food_txt+.food_price {
    margin-top: 2em
}

.inner_title+.food_price {
    position: absolute;
    top: 20px;
    right: 0;
    text-align: right
}

.food_price+.food_inner {
    width: 782px;
    padding-left: 18px
}
*/
/* official
.official {
    overflow: hidden;
    padding: 25px;
}

.official_timeline {
    float: left;
    width: 438px
}

.official_timeline+.official_timeline {
    margin-left: 24px;
}
 */
/*
.inner_title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 16px;
    color: #000;
}

.inner_title:before {
    display: inline-block;
    content: '■';
    color: #ffe100;
}
*/

/* ■map
--------------------------------------------------- */
section.map {
    width: 950px;
    margin: 0 auto 40px;
    padding: 50px 25px;
    border-radius: 8px;
    background-color: #fff;
}

@media screen and (max-width: 1000px) {
    section.map {
        margin: 0 25px;
    }
}

/* ■pagetop
--------------------------------------------------- */
section.pagetop {
    width: 950px;
    margin: 0 auto;
    padding: 0px;
}

@media screen and (max-width: 1000px) {
    section.pagetop {
        margin: 0 25px;
    }
}

.totop {
    font-size: 16px;
    margin: 18px auto;
    text-align: right
}

.totop .icon {
    margin-right: 5px;
    vertical-align: middle
}

/* ■endinfo
--------------------------------------------------- */
.end-info{
  padding:30px 0;
  background:#f8efdb;
  }
.end-info__txt{
  font-size:24px;
  font-weight:700;
  width:950px;
  margin:0 auto;
  text-align:center;
  color:#f10000;
  }
  
/* ■mmenu用
--------------------------------------------------- */
/* スライドメニュー */
nav:not(.mm-menu) {
    display: none;
}

.mm-menu {
    background: #eee;
    border-color: #FFF;
    color: #888;
}

.hover-item:hover {
    opacity: 0.6;
}

.mm-menu .mm-navbar a, .mm-menu .mm-navbar>* {
    color: rgba(0, 0, 0, .3);
}

.menu-btn {
    display: none;
}

header {
    height: 34px;
    position: absolute;
    width: 100%;
    min-width:1000px;
    top: 0;
    left: 0;
}

#content {
    padding-top: 34px!important;
}
/* ■2020開催中止のお知らせ
--------------------------------------------------- */
section.whatsfest{
  width:950px;
  margin:0 auto 40px;
  padding:0 25px;
  border-radius:8px;
  background-color:#fff;
}
@media screen and (max-width:1000px){
section.whatsfest{
  margin:0 25px;
}
}

.info_discontinued{
padding:40px 9% 60px;
}
.info_discontinued_tit{
font-size:20px;
font-weight: 700;
text-align: center;
color:#d65b00;
padding:0 0 0.5em;
border-bottom: 1px dotted #888;
}

/* ■2020開催中止のお知らせ
--------------------------------------------------- */
section.whatsfest{
  width:950px;
  margin:0 auto 0px;
  padding:0 25px;
  border-radius:8px;
  background-color:#fff;
}
@media screen and (max-width:1000px){
section.whatsfest{
  margin:0 25px;
}
}

.info_discontinued{
padding:40px 9% 60px;
}
.info_discontinued_tit{
font-size:20px;
font-weight: 700;
text-align: center;
color:#d65b00;
padding:0 0 0.5em;
border-bottom: 1px dotted #888;
}
