@charset "utf-8";

/* ***********************************************************

		リセットCSS

*********************************************************** */
/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.min.css */
*,::before,::after{box-sizing:border-box;border-style:solid;border-width:0}html{line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{margin:0}main{display:block}p,table,blockquote,address,pre,iframe,form,figure,dl{margin:0}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}ul,ol{margin:0;padding:0;list-style:none}dt{font-weight:700}dd{margin-left:0}hr{box-sizing:content-box;height:0;overflow:visible;border-top-width:1px;margin:0;clear:both;color:inherit}pre{font-family:monospace,monospace;font-size:inherit}address{font-style:inherit}a{background-color:transparent;text-decoration:none;color:inherit}abbr[title]{text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:inherit}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}svg,img,embed,object,iframe{vertical-align:bottom}button,input,optgroup,select,textarea{-webkit-appearance:none;appearance:none;vertical-align:middle;color:inherit;font:inherit;background:transparent;padding:0;margin:0;border-radius:0;text-align:inherit;text-transform:inherit}button,[type="button"],[type="reset"],[type="submit"]{cursor:pointer}button:disabled,[type="button"]:disabled,[type="reset"]:disabled,[type="submit"]:disabled{cursor:default}:-moz-focusring{outline:auto}select:disabled{opacity:inherit}option{padding:0}fieldset{margin:0;padding:0;min-width:0}legend{padding:0}progress{vertical-align:baseline}textarea{overflow:auto}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type="number"]{-moz-appearance:textfield}label[for]{cursor:pointer}details{display:block}summary{display:list-item}[contenteditable]:focus{outline:auto}table{border-color:inherit;border-collapse:collapse}caption{text-align:left}td,th{vertical-align:top;padding:0}th{text-align:left;font-weight:700}


/*Gナビの虫眼鏡のレイアウト崩れ対応用*/
svg{vertical-align:baseline}

/* ***********************************************************

		基本設定

*********************************************************** */
html {
	/*font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, 'メイリオ', 'ＭＳ Ｐゴシック', 'MS PGothic', Verdana, sans-serif;*/
	/*-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;*/
	font-size: 62.5%;
}
body {
	/*font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, 'メイリオ', 'ＭＳ Ｐゴシック', 'MS PGothic', Verdana, sans-serif;*/
	/*font-family: 'Noto Sans JP', sans-serif;
	/*-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;*/
}
@media only screen and (max-width: 640px) {
}
@media print, screen and (min-width: 641px) {
	body {
		min-width: 1280px;
	}
}

.header,
.main,
.footer {
	font-family: "M PLUS Rounded 1c", serif;
	font-weight: 400;
	font-style: normal;
}


/*デフォルトリンクカラー*/
a, a:link {
	color: #0000DE;
}
a:visited {
	color: #941D55;
}
a:active,
a:hover {
	color: #CC0000;
}
a:focus {
	color: #CC0000;
}

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

/* FireFox リンク選択時の点線を消す */
a:link,
a:visited,
a:active,
a:hover {
	overflow: hidden;
	outline: none;
}

/*画像の横幅*/
img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
	/*image-rendering: -webkit-optimize-contrast;*/
}
.img-max {
	width: 100%;
	height: auto;
	vertical-align: middle;
	/*image-rendering: -webkit-optimize-contrast;*/

}
@media only screen and (max-width: 640px) {
	.img-max-sp {
		width: 100%;
		height: auto;
		vertical-align: middle;
		/*image-rendering: -webkit-optimize-contrast;*/
	}
}
@media print, screen and (min-width: 641px) {
	.img-max-pc {
		width: 100%;
		height: auto;
		vertical-align: middle;
		/*image-rendering: -webkit-optimize-contrast;*/
	}
}

figure {
	padding: 0;
	margin: 0;
}

/*
sup {
	font-size: 75%;
	line-height: 0;
	vertical-align: baseline;
	position: relative;
	top: -0.5em
}
*/


