﻿@import url('https://fonts.googleapis.com/css2?family=DynaPuff:wght@400..700&family=Zen+Maru+Gothic&display=swap');
@font-face { font-family:'icomoon'; src:url("fonts/icomoon.eot?tdyp0g"); src:url("fonts/icomoon.eot?tdyp0g#iefix") format("embedded-opentype"),url("fonts/icomoon.ttf?tdyp0g") format("truetype"),url("fonts/icomoon.woff?tdyp0g") format("woff"),url("fonts/icomoon.svg?tdyp0g#icomoon") format("svg"); font-weight:normal; font-style:normal}
[class^="icon-"] { font-family:'icomoon' !important; font-style:normal; font-weight:normal; font-variant:normal; text-transform:none; line-height:1; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale}
.icon-uniE603:before { content:"\e603"; }
.icon-uniE604:before { content:"\e604"; }
.icon-uniE60C:before { content:"\e60c"; }
.icon-uniE611:before { content:"\e611"; }
.icon-uniE612:before { content:"\e612"; }
.container:after { content:""; clear:both; height:0; display:block; visibility:hidden}
html { scroll-behavior: smooth; }
html,body,div,span,iframe,h1,h2,h3,h4,p,blockquote,em,img,small,strong,b,dl,dt,dd,ul,li,aside,footer,header,nav,section { margin:0; padding:0; border:0; outline:0; color:#2b2b2b; vertical-align:baseline; }
header,footer,section,aside,nav { display:block; }
li { list-style:none}
img { max-width:100%; border:0; vertical-align:top; font-size:0; line-height:0; width: auto; height: auto; }
table { border-collapse:collapse; border-spacing:0; }
th { text-align:left; }
a { text-decoration:none; transition:.3s; }
.cf { *zoom:1; }
.cf:before { content:" "; display:table; }
.cf:after { content:" "; display:table; clear:both; }
.clearfix { min-height:1px; _height:1%; }
.clearfix:after { content:""; clear:both; height:0; display:block; visibility:hidden}
body { font-family:"Noto Sans Japanese",serif,YuGothic,"游ゴシック","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",verdana,Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif; font-size:14px; font-size:1rem; color:#000040; text-align:center; line-height:186%; font-feature-settings: "palt"; }
.clearfix { min-height:1px; _height:1%}
.clearfix:after { content:""; clear:both; height:0; display:block; visibility:hidden}
.container { margin:0 auto; width:100%; text-align:left; position:relative; max-width:980px; padding:70px 0; margin:0 auto}
.gnavWrap { width:100%; z-index:10000; height: 0; }
.spNav { display:none; position:fixed; z-index: 1000;}
.gnav { width:100%; height:30px; padding:15px 0; position:inherit; z-index:10000; top:0; left:0; background-color:#fff; z-index:10; height:auto; padding:0; background:#fff !important; }
.gnav ul { width:980px; margin:0 auto; overflow:hidden; padding-bottom:10px; }
.gnav ul li { float:left; height:30px; float:none; display:inline-block; }
.gnav ul li a { display:block; line-height:30px; height:30px; color:#516591; font-family:"Zen Maru Gothic",sans-serif; padding:0 17px; text-decoration:none}
.gnav ul li .snsIconsList { float:left}
.gnav ul .snsIcons .instalink,
.gnav ul .snsIcons .fblink { float:left; width:20px; height:20px; line-height:20px; padding:0; margin:5px 0 5px 12px; text-decoration:none}
.gnav ul .snsIcons .instalink span,
.gnav ul .snsIcons .fblink span { font-size:20px}
.gnav,
#globalFooter .copyright { background:#eee}
#globalFooter { width:100%; text-align:center; background:#fff; position:relative; z-index:1}
#globalFooter .container { max-width:1200px}
#globalFooter .container p { font-size:18px; margin:5px 0 0}
#globalFooter .container p.text1 { text-align:center; font-size:21px}
#globalFooter .container p.text1.ec { position:relative; top:15px; font-size:18px}
#globalFooter .container p.text1 span { display:inline-block; background-color:#fff; padding:0 10px}
#globalFooter .footerTitle { text-align:center; margin-bottom:30px}
#globalFooter .footerTitle img { max-width:450px; width:60%; display:block; margin:0 auto}
#globalFooter .copyright { background:#516591 !important; padding:20px; text-align:center; color:#fff !important; font-size:12px; font-size:.75rem; line-height:1.6em}
#globalFooter .copyright br { display:none}
#globalFooter .secTitleLine { font-size:20px; font-weight:bold; position:relative; text-align:center; margin:65px auto 50px}
#globalFooter .secTitleLine:before { border-top:1px solid #fff; content:""; position:absolute; top:50%; left:0; width:43%}
#globalFooter .secTitleLine:after { border-top:1px solid #fff; content:""; position:absolute; top:50%; right:0; width:43%}
#globalFooter .secTitleLine span { display:inline-block; background:#00a0e9; padding:0 .5em; position:relative; color:#003c73; font-weight:bold}
.red { color:#f00}
.wrap { position:relative; background:#e2e2e2; z-index:100; }
.fixed .gnav { position:fixed; margin-top:0px; z-index:9999}
.sec { background:#fff; position:relative; z-index:1}
.secTitle { text-align:center; color:#003c73; margin-bottom:70px; font-weight:400; font-size:28px}
.secTitle img { max-width:400px; width:90%; display:block; margin:0 auto}
.text1 { text-align:center}
#secAbout { padding:60px 0 0; background:#efeeec}
#secAbout .container .text1 { margin-top:20px}
#secAbout .leadTxt { width:460px; margin:0 auto}
#secAbout .leadTxt .text1 { color:inherit}
#secNews { background:#ededed; max-width: 100%; overflow: hidden; }
#secNews * { box-sizing: border-box; }
#secNews .secTitle { font-family:"DynaPuff",system-ui; font-size:240%}
#secNews .container { max-width:1100px}
#secNews .box_left { max-width:500px; width:100%; text-align:center; margin:30px auto 0}
#secNews h2 { color:#516591; }
#secNews p { color:#516591; margin: 0 auto 70px; }
#secNews .inr { display: flex; gap: 35px; max-width: 1035px; margin: 0 auto; }
#secNews .inr > div { width: 100%; }
#secNews .inr .instagramwrap { background: #fff; padding: 10px; }
#secNews .inr .instagramwrap dt { padding: 10px 10px 20px; text-align: center; }
/*
#secNews .inr .instagramwrap dt a { margin: 0 auto; width: 200px; height: 40px; border-radius: 3px; display: flex; align-items: center; justify-content: center; position: relative; transition: .5s; background: #e890b2; color: #fff; font-weight: 600; line-height: 1; }
*/
#secNews .inr .instagramwrap dt a { margin: 0 auto; width: 200px; height: 40px; border-radius: 3px; display: flex; align-items: center; justify-content: center; position: relative; transition: .5s; color: #fff; font-weight: 600; line-height: 1;background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat; background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat; overflow: hidden; box-shadow: 0 3px 0 rgba(0, 0, 0, .05); }
#secNews .inr .instagramwrap dt a:before{ content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: -webkit-linear-gradient(15deg, #ffdb2c, rgb(249, 118, 76) 25%, rgba(255, 77, 64, 0) 50%) no-repeat; background: linear-gradient(15deg, #ffdb2c, rgb(249, 118, 76) 25%, rgba(255, 77, 64, 0) 50%) no-repeat; }
#secNews .inr .instagramwrap dt a span { display: inline-block; position: relative; transition: .5s; color: #fff; font-size: 1.2rem; font-weight: bold; line-height: 1; font-family:"Zen Maru Gothic",sans-serif; position: relative; }
#secNews .inr .instagramwrap dt a:hover { opacity: .75; }
#secNews .inr .instagramwrap dt a:hover span { -webkit-transform: rotateX(360deg); -ms-transform: rotateX(360deg); transform: rotateX(360deg); }
#secNews .inr .instagramwrap dt a span::before { content: url(/images/ico_instagram.svg); display: inline-block; line-height: 1px; font-size: 1px; margin: 0 .4rem 0 0; position: relative; top:2px; }


#secDrinkMenu { background:#efeeec !important}
#secDrinkMenu .secTitle { font-family:"DynaPuff",system-ui; font-size:240%; color:#516591}
#secDrinkMenu .secSubTitle { color:#516591}
#secDrinkMenu .drinkMenuTitle { background:#516591; line-height:1.5; color:#fff; text-align:center; margin-bottom:2rem; font-weight:500; padding:1em; font-size:.9rem}
#secDrinkMenu .text2 { margin-bottom:21px; text-align:right; color:#516591}
#secDrinkMenu .drinkMenuList { overflow:hidden; margin-bottom:70px; text-align:center; display:flex; flex-wrap:wrap; gap:1rem; padding:2px}
#secDrinkMenu .drinkMenuList li { display:inline-block; vertical-align:bottom; letter-spacing:-.4em; width:calc((100% - 3rem)/4)}
#secDrinkMenu .drinkMenuList li a { display:block; position:relative; background:transparent; text-align:left}
#secDrinkMenu .drinkMenuList li a::after { content:''; display:block; position:absolute; top:0; left:0; width:calc(100% - 4px); height:calc(100% - 5px); border:3px solid transparent}
#secDrinkMenu .drinkMenuList li a::last-child { border:3px solid #006f3e}
#secDrinkMenu .drinkMenuList li a:hover { transition:background .5s; background:rgba(255,255,255,.1)}
#secDrinkMenu .drinkMenuList li a:hover::after { border:3px solid #006f3e; color:#000041; transition:border .5s,color .5s}
#secDrinkMenu .drinkMenuList li a:hover::after::last-child { border:3px solid #fff}
#secDrinkMenu .drinkMenuList li a img { width:150px; height:auto}
#secDrinkMenu .drinkMenuList li a ul { width:100%; position:absolute; left:150px; bottom:10px; display:flex; gap:5px; flex-wrap:wrap}
#secDrinkMenu .drinkMenuList li a ul li { width:auto; margin:0; text-align:center; display:inline-block; font-size:11px; line-height:1; padding:.5em 1em; color:#fff; background:#000; text-indent:-.3em; letter-spacing:-.2em; border-radius:3px}
#secDrinkMenu .drinkMenuList li a ul li.white { background-color:#82ced1}
#secDrinkMenu .drinkMenuList li a ul li.red { background-color:#ef719b}
#secDrinkMenu .drinkMenuList li a ul li.sparkling { background-color:#cbbb53}
#secDrinkMenu .drinkMenuList li a ul li.orange { background-color:#efa53d}
#secDrinkMenu .drinkMenuList li a ul li.rose { background-color:#df85d9}
#secDrinkMenu .drinkMenuList li a ul li.low { background-color:#6fc2db}
#secDrinkMenu .drinkMenuList li a p { position:absolute; left:150px; bottom:50px; font-size:1.5rem; font-weight:400; color:#516591; line-height:1; text-align:right; letter-spacing:0; padding:0 0 0 20px; min-width:20px; text-align:center}
#secDrinkMenu .drinkMenuList li a p:before { content:""; font-family:'icomoon' !important; font-style:normal; font-weight:normal; font-variant:normal; text-transform:none; line-height:1; -webkit-font-smoothing:antialiased; position:absolute; left:0; top:5px; font-size:16px}
#secDrinkMenu .dailylist { background: #fff; padding: 1.5rem; }
#secDrinkMenu .dailylist .drinkMenuTitle { background:transparent; color:#516591; padding:1rem 1rem 0; }
#secDrinkMenu .dailylist .drinkMenuList { margin-bottom: 30px; }

.comingsoon { background: #efeeec; width: 100%; height: 100%; min-height: 135px; display: flex; align-items: center; justify-content: center; line-height: 1.5; text-align: center;letter-spacing: .05em; color: #516591; font-weight: 600; font-size: .9rem; }
.comingsoon dt { color: #008f5e; font-weight: 600; text-align: center; font-size: .8em; margin: 0 auto .5em; }
.comingsoon dd { color: #516591; font-weight: 600; font-size: min(3vw,.9rem); }

.modalWrap { width:685px; margin:0 auto}
.wineModal { width:635px; padding:20px 60px; margin:0 auto; background:#fff; overflow:hidden; position:relative}
.wineModal .popup-modal-dismiss { position:absolute; right:18px; top:15px}
.wineModal .wineType,
.wineModal .wineName,
.wineModal .wineKana { text-align:center}
.wineModal .wineType { padding-bottom:10px; border-bottom:1px solid #e1e1ee; margin-bottom:10px}
.wineModal .wineName { font-size:20px}
.wineModal .wineKana { font-size:12px; padding-bottom:10px; border-bottom:1px solid #e1e1ee; margin-bottom:15px}
.wineModal .wineInfo { width:420px; float:left}
.wineModal .wineInfo .text { font-size:14px; margin-bottom:15px}
.wineModal .wineInfo aside { font-size:13px; margin-bottom:15px}
.wineModal .wineInfo aside span { display:inline-block; vertical-align:middle}
.wineModal .wineInfo aside .place { min-width:80px; margin-right:20px}
.wineModal .wineInfo aside .place img { vertical-align:-2px; margin-right:7px}
.wineModal .wineInfo aside .tickets { margin-right:20px; padding-left:20px; position:relative; line-height:1.5em}
.wineModal .wineInfo aside .tickets.wine:before { content:""; font-family:'icomoon' !important; font-style:normal; font-weight:normal; font-variant:normal; text-transform:none; line-height:1; -webkit-font-smoothing:antialiased; position:absolute; top:22%; left:-3px; font-size:20px}
.wineModal .wineInfo .wineDetail th { padding:0 25px 10px 0; vertical-align:top}
.wineModal .wineInfo .wineDetail th span { display:block; width:90px; height:25px; line-height:25px; background:#516591; color:#fff; font-size:12px; text-align:center}
.wineModal .wineInfo .wineDetail td { padding-bottom:10px; font-size:13px}
.wineModal .wineInfo .wineDetail td .winary { font-size:14px}
.wineModal .wineImage { width:210px; float:right; position:relative}
.wineModal .wineImage img { width:210px; height:295px}
#secFood { background:#e890b2}
#secFood .secTitle { font-family:"DynaPuff",system-ui; font-size:240%}
#secFood .secSubTitle { font-size:140%}
#secFood .text1 { color:#fff}

#secSweets { background:#efeeec}
#secSweets .secTitle { font-family:"DynaPuff",system-ui; font-size:240%; color: #e890b2;}
#secSweets .secSubTitle { font-size:140%; color: #516591;}
#secSweets .text1 { color: #516591; }
#secSweets aside { background: #e890b2; padding: 2rem; margin: 0 1rem 70px; display: flex; justify-content: space-between; flex-direction: row-reverse; }
#secSweets aside .img { width: 200px; text-align: center; }
#secSweets aside .img img { text-align: center; margin: 0 auto; }
#secSweets aside .txt { width: calc((100% - 2rem) - 200px); }
#secSweets aside h3 { color: #fff; margin: 0 auto 1.5rem;}
#secSweets aside h4 { color: #fff; }
#secSweets aside h4::first-letter { font-feature-settings: "palt"; font-family: sans-serif; }
#secSweets aside p { color: #fff; margin: 0 auto 1.5rem;}
#secSweets aside ul { display: flex; gap: 1rem; flex-wrap: wrap; }
#secSweets aside ul li a { display: inline-block; line-height: 1; background: #fff; border-radius: 100px; padding: .75rem 2rem; text-align: center; min-width:180px; color: #516591; }
#secSweets aside ul li a:hover { color: #e890b2; }
.sweetsKv { text-align: center; margin: 0 auto 70px; }

.foodMenu { margin:21px 0 0}
.foodMenu li { display:inline-block; vertical-align:top; letter-spacing:-.4em; margin:1em; position:relative; width:calc(25% - 2.2em); text-align:center}
.foodMenu li img { width:100%}
.foodMenu li a{letter-spacing:0;text-decoration:none;display:block;background-color:#516591;color:#fff;margin:7px 0;line-height:2em;border:1px solid #516591;border-radius:5px}
.foodMenu li a:after{font-family:"icomoon";content:'\e601';font-size:0.75em;position:relative;left:1em}
.foodMenu li a:hover{background-color:#fff;color:#516591;transition:all 0.3s}
#secTicket { background:#008f5e; padding:70px 0 63px}
#secTicket .container { border-radius:20px; background:#fff; margin:0 auto; padding:70px 40px; max-width:840px; width:90%; text-align:center}
#secTicket .container .secTitle { color:#003c73; margin-bottom:0}
#secTicket .container h3.st_ticket { margin:28px 0 0; font-size:125%}
#secTicket .container h3.st_ticket strong { font-size:150%}
#secTicket .container h3.st_ticket::before { content:'TICKET'; display:inline-block; line-height:1.5em; padding:0 10px; border:1px solid #003c73; margin-right:.5em; vertical-align:top}
#secTicket .container h3.ad_ticket { color:#003c73; border-top:3px solid #003c73; font-size:150%; margin-bottom:0; padding:14px 0; margin:21px 0 0}
#secTicket .container ul.nm_ticket { margin:10px auto 0; font-size:125%}
#secTicket .container ul.nm_ticket li { display:inline-block; margin:0 1em .5em}
#secTicket .container ul.nm_ticket li .ticket-type { display:inline-block; background:#003c73; color:#fff; border-radius:20px; padding:0 10px; margin-right:.5em; line-height:1.5em; vertical-align:top}
#secTicket .container ul.nm_ticket li .ticket-type+span { position:relative; top:-4px; font-size:14px; margin:0 7px 0 0; font-weight:bold; background:linear-gradient(transparent 60%,#eba6bc 60%)}
#secTicket .container ul.nm_ticket li strong { font-size:150%; font-weight:bold}
#secTicket .container ul.ad_ticket-ex { text-align:left}
#secTicket .container ul.ad_ticket-ex li { display:inline-block; background:#f1f3f7; width:calc(100%/2 - 52px); margin-top:1em; padding:20px 20px 10px; position:relative; overflow:hidden}
#secTicket .container ul.ad_ticket-ex li:first-child { margin-right:15px}
#secTicket .container ul.ad_ticket-ex li span { background:#003c73; color:#fff; position:relative; padding:5px 10px; line-height:1.5em; vertical-align:top}
#secTicket .container ul.ad_ticket-ex li span::before { content:''; display:inline-block; position:absolute; top:28px; left:20px; border:7px solid transparent; border-top:10px solid #003c73}
#secTicket .container ul.ad_ticket-ex li p { margin:10px 0; font-size:125%}
#secTicket .container ul.ad_ticket-ex li p strong { background:linear-gradient(transparent 40%,#f2d32b 30%); font-size:125%}
#secTicket .container ul.ad_ticket-ex li p span.radius { background:#fff; color:#003c73; font-size:75%; border:1px solid #003c73; border-radius:20px; padding:0 10px; margin-right:.5em; top:6px}
#secTicket .container ul.ad_ticket-ex li p span.radius::before { display:none}
#secTicket .container ul.ad_ticket-ex li p span.radius+strong { background:none}
#secTicket .container ul.ad_ticket-ex li p.txt_m { font-size:110%}
#secTicket .container ul.ad_ticket-ex li.wide { width:calc(100% - 44px); background:url(/images/ticket_bg.png) #f1f3f7 97% 15%/150px no-repeat}
#secTicket .container ul.cautionul { text-align:left; margin:1em 1em 1em 0}
#secTicket .container ul.cautionul li { margin-right:1em}
#secTicket .container ul.cautionul li::before { content:'●'; display:inline}
#secTicket .container h3.buy_ticket { text-align:left}
#secTicket .container h3.buy_ticket+p.secText1 { margin:7px auto; font-weight:bold; width:90%}
#secTicket .container .inner .attention .myol_spButton { display:block; width:100%; border:1px solid #003c73; text-align:center; line-height:3em; cursor:pointer}
#secTicket .container .inner .attention ul { display:none; text-align:left; font-size:12px; line-height:1.5; margin: 1rem 0 0; }
#secTicket .container .inner .attention ul li { padding:0 0 0 1em; text-indent:-1em}
#secTicket .container .inner.buy_ticket_box h3.buy_ticket { text-align:center; margin:2em 0 0}
#secTicket .container .inner.buy_ticket_box p.secText1 { margin-bottom:1em}
#secTicket .container .inner.buy_ticket_box p.secText1 a { text-decoration:underline; opacity:1}
#secTicket .container .inner.buy_ticket_box p.secText1 a:hover { transition:opacity .5s; opacity:.5}
#secTicket .container .inner.buy_ticket_box ul li { display:inline-block; text-align:center; vertical-align:top; width:calc(100%/2 - 10px)}
#secTicket .container .inner.buy_ticket_box ul li a { display:block; background:#e890b2; border:1px solid #e890b2; color:#fff; line-height:3em; margin-bottom:5px; border-radius:10px}
#secTicket .container .inner.buy_ticket_box ul li a:hover { color:#e890b2; background:#fff}
#secAccess { background:#516591 !important; color:#fff !important}
#secAccess .secTitle { font-family:"DynaPuff",system-ui; font-size:240%}
#secAccess .container { padding:70px 0 63px}
#secAccess .secTitle,
#secAccess .secSubTitle { color:#fff !important}
#secAccess .secSubTitle { margin-bottom:21px}
#secAccess .txtWrap { width:480px; float:left}
#secAccess .txtWrap dl dt { background:#e890b2; color:#fff; display:inline-block; width:calc(20% - 12px); vertical-align:top; margin:10px 12px 0 0; text-align:center}
#secAccess .txtWrap dl dd { display:inline-block; width:78%; margin:10px 0 0 1%; color:#fff !important}
#secAccess .txtWrap dl dd span { font-size:.9em; color:#fff !important}
#secAccess .txtWrap dl dd a { color:#fff !important; text-decoration:underline}
#secAccess .txtWrap .link { text-decoration:none; border-bottom:1px solid #fff; color:#fff; opacity:1}
#secAccess .txtWrap .link:hover { transition:opacity .5s; opacity:.5}
#secAccess .map { width:490px; float:right}
.spBr { display:none}
.remarks { position:relative}
#secLetsDrink { background-color:#008f5e; padding:0 0 63px; margin-top:-1px}
#secLetsDrink .container { width:100%; max-width:100%; padding:0}
.secTitle,
.secSubTitle { color:#fff; text-align:center}
.secSubTitle { font-weight:bold}
.snsIcons { position:relative; top:10px}
#secLetsDrink .container p.text1 { color:#ffdb30; border:1px solid #ffdb30; line-height:3em; padding:0 1em; margin:2em auto 0; width:90%; max-width:400px}
#secLetsDrink .drinkAbout { margin:0 auto 2em; max-width:90%}
#secLetsDrink .drinkAbout h2 { text-align:center; color:#fff; line-height:1.1; margin:0 auto 1em}
#secLetsDrink .drinkAbout p { text-align:center; color:#fff; margin:0 auto 1em}
#secLetsDrink .drinkStepsTitle { text-align:center; margin:0 auto 2em}
#globalFooter .secTitleLine:before { border-top:1px solid #003c73; content:""; position:absolute; top:50%; left:0; width:43%}
#globalFooter .secTitleLine:after { border-top:1px solid #003c73; content:""; position:absolute; top:50%; right:0; width:43%}
#globalFooter .secTitleLine span { background:transparent}
#secTicket .secTitle { color:#fff}
.sec,
#globalFooter { z-index:1}
#secAbout .leadTxt { width:100%; margin:0 auto; text-align:center}
#secAbout .leadTxt em { font-weight:600; font-style:normal; font-size:120%}
#secMenupdf.sec { background-color:#e890b2}
#secMenupdf.sec .container { text-align:center; padding:0 0 70px}
#secMenupdf .secTitle { font-family:"DynaPuff",system-ui; font-size:240%; color:#fff}
#secMenupdf.sec .container .menuLink a { display:inline-block; max-width:400px; width:90%; background:#fff; border:1px solid #003c73; text-align:center; padding:1em 0; margin:0 0 0 1em; color:#516591; text-decoration:none; vertical-align:middle}
#secMenupdf.sec .container .menuLink a:hover { background:#003c73; color:#fff}
#secStage { background:#008f5e !important; color:#fff !important}
#secStage .secTitle { font-family:"DynaPuff",system-ui; font-size:240%; }
#secStage .secSubTitle { font-size:120%; }
#secStage .container { padding:70px 0 63px}
#secStage .text1 { text-align: center; color: #fff; margin: 0 auto 70px; }
#secStage .commingsoon { text-align: center; font-family:"DynaPuff",system-ui; font-size:180%; padding: 3rem 1rem 0; color: #ffdb30; }


.contactbtn { display:flex; align-items:center; justify-content:center; gap:2rem; width:100%; max-width:90%; margin:1rem auto 0}
.contactbtn li a { display:block; width:260px; height:50px; border:1px solid #003c73; display:flex; align-items:center; justify-content:center; padding:.5em; box-sizing:border-box; color:#003c73; position:relative}
.contactbtn li a::before { position:absolute; top:0; left:0; content:""; display:block; width:100%; height:100%; background:#003c73; transform:scaleX(0); transform-origin:right; transition:all .5s ease; transition-property:transform}
.contactbtn li a:hover { color:#fff}
.contactbtn li a:hover::before { transform:scaleX(1); transform-origin:left}
.contactbtn li a span { position:relative; color:inherit; transition:.4s}

.kv { width:100%; text-align:center; position:relative; background:#008f5e; padding:0}
.kv .inr { position:relative; height:700px}
.kv .logo { margin:0 auto; padding:2.5rem 1rem 1rem; position:relative}
.kv .logo img { width:500px; }
.kv .logo::before { content:""; display: block; width: 175px; height: 160px; background:url(/images/kv_txt_left.svg) center/contain no-repeat; position:absolute; left:calc(50% - 475px); top:210px; line-height:1px}
.kv .logo::after { content:""; display: block; width: 175px; height: 160px; background:url(/images/kv_txt_right.svg) center/contain no-repeat; position:absolute; right:calc(50% - 475px); top:210px; line-height:1px}
.kv .date { margin: 0 auto; position: relative; z-index: 10; }
.kv .date img { width:320px; }
.kv .location { color:#fff; padding:25px 0; font-size:min(5vw,20px); letter-spacing:.04em; position:relative; z-index:10}
.drinkSteps { display:flex; flex-wrap:wrap; gap:50px; max-width:calc(1000px + 2rem); margin:0 auto; padding:0 1rem}
.drinkSteps li { width:calc((100% - 200px)/5); position:relative}
.drinkSteps li:before { content:''; display:inline-block; position:absolute; right:-42px; top:100px; border:15px solid transparent; border-left:15px solid #ffdb30}
.drinkSteps li:nth-last-of-type(1):before { display:none}
.drinkSteps li .img { margin:0 auto 1rem; text-align:center}
.drinkSteps li .txt { color:#fff; font-size:1rem; line-height:1.5}
.drinkSteps li .txt small { color:inherit; line-height:inherit; font-size:.8rem}
.view_sp { display:none}
.drinkMenuList li a { position:relative}
.drinkMenuList li a::before { content:""; position:absolute; width:22px; height:45%; top:60px; left:150px; color:#003c73; font-size:1px; line-height:1.3}
.drinkMenuList li a:hover::after { color:#000}
.drinkMenuList li a span:before { content:"NEW"; position:absolute; width:22px; height:45%; top:10px; left:10px; color:#003c73; font-size:14px; line-height:1.3}
.drinkMenuList li a[data-status=""] span:before { content:""}
.drinkMenuList li a[data-title="イタリア"]::before { content:url(/images/flag_italy_s.gif)}
.drinkMenuList li a[data-title="オーストラリア"]::before { content:url(/images/flag_aus_s.gif)}
.drinkMenuList li a[data-title="ギリシャ"]::before { content:url(/images/flag_greece_s.gif)}
.drinkMenuList li a[data-title="スペイン"]::before { content:url(/images/flag_spain_s.gif)}
.drinkMenuList li a[data-title="フランス"]::before { content:url(/images/flag_france_s.gif)}
.drinkMenuList li a[data-title="南アフリカ"]::before { content:url(/images/flag_sa_s.gif)}
.drinkMenuList li a[data-title="チリ"]::before { content:url(/images/flag_chili_s.gif)}
.drinkMenuList li a[data-title="アメリカ"]::before { content:url(/images/flag_usa_s.gif)}
.drinkMenuList li a[data-title="ニュージーランド"]::before { content:url(/images/flag_nzl_s.png)}
.drinkMenuList li a[data-title="ウルグアイ"]::before { content:url(/images/flag_ury_s.png)}
.drinkMenuList li a[data-title="アルゼンチン"]::before { content:url(/images/flag_arg_s.gif)}

.cautionul li { margin-left:1em; text-indent:-1em}
.sponsorslist { text-align:center; /* max-width:980px; */ margin:0 auto 60px; vertical-align:top; font-weight: 600; color: #516591; }
.sponsorslist li a:hover { transition:opacity .5s; opacity:.5}
.sponsorslist.box { border:1px solid #003c73; padding:21px 0 14px; margin:0 auto; width:calc(100% - 2em)}
.sponsorslist li { display:inline-block; vertical-align:bottom; letter-spacing:0; margin:0 10px 10px; color: #516591; }
.sponsorslist li img { width:auto; height:100px}
.sponsorslist.box li img { width:auto; height:60px}
.pagetop { font-size:12px; height:5em; width:5em; position:fixed; right:30px; bottom:30px; z-index:99999; }
.pagetop a { display: block; font-size:12px; height:5em; width:5em; background-image:url(/images/return.png); background-repeat:no-repeat; background-size:15px; background-position:50% 75%; background-color:#fff; color:#003c73; font-weight:bold; border-radius:50%; justify-content:center; align-items:center; cursor:pointer; border:3px solid #415581}
.pagetop span { position:relative; top:6px; line-height: 1; }
.teamzerofukuoka { margin: 0 auto; padding: 5rem 1rem 2.5rem; text-align: center; border-top: 1px solid rgba(0, 0, 0, .1); }
.footerTips { margin: 0 auto; padding: 0 1rem 5rem; text-align: center; display: flex; align-items: center; justify-content: center; }
.footerTips ul { display: inline-block; margin: 0 auto; text-align: left; }
.footerTips ul li { font-size: .9rem; position: relative; padding-left: 1em; text-indent: -1em; }
.footerTips ul li::before { content: "※"; }

.foodnav { position: fixed; top:0; left: 0; width: 100%; height: 50px; background: #eee; display: flex; align-items: center; z-index: 100; }
.foodnav ul { display: flex; align-items: center; justify-content: center; gap: 1rem; margin: 0 auto; }
.foodnav ul li { line-height: 1.4; font-size: .85rem; color: rgba(0, 0, 0, .4); min-width: 20px; font-feature-settings: "palt"; }
.foodnav ul li a { color: rgba(0, 0, 0, .8);}
.foodnav ul li a span { font-size: 20px; position: relative; top:1px; }
.foodnav ul li a:hover { color: rgba(0, 0, 0, 1);}
.foodnav { position: fixed; width: 100%; height: 50px; background: #eee; display: flex; align-items: center; }

.foodmenuWrap { max-width: 960px; margin: 0 auto; }
.foodmenuWrap * { box-sizing: border-box; text-align: left; font-feature-settings: "palt"; word-break: break-all; }
.foodmenuWrap h1 { margin: 150px auto 100px; font-size: 240%; font-family: "DynaPuff", system-ui; letter-spacing: .05em; color: #008f5e; text-align: center; }
.foodmenuWrap h2 { display: flex; align-items: center; justify-content: center; width: 100%; height: 70px; border-top:1px solid #111; border-bottom: 1px solid #111; text-align: center; line-height: 1.25; font-size: 1.2rem; color: #516591; margin: 0 auto 2rem; position: relative; }
.foodmenuWrap h2 img { height: 30px; max-width: 200px; object-fit: contain; object-position: left center; position: absolute; left: 0; top:calc(50% - 15px); }
.foodmenuWrap h3 { background: #516591; color: #fff; font-size: 1rem; padding: .5rem; line-height: 1.25; margin: 0 auto 2rem; font-weight: 500; font-family: "Zen Maru Gothic", sans-serif; }
.foodmenuWrap p { margin: 0 auto 2rem; }
.foodmenuWrap section { margin: -100px auto 8rem; padding: 100px 0 0; }
.foodmenuWrap .caption { margin: 4rem auto; }
.foodmenuWrap .caption dl { display: flex; gap: 2rem; align-items: center; flex-direction: row-reverse; }
.foodmenuWrap .caption dt { width: 300px; }
.foodmenuWrap .caption dd { width: 100%; }
.foodmenuWrap .caption dl:has(dt) dd {  width: calc((100% - 2rem) - 300px); }
.foodmenuWrap .list { margin: 4rem auto; }
.foodmenuWrap .list > p { margin: 0 auto 4rem; }
.foodmenuWrap .list .inr { display: flex; flex-wrap: wrap; gap:2rem 1rem; margin: 0 auto 2rem; }
.foodmenuWrap .list dl { width: calc((100% - 3rem) / 4); }
.foodmenuWrap .list dl dt { text-align: center; margin: 0 auto 1rem; height: 228px; overflow: hidden; }
.foodmenuWrap .list dl dd { text-align: center; line-height: 1.5; }
.foodmenuWrap .list dl dd em { display: block; text-align: center; color: #cc2d6a; font-style: normal; }
.foodmenuWrap aside { border:1px solid #111; padding: 2rem; position: relative; }
.foodmenuWrap aside img { position: absolute; right: 2rem; top:2rem; width: 200px; max-height:200px; object-fit: contain; }
.foodmenuWrap aside h4 { color: #516591; margin: 0 230px 0 0; }
.foodmenuWrap aside dl { display: flex; margin: 0 230px 0 0; }
.foodmenuWrap aside dl dt { width: 6em; }
.foodmenuWrap aside dl dd { width: calc(100% - 6em); }
.foodmenuWrap aside p { margin: 1rem auto 0; }

.event_wrap { display: flex; flex-wrap: wrap; gap: 2rem; }
.event_box { width: 100%; background: #fff; margin: 0 auto; padding: 2rem; align-items: center; flex-wrap: wrap; justify-content: space-between; flex-direction: row-reverse; }
.event_box.lambrusco h3 { margin: 0 auto; padding: calc(70px - 2rem) 0 35px; text-align: center; font-size: 2.5rem; font-weight: 300; color: #008f5e; letter-spacing: .05em; line-height: 1.5; }
.event_box.lambrusco h3 small { font-size: 1.2rem; display: block; margin: 0 auto .5rem; color: #516591; line-height: 1.5; font-weight: 600; }
.event_box.lambrusco h3 em { font-size: 1.1rem; display: block; margin: .5rem auto 0; font-style: normal; color: #516591; line-height: 1.5; font-weight: 600; }
.event_box.lambrusco h4 { text-align: center; line-height: 2; color: #008f5e; margin: 0 auto 70px; font-weight: 500; }
.event_box.lambrusco .inr { display: flex; align-items: center; justify-content: space-between; background: #efeeec; margin: 0 auto 35px; }
.event_box.lambrusco .img { width: 430px; }
.event_box.lambrusco .txt { width: calc((100% - 2rem) - 430px); }
.event_box.lambrusco h5 { margin: 0 auto 1em; padding: 0; line-height: 1.5; font-size:1rem; color: #516591; }
.event_box.lambrusco h6 { margin: 0 auto; padding: 0; line-height: 1.5; font-size: 1rem; color: #516591; }
.event_box.lambrusco h6::first-letter { font-feature-settings: "palt"; font-family: sans-serif; color: #516591; }
.event_box.lambrusco .inr ul { line-height: 1.5; font-size: 1rem; margin: 0 auto 1em; color: #516591; }
.event_box.lambrusco .inr ul li { list-style-type: disc; margin: 0 0 0 1.5em; color: #516591; }
.event_box.lambrusco .inr p { line-height: 1.5; font-size: 1rem; color: #516591; }
.event_box.lambrusco .btn { margin: 0 auto calc(70px - 2rem); }
.event_box.lambrusco .btn ul { display: flex; align-items: center; justify-content: center; gap: 1rem 2rem; flex-wrap: wrap; margin: 0 auto 1rem; }
.event_box.lambrusco .btn ul li a { display: flex; align-items: center; justify-content: center; line-height: 1; width: 300px; height: 46px; border-radius: 100px; background: #516591; border:1px solid #516591; color: #fff; transition: .4s; }
.event_box.lambrusco .btn ul li a:hover { background: #fff; color: #516591; }
.event_box.lambrusco .btn p { /* text-indent: -1em; padding: 0 0 0 1em; */ font-size: .85rem; text-align:center; }

.event_box.amao { display: flex; }
.event_box.amao .img { width: 280px; text-align: center; margin: 0 auto; }
.event_box.amao .txt { width: calc((100% - 2rem) - 280px); }
.event_box.amao .txt h3 { color: #e890b2; font-size: min(4vw,1.3rem); }
.event_box.amao .txt p { color: #516591; }

@media screen and (max-width:1100px) {
	.drinkSteps li { width:calc((100% - 100px)/3)}
	.drinkSteps li:nth-last-of-type(3n):before { display:none}
}
@media screen and (max-width:1000px) {
	#secDrinkMenu .drinkMenuList li { width:calc((100% - 2rem)/3)}
	#secAccess .map { width:100%}
	#secTicket .container,#globalFooter .container { box-sizing:border-box}
	#secNews .inr { display: block; }
	#secNews p { margin: 0 auto 42px; }
	#secNews .inr > div { margin: 15px; width: auto; }
	.kv .logo img { width:400px; }
	.kv .logo::before { left: calc(50% - 14rem); top:auto; bottom: -190px; }
	.kv .logo::after { right: calc(50% - 14rem); top:auto; bottom: -190px; }
	.kv .date,
	.kv .location { display:none}
}
@media screen and (max-width:980px) {
	html { width:101vw}
}
@media screen and (max-width:768px) {
	html { width:100%}
	body p { line-height:1.8em}
	body { font-size:13px}
	img { width:100%; height:auto}
	.fixed .gnav { position:fixed}
	.gnavWrap { min-width:300px; top:0; height:100%}
	.gnav { height:100%; padding:0; background-color:#008f5e; display:none; z-index:10000; position:fixed}
	.gnav ul { width:62.5%; height:100%; padding:10px 0; box-sizing:border-box; float:right; overflow:hidden; background:#f2f2f2; text-align:left}
	.gnav ul li { float:none; border-left:none}
	.gnav ul li a { padding:0 22px !important; font-size:15px}
	.gnav ul li .snsIconsList { margin-left:10px}
	.gnav ul { float:none; width:100%}
	.gnav ul li { display:block}
	.gnav ul .snsIcons { padding:0 12px; margin-top:10px; }
	.gnav ul .snsIcons .instalink,
	.gnav ul .snsIcons .fblink { width:15px; margin:5px 10px 5px 0; padding:5px 5px 0 0 !important}
	#globalFooter { min-width:300px}
	#secNews { padding:0 10px; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box}
	#secDrinkMenu .drinkMenuList li { width:calc((100% - 1rem)/2)}
	#secFood h2.secTitle { margin:21px 0}
	#secSweets { padding: 0 0 1.5rem; }
	#secSweets h2.secTitle { margin:21px 0}
	#secSweets .secSubTitle { padding: 0 1.5rem;}
	#secSweets .text1 { padding: 0 1.5rem; margin-bottom: calc(21px - 1rem); }
	#secSweets aside { display: block; padding: 1.5rem;}
	#secSweets aside .img { width: auto; margin: 0 auto 1.5rem; }
	#secSweets aside .txt { width: auto; }
	#secSweets aside ul { justify-content: center; }
	#secSweets aside ul li a { min-width:20vw; }
	.sweetsKv { margin: 0 auto 21px; padding: 0 1.5rem; }

	.foodMenu { margin:0}
	.foodMenu li { width:calc(50% - 2.3em)}
	#secTicket .container { padding:35px 20px}
	#secTicket .container h3.st_ticket { font-size:125%; padding:21px 0}
	#secTicket .container ul.ad_ticket-ex li { width:calc(100% - 44px)}
	#secTicket .container ul.ad_ticket-ex li:first-child { margin-right:0}
	#secTicket .container ul.ad_ticket-ex li p { font-size:125%}
	#secTicket .container ul.ad_ticket-ex li.wide { background:#f1f3f7}
	#secTicket .container .inner.buy_ticket_box ul li { width:100%}
	.sponsorslist.box li img { width:auto; max-width:auto}
	#secDrinkMenu .drinkMenuList { margin:15px 15px 45px; }
	#secLetsDrink .container .text1 { width:70% !important}
	#secLetsDrink .drinkStepsTitle img { width: 100%; height: 60px; object-fit: cover; }
	.view_sp { display:block}
	#globalFooter .secTitleLine { margin:40px auto 20px}
	#globalFooter .container p.text1.ec { font-size:14px}
	#globalFooter .container p.text1.ec span { padding:0 5px}
	.spNavWrap { position:fixed; z-index:99999; top:0; right:0; width:100%}
	.spNav { display:block; background:transparent; padding:12px 0 11px 16px; top:0; width:100%}
	.spNav .logo { width:210px; float:left}
	.spNav .logo a { display:none}
	.spNav .navBtn { position:absolute; right:43px; top:18px; margin-top:-10px}
	.spNav .navBtn a { display:block; width:20px; height:20px; line-height:20px; text-align:center}
	.spNav .navBtn a .icon-uniE611 { font-size:27px; color:#003c73; background-color:rgba(255,219,48,.3); padding:10px; border-radius:0 0 0 10px; }
	.container { width:100%; padding:21px 0; box-sizing:border-box}
	.secTitle { margin-bottom:25px; font-size:22px}
	.secTitle img { max-widtn:100%}
	#secAbout { z-index:1; padding:21px 0}
	#secAbout .leadTxt { width:100%}
	#secNews .container { width:100%; text-align:center; padding:42px 0}
	#secLetsDrink { padding:0 0 42px}
	#secDrinkMenu .container { padding:42px 0 21px}
	#secDrinkMenu .secSubTitle { margin:0 3%}
	#secDrinkMenu .text2 { margin:0 3% 21px}
	#secDrinkMenu .drinkMenuList { margin-bottom:15px}
	#secDrinkMenu .drinkMenuList li a img { width:100px}
	#secDrinkMenu .drinkMenuList li a ul { left:100px}
	#secDrinkMenu .drinkMenuList li a p { left:100px}
	#secDrinkMenu .drinkMenuList li a::before { left:100px; top:20px}
	#secDrinkMenu .dailylist { margin: 0 21px 0; padding: 1.5rem 0 1px; }
	#secDrinkMenu .dailylist .drinkMenuList { margin: 10px; }

	.modalWrap { width:100%}
	.wineModal { width:100%; padding:10px; box-sizing:border-box}
	.wineModal .popup-modal-dismiss { right:9px; top:10px}
	.wineModal .wineType { font-size:13px}
	.wineModal .wineName { font-size:18px}
	.wineModal .wineKana { font-size:11px}
	.wineModal .wineInfo { width:100%; float:none}
	.wineModal .wineInfo aside { font-size:12px}
	.wineModal .wineInfo aside .place { min-width:80px; margin-right:5px}
	.wineModal .wineInfo aside .place img { height:16px; width:25px}
	.wineModal .wineInfo aside .tickets { margin-right:5px}
	.wineModal .wineInfo .wineDetail td .winary { font-size:13px}
	.wineModal .wineInfo .wineDetail td .winaryKana { font-size:11px}
	.wineModal .wineImage { width:210px; float:none; margin:0 auto}
	#secTicket { padding:42px 0}
	#secTicket .inner .attention .myol_spButton { display:block; width:100%; border:1px solid #003c73; text-align:center; line-height:3em; cursor:pointer}
	#secTicket .inner .attention ul { width:100%; padding:0 10px; box-sizing:border-box; display:none; text-align:left}
	#secTicket .inner .attention ul li { font-size:12px; line-height:1.5; }
	#secStage .container { padding: 70px 15px 63px; }
	#secAccess .container { padding:42px 0 15px; }
	#secAccess .txtWrap { width:100%; box-sizing:border-box; float:none; margin:21px 0; padding: 0 15px; }
	#secAccess .txtWrap .link { margin-top:15px; margin-bottom:30px}
	#secAccess .map { width:100%; float:none; padding: 0 15px; box-sizing: border-box; }
	#secAccess .map iframe { width:100%; height:300px; vertical-align: bottom; }
	#globalFooter .footerTitle { display:none}
	#globalFooter .copyright { padding:10px}
	#globalFooter .copyright br { display:block}
	.spBr { display:block}
	.snsIcons { top:0 !important}
	#globalFooter .secTitleLine:before,
	#globalFooter .secTitleLine:after { width:20%}
	#secMenupdf.sec .container .menuLink a { margin:1em auto 21px; padding:1.5em 0}
	.kv .inr { height: 140vw;}
	.kv .logo img { width:80vw; max-width: 500px; }
	.kv .logo::before { left: calc(50% - 150px); top:calc(100% + 1rem); width: 140px; height: 130px; }
	.kv .logo::after { right: calc(50% - 150px); top:calc(100% + 1rem); width: 140px; height: 130px; }
	.drinkSteps li { width:calc((100% - 50px)/2)}
	.drinkSteps li:nth-last-of-type(3n):before { display:inline-block}
	.drinkSteps li:nth-last-of-type(2n):before { display:none}

	.foodnav { overflow: hidden; background: #f2f2f2; position: fixed; left: 0; top:0; height: 0; width: 100%; transition: .4s; }
	.foodnav.active { height: 100%; }
	.foodnav ul { flex-wrap: wrap; padding: 2rem; }
	.foodnav ul li { width: 100%; font-size: 1rem; text-align: left; }
	.foodnav ul li img { width: 20px; }
	.foodmenuWrap { max-width: 100%; overflow: hidden; padding: 0 1rem; }
	.foodmenuWrap h1 { margin: 100px auto; }
	.foodmenuWrap h2 { font-size: 1rem; justify-content: flex-start; }
	.foodmenuWrap h2 img { max-width: 100px; object-position: center center; position: static; margin: 0 .5rem 0 0; }
	.foodmenuWrap section { margin: -1rem auto 4rem; padding: 1rem 0 0; }
	.foodmenuWrap .caption { margin: 2rem auto;}
	.foodmenuWrap .caption dl { flex-wrap: wrap; flex-direction: column-reverse; }
	.foodmenuWrap .caption dl dt { width: 100%; text-align: center; }
	.foodmenuWrap .caption dl dd { width: 100%; }
	.foodmenuWrap .caption dl:has(dt) dd { width: 100%; }
	.foodmenuWrap .list { margin: 2rem auto; }
	.foodmenuWrap .list > p { margin: 0 auto 2rem; }
	.foodmenuWrap .list dl { width: calc((100% - 1rem) / 2);}
	.foodmenuWrap .list dl dt { height: calc((100vw - 3rem) / 2); }
	.foodmenuWrap aside { padding: 1rem; }
	.foodmenuWrap aside h4 { margin: 0; }
	.foodmenuWrap aside dl { margin: 0; }
	.foodmenuWrap aside .img { text-align: center; margin: 0 auto; }
	.foodmenuWrap aside .img img { position: static; margin: 1rem auto; }
	.foodmenuWrap aside p { margin: 0 auto; }
	.event_wrap { gap: 1rem; }
	.event_box { padding: 1.5rem; }
	.event_box.amao { display: block; }
	.event_box.amao .img { width: auto; margin: 0 auto 1.5rem; }
	.event_box.amao .txt { width: auto; }

	.event_box.lambrusco h3 small { margin: 0 auto .5rem;  }
	.event_box.lambrusco h4 { margin: 0 auto 35px; }
	.event_box.lambrusco h4 br { display: none; }
	.event_box.lambrusco .inr { display: block; }
	.event_box.lambrusco .img { width: auto; }
	.event_box.lambrusco .txt { width: auto; padding: 1.5rem; }



}
