@charset "utf-8";
/* CSS Document */

/*--------------------------------------------------------------------------
アニメーション
--------------------------------------------------------------------------*/
@-webkit-keyframes opacity {
	0% {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
@keyframes opacity {
	0% {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
@-webkit-keyframes bounce {
	0% {
		rotate: 10deg;
		translate: 60px -70px;
	}
	10% {
		rotate: 0deg;
		translate: 40px -70px;
	}
	40% {
		rotate: -20deg;
		translate: 10px 0;
	}
	50% {
		rotate: -30deg;
		translate: 0 -10px;
	}
	60% {
		rotate: -40deg;
		translate: -10px 0;
	}
	70% {
		rotate: -55deg;
		translate: -15px -4px;
	}
	80% {
		rotate: -57deg;
		translate: -18px 0;
	}
	90% {
		tanslate: -20px -2px;
		rotate: -59deg;
	}
	to {
		rotate: -63deg;
		translate: -21px 0;
	}
}
@keyframes bounce {
	0% {
		rotate: 10deg;
		translate: 60px -70px;
	}
	10% {
		rotate: 0deg;
		translate: 40px -70px;
	}
	40% {
		rotate: -20deg;
		translate: 10px 0;
	}
	50% {
		rotate: -30deg;
		translate: 0 -10px;
	}
	60% {
		rotate: -40deg;
		translate: -10px 0;
	}
	70% {
		rotate: -55deg;
		translate: -15px -4px;
	}
	80% {
		rotate: -57deg;
		translate: -18px 0;
	}
	90% {
		tanslate: -20px -2px;
		rotate: -59deg;
	}
	to {
		rotate: -63deg;
		translate: -21px 0;
	}
}
@-webkit-keyframes return {
	0% {
		rotate: -63deg;
		translate: -21px 0;
	}
	40% {
		rotate: -170deg;
		translate: -81px 0;
	}
	80% {
		rotate: 10deg;
		translate: 10px 0;
	}
	to {
		rotate: 0deg;
		translate: 0 0;
	}
}
@keyframes return {
	0% {
		rotate: -63deg;
		translate: -21px 0;
	}
	40% {
		rotate: -170deg;
		translate: -81px 0;
	}
	80% {
		rotate: 10deg;
		translate: 10px 0;
	}
	to {
		rotate: 0deg;
		translate: 0 0;
	}
}
@-webkit-keyframes rolling {
	0% {
		rotate: 0deg;
		translate: 0 0;
	}
	20% {
		rotate: -170deg;
		translate: -81px 0;
	}
	40% {
		rotate: 25deg;
		translate: 20px 0;
	}
	50% {
		rotate: 0deg;
		translate: 0 0;
	}
	to {
		rotate: 0deg;
		translate: 0 0;
	}
}
@keyframes rolling {
	0% {
		rotate: 0deg;
		translate: 0 0;
	}
	20% {
		rotate: -170deg;
		translate: -81px 0;
	}
	40% {
		rotate: 25deg;
		translate: 20px 0;
	}
	50% {
		rotate: 0deg;
		translate: 0 0;
	}
	to {
		rotate: 0deg;
		translate: 0 0;
	}
}
@-webkit-keyframes bounce-left {
	0% {
		rotate: -10deg;
		translate: -60px -70px;
	}
	10% {
		rotate: 0deg;
		translate: -40px -70px;
	}
	40% {
		rotate: 20deg;
		translate: -10px 0;
	}
	50% {
		rotate: 30deg;
		translate: 0 -10px;
	}
	60% {
		rotate: 40deg;
		translate: 10px 0;
	}
	70% {
		rotate: 55deg;
		translate: 15px -4px;
	}
	80% {
		rotate: 57deg;
		translate: 18px 0;
	}
	90% {
		tanslate: 20px -2px;
		rotate: 59deg;
	}
	to {
		rotate: 63deg;
		translate: 21px 0;
	}
}
@keyframes bounce-left {
	0% {
		rotate: -10deg;
		translate: -60px -70px;
	}
	10% {
		rotate: 0deg;
		translate: -40px -70px;
	}
	40% {
		rotate: 20deg;
		translate: -10px 0;
	}
	50% {
		rotate: 30deg;
		translate: 0 -10px;
	}
	60% {
		rotate: 40deg;
		translate: 10px 0;
	}
	70% {
		rotate: 55deg;
		translate: 15px -4px;
	}
	80% {
		rotate: 57deg;
		translate: 18px 0;
	}
	90% {
		tanslate: 20px -2px;
		rotate: 59deg;
	}
	to {
		rotate: 63deg;
		translate: 21px 0;
	}
}
@-webkit-keyframes return-left {
	0% {
		rotate: 63deg;
		translate: 21px 0;
	}
	40% {
		rotate: 170deg;
		translate: 81px 0;
	}
	80% {
		rotate: -10deg;
		translate: -10px 0;
	}
	to {
		rotate: 0deg;
		translate: 0 0;
	}
}
@keyframes return-left {
	0% {
		rotate: 63deg;
		translate: 21px 0;
	}
	40% {
		rotate: 170deg;
		translate: 81px 0;
	}
	80% {
		rotate: -10deg;
		translate: -10px 0;
	}
	to {
		rotate: 0deg;
		translate: 0 0;
	}
}
@-webkit-keyframes rolling-left {
	0% {
		rotate: 0deg;
		translate: 0 0;
	}
	20% {
		rotate: 170deg;
		translate: 81px 0;
	}
	40% {
		rotate: -25deg;
		translate: -20px 0;
	}
	50% {
		rotate: 0deg;
		translate: 0 0;
	}
	to {
		rotate: 0deg;
		translate: 0 0;
	}
}
@keyframes rolling-left {
	0% {
		rotate: 0deg;
		translate: 0 0;
	}
	20% {
		rotate: 170deg;
		translate: 81px 0;
	}
	40% {
		rotate: -25deg;
		translate: -20px 0;
	}
	50% {
		rotate: 0deg;
		translate: 0 0;
	}
	to {
		rotate: 0deg;
		translate: 0 0;
	}
}


/*--------------------------------------------------------------------------
汎用
--------------------------------------------------------------------------*/
*,:after,:before {
	border-style: solid;
	border-width: 0;
	box-sizing: border-box;
}
html {
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: transparent;
	line-height: 1.15;
}
body {
	margin: 0;
}
main {
	display: block;
}
dl,iframe,p,figure {
	margin: 0;
}
h1,h2,h3,h4 {
	font-size: inherit;
	font-weight: inherit;
	margin: 0;
}
ul {
	list-style:none;
	margin: 0;
	padding: 0;
}
dt {
	font-weight: 700;
}
dd {
	margin-left: 0;
}
a {
	background-color: transparent;
	color: inherit;
	text-decoration: none;
}
iframe,img {
	vertical-align: bottom;
}
button {
	-webkit-appearance: none;
	appearance: none;
	background: transparent;
	border-radius: 0;
	color: inherit;
	font: inherit;
	margin: 0;
	padding: 0;
	text-align: inherit;
	text-transform: inherit;
	vertical-align: middle;
}
:root {
	--background-color: #eff7ec;
	--theme-color: #cf4f20;
	--highlight-color: #eb6877;
	--header-height: 33px;
	--intro-zindex: 1001;
	--header-zindex: 1000;
	--menu-zindex: 999;
	--modal-zindex: 888;
	--leading-trim: calc(0.5em - 1lh/2)
}
html body {
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	font-family: Hiragino Kaku Gothic ProN,ヒラギノ角ゴ ProN,Hiragino Kaku Gothic Pro,ヒラギノ角ゴ Pro,Hiragino Sans,ヒラギノ角ゴシック,sans-serif;
	font-weight: 400;
	line-height: 1;
}
html body img,html body video {
	height: auto;
	width: 100%;
}


/*--------------------------------------------------------------------------
部品
--------------------------------------------------------------------------*/
/*.scroll-in*/
html body .scroll-in {
	opacity: 0;
	translate: 0 20px;
}
html body .scroll-in.show {
	opacity: 1;
	transition: .5s ease;
	translate: 0 0;
}

/*.sp_540*/
html body .sp_540 {
	display: block;
}
@media screen and (min-width:540px) {
	html body .sp_540 {
		display: none!important;
	}
}

/*.pc_540*/
html body .pc_540 {
	display: block;
}
@media screen and (max-width:540px) {
	html body .pc_540 {
		display: none!important;
	}
}

/*改行*/
.br-sp {
	display: none;
}
@media screen and (max-width: 1080px) {
	.br-pc {
		display: none;
	}
	.br-sp {
		display: inline-block;
	}
}

/*------------------------------------
.bg-image
------------------------------------*/
html body .bg-image {
	inset: 0;
	object-position: center center;
	opacity: 0;
	position: fixed;
}
html body .bg-image,
html body .bg-image img {
	height: 100%;
	object-fit: cover;
	width: 100%;
	z-index: 1;
}
/*html body .bg-image img {
	position: relative;
	transition: .6s ease;
}
html body .bg-image:before {
	background-color: var(--theme-color);
	content: "";
	inset: 0;
	mix-blend-mode: screen;
	opacity: 0;
	position: absolute;
	transition: .6s ease;
	width: 100%;
	z-index: 2;
}
html body .bg-image.green img {
	-webkit-filter: grayscale(1);
	filter: grayscale(1);
}
html body .bg-image.green:before {
	opacity: 1;
}*/

/*------------------------------------
.pc-main-menu
------------------------------------*/
html body .pc-main-menu {
	display: none;
}
@media screen and (min-width:1480px) {
	html body .pc-main-menu {
		-ms-overflow-style: none;
		background-color: #f7f6e9;
		display: block;
		max-height: calc(100% - 70px);
		opacity: 0;
		overflow: scroll;
		padding-bottom: 25px;
		padding-top: 31px;
		position: fixed;
		right: calc(58% + 300px);
		scrollbar-width: none;
		top: 50px;
		translate: 0 20px;
		width: 300px;
		z-index: 2;
	}
	html body .pc-main-menu::-webkit-scrollbar {
		display: none;
	}
	html body .pc-main-menu .title {
		margin-inline: auto;
		width: 220px;
	}
	html body .pc-main-menu .information {
		margin-top: 20px;
		text-align: center;
	}
	html body .pc-main-menu .information .date {
		font-family: acumin-variable,ryo-gothic-plusn,sans-serif;
		font-size: 2rem;
		font-variation-settings: "slnt" 0,"wdth" 90,"wght" 700;
	}
	html body .pc-main-menu .information .date .youbi {
		font-size: .53125rem;
	}
	html body .pc-main-menu .information .date .line {
		background-color: #000;
		display: inline-block;
		height: 2px;
		margin-inline: 3px;
		vertical-align: middle;
		width: 10px;
	}
	html body .pc-main-menu .information .place {
		font-size: .7125rem;
		font-weight: 700;
		margin-top: 10px;
	}
	html body .pc-main-menu .menu {
		margin-inline: auto;
		margin-top: 35px;
		width: 221.5px;
	}
	html body .pc-main-menu .menu>li:last-child {
		border-bottom: none;
	}
	html body .pc-main-menu .menu > li a,
	html body .pc-main-menu .menu > li p {
		align-items: center;
		display: flex;
		font-size: .6875rem;
		font-weight: 500;
		height: 30px;
		justify-content: space-between;
		padding-left: 10px;
		transition: .3s ease;
		width: 100%;
	}
	html body .pc-main-menu .menu > li a:hover,
	html body .pc-main-menu .menu > li p:hover {
		color: var(--theme-color);
		cursor: pointer;
	}
	html body .pc-main-menu .menu > li a.disable,
	html body .pc-main-menu .menu > li p.disable {
		color: #a6a6a6;
		pointer-events: none;
	}
	html body .pc-main-menu .menu > li a.current,
	html body .pc-main-menu .menu > li p.current {
		background-color: #e6e6e6;
	}
}

/*------------------------------------
.pc-right
------------------------------------*/
html body .pc-right {
	display: none;
}
@media screen and (min-width:1480px) {
	html body .pc-right {
		display: block;
		left: calc(58% + 300px);
		padding-top: 13.5px;
		position: fixed;
		top: 50px;
		z-index: 2;
	}
	html body .pc-right .count-down-wrapper {
		opacity: 0;
	}
	html body .pc-right a {
		display: block;
		margin-top: 20px;
		opacity: 0;
		translate: 0 10px;
		width: 300px;
	}
	html body .pc-right a img {
		transition: .3s ease;
	}
}
@media screen and (min-width:1480px) and (hover:hover) {
	html body .pc-right a:hover img {
		opacity: .7;
	}
}

/*------------------------------------
#ticket-tab
------------------------------------*/
html body #ticket-tab {
	align-items: center;
	aspect-ratio: 1/1;
	background-color: var(--theme-color);
	border-radius: 5px 0 0 5px;
	bottom: 30px;
	box-shadow: 0 0 4px 0 rgba(0,0,0,.3);
	color: #fff;
	display: flex;
	justify-content: center;
	position: fixed;
	right: 0;
	transition: .4s ease-in-out 0s;
	translate: 110% 0;
	width: 64.5px;
	z-index: var(--modal-zindex);
}
html body #ticket-tab.show {
	translate: 0 0;
}
html body #ticket-tab .inner {
	text-align: center;
}
html body #ticket-tab .inner .emoji {
	font-size: 1.5rem;
}
html body #ticket-tab .inner .text {
	font-size: .625rem;
	font-weight: 700;
	line-height: 1.2;
	margin-top: 3px;
}

