@charset "UTF-8";
/*
Version: 2.5.0
Creation Date: 2024.2.7
Last Updated: 2026.3.23
*/


/* import
------------------------------------------------------------ */
@import "https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css";
@import "https://www.montedioyamagata.jp/wp-content/themes/montedio/assets/css/match.css";
@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap";
@import "https://use.typekit.net/mfv8adx.css";
@font-face {
font-family: 'MONTE30';
src: url(font/monteunifonte2026.otf);
}
@font-face {
font-family: CLR;
src: url(https://w-shiya.com/release/font/Corporate-Logo-Rounded-Bold-ver3.woff);
}


/* Overwrite
------------------------------------------------------------ */
.header {
position: fixed;
}
.spnav,
.spsubnav,
.gnav__subitem__table td a {
text-align: left;
}
.access {
padding: 0;
}
.access .accessSection {
width: 100%;
margin: 0 auto;
}
.access__table {
table-layout: auto;
}
.share__icon {
margin: 0;
}


/* set
------------------------------------------------------------ */
:root {
--color-LOGO: #1A1A7C;
--color-primary: #004098;
--color-secondary: #FFBA00;
--color-pink: #F58DBA;
--color-nvy: #003B82;
--bg-pink: #F4B4D0;
--bg-sky: #D4ECF3;
}
* {
margin: 0;
padding: 0;
font-style: normal;
box-sizing: border-box;
}
body {
background: #F9EDED;
font-family: 'Noto Sans JP', sans-serif;
font-weight: 500;
text-align: center;
min-width: auto;
}
ul,ol {
list-style: none;
}
img {
vertical-align: middle;
max-width: 100%;
height: auto;
}
video,iframe {
vertical-align: bottom;
max-width: 100%;
max-height: 100%;
border: none;
}
a {
color: inherit;
text-decoration: none;
}
:hover {
transition: .3s;
}
.opa a {
background: #FFF;
display: block;
}
.opa a:hover img {
opacity: .7;
}
.smd,.smp {
display: none;
}
.pc {
display: block;
}


/* common
------------------------------------------------------------ */
/* font */
.CLR,
.sub,
.col-3 li h3,
.col-3 li h4,
.swiper-slide h3,
.more a,
.box h1,
#nav nav ul li em,
#schedule ol li p,
#event ul li figcaption h3 {	/* コーポレート・ロゴ（ラウンド */
font-family: CLR, sans-serif;
}
.EN,
#nav nav ul li a span,
time,
.coming-soon {  /* monteunifonte2026 */
font-family: 'MONTE30', sans-serif;
}
#schedule time,
#schedule .kick-off p {	/* Wilko Highlight */
font-family: wilko-highlight, sans-serif;
font-weight: 400;
}
small {
font-size: 77%;
}

/* layout */
main {
width: 100%;
display: block;
overflow: hidden;
}
article {
width: 100%;
position: relative;
}
section {
width: 1050px;
max-width: 90%;
margin: 0 auto;
position: relative;
}

/* background */
.bg_01 {
background: url("img/bg_01.svg") no-repeat top/cover;
margin-top: -2rem;
padding: 6rem 0 8rem;
}
.bg_02 {
background: url("img/bg_02.svg") no-repeat top/cover;
margin-top: -2rem;
padding: 6rem 0 8rem;
}
.bg_03 {
background: url("img/bg_03.svg") no-repeat top/cover;
margin-top: -2rem;
padding: 6rem 0 8rem;
}
.bg_04 {
background: url("img/bg_04.svg") no-repeat top/cover;
margin-top: -2rem;
padding: 8rem 0;
}
.bg_05 {
background: url("img/bg_05.png") repeat;
}

/* flexbox */
.flex {
display: flex;
}
.flex.wrap {
flex-wrap: wrap;
}
[class*=col-]{
flex-wrap: wrap;
justify-content: space-between;
}
.flex.center {
justify-content: center;
}
.col-2 >* {
flex-basis: 48%;
}

/* style */
.none {
display: none;
}
.center {
text-align: center;
}
.left {
text-align: left;
}
.right {
text-align: right;
}
.block {
display: block;
}
.mb5 {
margin-bottom: .5rem;
}
.marker {
background: yellow;
font-weight: bold;
padding: 2px 4px;
}
.vwmax img {
width: 100vw;
}
h2 {
margin-bottom: 4rem;
}
.sub {
font-size: 2.1rem;
line-height: 1.8;
padding-bottom: 4rem;
}
dl {
white-space: nowrap;
display: inline-flex;
align-items: center;
}
dl dt {
background: var(--color-nvy);
color: #FFF;
font-size: 1.8rem;
letter-spacing: .3em;
text-align: center;
margin: .2em .5em .5em 0;
padding: .1em .7em .1em 1em;
border-radius: 100vh;
float: left;
clear: both
}
#sweets dl dt {
background: var(--color-pink);
}
dl dd {
font-size: 1.9rem;
font-weight: 700;
text-align: left;
margin-bottom: .5em;
}
dl dd + dt {
margin-left: 4em;
}

