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

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

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

.box {
	margin-right: 3em;
}

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

m0 {
	margin-right:0!important;
}

.s_img {
	width:auto;
} 

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

.m_img  img{
	padding-bottom: 2em;
}

.tac {
    text-align: center;
}

.tar {
    text-align: right;
}

.hr {
    border-bottom: 2px dashed #e3e3e3;
    padding-bottom: 1em;
}

.soft {
    font-size: 0.9em;
    /*color: #9F9F9F;*/
}

.ff {
    font-size: 1.2em;
    font-weight: bold;
    color: #dc0000;
}

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

.sns_link {
	color: #3E78CF;
}

.sp_only {
	display:none;
}

.inner_title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 10px;
    color: #000;
    /*
    height: 75px;
    line-height: 75px;
    */
}

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

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

a.textkink{
color:blue;
text-decoration: underline;
}
a.textkink:visited{
color:blue;
text-decoration: underline;
}

/* ■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%;
}

#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%;
    min-width: 1000px;
    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%;
    min-width: 1000px;
    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
}

/* TOPgnav他ページリンク消し　aをspanに変更する
0 -174px ?
-230px -232px

-230px -174px beer
0 -116px akusesu
-230px -58px enjoy


0 -232px beer hover
-230px -116px enjoy hover
*/
/* 準備中用gnav */
span.g-nav_link:not(.is-off):hover{text-decoration:none;background:#ffe700;background:#000;}
span.g-nav_beer.is-on:after,
span.g-nav_beer:hover:after{
  background-position:-230px -174px;
  }
span.g-nav_enjoy.is-on:after,
span.g-nav_enjoy:hover:after{
  width:225px;
  height:53px;
  /*background-image:url(../img/sprite-img_2023_03.png);*/
  background-position:-230px -58px;
}
span.g-nav_access.is-on:after,
span.g-nav_access:hover:after{background-position:0 -116px}

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

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

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

.accessroot{
display: flex;
justify-content:space-between;
margin-bottom:2em;
}
.accessroot dl{
width:48%;
}

.accessroot dl dt{
margin:0 0 0.3em;
border-bottom: 1px dotted #000;
line-height: 2em;
font-weight: 700;
}
.accessroot dl dd{
line-height: 1.75em;
}

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

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

.faq_list {
	line-height: 2.5;
	padding-top: 2em;
}

.faq__a,.faq__q {
    position: relative;
    padding-left: 55px;
	margin-bottom: 2em;
}

.faq__a .icon,.faq__q .icon {
    position: absolute;
    top: 0;
    left: 0;
}


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

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

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

.notes ul {
    padding-left: 25px;
	font-size: 1.1em;
	line-height: 1.8;
}

.notes li {
    list-style-type: disc;
}

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

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

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

.faq_list {
	line-height: 2.2;
	padding-top: 2em;
}

.faq__a,.faq__q {
    position: relative;
    padding-left: 55px;
	margin-bottom: 2em;
}

.faq__a .icon{
    position: absolute;
    top: -4px;
    left: 0;
}

.faq__q .icon {
    position: absolute;
    top: 0px;
    left: 0;
}

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


/* ■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;
}