/*------------------------------------
#header
------------------------------------*/
html body #main {
	background-color: var(--background-color);
	margin-inline: auto;
	max-width: 800px;
	position: relative;
	z-index: 2;
}
@media screen and (min-width:540px) {
	html body #main,
	html body #main #main-visual {
		background-color: transparent;
	}
	html body #main section {
		background-color: var(--background-color);
	}
}
html body:has(#menu.show) #header .head-menu li {
	background-color: #fff;
}
html body:has(#menu.show) #header .head-menu li {
	background-color: var(--theme-color);
	color: #fff;
}
html body:has(#menu.show) #header .head-menu li .hamburger span {
	background-color: #fff;
}
html body:has(#menu.show) #header .head-menu li .hamburger span:first-child {
	rotate: 45deg;
	top: 50%;
	translate: -50% -50%;
}
html body:has(#menu.show) #header .head-menu li .hamburger span:nth-child(2) {
	opacity: 0;
}
html body:has(#menu.show) #header .head-menu li .hamburger span:nth-child(3) {
	rotate: -45deg;
	top: 50%;
	translate: -50% -50%;
}
html body.show .bg-image {
	opacity: 1;
	transition: 0s ease;
}
html body.show #header .head-menu {
	transition:.4s;
	translate: 0 0;
}
@media screen and (min-width:1480px) {
	html body.show .pc-main-menu {
		opacity: 1;
		transition: .5s ease;
		translate: 0 0;
	}
}
html body.show .pc-right .count-down-wrapper,html body.show .pc-right a {
	opacity: 1;
	transition: .5s ease;
	translate: 0 0;
}
html body.show .pc-right .count-down-wrapper .dates span,
html body.show .pc-right .count-down-wrapper .hours span,
html body.show .pc-right .count-down-wrapper .minutes span,
html body.show .pc-right a .dates span,
html body.show .pc-right a .hours span,
html body.show .pc-right a .minutes span {
	rotate: x 0deg;
}
html body.show .pc-right .marche-banner {
	transition-delay: .3s;
}
html body.show .pc-right .instagram-link {
	transition-delay: .6s;
}
html body.show .pc-right .join-us {
	transition-delay: .9s;
}
html body:has(.sub-page) #header .head-menu li {
	background-color: #fff;
}
#header {
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	z-index: var(--header-zindex);
}
@media screen and (min-width:1480px) {
	#header {
		display: none;
	}
}
#header .head-menu {
	align-items: center;
	border-bottom: 1px solid #000;
	display: flex;
	height: var(--header-height);
	justify-content: space-between;
	translate: 0 -100%;
}
#header .head-menu li {
	border-right: 1px solid #000;
	font-family: acumin-variable,ryo-gothic-plusn,sans-serif;
	font-size: .6875rem;
	font-variation-settings: "slnt" 0,"wdth" 90,"wght" 600;
	transition: .3s ease;
	width: 100%;
}
#header .head-menu li,
#header .head-menu li a {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
}
#header .head-menu li a {
	width: 100%;
}
#header .head-menu li a span {
	margin-left: 5px;
}
#header .head-menu li:first-child a:before {
	background-color: #000;
	-webkit-clip-path: polygon(0 0,100% 0,50% 100%);
	clip-path: polygon(0 0,100% 0,50% 100%);
	content: "";
	display: block;
	height: 3px;
	margin-right: 5px;
	width: 4px;
}
#header .head-menu li:last-child {
	background-color: #fff;
	border-right: none;
}
#header .head-menu li .hamburger {
	height: 12px;
	margin-left: 5px;
	position: relative;
	width: 14px;
}
#header .head-menu li .hamburger span {
	background-color: #000;
	display: block;
	height: 1px;
	left: 50%;
	position: absolute;
	top: 50%;
	transition: .3s ease;
	translate: -50% -50%;
	width: 100%;
}
#header .head-menu li .hamburger span:first-child {
	top: 0;
	translate: -50% 0;
}
#header .head-menu li .hamburger span:nth-child(3) {
	top: 100%;
	translate: -50% -100%;
}
#header.bg .head-menu li {
	background-color: #fff;
}