/* gourmet */
section:has(.col-3) {
width: 1100px;
}
section:has(.col-3) dl {
margin: -2em auto 1em;
}
.col-3 {
position: relative;
z-index: 1;
}
.col-3 >* {
flex-basis: 31%;
}
.col-3::after {
content: "";
width: 31%;
height: 0;
display: block;
}
.col-3 li {
margin-bottom: 3%;
}
.col-3 li div {
border: 4px solid var(--color-nvy);
border-radius: 50%;
position: relative;
}
.col-3 li div::after {
content: "";
background: #8ED5DA;
width: 100%;
height: 100%;
border: 4px solid var(--color-nvy);
border-radius: 50%;
position: absolute;
top: .5rem;
left: .5rem;
z-index: -1;
}
#sweets .col-3 li div::after {
background: var(--color-pink);
}
.col-3 li div img {
aspect-ratio: 1 / 1;
object-fit: cover;
border: 1rem solid #FFF;
border-radius: 50%;
}
.col-3 li h3 {
color: var(--color-nvy);
font-size: 2.8rem;
line-height: 1.3;
min-height: 3em;
margin-top: .5em;
display: flex;
justify-content: center;
align-items: center;
}
#sweets .col-3 li h3 {
color: var(--color-pink);
}
.col-3 li h4 {
font-size: 2.4rem;
line-height: 1.3;
margin: .5em auto;
}
.col-3 li h4 em {
font-size: 2.6rem;
}
.col-3 li p {
font-size: 1.7rem;
line-height: 1.8;
text-align: left;
margin: .5em auto 1.5em;
}

/* .more */
.more a {
background: var(--color-nvy);
color: #FFF;
font-size: 1.9rem;
font-weight: 700;
min-width: 280px;
max-width: 80%;
margin-top: 4rem;
padding: .3em 3em;
display: inline-block;
border: 3px solid var(--color-nvy);
border-radius: 100vh;
position: relative;
}
.more.pink a {
background: var(--color-pink);
border: 3px solid var(--color-pink);
}
.more a:hover {
background: #FFF;
color: var(--color-nvy);
}
.more i {
background: #FFF;
width: 2rem;
height: 2rem;
display: block;
border-radius: 50%;
position: absolute;
top: 50%;
right: 5px;
transform: translateY(-50%);
}
.more i::before,
.more i::after {
content: "";
vertical-align: middle;
margin: auto;
position: absolute;
top: 0;
bottom: 0;
left: 0;
}
.more i::before {
background: var(--color-nvy);
width: 11px;
height: 1px;
left: 0;
}
.more i::after {
width: 8px;
height: 8px;
border-top: 1px solid var(--color-nvy);
border-right: 1px solid var(--color-nvy);
left: 2px;
transform: rotate(45deg);
}
.more.pink i::before {
background: var(--color-pink);
}
.more.pink i::after {
border-top: 1px solid var(--color-pink);
border-right: 1px solid var(--color-pink);
}

/* .slide */
section:has(.swiper-wrapper) {
width: 1210px;
}
.swiper {
max-width: 1100px;
}
.slide {
text-align: left;
position: relative;
}
ul li.swiper-slide {
height: auto;
padding: .5rem;
}
ul li.swiper-slide:after {
content: "";
width: calc(100% - .5rem);
height: calc(100% - .5rem);
background: #81C7E8;
outline: 5px solid var(--color-nvy);
outline-offset: -4px;
border-radius: 1.5rem;
position: absolute;
top: .5rem;
left: .5rem;
z-index: -1;
}
#gourmet ul li.swiper-slide:after {
background: #F4CEDF;
}
ul li.swiper-slide > div {
background: #FFF;
height: 100%;
padding: 1em;
border: 5px solid var(--color-nvy);
border-radius: 1.5rem;
position: relative;
top: -.5rem;
left: -.5rem;
}

___li.swiper-slide div img {
aspect-ratio: 3 / 2;
object-fit: cover;
border-radius: .8em .8em 0 0;
}
li.swiper-slide h3 {
color: var(--color-pink);
font-size: 2.7rem;
line-height: 1.3;
text-align: center;
min-height: 3.4em;
margin: 0 auto;
display: flex;
justify-content: center;
align-items: center;
}
#goods li.swiper-slide h3 {
color: var(--color-nvy);
}
li.swiper-slide p {
font-size: 1.5rem;
margin: .5em auto 1.5em;
}
li.swiper-slide p a {
text-decoration: underline;
}
li.swiper-slide p a:hover {
text-decoration: none;
}
.swiper-slide dl {
width: 100%;
margin: .8em auto .5em;
padding-bottom: .5em;
white-space: wrap;
display: block;
}
.swiper-slide dl dt {
background: var(--color-pink);
font-size: 1.6rem;
width: 4.5em;
white-space: nowrap;
margin: 0 .5em .5em 0;
padding: .1em .1em .1em .2em;
}
#goods .swiper-slide dl dt {
background: var(--color-nvy);
}
.swiper-slide dl dd {
font-size: 1.6rem;
line-height: 1.4;
padding-top: .2em;
}