/* -----------------------------------------------------

	非表示設定

----------------------------------------------------- */
@media only screen and (max-width: 640px) {
	.hide-sp {
		display: none !important;
	}
	#global-nav:nth-of-type(1) {
		display: none;
	}
}
@media print, screen and (min-width: 641px) {
	.hide-pc {
		display: none !important;
	}
}

.hide-text {
	font-size: 0;
	line-height: 0;
	text-indent: -9999px;
	list-style-type: none;
	height: 0;
	overflow: hidden;
}


/* ***********************************************************

	bg-wrap

*********************************************************** */
.matsuri2026spring .bg-wrap {
}
@media only screen and (max-width: 640px) {
	.matsuri2026spring .bg-wrap {
	}
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .bg-wrap {
		background:
			url(../images/bg-center.png) no-repeat center top,
			url(../images/bg-top.png) no-repeat center top,
			#93daf7 url(../images/bg-bottom.png) no-repeat center bottom;
		background-attachment: fixed;
		display: flex;
	}
}


/* ***********************************************************

	PC用サイドメニュー（pc-side-menu）、PC用カスタムスクロールバー（pc-custom-scrollbar）

*********************************************************** */
@media only screen and (max-width: 640px) {
	.matsuri2026spring .pc-side-menu,
	.matsuri2026spring .pc-custom-scrollbar {
		display: none;
	}
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .pc-side-menu,
	.matsuri2026spring .pc-custom-scrollbar {
		flex: 1;
		position: relative;
	}
}

@media print, screen and (min-width: 641px) {
	.matsuri2026spring .pc-side-menu {
	}
	.matsuri2026spring .pc-side-menu-box {
		width: 240px;
		position: fixed;
		/*top: 50%;*/
		top: 280px;
		left: calc(50% - 540px);
		transform: translateY(-50%);
	}
}

@media print, screen and (min-width: 641px) {
	.matsuri2026spring .pc-custom-scrollbar-box {
		background: #00498A;
		width: 3px;
		height: 450px;
		position: fixed;
		top: 50%;
		right: calc(50% - 620px);
		transform: translateY(-50%);
	}
	.matsuri2026spring .pc-custom-scrollbar-box figure {
		width: 35px;
		position: absolute;
		top: calc(-15px + 0%);
		left: 0;
		transform: translateX(-50%);
	}
}


/* ***********************************************************

	コンテンツ

*********************************************************** */
.matsuri2026spring .content {
}
@media only screen and (max-width: 640px) {
	.matsuri2026spring .content {
		width: 100vw;
	}
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .content {
		width: 450px;
		border-left: 11px solid #00498A;
		border-right: 11px solid #00498A;
		box-sizing: content-box;
	}
}


/* ***********************************************************

	ヘッダー

*********************************************************** */
/* CBC global-nav */
@media only screen and (max-width: 640px) {
	label.sp-global-nav-button,
	.sp-global-link {
		z-index: 20 !important;
	}
	.hicbc-global-nav-logo {
		z-index: 18 !important;
	}
}
@media print, screen and (min-width: 641px) {
	.hicbc-global-nav {
		position: relative;
		z-index: 20;
	}
}


.matsuri2026spring .header {
}
@media only screen and (max-width: 640px) {
	.matsuri2026spring .header {
		background: #8ea6ff url(../images/header.jpg) no-repeat 0 calc(128 / 640 * 100vw);
		background-size: 100% auto;
		height: calc(1400 / 640 * 100vw);
		padding: calc(128 / 640 * 100vw) 0 0;
	}
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .header {
		background: #8ea6ff url(../images/header.jpg) no-repeat 0 90px;
		background-size: 100% auto;
		height: 984px;
		padding: 90px 0 0;
	}
}
.matsuri2026spring .header-inner {
	width: 100%;
	height: 100%;
	position: relative;
	/* overflow: hidden; */
	overflow-x: clip;
}

.matsuri2026spring .header h3 {
	height: calc(171 / 640 * 100vw);
	position: absolute;
	top: calc(128 / 640 * -100vw);
	left: 0;
	z-index: 10;
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .header h3 {
		height: 120px;
		position: absolute;
		top: -90px;
	}
}