/*------------------------------------
#menu
------------------------------------*/
#menu {
	-webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px);
	height: calc(100% - var(--header-height));
	left: 0;
	opacity: 0;
	position: fixed;
	top: var(--header-height);
	transition: .5s ease;
	visibility: hidden;
	width: 100%;
	z-index: var(--menu-zindex);
}
#menu.show {
	opacity: 1;
	visibility: visible;
}
#menu.show #navigation {
	transition: .5s ease .3s;
	translate: 0 0;
}
#menu #navigation {
	background-color: #fff;
	height: 100%;
	overflow: scroll;
	position: absolute;
	right: 0;
	top: 0;
	transition: .5s ease 0s;
	translate: 100% 0;
	width: 215px;
}
#menu #navigation .main-menu {
	margin: 0 auto;
	padding-bottom: 20px;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
}
#menu #navigation .main-menu .main-menu-item .anchor .big,
#menu #navigation .main-menu .main-menu-item a .big {
	font-family: acumin-variable,ryo-gothic-plusn,sans-serif;
	font-size: 1rem;
	font-variation-settings: "slnt" 0,"wdth" 90,"wght" 600;
	font-weight: 700;
	margin-top: 20px;
}
#menu #navigation .main-menu .main-menu-item .anchor .small,
#menu #navigation .main-menu .main-menu-item a .small {
	font-size: .625rem;
	margin-top: 5px;
}
#menu #navigation .main-menu .main-menu-item .sub-menu .sub-menu-item {
	margin-top: 12px;
}
#menu #navigation .main-menu .main-menu-item .sub-menu .sub-menu-item a {
	align-items: center;
	display: flex;
	font-family: acumin-variable,ryo-gothic-plusn,sans-serif;
	font-size: .75rem;
	font-variation-settings: "slnt" 0,"wdth" 90,"wght" 600;
	justify-content: flex-start;
}
#menu #navigation .main-menu .main-menu-item .sub-menu .sub-menu-item a:before {
	background-color: #000;
	content: "";
	display: block;
	height: 1px;
	margin-right: 5px;
	width: 10px;
}
#menu #navigation .main-menu .main-menu-item .sub-menu .sub-menu-item a.disable:before {
	background-color: #a6a6a6;
}
#menu #navigation .main-menu .main-menu-item a.disable {
	color: #a6a6a6;
	pointer-events: none;
}