div.swiper-wrapper {
counter-reset: num; 
}
div.swiper-wrapper .swiper-slide {
padding: 1rem;
}
div.swiper-wrapper .swiper-slide:after {
content: "";
width: calc(100% - 1rem);
height: calc(100% - 1rem);
background: #F9C;
outline: 4px solid var(--color-nvy);
outline-offset: -4px;
border-radius: 3rem;
position: absolute;
top: 1rem;
left: 1rem;
z-index: -1;
}
.swiper-slide figure {
background: #FFF;
height: auto;
padding: 2.5em 1.5em;
border: 4px solid var(--color-nvy);
border-radius: 3rem;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
position: relative;
top: -.5rem;
left: -.5rem;
}
.swiper-slide figure figcaption {
flex-basis: 36%;
}
.swiper-slide figure h3 {
background: var(--color-nvy);
clip-path: polygon(100% 0%, calc(100% - 2vw) 50%, 100% 100%, 0 100%, 0 0);
color: var(--color-nvy);
font-size: 2.9rem;
font-weight: 800;
min-width: 60%;
padding-right: 2em;
display: flex;
align-items: center;
position: absolute;
top: 1em;
left: 1em;
z-index: 1;
}
.swiper-slide figure h3::after {
content: "";
background: #F4CEDF;
clip-path: polygon(100% 0%, calc(100% - 2vw) 50%, 100% 100%, 0 100%, 0 0);
width: calc(100% - .35em);
height: calc(100% - .3em);
position: absolute;
top: .15em;
left: .15em;
z-index: -1;
}
.swiper-slide figure h3::before {
content: "";
background: url("img/01.svg") no-repeat center/contain;
width: 3em;
height: 3em;
margin: 0 .5em;
}
.swiper-slide:nth-child(2) figure h3::before {
background: url("img/02.svg") no-repeat center/contain;
}
.swiper-slide:nth-child(3) figure h3::before {
background: url("img/03.svg") no-repeat center/contain;
}
.swiper-slide:nth-child(4) figure h3::before {
background: url("img/04.svg") no-repeat center/contain;
}
.swiper-slide:nth-child(5) figure h3::before {
background: url("img/05.svg") no-repeat center/contain;
}
.swiper-slide:nth-child(6) figure h3::before {
background: url("img/06.svg") no-repeat center/contain;
}
.swiper-slide:nth-child(7) figure h3::before {
background: url("img/07.svg") no-repeat center/contain;
}
.swiper-slide:nth-child(8) figure h3::before {
background: url("img/08.svg") no-repeat center/contain;
}
.swiper-slide:nth-child(9) figure h3::before {
background: url("img/09.svg") no-repeat center/contain;
}
.swiper-slide:nth-child(10) figure h3::before {
background: url("img/10.svg") no-repeat center/contain;
}
.swiper-slide figure h3 small {
font-weight: 700;
}
.swiper-slide figure p {
background-image:
linear-gradient(90deg, transparent 0%, transparent 50%, #fff 50%, #fff 50%),
linear-gradient(180deg, transparent 0%, transparent 96%, #9fa0a0 96%, #9fa0a0 100%);
background-size: 8px 100%, 100% 2.2em;
font-size: 2.1rem;
line-height: 2.2;
height: calc(100% - 7em);
margin-top: 5em;
padding: 0 .5em;
}
.swiper-slide figure p a {
text-decoration: underline;
}
.swiper-slide figure p a:hover {
text-decoration: none;
}
.swiper-slide figure > div {
flex-basis: 60%;
position: relative;
}
#step .swiper-slide figure > div {
margin-top: 3em;
}
.swiper-button-next,
.swiper-button-prev {
background: var(--color-nvy);
width: 4.5rem;
height: 4.5rem;
border-radius: 50%;
}
#gourmet .swiper-button-next,
#gourmet .swiper-button-prev {
background: var(--color-pink);
}
.swiper-button-next {
right: 0;
}
.swiper-button-prev {
left: 0;
}
.swiper-button-next:after,
.swiper-button-prev:after {
color: #FFF;
font-size: 3rem;
}
.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
background: #9fa0a0;
opacity: 1;
}
.swiper-pagination {
bottom: -2.5em !important;
}
.swiper-pagination-bullet {
background: #9fa0a0;
width: 6rem;
height: .7rem;
margin: 0 .5em !important;
border-radius: 0;
opacity: 1;
}
.swiper-pagination-bullet-active {
background: var(--color-nvy);
}