.matsuri2026spring .header .kumo {
}
.matsuri2026spring .header .kumo li {
	list-style: none;
	position: absolute;
}
.matsuri2026spring .header .kumo li.kumo1-1 {
	width: calc(244 / 640 * 100vw);
	top: calc(30 / 640 * 100vw);
	left: calc(109 / 640 * -100vw);
	z-index: 5;
	animation: float1 5s ease-in-out infinite;
	animation-delay: 0s;
}
.matsuri2026spring .header .kumo li.kumo1-2 {
	width: calc(273 / 640 * 100vw);
	top: calc(80 / 640 * -100vw);
	left: calc(60 / 640 * -100vw);
	z-index: 4;
	animation: float2 6s ease-in-out infinite;
	animation-delay: 0.5s;
}
.matsuri2026spring .header .kumo li.kumo1-3 {
	width: calc(317 / 640 * 100vw);
	top: calc(56 / 640 * -100vw);
	left: calc(50 / 640 * 100vw);
	z-index: 1;
	animation: float3 7s ease-in-out infinite;
	animation-delay: 1s;
}
.matsuri2026spring .header .kumo li.kumo1-4 {
	width: calc(273 / 640 * 100vw);
	top: calc(80 / 640 * -100vw);
	left: calc(252 / 640 * 100vw);
	z-index: 3;
	animation: float4 8s ease-in-out infinite;
	animation-delay: 1.5s;
}
.matsuri2026spring .header .kumo li.kumo1-5 {
	width: calc(343 / 640 * 100vw);
	top: calc(30 / 640 * -100vw);
	left: calc(406 / 640 * 100vw);
	z-index: 2;
	animation: float5 9s ease-in-out infinite;
	animation-delay: 2s;
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .header .kumo li.kumo1-1 {
		width: 171px;
		top: 21px;
		left: -76px;
	}
	.matsuri2026spring .header .kumo li.kumo1-2 {
		width: 191px;
		top: -55px;
		left: -42px;
	}
	.matsuri2026spring .header .kumo li.kumo1-3 {
		width: 221px;
		top: -38px;
		left: 35px;
	}
	.matsuri2026spring .header .kumo li.kumo1-4 {
		width: 191px;
		top: -55px;
		left: 177px;
	}
	.matsuri2026spring .header .kumo li.kumo1-5 {
		width: 240px;
		top: -20px;
		left: 285px;
	}
}