/*------------------------------------
#opening
------------------------------------*/
#opening {
	height: 100vh;
	height: 100svh;
	inset: 0;
	opacity: 0;
	position: fixed;
	visibility: hidden;
	width: 100%;
	z-index: var(--intro-zindex);
}
#opening.show {
	opacity: 1;
	visibility: visible;
}
#opening .background {
	inset: 0;
	position: absolute;
	z-index: 1;
}
#opening .background .img {
	height: 100%;
	inset: 0;
	position: absolute;
	width: 100%;
}
#opening .background .img:first-child {
	z-index: 3;
}
#opening .background .img:nth-child(2) {
	z-index: 2;
}
#opening .background .img:nth-child(3) {
	z-index: 1;
}
#opening .background .img img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}
#opening .title {
	align-items: center;
	display: flex;
	height: calc(100% - 83px - 92vw);
	justify-content: center;
	left: 0;
	margin: 0 auto;
	opacity: 0;
	position: absolute;
	right: 0;
	scale: .8;
	top: 32px;
	transition: .4s ease-in-out;
	z-index: 2;
}
@media screen and (min-width:540px) {
	#opening .title {
		height: auto;
		top: 19.53125%;
		translate: 0 -50%;
		width: 540px;
	}
}
#opening .title .img {
	background-color: #fff;
	-webkit-mask-image: url(../images/title.png);
	mask-image: url(../images/title.png);
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	width: 80%;
}
@media screen and (min-width:540px) {
	#opening .title .img {
		width: 540px;
	}
}
#opening .title .img img {
	opacity: 0;
}
#opening .bar-block {
	align-items: center;
	aspect-ratio: 1/1;
	bottom: 51.5px;
	display: flex;
	justify-content: center;
	left: 0;
	margin-inline: auto;
	position: absolute;
	right: 0;
	width: 92%;
	z-index: 2;
}
@media screen and (min-width:540px) {
	#opening .bar-block {
		aspect-ratio: none;
		bottom: 50%;
		height: 4px;
		width: 540px;
	}
}
#opening .bar-block .bar {
	background-color: #fff;
	height: 4px;
	scale: 0 1;
	-webkit-transform-origin: 0 0;
	transform-origin: 0 0;
	width: 100%;
}
#opening .num {
	align-items: center;
	background-color: #fff;
	border-radius: 10px;
	bottom: 20px;
	display: flex;
	height: 20px;
	justify-content: center;
	left: 0;
	margin-inline: auto;
	position: absolute;
	right: 0;
	width: 45px;
	z-index: 2;
}
#opening .num span {
	color: var(--theme-color);
	font-family: acumin-variable,ryo-gothic-plusn,sans-serif;
	font-size: .6875rem;
	font-variation-settings: "slnt" 0,"wdth" 100,"wght" 500;
}
#opening .num span:after {
	content: "%";
}
#opening.start .title {
	opacity: 1;
	scale: 1;
}
#opening.start.step1 .title .img {
	background-color: #000;
	transition: .7s ease 0s;
}
#opening.start.step1 .background .img:first-child,
#opening.start.step2 .background .img:nth-child(2) {
	opacity: 0;
	scale: 1.1;
	transition: .7s ease-in-out;
}
#opening.start.close {
	opacity: 0;
	transition: .2s ease;
	visibility: hidden;
}