.slide:has(.swiper-pagination-fraction) {
padding-top: 3em;
}
.swiper-pagination-fraction {
color: var(--color-nvy);
font-size: 130% !important;
font-weight: bold;
top: 0 !important;
z-index: 0;
}

.slide.center .swiper-wrapper {
justify-content: center;
}

/* .coming-soon */
.coming-soon {
color: var(--color-nvy);
font-size: 6rem;
margin: 3rem auto -15rem;
position: relative;
z-index: 1;
}
.coming-soon + * {
display: none;
}
.empty {
opacity: .3;
}
section:not(:has(.coming-soon)) .empty {
display: none;
}


/* main
------------------------------------------------------------ */
main {
margin-top: 120px;
}

/* #nav */
#nav {
background: var(--bg-sky) url("img/booth_bg.png") no-repeat top/100% auto;
color: var(--color-nvy);
padding: 6rem 0 calc(4rem + 200 / 1366 * 100%);
}
#nav::after {
content: "";
background: url("img/end_05.png") no-repeat center/cover;
width: 100%;
aspect-ratio: 1366 / 200;
position: absolute;
left: 0;
bottom: -1px;
}
#nav p {
font-size: 1.9rem;
font-weight: 700;
line-height: 2.2;
margin: 2rem 0;
}
#nav nav ul {
margin-top: 3rem;
gap: 1rem;
}
#nav nav ul li {
flex: 0 0 calc((100% - 6rem) / 7);
aspect-ratio: 1 / 1;
border: 2px solid var(--color-nvy);
position: relative;
}
#nav nav ul li::before {
content: "";
background: var(--color-nvy);
clip-path: polygon(100% 0, 0% 100%, 100% 100%);
width: .9rem;
height: .9rem;
position: absolute;
bottom: .3rem;
right: .3rem;
}
#nav nav ul li:hover::before {
background: #FFF;
}
#nav nav ul li a {
background: #FFF;
font-size: 2rem;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
}
#nav nav ul li a span {
font-size: 1.7rem;
display: block;
}
#nav nav ul li a:hover {
background: var(--color-pink);
color: #FFF;
}

/* #special_01 */
#special_01 {
background: var(--bg-pink) url("img/special_01_bg.png") no-repeat top/100% auto;
color: var(--color-nvy);
text-align: left;
padding-bottom: calc(4rem + 200 / 1366 * 100%);
}
#special_01::after {
content: "";
background: url("img/end_01.png") no-repeat center/cover;
width: 100%;
aspect-ratio: 1366 / 200;
position: absolute;
left: 0;
bottom: -1px;
}
#special_01 figure {
width: 90%;
margin: calc(( 200 / 1366 * 100%) / -2) -2% 6rem auto;
display: flex;
align-items: flex-end;
}
#special_01 figure figcaption {
flex-basis: 50%;
padding-bottom: 2rem;
}
#special_01 figure > div {
flex-basis: 50%;
}
#special_01 p.fadeIn {
font-size: 2rem;
line-height: 1.6;
margin-top: 2rem;
}
#special_01 dl {
align-items: flex-start;
margin-bottom: 2rem;
}
#special_01 dl dd em {
font-size: 1.4rem;
font-weight: 900;
line-height: 1;
display: block;
}
#special_01 dl dd em:not(:first-of-type) {
margin-top: 1rem;
}

/* #special_02 */
#special_02 {
background: url("img/special_02_bg.png") no-repeat top/100% auto;
color: var(--color-nvy);
___padding-bottom: calc(8rem + 200 / 1366 * 100%);
padding-bottom: 6rem;
}
___#special_02::after {
content: "";
background: url("img/end_02.png") no-repeat center/cover;
width: 100%;
aspect-ratio: 1366 / 200;
position: absolute;
left: 0;
bottom: -1px;
z-index: -1;
}
#special_02 section {
margin-top: calc((4rem + 200 / 1366 * 100%) / -2);
}
#special_02 p {
font-size: 2rem;
line-height: 1.6;
width: 60%;
margin-top: -14rem;
}
#special_02 div.fadeInUp50 {
margin-bottom: 4rem;
}