.matsuri2026spring .header .hanabira {
}
.hanabira {
	position: relative;
	padding: 0;
	margin: 0;
	width: 100%;
	/*height: 100%;*/
	height: 70%;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 6;
}
.hanabira li {
	width: 18px;
	position: absolute;
	list-style: none;
	top: -50px;
	animation: fall 4s linear infinite, rotate1 2s ease-in-out infinite alternate;
}
@keyframes fall {
	to {
		top: 120%;
	}
}
@keyframes rotate1 {
	from {
		transform: translateX(0px) rotate(0deg);
	}
	to {
		transform: translateX(200px) rotate(-80deg) rotateX(180deg);
	}
}
@keyframes rotate2 {
	from {
		transform: translateX(200px) rotate(-45deg);
	}
	to {
		transform: translateX(0px) rotate(0deg);
	}
}
.hanabira li:nth-child(1) {
	left: 0;
	animation: fall 10s linear infinite, rotate1 3s ease-in-out infinite alternate;
	animation-delay: 0s;
}
.hanabira li:nth-child(2) {
	left: 5%;
	animation: fall 15s linear infinite, rotate1 2s ease-in-out infinite alternate;
	animation-delay: 1s;
}
.hanabira li:nth-child(3) {
	left: 15%;
	animation: fall 9s linear infinite, rotate1 3.5s ease-in-out infinite alternate;
	animation-delay: 2s;
}
.hanabira li:nth-child(4) {
	left: 30%;
	animation: fall 8s linear infinite, rotate2 4s ease-in-out infinite alternate;
	animation-delay: 3s;
}
.hanabira li:nth-child(5) {
	left: 40%;
	animation: fall 10s linear infinite, rotate1 4s ease-in-out infinite alternate;
	animation-delay: 4s;
}
.hanabira li:nth-child(6) {
	left: 55%;
	animation: fall 11s linear infinite, rotate2 3s ease-in-out infinite alternate;
	animation-delay: 5s;
}
.hanabira li:nth-child(7) {
	left: 65%;
	animation: fall 7s linear infinite, rotate2 3.5s ease-in-out infinite alternate;
	animation-delay: 6s;
}
.hanabira li:nth-child(8) {
	left: 50%;
	animation: fall 7s linear infinite, rotate1 3s ease-in-out infinite alternate;
	animation-delay: 7s;
}
.hanabira li:nth-child(9) {
	left: 10%;
	animation: fall 12s linear infinite, rotate2 3s ease-in-out infinite alternate;
	animation-delay: 8s;
}
.hanabira li:nth-child(10) {
	left: 20%;
	animation: fall 14s linear infinite, rotate1 3.5s ease-in-out infinite alternate;
	animation-delay: 9s;
}
.hanabira li:nth-child(11) {
	left: 25%;
	animation: fall 9s linear infinite, rotate2 4s ease-in-out infinite alternate;
	animation-delay: 10s;
}
.hanabira li:nth-child(12) {
	left: 35%;
	animation: fall 11s linear infinite, rotate1 4s ease-in-out infinite alternate;
	animation-delay: 11s;
}
.hanabira li:nth-child(13) {
	left: 45%;
	animation: fall 10s linear infinite, rotate2 3s ease-in-out infinite alternate;
	animation-delay: 12s;
}
.hanabira li:nth-child(14) {
	left: 60%;
	animation: fall 13s linear infinite, rotate1 3.5s ease-in-out infinite alternate;
	animation-delay: 13s;
}
.hanabira li:nth-child(15) {
	left: 70%;
	animation: fall 8s linear infinite, rotate2 4s ease-in-out infinite alternate;
	animation-delay: 14s;
}
.hanabira li:nth-child(16) {
	left: 75%;
	animation: fall 10s linear infinite, rotate1 4s ease-in-out infinite alternate;
	animation-delay: 15s;
}
.hanabira li:nth-child(17) {
	left: 80%;
	animation: fall 11s linear infinite, rotate2 3s ease-in-out infinite alternate;
	animation-delay: 16s;
}
.hanabira li:nth-child(18) {
	left: 90%;
	animation: fall 7s linear infinite, rotate1 3.5s ease-in-out infinite alternate;
	animation-delay: 17s;
}

.matsuri2026spring .header h1 {
	width: calc(597 / 640 * 100vw);
	position: absolute;
	top: calc(220 / 640 * 100vw);
	left: calc(50% - (540 / 640 * 100vw / 2) - 4.0vw);
	/*left: 50%;*/
	/*transform: translateX(-50%);*/
	/*animation: bounceIn 2s ease-out;*/
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .header h1 {
		width: 420px;
		top: 156px;
		left: calc(50% - 210px - 4px); /* 420pxの半分 */
	}
}

.matsuri2026spring .header .place {
	width: calc(484 / 640 * 100vw);
	position: absolute;
	top: calc(660 / 640 * 100vw);
	left: 50%;
	transform: translateX(-50%);
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .header .place {
		width: 340px;
		top: 460px;
	}
}
.matsuri2026spring .header .date {
	width: calc(495 / 640 * 100vw);
	position: absolute;
	top: calc(775 / 640 * 100vw);
	left: 50%;
	transform: translateX(-50%);
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .header .date {
		width: 348px;
		top: 544px;
	}
}
.matsuri2026spring .header .time-box {
	width: calc(518 / 640 * 100vw);
	position: absolute;
	top: calc(890 / 640 * 100vw);
	left: 50%;
	transform: translateX(-50%);
	z-index: 6;
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .header .time-box {
		width: 362px;
		top: 622px;
	}
}