/*------------------------------------
#main-visual
------------------------------------*/
#main-visual {
	height: 100vh;
	height: 100svh;
	position: relative;
	width: 100%;
}
@media screen and (min-width:540px) {
	#main-visual {
		height: auto;
		padding-bottom: 55px;
		padding-top: 50px;
	}
}
#main-visual .bg {
	height: 100%;
	inset: 0;
	object-fit: cover;
	position: absolute;
	width: 100%;
	z-index: 1;
}
@media screen and (min-width:540px) {
	#main-visual .bg {
		display: none;
	}
}
#main-visual .title {
	align-items: center;
	display: flex;
	height: calc(100% - 83px - 92vw);
	justify-content: center;
	left: 0;
	margin: 0 auto;
	position: absolute;
	right: 0;
	top: 32px;
	z-index: 2;
}
@media screen and (min-width:540px) {
	#main-visual .title {
		display: none;
	}
}
#main-visual .title img {
	width: 80%;
}
#main-visual .main-slider {
	bottom: 51.5px;
	-webkit-clip-path: inset(calc(50% - 2px) 0 calc(50% - 2px) 0);
	clip-path: inset(calc(50% - 2px) 0 calc(50% - 2px) 0);
	left: 0;
	margin-inline: auto;
	position: absolute;
	right: 0;
	width: 92%;
	z-index: 2;
}
@media screen and (min-width:540px) {
	#main-visual .main-slider {
		bottom: auto;
		position: relative;
		width: 100%;
	}
}
#main-visual .main-slider .splide__pagination {
	align-items: center;
	background-color: #fff;
	border-radius: 10px;
	display: flex;
	height: 20px;
	justify-content: center;
	left: 0;
	margin: 0 auto;
	padding-inline: 4px;
	position: absolute;
	right: 0;
	top: calc(100% + 15px);
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
}
#main-visual .main-slider .splide__pagination li {
	display: flex;
	height: 7.5px;
	margin: 0 3.75px;
	width: 7.5px;
}
#main-visual .main-slider .splide__pagination li button {
	background-color: #d9d9d9;
	border-radius: 50%;
	height: 100%;
	padding: 0;
	width: 100%;
}
#main-visual .main-slider .splide__pagination li button.is-active {
	background-color: var(--theme-color);
}
#main-visual.show .main-slider {
	-webkit-clip-path: inset(0 0 -36px 0);
	clip-path: inset(0 0 -36px 0);
	transition: .5s ease-in-out .2s;
}

/*------------------------------------
#intro
------------------------------------*/
#intro {
	padding: 60px;
}
#intro .lead {
	font-size: 1rem;
	line-height: 2;
	text-align: justify;
}
.ticket-information {
	display: flex;
	flex-direction: column;
	gap: 4px;
	max-width: 400px;
	width: 89.3333333333%;
	margin-inline: auto;
	padding-top: 40px;
}
.ticket-information p {
	align-items: center;
	background-color: var(--theme-color);
	color: #fff;
	display: flex;
	font-family: acumin-variable,ryo-gothic-plusn,sans-serif;
	font-size: 1.125rem;
	font-variation-settings: "slnt" 0,"wdth" 90,"wght" 700;
	letter-spacing: .08em;
	height: 40px;
	justify-content: center;
	text-align: center;
	width: 100%;
}
.ticket-information dl {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.ticket-information dl dd,
.ticket-information dl dt {
	align-items: center;
	background-color: #fff;
	display: flex;
	height: 40px;
	justify-content: center;
	text-align: center;
	width: 50%;
}
.ticket-information dl dt {
	font-size: .875rem;
	font-weight: 400;
	position: relative;
}
.ticket-information dl dt:after {
	background-color: var(--background-color);
	content: "";
	display: block;
	height: 20px;
	position: absolute;
	right: 0;
	top: 50%;
	translate: 0 -50%;
	width: 1px;
}
.ticket-information dl dd {
	font-size: .875rem;
	font-weight: 700;
}
.ticket-information dl dd span {
	font-size: .625rem;
}
@media screen and (max-width:540px) {
	#intro {
		padding: 40px;
	}
	#intro .lead {
		font-size: .75rem;
	}
	.ticket-information p {
		font-size: 16px;
	}
}

/*.count-down-wrapper*/
#intro .count-down-wrapper {
	margin-top: 33.5px;
}
@media screen and (min-width:1480px) {
	#intro .count-down-wrapper {
		display: none;
	}
}
#intro .count-down-wrapper.show .dates span,
#intro .count-down-wrapper.show .hours span,
#intro .count-down-wrapper.show .minutes span {
	rotate: x 0deg;
}
.count-down-wrapper {
	align-items: flex-end;
	display: flex;
	justify-content: center;
}
.count-down-wrapper p {
	font-size: .875rem;
	font-weight: 700;
	margin-bottom: 3px;
}
@media screen and (min-width:1480px) {
	.count-down-wrapper p {
		font-size: .84375rem;
	}
}
.count-down-wrapper .dates,
.count-down-wrapper .hours,
.count-down-wrapper .minutes {
	align-items: center;
	display: flex;
	justify-content: flex-start;
	margin-left: 10px;
	margin-right: 7px;
}
.count-down-wrapper .dates span,
.count-down-wrapper .hours span,
.count-down-wrapper .minutes span {
	align-items: center;
	background-color: #fff;
	border-radius: 2px;
	box-shadow: 1px 1px 0 #d9d9d9;
	color: var(--theme-color);
	display: flex;
	font-family: acumin-variable,ryo-gothic-plusn,sans-serif;
	font-size: 2.5rem;
	font-variation-settings: "slnt" 0,"wdth" 67,"wght" 700;
	height: 37px;
	justify-content: center;
	margin-right: 2px;
	position: relative;
	rotate: x 90deg;
	-webkit-transform-origin: 0 0;
	transform-origin: 0 0;
	transition: .4s ease-in-out;
	width: 22px;
}
@media screen and (min-width:1480px) {
	.count-down-wrapper .dates span,
	.count-down-wrapper .hours span,
	.count-down-wrapper .minutes span {
		font-size: 2.375rem;
		width: 21px;
	}
}
.count-down-wrapper .dates span:last-child,
.count-down-wrapper .hours span:last-child,
.count-down-wrapper .minutes span:last-child {
	margin-right: 0;
}
.count-down-wrapper .dates span:after,
.count-down-wrapper .dates span:before,
.count-down-wrapper .hours span:after,
.count-down-wrapper .hours span:before,
.count-down-wrapper .minutes span:after,
.count-down-wrapper .minutes span:before {
	background-color: #000;
	content: "";
	display: block;
	height: 4px;
	position: absolute;
	top: 0;
	translate: 0 -50%;
	width: 1px;
}
.count-down-wrapper .dates span:before,
.count-down-wrapper .hours span:before,
.count-down-wrapper .minutes span:before {
	left: 5px;
}
.count-down-wrapper .dates span:after,
.count-down-wrapper .hours span:after,
.count-down-wrapper .minutes span:after {
	right: 5px;
}
.count-down-wrapper .dates span {
	transition-delay: .1s;
}
.count-down-wrapper .dates span:nth-child(2) {
	transition-delay: .2s;
}
.count-down-wrapper .dates span:nth-child(3) {
	transition-delay: .3s;
}
.count-down-wrapper .hours span {
	transition-delay: .4s;
}
.count-down-wrapper .hours span:nth-child(2) {
	transition-delay: .5s;
}
.count-down-wrapper .minutes span {
	transition-delay: .6s;
}
.count-down-wrapper .minutes span:nth-child(2) {
	transition-delay: .7s;
}