/* #special_03 */
#special_03 {
background: var(--color-nvy) url("img/special_03_bg.png") no-repeat top/100% auto;
padding-bottom: calc(4rem + 200 / 1366 * 100%);
}
#special_03::before {
content: "";
background: url("img/end_02.png") no-repeat center/cover;
width: 100%;
aspect-ratio: 1366 / 200;
position: absolute;
left: 0;
top: -1px;
}
#special_03::after {
content: "";
background: url("img/end_03.png") no-repeat center/cover;
width: 100%;
aspect-ratio: 1366 / 200;
position: absolute;
left: 0;
bottom: -1px;
}
#special_03 section::before {
content: "";
background: url("img/lady_09.png") no-repeat center/cover;
width: 12vw;
aspect-ratio: 441 / 1321;
position: absolute;
top: -5vw;
right: 0;
}
.box {
background: #D4ECF7;
text-align: left;
padding: 3rem;
border: 1px solid #000;
border-radius: 2rem;
position: relative;
}
.box h1 {
border-bottom: 2px solid #29ADD9;
}
.box h1 em {
background: #29ADD9;
color: #FFF;
font-size: 2.8rem;
line-height: 1.8;
display: inline-block;
padding: 0 1em;
border-radius: 1rem 1rem 0 0;
}
.box figure {
margin: 2rem 0;
display: flex;
justify-content: space-between;
align-items: center;
gap: 4rem;
}
.box figcaption p {
color: var(--color-nvy);
font-size: 2.4rem;
}
.box figure > div {
padding: 0 4rem;
}
.box a {
color: var(--color-nvy);
}
.box ul h2 {
background: var(--color-nvy);
color: #FFF;
font-size: 1.8rem;
font-weight: 700;
line-height: 1.8;
margin: 3rem 0 1rem;
padding: 0 2em;
display: inline-block;
border-radius: 100vh;
}
.box ul h3 {
font-size: 2.3rem;
font-weight: 700;
margin-bottom: 1rem;
}
.box ul em {
font-size: 2.1rem;
font-weight: 700;
}
.box ul ul {
font-size: 1.7rem;
margin-bottom: 1rem;
}
.box ul ul li {
padding: 0 0 .5em 1em;
position: relative;
}
.box ul ul li::before {
content: "・";
position: absolute;
top: 0;
left: 0;
}
.box ul ul + ul li::before {
content: "※";
}
.box ul ol {
counter-reset: num;
}
.box ul ol li {
counter-increment: num;
font-size: 1.8rem;
font-weight: 700;
padding: 0 0 .5em 1.5em;
position: relative;
}
.box ul ol li::before {
content: counter(num);
background: var(--color-nvy);
color: #FFF;
font-size: 1.6rem;
font-weight: 500;
width: 2rem;
height: 2rem;
display: flex;
justify-content: center;
align-items: center;
border-radius: 50%;
position: absolute;
top: .3em;
left: 0;
}
.box ul ol li a {
font-size: 1.6rem;
font-weight: 500;
}

/* #enjoy */
#enjoy {
background: url("img/enjoy_bg.png") no-repeat top/100% auto;
}
#enjoy section {
margin-top: calc((4rem + 200 / 1366 * 100%) / -2);
padding-bottom: 6rem;
}
#enjoy section::before {
content: "";
background: url("img/lady_02.png") no-repeat center/cover;
width: 17vw;
aspect-ratio: 473 / 1379;
position: absolute;
top: -5vw;
right: 5vw;
}

/* #schedule */
#schedule {
background: url("img/schedule_bg.png") no-repeat top/100% auto;
padding-bottom: calc(4rem + 200 / 1366 * 100%);
}
#schedule::after {
content: "";
background: url("img/end_04.png") no-repeat center/cover;
width: 100%;
aspect-ratio: 1366 / 200;
position: absolute;
left: 0;
bottom: -1px;
}
#schedule section {
padding-top: 6rem;
}
#schedule section::before {
content: "";
background: url("img/lady_03.png") no-repeat center/cover;
width: 9vw;
aspect-ratio: 241 / 741;
position: absolute;
top: 2vw;
left: 3vw;
}
#schedule ol {
max-width: 900px;
margin: 0 auto 3em;
position: relative;
z-index: 1;
}
#schedule ol::before {
content: "";
background: var(--color-nvy);
width: .8rem;
height: calc(100% - 6em);
position: absolute;
top: 3em;
left: 3.5em;
transform: translateX(-50%);
z-index: -1;
}
#schedule ol li {
min-height: 8.5em;
position: relative;
}
#schedule ol li time {
background: var(--color-nvy);
font-size: 4.2rem;
letter-spacing: .05em;
color: #FFF;
width: 12rem;
height: 12rem;
display: flex;
justify-content: center;
align-items: center;
border-radius: 50%;
position: absolute;
top: 0;
left: 0;
z-index: 1;
}
#schedule ol li p {
background: #FFF;
color: var(--color-nvy);
font-size: 2.9rem;
line-height: 1.2;
text-align: left;
width: 100%;
height: 9rem;
padding: 2rem 2rem 2rem 12rem;
display: flex;
align-items: center;
border: 3px solid var(--color-nvy);
box-shadow: 5px 5px 0 var(--color-nvy);
border-radius: 100vh;
position: absolute;
top: .5em;
left: 1em;
}
#schedule ol li.kick-off p {
background: #fee793;
font-size: 4.8rem;
padding: .5rem 1rem .5rem 10rem;
}