.matsuri2026spring .header .kumo2 {
}
.matsuri2026spring .header .kumo2 li {
	list-style: none;
	position: absolute;
}
.matsuri2026spring .header .kumo2 li.kumo2-1 {
	width: calc(227 / 640 * 100vw);
	top: calc(1086 / 640 * 100vw);
	left: calc(90 / 640 * -100vw);
	z-index: 5;
	animation: float2-1 5s ease-in-out infinite;
	animation-delay: 0s;
}
.matsuri2026spring .header .kumo2 li.kumo2-2 {
	width: calc(317 / 640 * 100vw);
	top: calc(1152 / 640 * 100vw);
	left: calc(62 / 640 * -100vw);
	z-index: 4;
	animation: float2-2 6s ease-in-out infinite;
	animation-delay: 0.5s;
}
.matsuri2026spring .header .kumo2 li.kumo2-3 {
	width: calc(311 / 640 * 100vw);
	top: calc(1186 / 640 * 100vw);
	left: calc(151 / 640 * 100vw);
	z-index: 1;
	animation: float2-3 7s ease-in-out infinite;
	animation-delay: 1s;
}
.matsuri2026spring .header .kumo2 li.kumo2-4 {
	width: calc(319 / 640 * 100vw);
	top: calc(1125 / 640 * 100vw);
	left: calc(385 / 640 * 100vw);
	z-index: 2;
	animation: float2-4 8s ease-in-out infinite;
	animation-delay: 1.5s;
}
.matsuri2026spring .header .kumo2 li.kumo2-5 {
	width: calc(234 / 640 * 100vw);
	top: calc(1072 / 640 * 100vw);
	left: calc(456 / 640 * 100vw);
	z-index: 3;
	animation: float2-5 9s ease-in-out infinite;
	animation-delay: 2s;
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .header .kumo2 li.kumo2-1 {
		width: 190px;
		top: 738px;
		left: -70px;
	}
	.matsuri2026spring .header .kumo2 li.kumo2-2 {
		width: 221px;
		top: 805px;
		left: -42px;
	}
	.matsuri2026spring .header .kumo2 li.kumo2-3 {
		width: 218px;
		top: 828px;
		left: 106px;
	}
	.matsuri2026spring .header .kumo2 li.kumo2-4 {
		width: 223px;
		top: 786px;
		left: 270px;
	}
	.matsuri2026spring .header .kumo2 li.kumo2-5 {
		width: 163px;
		top: 748px;
		left: 320px;
	}
}


/* ***********************************************************

	フッター

*********************************************************** */
/*フッター枠*/
.matsuri2026spring .footer {
	background: #fff;
}
.matsuri2026spring .footer {
	padding: 0;
}
.matsuri2026spring .footer-inner {
	padding: 50px 15px 80px;
}
@media only screen and (max-width: 640px) {
	.matsuri2026spring .footer-inner {
		padding: 50px 15px 160px;
	}
}
.matsuri2026spring .footer-inner p {
	font-size: 1.4rem;
	font-weight: 500;
	line-height:1.5;
	color: #000;
	text-align: center;
	margin: 0;
}
.matsuri2026spring .footer-inner p a,
.matsuri2026spring .footer-inner p a:link,
.matsuri2026spring .footer-inner p a:visited {
	color: #000;
	text-decoration: none;
}
.matsuri2026spring .footer-inner p a:active,
.matsuri2026spring .footer-inner p a:hover {
	color: #000;
	text-decoration: underline;
}
.matsuri2026spring .footer-inner p a:focus {
	color: #000;
}