/*？*/
.normal-button {
	display: block;
	background-color: #9fa0a0;
	border-radius: 4px;
	width: 80%;
	font-size: .75rem;
	letter-spacing: .1em;
	text-align: center;
	color: #fff;
	box-shadow: 0px 0px 4px 0px rgba(0,0,0,0.16);
	margin: 0 auto;
	padding: 1.2em 0.4em;
	transition: .5s ease;
}
.normal-button .emoji {
	margin-right: .8em;
}
@media (hover:hover) {
	.normal-button:hover {
		opacity: .6 !important;
	}
	.normal-button:hover .emoji {
		-webkit-animation: shake .5s linear 0s infinite;
		animation: shake .5s linear 0s infinite;
	}
	.normal-button:hover:after {
		background-color: var(--theme-color);
	}
}

/*アニメーション*/
@-webkit-keyframes shake {
	0% {
		rotate: -10deg;
	}
	50% {
		rotate: 10deg;
	}
	to {
		rotate: -3deg;
	}
}
@keyframes shake {
	0% {
		rotate: -10deg;
	}
	50% {
		rotate: 10deg;
	}
	to {
		rotate:-3deg;
	}
}
.normal-button.color-blue {
	background-color: #0073bd;
	border-color: #0073bd;
}
@media (hover:hover) {
	.normal-button.color-blue:hover {
		background-color: transparent;
		color: #0073bd;
	}
	.normal-button.color-blue:hover:after {
		background-color: #0073bd;
	}
}
.normal-button.disable {
	background-color:#e9e8c9;
	border-color:transparent;
	color:#999;
	font-size:.75rem;
	pointer-events:none;
}
.normal-button.disable .emoji {
	-webkit-filter: grayscale(1);
	filter: grayscale(1);
}
.normal-button.disable:after {
	background-color: #999;
}
.normal-button.color-purple {
	background-color: #862acd;
	border-color: #862acd;
}
@media (hover:hover) {
	.normal-button.color-purple:hover {
		background-color: transparent;
		color: #862acd;
}
.normal-button.color-purple:hover:after {
background-color:#862acd
}

}
.normal-button.color-pink {
background-color:#f16baa;
border-color:#f16baa
}
@media (hover:hover) {
.normal-button.color-pink:hover {
background-color:transparent;
color:#f16baa
}
.normal-button.color-pink:hover:after {
background-color:#f16baa
}

}
.hgroup {
border-block:1px solid #000;
padding-bottom:15px;
padding-top:14px;
text-align:center
}
.hgroup h1,.hgroup h2 {
font-family:acumin-variable,ryo-gothic-plusn,sans-serif;
font-size:1.5rem;
font-variation-settings:"slnt" 0,"wdth" 90,"wght" 800
}
.hgroup p {
font-size:.625rem;
margin-top:9px
}

/*------------------------------------
#backnumber
------------------------------------*/
/*#movie*/
#backnumber .inner {
	width: 640px;
	margin: 64px auto 0;
}
#backnumber .movie {
	width: 100%;
	aspect-ratio: 16 / 9;
}
#backnumber .movie iframe {
	width: 100%;
	height: 100%;
}
@media screen and (max-width:540px) {
	#backnumber .inner {
		width: 89.3333333333%;
		margin-top: 24px;
	}
}

/*.photo-list*/
#backnumber .photo-list {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	width: 89.3333333333%;
	margin-inline: auto;
	padding-top: 24px;
}
#backnumber .photo-list li {
	width: 100%;
}
@media screen and (min-width:540px) {
	#backnumber .photo-list {
		width: 640px;
		padding-top: 40px;
	}
	#backnumber .photo-list li {
		width: calc((100% - 16px)/2);
	}
}