/* #event */
#event {
background: var(--bg-sky) url("img/event_bg.png") no-repeat top/100% auto;
padding-bottom: calc(4rem + 200 / 1366 * 100%);
}
#event::after {
content: "";
background: url("img/end_05.png") no-repeat center/cover;
width: 100%;
aspect-ratio: 1366 / 200;
position: absolute;
left: 0;
bottom: -1px;
}
#event section::before {
content: "";
background: url("img/lady_04.png") no-repeat center/cover;
width: 19vw;
aspect-ratio: 461 / 641;
position: absolute;
top: -8vw;
right: 0;
}
#event::before {
content: "";
background: url("img/lady_05.png") no-repeat center/cover;
width: 17vw;
aspect-ratio: 541 / 1201;
position: absolute;
bottom: -8vw;
right: 8vw;
z-index: 1;
}
#event ul li {
margin-bottom: 4rem;
flex-basis: 48%;
position: relative;
z-index: 1;
}
#event ul li figure {
background: #FFF;
margin-bottom: 3rem;
padding: 2rem;
padding-bottom: 0;
border: 4px solid var(--color-nvy);
border-radius: 3rem;
position: relative;
}
#event ul li figure::after {
content: "";
background: #F9C;
width: 100%;
height: 100%;
border: 4px solid var(--color-nvy);
border-radius: 3rem;
position: absolute;
top: 1rem;
left: 1rem;
z-index: -1;
}
___#event ul li figure img {
aspect-ratio: 16 / 9;
object-fit: cover;
}
#event ul li figcaption {
min-height: 5em;
display: flex;
align-items: center;
justify-content: center;
}
#event ul li figcaption h3 {
color: var(--color-nvy);
font-size: 2.8rem;
line-height: 1.3;
padding: .5em 0;
}
#event ul li h3 small {
color: #333;
display: block;
}
#event ul li p {
font-size: 1.7rem;
text-align: left;
padding-bottom: 1em;
}
#event ul li h4 {
font-size: 2.1rem;
font-weight: 700;
text-align: left;
padding: .5em 0 0;
}
#event ul li h4::before {
content: "★";
color: #5eb7e8;
}
#event ul li dl {
width: 100%;
max-width: 100%;
padding: .5em 0;
white-space: wrap;
display: block;
}
#event ul li dl dt {
font-size: 1.7rem;
width: 4.5em;
white-space: nowrap;
margin: 0 .5em .5em 0;
}
#event ul li dl dd {
font-size: 1.7rem;
line-height: 1.2;
padding-top: .3em;
}

/* #booth */
#booth {
background: var(--bg-pink) url("img/booth_bg.png") no-repeat top/100% auto;
padding-bottom: 6rem;
}
#booth .slide + h2 {
margin-top: 8rem;
}

/* #festival */
#festival {
padding-bottom: calc(4rem + 200 / 1366 * 100%);
}
#festival::before {
content: "";
background: url("img/end_06.png") no-repeat center/cover;
width: 100%;
aspect-ratio: 1366 / 200;
position: absolute;
left: 0;
top: -1px;
}
#festival::after {
content: "";
background: url("img/end_07.png") no-repeat center/cover;
width: 100%;
aspect-ratio: 1366 / 200;
position: absolute;
left: 0;
bottom: -1px;
}

/* #sweets */
#sweets {
background: url("img/sweets_bg.png") no-repeat top / 100% auto;
}
#sweets section::before {
content: "";
background: url("img/lady_06.png") no-repeat center/cover;
width: 22vw;
aspect-ratio: 621 / 921;
position: absolute;
top: 8vw;
left: -5vw;
}

/* #special */
#special {
background: url("img/special_bg.png") no-repeat top / 100% auto;
}
#special section::before {
content: "";
background: url("img/lady_07.png") no-repeat center/cover;
width: 15vw;
aspect-ratio: 369 / 1073;
position: absolute;
top: -8vw;
right: -5vw;
}

/* #gourmet */
#gourmet {
background: url("img/gourmet_bg.png") no-repeat top / 100% auto;
padding-bottom: calc(4rem + 200 / 1366 * 100%);
}
#gourmet::after {
content: "";
background: url("img/end_04.png") no-repeat center/cover;
width: 100%;
aspect-ratio: 1366 / 200;
position: absolute;
left: 0;
bottom: -1px;
}