/*ページアップ*/
.matsuri2026spring .pageup {
	margin: 0;
}
.matsuri2026spring .pageup a {
	display: block;
	background: url('../images/pageup.png') no-repeat 0 0 ;
	-moz-background-size:100% auto;
	background-size:100% auto;
	font-size: 0px;
	line-height: 0px;
	text-indent: -9999px;
	text-decoration: none;
	position: fixed;
	z-index: 100;
}
@media only screen and (max-width: 640px) {
	.matsuri2026spring .pageup a {
		width: calc(140 / 640 * 100vw);
		height: calc(210 / 640 * 100vw);
		right: 12px;
		bottom: 10px;
	}
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .pageup a {
		width: 64px;
		height: 93px;
		right: 20px;
		bottom: 30px;
		transition: 0.3s ease-in-out;
	}
	.matsuri2026spring .pageup a:hover {
		opacity: 0.7;
	}
}


/* ***********************************************************

	メイン

*********************************************************** */
.matsuri2026spring .main {
	background: #fff;
	overflow: hidden;
}
@media only screen and (max-width: 640px) {
	.matsuri2026spring .main {
		max-width: 100vw;
	}
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .main {
	}
}


/*gokan-box*/
.matsuri2026spring .gokan-box {
	background: url(../images/gokan-box.png) no-repeat 0 0;
	background-size: 100% auto;
	padding: calc(160 / 640 * 100vw) 0 calc(280 / 640 * 100vw);
	position: relative;
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .gokan-box {
		padding: 112px 0 180px;
	}
}
.matsuri2026spring .gokan-box-title {
	width: calc(585 / 640 * 100vw);
	margin: 0 auto 36px;
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .gokan-box-title {
		width: 414px;
		margin: 0 auto 30px;
	}
}
.matsuri2026spring .gokan-box-text1 {
	width: calc(351 / 640 * 100vw);
	margin: 0 auto 36px;
	position: relative;
	z-index: 3;
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .gokan-box-text1 {
		width: 246px;
		margin: 0 auto 30px;
	}
}
.matsuri2026spring .gokan-box-text2 {
	width: calc(437 / 640 * 100vw);
	margin: 0 0 36px calc((100vw - (437 / 640 * 100vw)) / 2 + 20px);
	position: relative;
	z-index: 3;
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .gokan-box-text2 {
		width: 308px;
		margin: 0 0 30px calc((450px - 308px) / 2 + 20px);
	}
}
.matsuri2026spring .gokan-box-text3 {
	width: calc(558 / 640 * 100vw);
	margin: 0 auto;
	position: relative;
	z-index: 3;
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .gokan-box-text3 {
		width: 392px;
		margin: 0 auto;
	}
}

/*kumo-type2-2*/
.matsuri2026spring .kumo-type2-2 {
	position: absolute;
	width: calc(252 / 640 * 100vw);
	top: calc(920 / 640 * 100vw);
	right: calc(76 / 640 * -100vw);
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .kumo-type2-2 {
		width: 155px;
		top: 640px;
		right: -52px;
	}
}