/*------------------------------------
#event
------------------------------------*/
#event {
	padding-top: 100px;
}
#event .inner {
	width: 640px;
	margin: auto;
	padding-top: 56px;
}
#event .lead {
	font-size: .75rem;
	line-height: 1.8333333333;
	text-align: justify;
	margin-bottom: 40px;
}
@media screen and (max-width:540px) {
	#event .inner {
		width: 89.3333333333%;
	}
}
#event .inner .events {
	align-items: flex-start;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 56px 30px;
}
#event .inner .events .event {
	width: calc((100% - 30px)/2);
}
@media screen and (min-width:540px) {
	#marche .inner .events {
		gap: 40px;
	}
	#marche .inner .events .event {
		width: calc((100% - 40px)/2);
	}
}
#event .inner .events .event .img {
	/*aspect-ratio: 315/210;*/
	aspect-ratio: 315/420;
	overflow: hidden;
	width: 100%;
}
#event .inner .events .event .img img {
	height: 100%;
	object-fit: cover;
	transition: .5s ease;
	width: 100%;
}
#event .inner .events .event .text-area {
	text-align: justify;
	margin-top: 24px;
}
#event .inner .events .event .text-area .event-name {
	font-weight: 600;
	line-height: 1.5;
	margin-block: var(--leading-trim);
	margin-bottom: 8px;
	width: 100%;
}
#event .inner .text-area > p {
	font-family: acumin-variable,ryo-gothic-plusn,sans-serif;
	font-size: .75rem;
	line-height: 1.8333333333;
}
#event .inner .events .event .text-area .attention {
	border: 1px solid #000;
	font-size: .75rem;
	text-align: center;
	margin-top: 24px;
	padding: 1.2em 0;
}
#event .inner .events .event .text-area .link-squ {
	text-align: center;
	margin-top: 24px;
}
#event .inner .events .event .text-area .link-squ span {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #9fa0a0;
	border-radius: 4px;
	height: 40px;
	font-size: .75rem;
	letter-spacing: .1em;
	line-height: 1;
	color: #fff;
	box-shadow: 0px 0px 4px 0px rgba(0,0,0,0.16);
	transition: .5s ease;
}
#event .inner .events .event .text-area .link-squ small {
	display: block;
	font-family: acumin-variable,ryo-gothic-plusn,sans-serif;
	font-size: .75rem;
	margin-bottom: 8px;
}
@media (hover:hover) {
	#event .inner .events .event a:hover .img img {
		scale: 1.1;
	}
	#event .inner .events .event a:hover .text-area .check {
		background-color: transparent;
		color: var(--theme-color);
	}
	#event .inner .events .event a:hover .text-area .link-squ span {
		opacity: .6;
	}
}

/*------------------------------------
#auction
------------------------------------*/
#auction {
	padding-top: 100px;
}
#auction .inner {
	width: 640px;
	margin: auto;
	padding-top: 56px;
}
#auction .lead {
	font-size: .75rem;
	line-height: 1.8333333333;
	text-align: justify;
	margin-top: 24px;
}
#auction .link-squ {
	padding-top: 40px;
}
#auction .link-squ a {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #9fa0a0;
	border-radius: 4px;
	width: 80%;
	height: 48px;
	letter-spacing: .1em;
	line-height: 1;
	color: #fff;
	margin: auto;
	box-shadow: 0px 0px 4px 0px rgba(0,0,0,0.16);
	transition: .5s ease;
}
#auction .link-squ a:hover {
	opacity: .6;
}
@media screen and (max-width:540px) {
	#auction .inner {
		width: 89.3333333333%;
	}
	#auction .link-squ a {
		width: 90%;
	}
}

/*------------------------------------
#craft-market
------------------------------------*/
#craft-market {
	padding-top: 100px;
}
#craft-market .inner {
	width: 640px;
	margin: auto;
	padding-top: 56px;
}
#craft-market .lead {
	font-size: .75rem;
	line-height: 1.8333333333;
	text-align: justify;
	margin-top: 24px;
}
@media screen and (max-width:540px) {
	#craft-market .inner {
		width: 89.3333333333%;
	}
}

/*------------------------------------
#marche
------------------------------------*/
#marche {
	padding-top: 60px;
}
#marche .hgroup .image {
	margin-inline:auto;
	width: 328.5px;
}
#marche .inner {
	width: 640px;
	margin: auto;
	padding-top: 56px;
}
@media screen and (max-width:540px) {
	#marche .inner {
		width: 89.3333333333%;
	}
}
#marche .lead {
	font-size: .75rem;
	line-height: 1.8333333333;
	text-align: justify;
}
#marche .lead p:not(:last-child) {
	margin-bottom: 16px;
}
#marche .info {
	background-color: #ddd;
	text-align: center;
	margin-top: 40px;
	padding: 64px 40px;
}
#marche .marche__block {
	padding-top: 64px;
}
#marche .marche__title {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: var(--theme-color);
	height: 40px;
	font-size: 1.125rem;
	letter-spacing: .08em;
	line-height: 1;
	color: #fff;
	margin-bottom: 40px;
}
@media screen and (max-width:540px) {
	#marche .marche__title {
		font-size: 16px;
	}
}
#marche .inner .shops {
	align-items: flex-start;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 56px 30px;
}
#marche .inner .shops .shop {
	width: calc((100% - 30px)/2);
}
@media screen and (min-width:540px) {
	#marche .inner .shops {
		gap: 40px;
	}
	#marche .inner .shops .shop {
		width: calc((100% - 40px)/2);
	}
}
#marche .inner .shops .shop .img {
	/*aspect-ratio: 315/210;*/
	aspect-ratio: 315/420;
	overflow: hidden;
	width: 100%;
}
#marche .inner .shops .shop .img img {
	height: 100%;
	object-fit: cover;
	transition: .5s ease;
	width: 100%;
}
#marche .inner .shops .shop .text-area {
	text-align: justify;
	margin-top: 24px;
}
#marche .inner .shops .shop .text-area .shop-name {
	font-weight: 600;
	line-height: 1.5;
	margin-block: var(--leading-trim);
	margin-bottom: 8px;
	width: 100%;
}
#marche .inner .shops .shop .text-area p {
	font-family: acumin-variable,ryo-gothic-plusn,sans-serif;
	font-size: .75rem;
	line-height: 1.8333333333;
}
#marche .inner .shops .shop .text-area .food {
	padding-top: 16px;
}
#marche .inner .shops .shop .text-area strong {
	display: block;
	font-size: 14px;
	margin-bottom: 8px;
}
#marche .inner .shops .shop a .text-area .link-squ,
#marche .inner .shops .shop .text-area .link-squ a {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #9fa0a0;
	border-radius: 4px;
	height: 40px;
	font-size: .75rem;
	letter-spacing: .1em;
	line-height: 1;
	color: #fff;
	box-shadow: 0px 0px 4px 0px rgba(0,0,0,0.16);
	transition: .5s ease;
}
#marche .inner .shops .shop a .text-area .link-squ,
#marche .inner .shops .shop .text-area .link-squ {
	margin-top: 24px;
}
#marche .inner .shops .shop .text-area .link-squ {
	display: flex;
	justify-content: center;
	gap: 10px;
}
#marche .inner .shops .shop .text-area .link-squ a {
	width: calc((100% - 10px) / 2);
}
@media (hover:hover) {
	#marche .inner .shops .shop a:hover .img img {
		scale: 1.1;
	}
	#marche .inner .shops .shop a:hover .text-area .check {
		background-color: transparent;
		color: var(--theme-color);
	}
	#marche .inner .shops .shop a:hover .text-area .link-squ,
	#marche .inner .shops .shop .text-area .link-squ a:hover {
		opacity: .6;
	}
}