/* #goods */
#goods {
background: var(--bg-sky) url("img/goods_bg.png") no-repeat top/100% auto;
padding-bottom: 6rem;
}
#goods section::before {
content: "";
background: url("img/lady_08.png") no-repeat center/cover;
width: 15vw;
aspect-ratio: 401 / 861;
position: absolute;
top: -8vw;
left: 3vw;
}

/* #favorite */
#favorite {
background: url("img/favorite_bg.png") no-repeat top/100% auto;
padding-bottom: 12rem;
}
#favorite::before {
content: "";
background: url("img/end_08.png") no-repeat center/cover;
width: 100%;
aspect-ratio: 1366 / 200;
position: absolute;
left: 0;
top: -1px;
}
#favorite section::before {
content: "";
background: url("img/lady_09.png") no-repeat center/cover;
width: 17vw;
aspect-ratio: 441 / 1321;
position: absolute;
top: 5vw;
left: 2vw;
}

/* #seat */
#seat ul li {
margin-top: 4%;
}

/* #area */
#area ul li {
margin-top: 4%;
}

/* #step */
#step {
padding: 6rem 0 12rem;
}

/* #access */
#access h2 + div {
margin-bottom: 3rem;
}
#access .tab-group {
flex-wrap: nowrap;
height: 250px;
height: 190px;
}
#access .panel-group section {
text-align: left;
padding-top: 3rem;
}
#access .panel-group h3.CLR {
text-align: center;
margin-bottom: 3rem;
}
#access .panel-group h3.CLR strong {
color: var(--color-LOGO);
font-size: 4rem;
border-bottom: 5px solid var(--color-LOGO);
}
.access {
background: #FFF;
max-width: 1000px;
margin: 0 auto;
border: 2rem solid var(--color-LOGO);
border-radius: 4rem;
position: relative;
}
.tab {
background-size: contain !important;
width: 200px;
height: 183px;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
}
.tab:hover {
cursor: pointer;
}
.tab:nth-child(1) {
background: url("img/access/access_nav_01_off.png") no-repeat;
border-radius: 1.8rem 0 0 0;
}
.tab:nth-child(2) {
background: url("img/access/access_nav_02_off.png") no-repeat;
}
.tab:nth-child(3) {
background: url("img/access/access_nav_03_off.png") no-repeat;
}
.tab:nth-child(4) {
background: url("img/access/access_nav_04_off.png") no-repeat;
}
.tab:nth-child(5) {
background: url("img/access/access_nav_05_off.png") no-repeat;
}
.tab:nth-child(6) {
background: url("img/access/access_nav_06_off.png") no-repeat;
border-radius: 0 1.8rem 0 0;
}
.tab:nth-child(1):hover,
.tab:nth-child(1).is-active {
background: url("img/access/access_nav_01_on.png") no-repeat;
}
.tab:nth-child(2):hover,
.tab:nth-child(2).is-active {
background: url("img/access/access_nav_02_on.png") no-repeat;
}
.tab:nth-child(3):hover,
.tab:nth-child(3).is-active {
background: url("img/access/access_nav_03_on.png") no-repeat;
}
.tab:nth-child(4):hover,
.tab:nth-child(4).is-active {
background: url("img/access/access_nav_04_on.png") no-repeat;
}
.tab:nth-child(5):hover,
.tab:nth-child(5).is-active {
background: url("img/access/access_nav_05_on.png") no-repeat;
}
.tab:nth-child(6):hover,
.tab:nth-child(6).is-active {
background: url("img/access/access_nav_06_on.png") no-repeat;
}
.panel {
display: none;
padding-bottom: 3rem;
}
.panel.is-show {
display: block;
}
.panel a {
color: #09369d;
text-decoration: underline;
}
.panel a:hover {
text-decoration: none;
}

/* #beginners */
#beginners .opa {
max-width: 800px;
margin: 0 auto;
}
#beginners .opa + h2 {
margin-top: 8rem;
}


/* footer
------------------------------------------------------------ */
footer {
background: #000;
}
footer section {
padding: 3em 0 120px;
}
footer h1 {
width: 188px;
margin: 0 auto 3rem;
}
footer p {
color: #FFF;
font-size: 1.2rem;
line-height: 1.3;
}
footer p + p {
font-size: 1.1rem;
margin-top: 1rem;
}

/* #sns */
#sns {
background: #FFF;
}

/* #ticket */
#ticket {
width: 100%;
position: fixed;
bottom: 0;
left: 0;
z-index: 10;
}
#ticket a {
background: var(--color-secondary);
color: #FFF;
font-size: 4.5rem;
display: flex;
justify-content: center;
align-items: center;
white-space: nowrap;
}
#ticket a span {
font-size: 3.2rem;
padding: 0 10px;
}
#ticket a:hover {
background: #000;
}