.matsuri2026spring .gokan-box .kumo4 {
}
.matsuri2026spring .gokan-box .kumo4 li {
	list-style: none;
	position: absolute;
}
.matsuri2026spring .gokan-box .kumo4 li.kumo4-1 {
	width: calc(273 / 640 * 100vw);
	bottom: calc(26 / 640 * 100vw);
	left: calc(101 / 640 * -100vw);
	z-index: 5;
	animation: float4-1 5s ease-in-out infinite;
	animation-delay: 0s;
}
.matsuri2026spring .gokan-box .kumo4 li.kumo4-2 {
	width: calc(317 / 640 * 100vw);
	bottom: calc(104 / 640 * -100vw);
	left: calc(62 / 640 * -100vw);
	z-index: 4;
	animation: float4-2 6s ease-in-out infinite;
	animation-delay: 0.5s;
}
.matsuri2026spring .gokan-box .kumo4 li.kumo4-3 {
	width: calc(311 / 640 * 100vw);
	bottom: calc(120 / 640 * -100vw);
	left: calc(151 / 640 * 100vw);
	z-index: 1;
	animation: float4-3 7s ease-in-out infinite;
	animation-delay: 1s;
}
.matsuri2026spring .gokan-box .kumo4 li.kumo4-4 {
	width: calc(319 / 640 * 100vw);
	bottom: calc(65 / 640 * -100vw);
	left: calc(385 / 640 * 100vw);
	z-index: 2;
	animation: float4-4 8s ease-in-out infinite;
	animation-delay: 1.5s;
}
.matsuri2026spring .gokan-box .kumo4 li.kumo4-5 {
	width: calc(235 / 640 * 100vw);
	bottom: calc(48 / 640 * 100vw);
	left: calc(456 / 640 * 100vw);
	z-index: 3;
	animation: float4-5 9s ease-in-out infinite;
	animation-delay: 2s;
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .gokan-box .kumo4 li.kumo4-1 {
		width: 190px;
		bottom: 19px;
		left: -70px;
	}
	.matsuri2026spring .gokan-box .kumo4 li.kumo4-2 {
		width: 221px;
		bottom: -72px;
		left: -42px;
	}
	.matsuri2026spring .gokan-box .kumo4 li.kumo4-3 {
		width: 218px;
		bottom: -83px;
		left: 106px;
	}
	.matsuri2026spring .gokan-box .kumo4 li.kumo4-4 {
		width: 223px;
		bottom: -45px;
		left: 270px;
	}
	.matsuri2026spring .gokan-box .kumo4 li.kumo4-5 {
		width: 163px;
		bottom: 34px;
		left: 320px;
	}
}


/*movie-box*/
.matsuri2026spring .movie-box {
	background: #FFF0FD;
	padding: calc(160 / 640 * 100vw) 0 calc(120 / 640 * 100vw);
	position: relative;
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .movie-box {
		padding: 120px 0 80px;
	}
}

/*kumo-type2-1*/
.matsuri2026spring .kumo-type2-1 {
	position: absolute;
	width: calc(252 / 640 * 100vw);
	top: calc(92 / 640 * 100vw);
	left: calc(64 / 640 * -100vw);
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .kumo-type2-1 {
		width: 155px;
		top: 74px;
		left: -44px;
	}
}

.matsuri2026spring #movie-frame {
	width: calc(598 / 640 * 100vw);
	margin: 0 auto 60px;
}
.matsuri2026spring #movie-frame h3 {
	width: calc(250 / 640 * 100vw);
	margin: 0 auto 16px;
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring #movie-frame {
		width: 420px;
	}
	.matsuri2026spring #movie-frame h3 {
		width: 180px;
		margin: 0 auto 26px;
	}
}
.matsuri2026spring #movie-frame .youtube-box {
	width: 100%;
	margin: 0 auto;
}
.matsuri2026spring #movie-frame .youtube {
	position: relative;
	padding-top: 56.25%;
	height: 0;
	overflow: hidden;
	margin: 0 auto;
}
.matsuri2026spring #movie-frame .youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}

/*kumo-type3-1*/
.matsuri2026spring .kumo-type3-1 {
	position: absolute;
	width: calc(270 / 640 * 100vw);
	bottom: calc(80 / 640 * 100vw);
	right: calc(85 / 640 * -100vw);
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .kumo-type3-1 {
		width: 167px;
		bottom: 60px;
		right: -62px;
	}
}