/*------------------------------------
#activity
------------------------------------*/
#activity {
	padding-top: 100px;
}
#activity .inner {
	width: 640px;
	margin: auto;
	padding-top: 56px;
}
#activity .lead {
	font-size: .75rem;
	line-height: 1.8333333333;
	text-align: justify;
	margin-bottom: 24px;
}
.activity__block {
	background-color: #fff;
	text-align: justify;
	margin-top: 8px;
	padding: 32px 40px;
}
.activity__block h3 {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	letter-spacing: .08em;
	margin-bottom: 16px;
}
.activity__block h3:before,
.activity__block h3:after {
	content: "";
	background-color: #000;
	width: 16px;
	height: 1px;
}
.activity__block h3:before {
	margin-right: 24px;
}
.activity__block h3:after {
	margin-left: 24px;
}
.activity__block p {
	font-size: .75rem;
	line-height: 1.8333333333;
}
@media screen and (max-width:540px) {
	#activity .inner {
		width: 89.3333333333%;
	}
	.activity__block {
		padding: 32px 24px;
	}
	.activity__block h3 {
		font-size: 14px;
		line-height: 1.5;
		margin-bottom: 8px;
	}
	.activity__block h3:before {
		margin-right: 8px;
	}
	.activity__block h3:after {
		margin-left: 8px;
	}
}

/*------------------------------------
#access
------------------------------------*/
#access {
	padding: 60px 0;
}
#access .joinus-slider {
	aspect-ratio: 740/300;
	overflow: clip;
	width: 100%;
}
@media screen and (min-width:540px) {
	#access .joinus-slider {
		width: 1080/360;
	}
}
#access .joinus-slider .img-wrapper {
	align-items: stretch;
	-webkit-animation: slider 20s linear 0s infinite;
	animation: slider 20s linear 0s infinite;
	display: flex;
	height: 100%;
	justify-content: flex-start;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
}
#access .joinus-slider .img-wrapper img {
	height: 100%;
	width: auto;
}
@-webkit-keyframes slider {
	0% {
		translate: 0 0;
	}
	to {
		translate: -50% 0;
	}
}
@keyframes slider {
	0% {
		translate: 0 0
	}
	to {
		translate: -50% 0;
	}
}

/*.inner*/
#access .inner {
	padding: 56px 0;
}
#access .info {
	background-color: #fff;
	border: 1px solid #000;
	border-radius: 10px;
	width: 640px;
	margin: auto;
	padding: 40px;
}
#access .info .head {
	font-size: .875rem;
	font-weight: 700;
}
#access .info dl dd,
#access .info dl dt {
	font-size: .75rem;
	line-height: 1.6666666667;
}
#access .info dl dt {
	font-weight: 700;
	margin-top: 15px;
}
#access iframe {
	width: 100%;
	height: 400px;
	/*-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%);*/
}
@media screen and (max-width:540px) {
	#access .info {
		width: 89.3333333333%;
	}
	#access iframe {
		height: 320px;
	}
}

/*------------------------------------
#footer
------------------------------------*/
#footer {
	background-color: var(--background-color);
	padding-bottom: 30px;
	padding-top: 45px;
}
#footer > .logo {
	display: block;
	margin: 0 auto;
	width: 156.5px;
}
#footer .copy {
	font-size: .625rem;
	margin-top: 50px;
	text-align: center;
}


/*--------------------------------------------------------------------------
木になるイベント用の投稿カテゴリ（kininarutopics）
--------------------------------------------------------------------------*/
/*------------------------------------
.big-logo
------------------------------------*/
.big-logo {
	padding-top: 63.5px;
}
@media screen and (min-width:540px){
	.big-logo {
		display: none;
	}
}
.big-logo .logo {
	margin-inline: auto;
	width: 173px;
}
.big-logo + section {
	padding-top: 30px!important;
}
@media screen and (min-width:540px){
	.big-logo + section {
		margin-top: 35px;
		padding-top: 0!important;
	}
	.big-logo + section .hgroup {
		border-bottom-color: #000;
		border-top: none;
		padding-top: 30px;
	}
}
@media screen and (min-width:540px) and (min-width:540px){
	.big-logo + section .hgroup h1,
	.big-logo + section .hgroup h2 {
		font-size: 2.25rem;
	}
}

/*------------------------------------
#information
------------------------------------*/
#information .information-single-content {
	margin-inline: auto;
	margin-top: 40px;
	width: 80%;
}
#information .information-single-content .title {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5555555556;
}
#information .information-single-content .date {
	font-size: .6875rem;
	font-weight: 500;
	margin-top: 10px;
}
#information .information-single-content .main-visual {
	margin-top: 15px;
}
#information .content-text {
	font-size: .875rem;
	line-height: 1.7142857143;
	margin-top: 1.7em;
}
#information .content-text p {
	margin-top: 1.7em;
}
#information .content-text a {
	text-decoration: underline;
}
@media (hover:hover) {
	#information .content-text a:hover {
		text-decoration: none;
	}
}
#information .link-squ {
	display: block;
	background-color: #9fa0a0;
	border-radius: 4px;
	max-width: 240px;
	font-size: .75rem;
	letter-spacing: .1em;
	text-align: center;
	color: #fff;
	box-shadow: 0px 0px 4px 0px rgba(0,0,0,0.16);
	margin: 0 auto;
	padding: 1.2em 0.4em;
	transition: .5s ease;
}
@media (hover:hover) {
	#information .link-squ:hover {
		opacity: .6;
	}
}