@media screen and (max-width: 768px) {

/* set
------------------------------------------------------------ */
.pc {
display: none;
}
.smd,
.smd-block {
display: block;
}

/* common
------------------------------------------------------------ */
/* style */
.w10 img {width: 10%;}
.w20 img {width: 20%;}
.w30 img {width: 30%;}
.w40 img {width: 40%;}
.w50 img {width: 50%;}
.w60 img {width: 60%;}
.w70 img {width: 70%;}
.w80 img {width: 80%;}
.w90 img {width: 90%;}

/* gourmet */
.col-3 >* {
flex-basis: 48%;
}

/* .slide */
.swiper-button-prev {
left: -4%;
}
.swiper-button-next {
right: -4%;
}

.slide.center .swiper-wrapper {
justify-content: flex-start;
}

/* main
------------------------------------------------------------ */
main {
margin-top: 60px;
}

/* #access */
#access .tab-group {
height: 130px;
}

/* footer
------------------------------------------------------------ */
footer section {
padding: 3em 0 100px;
}

}


@media screen and (max-width: 430px) {

/* set
------------------------------------------------------------ */
html {
font-size: 55%;
}
.smd,.smp-none {
display: none;
}
.smp,
.smp-block {
display: block;
}
br.smp {
font-size: 0;
}

/* common
------------------------------------------------------------ */
/* flexbox */
.col-2 {
display: block;
}

/* style */
.smp-center {
text-align: center;
}
.smp-left {
text-align: left;
}
.w10s img {width: 10%;}
.w20s img {width: 20%;}
.w30s img {width: 30%;}
.w40s img {width: 40%;}
.w50s img {width: 50%;}
.w60s img {width: 60%;}
.w70s img {width: 70%;}
.w80s img {width: 80%;}
.w90s img {width: 90%;}
dl {
display: block;
overflow: hidden;
}
dl dd {
padding-top: .3em;
}
dl dd + dt {
margin-left: 0;
}

/* .slide */
li.swiper-slide h3 {
min-height: auto;
padding: 1rem 0
}
.swiper-slide figure {
padding: 1.5em;
display: block;
}
.swiper-slide figure h3 {
font-size: 2rem;
text-align: center;
padding: .5em 1em;
display: block;
position: static;
}
.swiper-slide figure h3::before {
position: absolute;
top: 1em;
left: 1em;
}
.swiper-slide figure p {
margin: 0 0 1em;
}

/* main
------------------------------------------------------------ */
/* #nav */
#nav {
background: var(--bg-sky);
}
#nav nav ul li {
flex: 0 0 calc((100% - 6rem) / 3);
}

/* #special_01 */
#special_01 figure {
margin: calc(( 200 / 1366 * 100%) / -2) auto 2rem;
flex-direction: column-reverse;
}

/* #special_02 */
#special_02 p {
width: 80%;
margin: 0 auto 2rem;
}

/* #special_03 */
.box {
padding: 2rem;
}
.box h1 em {
font-size: 2.3rem;
text-align: center;
display: block;
padding: 0 .5em;
}
.box figure {
display: block;
}
.box figcaption {
margin-bottom: 2rem;
}

/* #schedule */
#schedule ol::before {
left: 1.5em;
}
#schedule ol li {
min-height: inherit;
margin-top: 3em;
}
#schedule ol li time {
font-size: 2.8rem;
width: 3em;
height: 3em;
top: -1em;
left: -2%;
}
#schedule ol li p {
font-size: 2rem;
height: auto;
padding: .8em 1em .8em 4em;
border-radius: .5em;
position: static;
}
#schedule ol li.kick-off p {
font-size: 4rem;
}

/* #event */
#event ul li figure {
padding: 1rem;
}
#event ul li figcaption h3 {
font-size: 2.4rem;
}

/* #festival */
#festival dl {
padding-left: 20%;
}

/* #access */
#access h2 + p img {
height: 35px;
}
#access .tab-group {
height: 50px;
}
#access .panel-group h3.CLR strong {
font-size: 2.8rem;
border-bottom: 3px solid var(--color-LOGO);
}
.access {
background: #FFF;
border: 1rem solid var(--color-LOGO);
border-radius: 2rem;
position: relative;
}
.tab {
height: 67px;
}
.tab:nth-child(1) {
border-radius: .9rem 0 0 0;
}
.tab:nth-child(5) {
border-radius: 0 .9rem 0 0;
}
.access::before {
width: 100px;
height: 120px;
top: calc(-120px - 1rem);
}

/* footer
------------------------------------------------------------ */
/* #ticket */
#ticket a {
height: 60px;
padding: 0 5%;
}
#ticket a span {
font-size: 2.2rem;
padding: 0 5px;
}

}

/* 2026/04/03追加 */
@media screen and (min-width: 768px) {
#enjoy {
padding-bottom: 12rem;
}
#event {
padding-top: 6rem;
}
}