.matsuri2026spring .movie-box .kumo3 {
}
.matsuri2026spring .movie-box .kumo3 li {
	list-style: none;
	position: absolute;
}
.matsuri2026spring .movie-box .kumo3 li.kumo3-1 {
	width: calc(211 / 640 * 100vw);
	bottom: calc(115 / 640 * -100vw);
	left: calc(54 / 640 * -100vw);
	z-index: 5;
	animation: float3-1 5s ease-in-out infinite;
	animation-delay: 0s;
}
.matsuri2026spring .movie-box .kumo3 li.kumo3-2 {
	width: calc(236 / 640 * 100vw);
	bottom: calc(36 / 640 * -100vw);
	left: calc(10 / 640 * -100vw);
	z-index: 4;
	animation: float3-2 6s ease-in-out infinite;
	animation-delay: 0.5s;
}
.matsuri2026spring .movie-box .kumo3 li.kumo3-3 {
	width: calc(273 / 640 * 100vw);
	bottom: calc(94 / 640 * -100vw);
	left: calc(75 / 640 * 100vw);
	z-index: 1;
	animation: float3-3 7s ease-in-out infinite;
	animation-delay: 1s;
}
.matsuri2026spring .movie-box .kumo3 li.kumo3-4 {
	width: calc(236 / 640 * 100vw);
	bottom: calc(36 / 640 * -100vw);
	left: calc(252 / 640 * 100vw);
	z-index: 2;
	animation: float3-4 8s ease-in-out infinite;
	animation-delay: 1.5s;
}
.matsuri2026spring .movie-box .kumo3 li.kumo3-5 {
	width: calc(297 / 640 * 100vw);
	bottom: calc(113 / 640 * -100vw);
	left: calc(390 / 640 * 100vw);
	z-index: 3;
	animation: float3-5 9s ease-in-out infinite;
	animation-delay: 2s;
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .movie-box .kumo3 li.kumo3-1 {
		width: 160px;
		bottom: -80px;
		left: -34px;
	}
	.matsuri2026spring .movie-box .kumo3 li.kumo3-2 {
		width: 168px;
		bottom: -25px;
		left: -5px;
	}
	.matsuri2026spring .movie-box .kumo3 li.kumo3-3 {
		width: 202px;
		bottom: -65px;
		left: 62px;
	}
	.matsuri2026spring .movie-box .kumo3 li.kumo3-4 {
		width: 179px;
		bottom: -25px;
		left: 184px;
	}
	.matsuri2026spring .movie-box .kumo3 li.kumo3-5 {
		width: 212px;
		bottom: -79px;
		left: 276px;
	}
}


/*previous-box*/
.matsuri2026spring .previous-box {
	background: url(../images/previous-box-bg.png) no-repeat center bottom;
	background-size: 100% auto;
	padding: calc(120 / 640 * 100vw) 0 calc(180 / 640 * 100vw);
	position: relative;
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .previous-box {
		padding: 80px 0 140px;
	}
}

/*kumo-type2-3*/
.matsuri2026spring .kumo-type2-3 {
	position: absolute;
	width: calc(252 / 640 * 100vw);
	top: calc(390 / 640 * 100vw);
	right: calc(50 / 640 * -100vw);
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .kumo-type2-3 {
		width: 155px;
		top: 264px;
		right: -40px;
	}
}
/*kumo-type3-2*/
.matsuri2026spring .kumo-type3-2 {
	position: absolute;
	width: calc(270 / 640 * 100vw);
	top: calc(180 / 640 * 100vw);
	left: calc(110 / 640 * -100vw);
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .kumo-type3-2 {
		width: 167px;
		top: 120px;
		left: -68px;
	}
}

.matsuri2026spring .coming-soon {
	width: calc(332 / 640 * 100vw);
	margin: 0 0 40px calc((100vw - (332 / 640 * 100vw)) / 2 + 10px);
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .coming-soon {
		width: 232px;
		margin: 0 0 40px calc((450px - 232px) / 2 + 14px);
	}
}

.matsuri2026spring .previous {
	width: calc(598 / 640 * 100vw);
	margin: 0 auto 9.6vw;
}
@media print, screen and (min-width: 641px) {
	.matsuri2026spring .previous {
		width: 420px;
		margin: 0 auto 32px;
	}
}
.matsuri2026spring .previous a {
	display: block;
	background-image: url(../images/btn-previous.png);
	background-position: 0 0;
	background-size: 100% auto;
	font-size: 0;
	line-height: 0;
	text-indent: -9999px;
	overflow: hidden;
	cursor: pointer;
	width: 100%; /*598px*/
	height: auto; /*100px*/
	padding-bottom: 16.722408%; /* 598px:100px = 100%:X → X ≈ 16.722408% */
}
.matsuri2026spring .previous a:hover {
	background-position: 0 bottom;
}

