
/* #page-1st_anniversary */

:root {
	--pc-header-height: 70px;
	--sp-header-height: 54px;
	--pc-min-width: 600px;
	--container-height: 100vh;
	--container-width: max( calc(var(--container-height) * 5 / 6), var(--pc-min-width) );
}

.static-day,
.dynamic-day,
.static-night,
.dynamic-night {
	display: none;
}

.is-day .static-day,
.is-day .dynamic-day,
.is-night .static-night,
.is-night .dynamic-night {
	display: block !important;
}

.is-night .static-day,
.is-night .dynamic-day,
.is-day .static-night,
.is-day .dynamic-night {
	display: none !important;
}

.anchor {
	scroll-margin-top: var(--pc-header-height);
}

@media screen and (max-width: 1024px) {
	.anchor {
		scroll-margin-top: var(--sp-header-height);
	}
}

.btn {
	display: inline-flex;
	justify-content: center;
	width: 100%;
	padding: 10px 20px;
	background: #ff4f20;
	border: 1px solid #ff4f20;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	text-align: center;
	border-radius: 9999px;
	position: relative;
}

@media screen and (max-width: 1024px) {
	.btn {
		padding: 10px 20px;
		font-size: 12px;
	}
}

.btn::after {
	display: block;
	content: "";
	width: 5px;
	height: 9px;
	background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNSIgaGVpZ2h0PSI5IiB2aWV3Qm94PSIwIDAgNSA5IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Im0wIDcuNTQ1IDMuMDUtMy4wNS0zLjA1LTMuMDQuOTgtLjk4IDQuMDIgNC4wMi00LjAyIDQuMDN6IiBmaWxsPSIjZmZmIi8+PC9zdmc+");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 12px;
	margin: auto;
}

.btn[target="_blank"]::after {
	width: 12px;
	height: 12px;
	background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxMiAxMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjZmZmIj48cGF0aCBkPSJtOS43OSA4LjQ4aC41MXYzLjM1aC0xMC4zdi0xMC4zaDMuMzV2LjUxaC0yLjg1djkuMjhoOS4yOXoiLz48cGF0aCBkPSJtMTEuOTQgMC0uMjEgNS4wNy0uOTMuOTMuMTgtNC4zNC02LjQ2IDYuNDYtLjcyLS43MiA2LjQ2LTYuNDctNC40Ni4wNC45Ny0uOTd6Ii8+PC9nPjwvc3ZnPg==");
	right: 16px;
}

@media (any-hover: hover ) {
	.btn {
		transition: background 0.2s ease,
								color 0.2s ease;
	}

	.btn:hover {
		opacity: 1;
		background: #fff;
		color: #ff4f20;
	}

	.btn:hover::after {
		background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNSIgaGVpZ2h0PSI5IiB2aWV3Qm94PSIwIDAgNSA5IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Im0wIDcuNTQ1IDMuMDUtMy4wNS0zLjA1LTMuMDQuOTgtLjk4IDQuMDIgNC4wMi00LjAyIDQuMDN6IiBmaWxsPSIjZTY1MDI4Ii8+PC9zdmc+");
	}

	.btn[target="_blank"]:hover::after {
		background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxMiAxMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjZTY1MDI4Ij48cGF0aCBkPSJtOS43OSA4LjQ4aC41MXYzLjM1aC0xMC4zdi0xMC4zaDMuMzV2LjUxaC0yLjg1djkuMjhoOS4yOXoiLz48cGF0aCBkPSJtMTEuOTQgMC0uMjEgNS4wNy0uOTMuOTMuMTgtNC4zNC02LjQ2IDYuNDYtLjcyLS43MiA2LjQ2LTYuNDctNC40Ni4wNC45Ny0uOTd6Ii8+PC9nPjwvc3ZnPg==");
	}
}


html:has(.anchor),
body:has(.anchor) {
	scroll-behavior: smooth;
}

.anniversary {}

.anniversary-bg {
	width: 100%; /* 100vw */
	height: 100%; /* 100vh */

	position: fixed;
	top: 0; /* ヘッダーの裏からスタート */
	left: 0;
	z-index: -1;

	background-image: url(../img/1st_anniversary/bg_static-day.png);
	background-repeat: no-repeat;
	background-size: auto 100%; /* 垂直に100% */
	background-position: center, top; /* 水平に中央寄せ */
}

.is-day .anniversary-bg {
	background-color: #b6effa;
	background-image: url(../img/1st_anniversary/bg_static-day.png) !important;
}

.is-night .anniversary-bg {
	background-color: #335489;
	background-image: url(../img/1st_anniversary/bg_static-night.png) !important;
}

@media screen and (max-width: 1024px) {
	.is-day .anniversary-bg,
	.is-night .anniversary-bg {
		background-image: none !important;
	}
}

.anniversary-bg--static,
.anniversary-bg--dynamic {
	pointer-events: none;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

@media screen and (max-width: 1024px) {
	.anniversary-bg--static,
	.anniversary-bg--dynamic {
		display: none
	}
}

.anniversary-bg--static img {
	width: auto;
	height: 100%;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);

}

.anniversary-container {
	container-type: inline-size; /* コンテナクエリー有効化 */
	container-name: main;

	margin: 0 auto;
	padding-top: var(--pc-header-height);
	width: var(--container-width);
	/* aspect-ratio: 600 / 720; */
	min-height: 100vh;
	
	background-color: #fff;
	position: relative;

	/* .wrapper{ */
  	/* padding-top: 100px; */
	/* } */
}

@media screen and (max-width: 1024px) {
	.anniversary-container {
		/* .wrapper{ */
    	padding-top: var(--sp-header-height);
    	width: var(--pc-min-width);
  	/* } */
	}
}

@media screen and (max-width: 768px) {
	.anniversary-container {
		width: 100%;
		min-width: 100%;
	}
}

.is-day .anniversary-container {
	background-color: #b6effa;
}

.is-night .anniversary-container {
	background-color: #335489;
}

.anniversary-side--left,
.anniversary-side--right {
	container-type: size; /* 両方向のコンテナクエリー有効化 */
	width: calc( ( 100vw - var(--container-width) ) / 2 ); /* 全体幅からスクロール領域の幅を引いて2分割 */
	height: 100%; /* 100vh */
	position: fixed;
	top: 0;
}

.anniversary-side--left {
	container-name: left-side;
	left: 0;
}

.anniversary-side--right {
	container-name: right-side;
	right: 0;
}


@media screen and (max-width: 1024px) {
	.anniversary-side--left,
	.anniversary-side--right {
		display: none !important;
	}
}

.anniversary-side__bg {
	width: 100%; /* 100cqi */
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.anniversary-side__inner {
	display: flex;
	flex-direction: column;
	align-items: center; /* 中央寄せ */
	padding: 60px 20px;
	padding: 60px 6.667cqi 0; /* 20cqi */
	height: 100%;
	position: relative;
}

.anniversary-side--left .anniversary-side__inner {
	padding-top: 15vh; /* 月と被りそうな分下げる */
}

.anniversary-side__title {
	margin: 0 auto 30px;
	width: min( 85.666cqi, 257px);
	aspect-ratio: 300 / 91;
	/* max-width: 257px; */
	position: relative;
}

.anniversary-side__title img {
	width: 100%;
	height: auto;
	position: absolute;
	top: 0;
	left: 0;
}

.anniversary-side__title--day,
.anniversary-side__title--night {
	display: none;
}

.is-day .anniversary-side__title--day {
	display: block;
}

.is-night .anniversary-side__title--night {
	display: block;
}

.anniversary-side__list {
	margin: 0 auto;
	width: max( 52cqi, 160px );
	/* max-width: 160px; */
}

.anniversary-side__list > li {
	border-radius: 3px;
	position: relative;
}

.anniversary-side__list > li::before {
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	background: #0064b7;
	border-radius: 3px;
	position: absolute;
	right: -3px;
	bottom: -3px;
	z-index: -1;
}

.is-day .anniversary-side__list > li::before {
	background: #0064b8;
}

.is-night .anniversary-side__list > li::before {
	background: #1e3264;
}


.anniversary-side__list > li + li {
	margin-top: 8px;	
}

.anniversary-side__list__btn {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 5px 5px;
	width: 100%;
	color: #358de0;
	background: #fff;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.1;
	font-feature-settings: "palt";

	border-radius: 3px;
	overflow: hidden;
}

@media (any-hover: hover ) {
	.anniversary-side__list__btn {
		transition: transform 0.2s ease;
	}

	.anniversary-side__list__btn:hover {
		opacity: 1;
		transform: translate(2px, 2px);
	}
}

.anniversary-side__list__icon {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: calc( 60 / 160 * 100% );
}

.anniversary-side__list__icon img {
	width: 30px;
	height: 30px;
}

.anniversary-side__list__icon--mini {
	margin-right: 20px;
}

.anniversary-side__list__icon--mini img {
	width: 15px;
	height: 15px;
}

.anniversary-side__list__btn:has(.anniversary-side__list__bg) {
	padding-left: 0;
	padding-right: 0;
	background-image: url(../img/1st_anniversary/side_btn-bg.svg);
	background-repeat: no-repeat;
	background-size: 66.25% 100%;
	background-position: top right -1px;
	color: #fff;
}

.anniversary-side__list__bg {
	flex-grow: 1;
	text-align: center;
}

.anniversary-side__logo {
	margin: 0 auto 20px;
	width: min( 52.666cqi, 158px );
	/* max-width: 158px; */
	aspect-ratio: 1 / 1;
}

.anniversary-side__lead {
	margin-bottom: 20px;
	color: #0064b8;
	font-size: 11px;
	font-size: min( 3.666cqi , 13px );
	font-weight: 600;
	text-align: center;
	line-height: 2;
	letter-spacing: 0.25em;
	font-feature-settings: "palt";
}

.is-day .anniversary-side__lead {
	color: #0064b8;
}

.is-night .anniversary-side__lead {
	color: #fff;
}

.anniversary-side__balloon {
	margin-top: auto; /* .anniversary-side--rightの末尾に付ける */
	width: max-content;
	color: #6eaadc;
	font-size: 10px;
	font-size: min( 3.335cqi, 10px ); /* 10px */
	font-weight: 500;
	text-align: center;
	line-height: 1.8;
	letter-spacing: 0.1em;
	position: relative;

	position: absolute;
	bottom: 32.639vh;
	/* .anniversary-side--right */
	left: calc( 9cqi + 6.667cqi );
	max-width: calc( 100% - 6.667cqi * 2 );
}

.anniversary-side__balloon::before,
.anniversary-side__balloon::after {
	display: block;
	content: "";
	width: 41px;
	width: min( 13.666cqi, 41px );
	height: 37px;
	height: min( 12.333cqi, 37px );
	background-image: url(../img/1st_anniversary/side_balloon-day.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;

	pointer-events: none; /* 装飾のため反応させない */

	position: absolute;
	bottom: min( -1.667vh, -12px );
} 

.anniversary-side__balloon::before {
	left: min( -2.777vh, -20px );
	transform: scaleX(1);
}

.anniversary-side__balloon::after {
	right: min( -1.388cqi, -10px );
	transform: scaleX(-1); /* 反転 */
}

.is-day .anniversary-side__balloon {
	color: #43abde;
}

.is-day .anniversary-side__balloon::before,
.is-day .anniversary-side__balloon::after {
	background-image: url(../img/1st_anniversary/side_balloon-day.svg);
}

.is-night .anniversary-side__balloon {
	color: #e7e2df;
}

.is-night .anniversary-side__balloon::before,
.is-night .anniversary-side__balloon::after {
	background-image: url(../img/1st_anniversary/side_balloon-night.svg);
}

@container right-side (height < 640px) {
	.anniversary-side__balloon {
		display: none !important;
	}
}

.anniversary-header {
	width: var(--container-width);
	/* min-width: var(--pc-min-width); */
	/* height: 100px; /* .g_nav */
	background-color: #fff;
	border-bottom: 1px solid #c8c8c8;

	/* #header_fixed{ */
		position: fixed;
		left: 50%;
		top: 0;
		transform: translate(-50%);
		z-index: 999;
  /* } */

  transition: none !important;
}

@media screen and (max-width: 1024px) {
	.anniversary-header {
		width: var(--pc-min-width);
		/* height: var(--sp-header-height); */
	}
}

@media screen and (max-width: 768px) {
	.anniversary-header {
		width: 100%;
	}
}

.anniversary-header__logo {
	padding: 0 40px;
	width: 100%;
	height: var(--pc-header-height);

	/* .g_nav{ */
		margin: 0 auto;
		/* height: 100px; */
		display: flex;
		justify-content: space-between;
		align-items: center;
		position: relative;
	/* } */
}

@media screen and (max-width: 1024px) {
	.anniversary-header__logo {
		justify-content: flex-start;
		padding: 0 20px;
		padding-right: calc( var(--sp-header-height) + 20px ); /* .anniversary-header__menu */

		/* .header_sp{ */
			height: var(--sp-header-height);
		/*} */
	}
}

.anniversary-header__logo .mop_logo {
  width: 162px;
	height: auto;
}

.anniversary-header__logo .mfg_logo {
	width: 164px;
	height: auto;
}

@media screen and (max-width: 1024px) {
	.anniversary-header__logo .mop_logo {
		margin-right: 20px;

		/* .header_logo_sp .mop_logo img{ */
			width: 110px;
		/* } */
	}

	.anniversary-header__logo .mfg_logo {
		/* .header_logo_sp .mfg_logo img{ */
			width: 110px;
		/* } */
	}
}

.anniversary-header__menu {
	display: none;
}

@media screen and (max-width: 1024px) {
	.anniversary-header__menu {
		display: block;
		width: var(--sp-header-height);
		height: var(--sp-header-height);
		background: linear-gradient(to bottom, #f86e09 0%, #f04f65 100%);
		position: absolute;
		top: 0;
		right: 0;
	}
}

/* メニュー(SPのみ) */
.anniversary-menu {
	display: none;
}

@media screen and (max-width: 1024px) {
	.anniversary-menu {
		display: block;
		width: var(--pc-min-width);
		visibility: hidden;

		position: fixed;
		top: var(--sp-header-height);
		left: 0;
		right: 0;
		margin: auto;
		z-index: 998; /* headerより下 */
		transform: translateY(-100%);

		transition: transform 0.25s ease; /* 閉じる時は早く */
	}
}

@media screen and (max-width: 768px) {
	.anniversary-menu {
		width: 100%;
	}
}

.anniversary-menu.is-show {
	visibility: visible;
	transform: translateY(0%);

	transition: transform 0.5s ease;
}

.anniversary-menu__wrapper {
	max-height: calc(100vh - var(--sp-header-height));
	overflow-y: scroll;
}

.anniversary-menu__list {}

.anniversary-menu__list > li {}

.anniversary-menu__list > li + li {
	border: 1px solid #dcdcdc;
}

.anniversary-menu__link,
.anniversary-menu__link--mini {
	display: flex;
	align-items: center;
	padding: 10px 15px;
	background: #fff;
	color: #0068b5;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.25;
	font-feature-settings: "palt";
}

.anniversary-menu__link:hover,
.anniversary-menu__link--mini:hover {
	opacity: 1;
}

.anniversary-menu__link--mini {
	background: #f4f4f4;
	color: #0068b5;
	font-size: 14px;
}

.anniversary-menu__list__icon,
.anniversary-menu__list__icon--mini {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100px;
}

.anniversary-menu__list__icon img {
	width: 36px;
	height: auto;
}
.anniversary-menu__list__icon--mini img {
	width: 18px;
	height: auto;
}

.anniversary-footer {
	width: 100cqi; /* .anniversary-containerに対して幅100% */
	min-width: var(--pc-min-width);
}

@media screen and (max-width: 1024px) {
	.anniversary-footer {
		width: 100%;
		min-width: 100%;
	}
}

.anniversary-footer__inner {
	background: #fff;

	/* .footer_wrap{ */
		padding-top: 30px;
		padding-bottom: 30px;
	/* } */
}

@media screen and (max-width: 768px) {
	.anniversary-footer__inner {
		/* .footer_wrap{ */
			padding-bottom: 80px;
		/* } */
	}
}

.anniversary-footer__inner .footer_list ul {
	max-width: 100%;

	/* .footer_list ul:first-of-type{ */
		margin-bottom: 14px;
	/* } */
}

/* KV(SPのみ) */
.anniversary-kv {
	margin-bottom: calc(-3.333cqi - 1px);
	position: relative;
	z-index: 1;

	display: none;
}

@media screen and (max-width: 1024px) {
	.anniversary-kv {
		display: block;
	}
}

.anniversary-kv__bg {
	width: 100%;
	aspect-ratio: 500 / 740;

	/* background-image: url(../img/1st_anniversary/bg_static-day-kv.png); */
	background-repeat: no-repeat;
	background-size: auto 100%; /* 垂直に100% */
	background-position: center, top; /* 水平に中央寄せ */

	overflow-x: clip; /* タブレットの場合にアニメーションが飛び出すため */

	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

.is-day .anniversary-kv__bg {
	background-color: #b6effa;
	background-image: url(../img/1st_anniversary/bg_static-day-kv.png) !important;
}

.is-night .anniversary-kv__bg {
	background-color: #335489;
	background-image: url(../img/1st_anniversary/bg_static-night-kv.png) !important;
}

.anniversary-kv__bg--static,
.anniversary-kv__bg--dynamic {
	pointer-events: none;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.anniversary-kv__bg--static img {
	width: 100%;
	height: 100%;
}

.anniversary-kv__bg--static {
	
}

.anniversary-kv__bg--dynamic {

}


/* アニメーション */

/* 昼：雲 */
.day-cloud,
.day-cloud02,
.day-cloud03,
.day-cloud04,
.day-cloud05 {
	position: absolute;
	left: 0;
	animation: cloud-loop 30s infinite linear;
}

.day-cloud {
	width: 25.7vh; /*185px*/
	height: 12.5vh; /*90px*/
	top: 9.44vh; /* 68px */;
	/* left: 350px; */
	animation-delay: -6s;
}

.day-cloud02 {
	width: 16.8vh; /*121px*/
	height: 7.916vh; /*57px;*/
	top: 24.86vh; /*179px*/
	/* left: 550px; */
	animation-delay: -8s;
}

.day-cloud03 {
	width: 25.7vh; /*185px*/
	height: 12.5vh; /*90px*/
	top: 15.55vh; /*112px*/
	/* left: 1427px; */
	animation-delay: -18s;
}

.day-cloud04 {
	width: 25.7vh; /*185px*/
	height: 12.5vh; /*90px*/
	top: 28.75vh; /*207px*/
	/* left: 1663px; */
	animation-delay: -21s;
}

.day-cloud05 {
	width: 16.8vh; /*121px*/
	height: 7.916vh; /*57px;*/
	top: 9.305vh; /*67px*/
	/* left: 1884px; */
	animation-delay: -24s;
}


@media screen and (max-width: 1024px) {
	.day-cloud,
	.day-cloud02,
	.day-cloud03 {
		animation: cloud-loop 18s infinite linear;
	}

	.day-cloud {
		width: 24.2cqi; /* 121px */
		height: 11.4cqi; /* 57px */
		top: 4.4cqi; /* 22px */
		/* left: 452px; */
		
		animation-delay: -9s;
	}

	.day-cloud02 {
		width: 37cqi; /*185px*/
		height: 17.8cqi; /*89px*/
		top: 25.6cqi; /*103px*/
		/* left: -31px; */

		animation-delay: -2s;
	}

	.day-cloud03 {
		width: 37cqi; /*185px*/
		height: 17.8cqi; /*89px*/
		top: 46.4cqi; /*232px*/
		/* left: 372px; */

		animation-delay: -8s;
	}
}

@keyframes cloud-loop {
	0% {
		transform: translateX(-100%) translateX(0vw);
	}
	100% {
		transform: translateX(0%) translateX(100vw);
	}
}

/* 昼：カモメ */
.day-seagull,
.day-seagull02,
.day-seagull03 {
	position: absolute;
	animation: seagull-float 3s infinite linear;
}

.day-seagull img,
.day-seagull02 img,
.day-seagull03 img {
	display: block;
}

.day-seagull {
	width: 4.305vh; /*31px*/
	height: 1.25vh; /*9px*/
	top: 53.533vh; /*384px*/
	/* .anniversary-side--right */
	left: 13.666cqi; /*41px*/

	animation-delay: 1s;
}

.day-seagull02 {
	width: 3.472vh; /*25px*/
	height: 0.833vh; /*6px*/
	top: 56.944vh; /*410px*/
	/* .anniversary-side--right */
	left: 29.666cqi; /*89px*/

	animation-delay: 0s;
}

.day-seagull03 {
	width: 3.472vh; /*25px*/
	height: 0.833vh; /*6px*/
	top: 54.444vh; /*392px*/
	/* .anniversary-side--right */
	left: 80.666cqi; /*242px*/

	animation-delay: -1s;
}


@media screen and (max-width: 1024px) {
	.day-seagull,
	.day-seagull02 {
		animation: seagull-float 3s infinite linear;
	}

	.day-seagull {
		width: 7cqi; /*35px*/
		height: 2cqi; /*10px*/
		top: 97cqi; /*485px*/
		left: 11.2cqi; /*56px*/

		animation-delay: 1s;
	}

	.day-seagull02 {
		width: 5.4cqi; /*27px*/
		height: 1.4cqi; /*7px*/
		top: 103.2cqi; /*516px*/
		left: 24.6cqi; /*123px*/

		animation-delay: -1s;
	}
}

@keyframes seagull-float {
	0% {
		transform: translate(0%, 0%);
	}
	25% {
		transform: translate(25%, 50%);
	}
	50% {
		transform: translate(0%, 0%);
	}
	75% {
		transform: translate(-25%, 50%);
	}
	100% {
		transform: translate(0%, 0%);
	}
}

/* 夜：煌めき */
.night-twinkle,
.night-twinkle02,
.night-twinkle03, 
.night-twinkle04,
.night-twinkle05,
.night-twinkle06 {
	position: absolute;
	animation: twinkle-star 2s infinite ease-in;
}

.night-twinkle img,
.night-twinkle02 img,
.night-twinkle03 img,
.night-twinkle04 img,
.night-twinkle05 img,
.night-twinkle06 img {
	display: block;
}

.night-twinkle {
	width: 1.805vh; /*13px*/
	height: 1.805vh; /*13px*/
	top: 6.3888vh; /*46px*/

	/* .anniversary-side--left */
	left: 62.333cqi; /*187px*/
}

.night-twinkle02 {
	width: 1.805vh; /*13px*/
	height: 1.805vh; /*13px*/
	top: 31.537vh; /*227px*/

	/* .anniversary-side--left */
	left: 82cqi; /*246px*/
}

.night-twinkle03 {
	width: 2.635vh; /*19px*/
	height: 2.635vh; /*19px*/
	top: 36.25vh; /*261px*/

	/* .anniversary-side--left */
	left: 9cqi; /*27px*/
}

.night-twinkle04 {
	width: 2.635vh; /*19px*/
	height: 2.635vh; /*19px*/
	top: 5.138vh; /*37px*/

	/* .anniversary-side--right */
	left: 9.334cqi; /*38px*/
}

.night-twinkle05 {
	width: 1.805vh; /*13px*/
	height: 1.805vh; /*13px*/
	top: 11.111vh; /*80px*/

	/* .anniversary-side--right */
	left: 84.667cqi; /*264px*/
}

.night-twinkle06 {
	width: 2.635vh; /*19px*/
	height: 2.635vh; /*19px*/
	top: 54.166vh; /*390px*/

	/* .anniversary-side--right */
	left: 14.666cqi; /*44px*/
}

.night-twinkle { animation-delay: 0.5s; }
.night-twinkle02 { animation-delay: 0.75s; }
.night-twinkle03 { animation-delay: 0.25s; }

.night-twinkle04 { animation-delay: 0s; }
.night-twinkle05 { animation-delay: -1s; }
.night-twinkle06 { animation-delay: 0.5s; }

@media screen and (max-width: 1024px) {
	.night-twinkle,
	.night-twinkle02 {
		animation: twinkle-star 2s infinite ease-in;
	}

	.night-twinkle {
		width: 3.2cqi; /*16px*/
		height: 3.2cqi; /*16px*/
		top: 66.1cqi; /*331px*/
		left: 8.2cqi; /*41px*/
	}

	.night-twinkle02 {
		width: 4.8cqi; /*24px*/
		height: 4.8cqi; /*24px*/
		top: 84cqi; /*420px*/
		left: 90.2cqi; /*451px*/
	}

	.night-twinkle { animation-delay: 0.5s; }
	.night-twinkle02 { animation-delay: 0.75s; }
}

@keyframes twinkle-star {
	0% {
		transform: scale(1);
		opacity: 1;
	}
	30% {
		transform: scale(1.3);
	}
	60% {
		transform: scale(1);
		opacity: 0.5;
	}
	80% {
		transform: scale(0.3);
		opacity: 0.3;
	}
	100% {
		transform: scale(1);
		opacity: 1;
	}
}

/* 夜：流れ星 */

.night-shootingstar,
.night-shootingstar02 {
	position: absolute;
}

.night-shootingstar {
	top: 56.527vh; /*407px*/

	/* .anniversary-side--left */
	left: 84.667cqi; /*254px*/
}

.night-shootingstar02 {
	top: 56.511vh; /*404px*/

	/* .anniversary-side--right */
	left: 73cqi; /*219px*/
}

.night-shootingstar img,
.night-shootingstar02 img {
	width: 1.805vh; /*13px*/
	height: 1.805vh; /*13px*/
	opacity: 0;
	transform: scale(0);

	animation: shooting-star 6s infinite cubic-bezier(0.57, 0.12, 0.24, 0.93);
}

.night-shootingstar img {
	animation-delay: 1s; /* span::after + 1s */
}

.night-shootingstar02 img {
	animation-delay: 4s; /* span::after + 1s */
}

@keyframes shooting-star {
	0% {
    transform: scale(0);
		opacity: 0;
  }
  12.5% {
    transform: scale(1);
		opacity: 1;
  }
  25% {
    transform: scale(0);
		opacity: 0;
  }
  37.5% {
    transform: scale(0);
		opacity: 0;
  }
  50% {
    transform: scale(0);
		opacity: 0;
  }
  100% {
    transform: scale(0);
		opacity: 0;
  }
}

.night-shootingstar span,
.night-shootingstar02 span {
	width: 0; /*56px*/
	height: 1px;
	background: #ffff85; 
	opacity: 0; 

	position: absolute;
	left: calc(56px + 1px); /*56px*/
	bottom: calc(56px + 1px); /*56px*/
	transform: rotate(-225deg) scaleX(1) translateX(0%);
	transform-origin: left bottom;

	animation: shooting-trail-pc 6s infinite cubic-bezier(0.26, 0.18, 0.69, 0.93);
}

.night-shootingstar span {
	animation-delay: 0;
}

.night-shootingstar02 span {
	animation-delay: 3s;
}

@keyframes shooting-trail-pc {
	0% {
    width: 0;
		opacity: 0;
		transform: rotate(-225deg) scaleX(1) translateX(0%);
  }
  12.5% {
    width: 56px;
		opacity: 1;
		transform: rotate(-225deg) scaleX(1) translateX(12.5%);
  }
  25% {
    width: 56px;
		opacity: 0;
		transform: rotate(-225deg) scaleX(0.5) translateX(125%);
  }
  37.5% {
    /* width: 56px; */
		opacity: 0;
		/* transform: rotate(-225deg) scaleX(0) translateX(125%); */
  }
  50% {
    /* width: 56px; */
		opacity: 0;
		/* transform: rotate(-225deg) scaleX(0) translateX(125%); */
  }
  100% {
    /* width: 56px; */
		opacity: 0;
		/* transform: rotate(-225deg) scaleX(0) translateX(125%); */
  }
}

@media screen and (max-width: 1024px) {
	.night-shootingstar,
	.night-shootingstar02 {
		position: absolute;
	}

	.night-shootingstar {
		left: 79.6cqi; /*398px*/
		top: 35.8cqi; /*179px*/
	}

	.night-shootingstar02 {
		left: 15.4cqi; /*77px*/
		top: 113.8cqi; /*569px*/
	}

	.night-shootingstar img,
	.night-shootingstar02 img {
		width: 3.2cqi; /*16px*/
		height: 3.2cqi; /*16px*/
		opacity: 0;
		transform: scale(0);

		animation: shooting-star 6s infinite ease;
	}

	.night-shootingstar img {
		animation-delay: 1s; /* span::after + 1s */
	}

	.night-shootingstar02 img {
		animation-delay: 4s; /* span::after + 1s */
	}

	.night-shootingstar span,
	.night-shootingstar02 span {
		width: 0; /* 13.8cqi */
		height: 1px;
		/* background: #ffff85; */
		/* opacity: 0; */

		position: absolute;
		left: calc(13.8cqi + 1px); /*69px*/
		bottom: calc(13.8cqi + 1px); /*69px*/
		transform: rotate(-225deg) scaleX(1) translateX(0%);
		transform-origin: left bottom;

		animation: shooting-trail-sp 6s infinite cubic-bezier(0.26, 0.18, 0.69, 0.93);
	}

	.night-shootingstar span {
		animation-delay: 0s;
	}

	.night-shootingstar02 span {
		animation-delay: 3s;
	}
}

@keyframes shooting-trail-sp {
	0% {
    width: 0;
		opacity: 0;
		transform: rotate(-225deg) scaleX(1) translateX(0%);
  }
  12.5% {
    width: 13.8cqi;
		opacity: 1;
		transform: rotate(-225deg) scaleX(1) translateX(12.5%);
  }
  25% {
    width: 13.8cqi;
		opacity: 0;
		transform: rotate(-225deg) scaleX(0.5) translateX(125%);
  }
  37.5% {
    /* width: 13.8cqi; */
		opacity: 0;
		/* transform: rotate(-225deg) scaleX(0.5) translateX(125%); */
  }
  50% {
    /* width: 13.8cqi; */
		opacity: 0;
		/* transform: rotate(-225deg) scaleX(0.5) translateX(125%); */
  }
  100% {
    /* width: 13.8cqi; */
		opacity: 0;
		/* transform: rotate(-225deg) scaleX(0.5) translateX(125%); */
  }
}


/* 夜：橋の光 */

.night-bridge-light {
	width: 17.222vh; /*124px*/
	height: 10.694vh; /*77px*/
	position: absolute;
	top: 70.139vh; /* 505px*/
	/* .anniversary-side--left */
	right: 0;
}

.night-bridge-light img {
	display: block;
}

.night-bridge-light01,
.night-bridge-light02,
.night-bridge-light03,
.night-bridge-light04 {
	width: 1.805vh; /*13px*/
	height: 1.805vh; /*13px*/
	position: absolute;
	animation: twinkle-star 1.5s infinite ease-in;
}

@media screen and (max-width: 1024px) {
	.night-bridge-light {
		width: 15.6cqi; /*78px*/
		height:9.8cqi; /*49px*/
		position: absolute;
		top: 118cqi; /*590px*/
		left: 32.2cqi; /*161px*/
	}

	.night-bridge-light img {
		display: block;
	}

	.night-bridge-light01,
	.night-bridge-light02,
	.night-bridge-light03,
	.night-bridge-light04 {
		width: 1.6cqi; /*8px*/
		height: 1.6cqi; /*8px*/
		position: absolute;
		animation: twinkle-star 1.5s infinite ease-in;
	}
}

.night-bridge-light01 {
	top: 60%;
	left: 5%;
}

.night-bridge-light02 {
	top: 15%;
	left: 55%;		
}

.night-bridge-light03 {
	top: 0%;
	left: 90%;
}

.night-bridge-light04 {
	top: 70%;
	left: 30%;
}

.night-bridge-light01 { animation-delay: 0.5s; }
.night-bridge-light02 { animation-delay: 0.15s; }
.night-bridge-light03 { animation-delay: 0.25s; }
.night-bridge-light04 { animation-delay: -0.75s; }

.anniversary-kv__inner {
	width: 100%;
	aspect-ratio: 500 / 740;
	padding-top: 5cqi;
}

.anniversary-kv__logo {
	margin: 0 auto 8cqi;
	width: 45.5558cqi;
	aspect-ratio: 1 / 1;
}

.anniversary-kv__lead {
	color: #0064b8;
	font-size: 3.6cqi;
	font-weight: 600;
	text-align: center;
	line-height: 1.9444;
	letter-spacing: 0.02em;
	font-feature-settings: "palt";
}

.is-day .anniversary-kv__lead {
	color: #0064b8;
}

.is-night .anniversary-kv__lead {
	color: #fff;
}

.anniversary-kv__balloon {
	color: #6eaadc;
	font-size: 2.4cqi;
	font-weight: 500;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 0.1em;
	position: absolute;
	bottom: 36.45cqi;
	right: 6cqi;
}

.anniversary-kv__balloon::before,
.anniversary-kv__balloon::after {
	display: block;
	content: "";
	width: 7.96cqi;
	height: 7.12cqi;
	background-image: url(../img/1st_anniversary/side_balloon-day.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;

	pointer-events: none; /* 装飾のため反応させない */

	position: absolute;
	bottom: -2.4cqi;
} 

.anniversary-kv__balloon::before {
	left: -3.6cqi;
	transform: scaleX(1);
}

.anniversary-kv__balloon::after {
	right: -3.6cqi;
	transform: scaleX(-1); /* 反転 */
}

.is-day .anniversary-kv__balloon {
	color: #6eaadc;
}

.is-day .anniversary-kv__balloon::before,
.is-day .anniversary-kv__balloon::after {
	background-image: url(../img/1st_anniversary/side_balloon-day.svg);
}

.is-night .anniversary-kv__balloon {
	color: #e6e2df;
}

.is-night .anniversary-kv__balloon::before,
.is-night .anniversary-kv__balloon::after {
	background-image: url(../img/1st_anniversary/side_balloon-night.svg);
}

/* タイトル */
.anniversary-title {
	position: relative;
	z-index: 2; /* .anniversary-kv, .anniversary-main__innerより前 */
}

@media screen and (max-width: 1024px) {
	.anniversary-title {
		background-color: #fff;
		mask-image: url(../img/1st_anniversary/_title_bg-wave.svg);
		mask-repeat: no-repeat;
		mask-size: 100% auto;
		mask-position: center;
	}
}

.annivasary-title__confetti {
	pointer-events: none; /* 装飾 */
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.annivasary-title__confetti img {
	width: 100%;
	height: auto;
}

.anniversary-title__inner {
	display: flex;
	align-items: center;
	padding: max(6.667cqi ,40px) 40px max(3.333cqi ,20px) 20px;
	width: 100%;
	position: relative;
}

@media screen and (max-width: 1024px) {
	.anniversary-title__inner {
		padding: 10cqi 6cqi 10cqi;
	}
}

.anniversary-title__logo {
	flex-shrink: 0;
	margin-right: 2.5cqi;
	width: 26.333cqi;
	aspect-ratio: 1 / 1;
}

@media screen and (max-width: 1024px) {
	.anniversary-title__logo {
		display: none;
	}
}

.anniversary-title__text {
	flex-grow: 1;
	width: 100%;
}

/* メインスクロール部 */
.anniversary-main {
	background: #fff;
}

.anniversary-main__inner {
	margin-top: 3.333cqi;
	padding: 6.667cqi 40px 20px;
	background: #fef0cd;
	position: relative;
	z-index: 1;
}

@media screen and (max-width: 1024px) {
	.anniversary-main__inner {
		margin-top: -3.333cqi;
		padding: 10cqi 4cqi 8cqi;
	}
}

.anniversary-main__inner--wave {
	width: 100%;
	aspect-ratio: 600 / 21;
	position: absolute;
	top: -20px;
	top: -3.333cqi;
	left: 0;
	z-index: -1;
}

.anniversary-main__inner--wave svg {
	display: block;
	width: 100%;
	height: 100%;
}

.anniversary-main__inner--wave svg path {
	fill: #fef0cd;
}

@media screen and (max-width: 1024px) {
	.anniversary-main__inner--wave {
		display: none;
	}
}

.anniversary-main__title {
	/* margin-bottom: 0 !important; */
}

.anniversary-main__tablist {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	padding: 0 50px;
	gap: 8px;
}

@media screen and (max-width: 768px) {
	.anniversary-main__tablist {
		padding: 0 25px;
	}
}

.anniversary-main__tablist button,
.anniversary-main__tablist a {

}

@media (any-hover: hover ) {
	.anniversary-main__tablist button:hover,
	.anniversary-main__tablist a:hover {
		opacity: 1;
	}
}

.anniversary-main__tabitem {

}

.anniversary-main__tab {
	display: block;
	width: 100%;
	height: auto;
}

.anniversary-main__tab__bg {
	fill: #a3a2a3;
}

@media (any-hover: hover ) {
	.anniversary-main__tab:hover .anniversary-main__tab__bg {
		fill: #ff4f20;
	}
}

.anniversary-main__tabitem.is-open .anniversary-main__tab__bg {
	fill: #ff4f20;
}

.anniversary-main__panels {
	padding: 10px 60px 20px;
	background: #fef0cd;
	border-radius: 20px 20px 0 0;
	position: relative;
	z-index: 1;
}

@media screen and (max-width: 768px) {
	.anniversary-main__panels {
		padding: 10cqi 4cqi 8cqi;
	}
}

@media screen and (max-width: 768px) {
	.anniversary-main__panels {
		padding-top: 4cqi;
	}
}

.anniversary-main__panel {
	padding-bottom: 20px;
}

.anniversary-main__panel:not(.is-show) {
	display: none;
}

.anniversary-main__panels__pulldown {
	position: sticky;
	top: var(--pc-header-height);
	z-index: 99;
}

@media screen and (max-width: 1024px) {
	.anniversary-main__panels__pulldown {
		top: var(--sp-header-height);
	}
}

.pulldown {
	margin-bottom: 10px;
	position: relative;
}

.pulldown::after {
	pointer-events: none;

	display: block;
	content: "";
	width: 17px;
	height: 10px;
	background-image: url(../img/1st_anniversary/store/pulldown-arrow.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	position: absolute;
	right: 17px;
	top: 50%;
	transform: translateY(-50%);
}

.pulldown__icon {
	pointer-events: none;

	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 0;
	width: 72px;
	height: calc( 100% - 1px );
	min-height: calc( 40px - 1px );
	background: #ff4f20;
	position: absolute;
	top: 0.5px;
	left: 0;
}

.pulldown__icon img {
	width: 34px;
	height: auto;
}	

.pulldown__select {
	padding: 5px 10px;
	height: 100%;
	min-height: 40px;
	padding-left: calc( 72px + 10px );
	width: 100%;
	background: #fff;
	color: #000;
	border: 0.5px solid #251e1c;
	border-radius: 0;
}

.anniversary-main__panels__caption {
	padding-top: 10px;
}

.anniversary-main__cardlist {
	display: flex;
	flex-wrap: wrap;
	gap: 15px 15px;
}

.anniversary-main__cardlist > li {
	width: calc( (100% - 15px * 2) / 3 );
	background-image: url(../img/1st_anniversary/logo-1stanniversary-white.svg);
	background-repeat: no-repeat;
	background-size: 65.333% auto;
	background-position: center center;
	border: 0.5px solid #fff;
}

@media screen and (max-width: 768px) {
	.anniversary-main__cardlist > li {
		width: calc( (100% - 15px) / 2 );
	}
}

.anniversary-main__cardlist > li:has(.card) {
	border-color: #000;
}

.anniversary-main__cardlist > li:nth-of-type(3n+1):empty {
	display: none;
}

@media screen and (max-width: 1024px) {
	.anniversary-main__cardlist > li:nth-of-type(3n+1):empty {
		display: block;
	}
}

@media screen and (max-width: 768px) {
	.anniversary-main__cardlist > li:nth-of-type(2n+1):empty {
		display: none !important;
	}

	.anniversary-main__cardlist > li:nth-of-type(2n+1):empty ~ li {
		display: none;
	}
}

/* 店舗カード */
.card {
	height: 100%;
	min-height: 275px;
}

.card__inner {
	display: flex;
	flex-direction: column;
	padding: 0 10px 20px;
	height: 100%;
	background: #fff;
	position: relative;
}

.card__floor {
	padding: 0.025em 0.355em;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.25;
	background: #fff;
	border: 0.5px solid #000;
	border-top: none;
	border-left: none;
	position: absolute;
	left: 0;
	top: 0;
}

.card__img {
	margin: 0 -10px;
}

.card__text {
	font-size: 12px;
	font-weight: 400;
	line-height: 1.36;
	font-feature-settings: "palt";
}

.card__text small {
	font-size: 10px;
	font-weight: inherit;
}

.card__text > ul {
	list-style: middle-dot;
	padding-left: 10px;
}

@counter-style middle-dot {
  system: cyclic;
  symbols: ・;
  suffix: " ";
  fallback: disc;
}

.card__text > ul > li {}

.card__taglist {
	margin-top: auto; /* .card__inner の末尾に付ける */
	display: flex;
	justify-content: flex-end;
	gap: 8px;
	position: relative;
	bottom: -10px;
}

.card__taglist > li {
	display: inline-flex;
	align-items: center;
	padding: 0.25em 0.7em;
	color: #fff;
	background: linear-gradient(to right, #f86e09 0%, #f04f65 100%);
	font-size: 10px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.01em;
	font-feature-settings: "palt";
	border-radius: 9999px;
}

/* イントロ */
.anniversary-intro {}

.anniversary-intro__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-bottom: 30px;
}

.anniversary-intro__title {
	margin-bottom: 15px;
	color: #0064b8;
	font-size: 23px;
	font-weight: 700;
	line-height: 1.13;
	letter-spacing: 0.04em;
	font-feature-settings: "palt";
}

.anniversary-intro__title em {
	color: #ff4f20;
	font-style: normal;
}

@media screen and (max-width: 1024px) {
	.anniversary-intro__title {
		font-size: 22px;
	}
}

.anniversary-intro__text {
	padding: 0 25px;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.62;
	font-feature-settings: "palt";
}

@media screen and (max-width: 1024px) {
	.anniversary-intro__text {
		padding: 0;
		font-size: 16px;
	}
}

/* ナビゲーション */
.anniversary-nav {}

@media screen and (max-width: 1024px) {
	.anniversary-nav {
		display: none; /* .anniversary-menu */
	}
}

.anniversary-nav__inner {
	padding-bottom: 30px;
}

.anniversary-nav__list {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 9px;
	margin: 0 auto;
	/* max-width: calc(600px - 40px * 2); */
}

.anniversary-nav__list > li {
	width: calc( ( 100% - 9px * 4 ) / 5);
	aspect-ratio: 96.8 / 90;
	border-radius: 3px;
	position: relative;
}

.anniversary-nav__list > li::before {
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	background: #c6ab76;
	border-radius: 3px;
	position: absolute;
	bottom: -4px;
	right: -4px;
	z-index: -1;
}

.anniversary-nav__btn {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 5px 3px;
	padding: 0.833cqi 0.5cqi; /*5px 3px*/
	height: 100%;
	background-color: #fff;
	background-image: url(../img/1st_anniversary/nav_btn-bg.svg);
	background-repeat: no-repeat;
	background-size: 100% 58.889%;
	background-position: center top;
	border-radius: 3px;
	overflow: hidden;
}

@media (any-hover: hover ) {
	.anniversary-nav__btn {
		transition: transform 0.2s ease;
	}

	.anniversary-nav__btn:hover {
		opacity: 1;
		transform: translate(2px, 2px);
	}
}

.anniversary-nav__btn__bg {
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: calc( 50% - 5px );
	min-height: calc( 50% - 0.833cqi ); /*5px*/
	color: #fff;
	font-size: 12px;
	font-size: 2cqi; /*12px*/
	font-weight: 600;
	text-align: center;
	line-height: 1.25;
	font-feature-settings: "palt";
}

.anniversary-nav__btn__icon {
	margin-top: 5px;
	flex-grow: 1;
	display: flex;
	justify-content: center;
	align-items: center;
}

.anniversary-nav__btn__icon img {
	width: 35px;
	width: 5.833cqi; /*35px*/
	height: 35px;
	height: 5.833cqi; /*35px*/
}

/* カレンダー */
.anniversary-calendar {}

.anniversary-calendar__inner {
	padding-bottom: 40px;
}

@media screen and (max-width: 768px) {
	.anniversary-calendar__inner {
		padding-bottom: 20px;
	}
}

.anniversary-calendar__title {
	margin: 0 auto 10px;
	width: 168px;	
}

.anniversary-calendar__title img {
	width: 100%;
	height: auto;
}

/* セクション共通 */

.anniversary-section {
	/* .anchor { */
	scroll-margin-top: var(--pc-header-height);
	/* } */
}

@media screen and (max-width: 1024px) {
	.anniversary-section {
		/* .anchor { */
			scroll-margin-top: var(--sp-header-height);
		/* } */
	}
}

.anniversary-section__inner {
	padding-bottom: 40px;
}

@media screen and (max-width: 768px) {
	.anniversary-section__inner {
		padding-bottom: 20px;
	}
}

.anniversary-section__box {
	padding: 20px 20px 30px;
	width: 100%;
	background: #fff;
	color: #323232;
}

@media screen and (max-width: 768px) {
	.anniversary-section__box {
		padding: 15px 15px 20px;
	}
}

.anniversary-section__title {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
	padding: 15px 20px;
	background-image: url(../img/1st_anniversary/section_title-bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	color: #fff;
	font-size: 26px;
	font-weight: 900;
	line-height: 1.25;
	font-feature-settings: "palt";
}

@media screen and (max-width: 768px) {
	.anniversary-section__title {
		padding: 10px 20px;
		font-size: 18px;
	}
}

.anniversary-section__title__icon {
	flex-shrink: 0;
	margin-right: 10px;
	height: 34px;
}

.anniversary-section__title__icon img {
	width: auto;
	height: 100%;
}

.anniversary-section__text {
	font-size: 14px;
	font-weight: 500;
	text-align: center;
	line-height: 1.667;
}

@media screen and (max-width: 768px) {
	.anniversary-section__text {
		font-size: 14px;
	}
}

.anniversary-section__btnlist {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: 22px;
	margin-top: 20px;
}

@media screen and (max-width: 1024px) {
	.anniversary-section__btnlist {
		gap: 12px;
	}
}

@media screen and (max-width: 768px) {
	.anniversary-section__btnlist {
		flex-wrap: wrap;
		align-items: center;
	}
}


.anniversary-section__btnlist > li {
	width: 100%;
	max-width: 240px;
}

@media screen and (max-width: 768px) {
	.anniversary-section__btnlist > li {
		width: 60%;
	}
}

/* 1周年記念 特別商品＆特典 */
.anniversary-special {}

.anniversary-special__inner {}

/* オリジナルグッズ */
.anniversary-point {}

.anniversary-point__inner {}

.anniversary-point__head {
	margin: 0 -10px;
	padding: 10px 10px;
	background: #0068b5;
	color: #fff;
	position: relative;
}

.anniversary-point__head::before,
.anniversary-point__head::after {
	display: block;
	content: "";
	width: 10px;
	height: 10px;
	background: #004484;
	clip-path: polygon(0 0, 100% 100%, 100% 0);
	position: absolute;
	bottom: -10px;
	transform-origin: center;
}

.anniversary-point__head::before {
	left: 0;
	transform: scaleX(1);
}

.anniversary-point__head::after {
	right: 0;
	transform: scaleX(-1);
}

.anniversary-point__head__title {
	color: #ffff6e;
	font-size: 22px;
	font-weight: 900;
	text-align: center;
	line-height: 1.1;
	font-feature-settings: "palt";
}

.anniversary-point__head__title strong {
	font-style: normal;
	display: inline-block;
	margin-top: 5px;
	padding: 0.1em 0.25em;
	background: #ffff6e;
	color: #0068b5;
}

.anniversary-point__head__date {
	margin: 10px auto 0;
	width: 100%;
	max-width: 397px;
}

.anniversary-point__body {
	padding: 20px 20px 20px;
	background: #fff;
}

.anniversary-point__section + .anniversary-point__section {
	margin-top: 15px;
}

.anniversary-point__title {
	display: flex;
	align-items: center;
	margin-bottom: 20px;
}

.anniversary-point__title::before,
.anniversary-point__title::after {
	display: block;
	content: "";
	flex-grow: 1;
	width: 100%;
	height: 1px;
	background: #0068b5;
}

.anniversary-point__title img {
	flex-shrink: 0;
	padding: 0 20px;
	width: auto;
	height: 20px;
}

.anniversary-point__goods {}

.anniversary-point__goods__title {
	margin-top: -13px;
	margin-left: -9px;

	margin-bottom: 8px;
	margin-bottom: 1.333cqi; /*8px*/
}

@media screen and (max-width: 1024px) {
	.anniversary-point__goods__title {
		margin-bottom: 8px;
	}
}

/* オリジナルグッズ */
.originalgoods {}

.originalgoods__inner {
	display: flex;
	flex-direction: row-reverse;
	gap: 20px;
	gap: 3.333cqi;
}

@media screen and (max-width: 1024px) {
	.originalgoods__inner {
		flex-direction: column;
	}
}

.originalgoods__image {
	flex-shrink: 0;
	width: calc( 207 / 480 * 100% );
	width: 34.5cqi;
}

@media screen and (max-width: 1024px) {
	.originalgoods__image {
		width: 100%;
	}
}

.originalgoods__image__caption {
	color: #2e2e2e;
	font-size: 8px;
	font-size: 1.333cqi; /*8px*/
	text-align: right;
}

@media screen and (max-width: 1024px) {
	.originalgoods__image__caption {
		font-size: 10px;
	}
}

.originalgoods__desc {
	flex-grow: 1;
	color: #2e2e2e;
	font-size: 12px;
	font-size: 2cqi; /*12px*/
	font-weight: 500;
}

@media screen and (max-width: 1024px) {
	.originalgoods__desc {
		width: 100%;
		font-size: 14px;
	}
}

.originalgoods__desc__head {
	margin-bottom: 10px;
	margin-bottom: 1.667cqi; /*10px*/
	width: 100%;
	background: #0068b5;
	color: #fff;
	text-align: center;
	line-height: 1.5;
	font-feature-settings: "palt";
}

@media screen and (max-width: 1024px) {
	.originalgoods__desc__head {
		margin-bottom: 10px;
	}
}

.originalgoods__desc__text {
	line-height: 1.417;
	font-feature-settings: "palt";
}

.originalgoods__desc__text + .originalgoods__desc__text {
	margin-top: 10px;
	margin-top: 1.667cqi; /*10px*/
}

@media screen and (max-width: 1024px) {
	.originalgoods__desc__text + .originalgoods__desc__text {
		margin-top: 5px;
	}
}

.originalgoods__desc__text strong {
	margin-top: 10px;
	color: #ff4f20;
	font-size: 14px;
	font-size: 2.333cqi; /*14px*/
	font-weight: 700;
	line-height: 1;
}

.originalgoods__desc__text strong em {
	font-size: 24px;
	font-size: 4cqi; /*24px*/
	line-height: 1.3;
}

.originalgoods__desc__text small {
	font-size: 10px;
	font-size: 1.667cqi; /*10px*/
}

@media screen and (max-width: 1024px) {
	.originalgoods__desc__text strong {
		font-size: 18px;
	}

	.originalgoods__desc__text strong em {
		font-size: 21px;
	}

	.originalgoods__desc__text small {
		display: block;
		margin-top: 5px;
		font-size: 10px;
	}
}

.originalgoods__info {
	display: flex;
	flex-wrap: wrap;
	margin-top: 15px;
	margin-top: 2.5cqi; /*15px*/
	gap: 10px;
	gap: 1.667cqi; /*10px*/
}

@media screen and (max-width: 1024px) {
	.originalgoods__info {
		margin-top: 10px;
		gap: 5px 10px;
	}
}

.originalgoods__info__inner {
	display: flex;
	align-items: center;
}

.originalgoods__info__title {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-right: 10px;
	margin-right: 1.667cqi; /*10px*/
	padding: 0 0.875em;
	background: linear-gradient(to right, #f86e09 0%, #f04f65 100%);
	color: #fff;
	font-size: 10px;
	font-size: 1.667cqi; /*10px*/
	line-height: 2;
}

@media screen and (max-width: 1024px) {
	.originalgoods__info__title {
		margin-right: 5px;
		font-size: 10px;
	}
}

.originalgoods__info__text {
	font-size: 12px;
	font-size: 2cqi; /*12px*/
}

.originalgoods__info__text small {
	display: inline-block;
	font-size: 8px;
	font-size: 1.333cqi; /*8px*/
}

@media screen and (max-width: 1024px) {
	.originalgoods__info__text {
		font-size: 12px;
	}

	.originalgoods__info__text small {
		font-size: 10px;
	}
}

.anniversary-point__banner {
	text-align: center;
}

.anniversary-point__banner__click {
	display: inline-block;
	height: 15px;
}

.anniversary-point__banner__click img {
	width: auto;
	height: 100%;
}

/* 限定メニュー／特別価格 */
.anniversary-gourmet {}

.anniversary-gourmet__inner {}

.anniversary-gourmet__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	margin-top: 20px;
	gap: 12px;
}

.anniversary-gourmet__list > li {
	width: calc( (100% - 12px * 2) / 3 );
}

/* イベント・キャンペーン */
.anniversary-event {}

.anniversary-event__inner {}

.anniversary-event__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	margin-top: 20px;
	gap: 12px;
}

.anniversary-event__list > li {
	width: 100%;
}

.anniversary-event__list > li > button,
.anniversary-event__list > li > a {
	display: flex;
	position: relative;
}

@media (any-hover: hover ) {
	.anniversary-event__list > li > button,
	.anniversary-event__list > li > a {
		transition: opacity 0.3s ease;
	}

	.anniversary-event__list > li > button:hover,
	.anniversary-event__list > li > a:hover {
		opacity: 0.7;
	}
}

.anniversary-event__list > li > button::after,
.anniversary-event__list > li > a::after {
	pointer-events: none;
	display: flex;
	justify-content: center;
	align-items: center;
	content: "";
	width: calc( 29 / 480 * 100% );
	height: calc( 45 / 46 * 100% );
	background-color: #ff4f20;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	top: 0;
	bottom: 0;
	right: calc( 0.5 / 480 * 100% );
	margin: auto;
}

.anniversary-event__list > li > button::after {
	background-image: url(../img/1st_anniversary/event_arrow.svg);
	background-size: 12px 7px;
}

.anniversary-event__list > li > button.is-open::after {
	background-color: #f7cabe;
	/* transform: scaleY(-1); */
	background-image: url(../img/1st_anniversary/event_arrow-open.svg);
}

.anniversary-event__list > li > a::after {
	/* content: "CLICK!"; */
	width: calc( 45.5 / 480 * 100% );
	background-image: url(../img/1st_anniversary/event_click.svg);
	background-size: 40px 10px;
}

@media screen and (max-width: 768px) {
	.anniversary-event__list > li > button::after {
		background-size: 50% auto;
	}

	.anniversary-event__list > li > a::after {
		background-size: 75% auto;
	}
}

.anniversary-event__list--pickup {
  /* .anniversary-event__list { */
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: flex-start;
		margin-top: 20px;
		gap: 12px;
	/*  } */
}

.anniversary-event__list--pickup > li {
	width: calc( (100% - 12px * 2) / 3 );
}

.anniversary-event__list--pickup > li > button,
.anniversary-event__list--pickup > li > a {
	display: flex;
	position: relative;
}

@media (any-hover: hover ) {
	.anniversary-event__list--pickup > li > button,
	.anniversary-event__list--pickup > li > a {
		transition: opacity 0.3s ease;
	}

	.anniversary-event__list--pickup > li > button:hover,
	.anniversary-event__list--pickup > li > a:hover {
		opacity: 0.7;
	}
}

.anniversary-event__list--pickup > li > button::after,
.anniversary-event__list--pickup > li > a::after {
	pointer-events: none;
	display: flex;
	justify-content: center;
	align-items: center;
	content: "";
	width: calc( 151 / 152 * 100% );
	height: calc( 27.5 / 164 * 100% );
	background-color: #ff4f20;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	bottom: calc( 0.5 / 164 * 100% );
	left: 0;
	right: 0;
	margin: auto;
}

.anniversary-event__list--pickup > li > button::after {
	background-image: url(../img/1st_anniversary/event_arrow.svg);
	background-size: 12px 7px;
}

.anniversary-event__list--pickup > li > button.is-open::after {
	background-color: #f7cabe;
	/* transform: scaleY(-1); */
	background-image: url(../img/1st_anniversary/event_arrow-open.svg);
}

.anniversary-event__list--pickup > li > a::after {
	/* content: "CLICK!"; */
	background-image: url(../img/1st_anniversary/event_click.svg);
	background-size: 40px 10px;
}

@media screen and (max-width: 768px) {
	.anniversary-event__list--pickup > li > button::after {
		background-size: auto 25%;
	}

	.anniversary-event__list--pickup > li > a::after {
		background-size: auto 50%;
	}
}

.anniversary-event__detail {
	border: 0.5px solid #6e5a32;
	border-top: none;
}

.anniversary-event__detail:not(.is-show) {
	display: none;
}

.anniversary-event__article {
	padding-bottom: 20px;
}

.anniversary-event__article + .anniversary-event__article {
	/* padding-top: 20px; */
	border-top: 2px dotted #000;
}

/* イベント */
.event {}

.event__inner {
	display: flex;
	flex-direction: row-reverse;
	gap: 20px;
	gap: 3.333cqi; /*20px*/
	padding: 20px 20px 0;
	padding: 3.333cqi 3.333cqi 0; /*20px*/
}

@media screen and (max-width: 1024px) {
	.event__inner {
		flex-direction: column;
		gap: 15px;
		padding: 20px 20px 0;
	}
}

.event__image {
	flex-shrink: 0;
	width: calc( 230 / 480 * 100% );
	width: 38.333cqi; /*230px*/
	margin: -20px -20px 0 0;
	margin: -3.333cqi -3.333cqi 0 0; /*-20px*/
}

@media screen and (max-width: 1024px) {
	.event__image {
		margin: 0;
		width: 100%;
	}
}

.event__date {
	margin-bottom: 15px;
	margin-bottom: 2.5cqi; /*15px */
}

.event__date img {
	width: auto;
	height: 19.5px;
	height: 3.25cqi; /*19.5px*/
}

@media screen and (max-width: 1024px) {
	.event__date {
		margin-bottom: 15px;
	}

	.event__date img {
		height: 18px;
	}
}

.event__title {
	color: #0064b8;
	font-size: 24px;
	font-size: 4cqi; /*24px*/
	font-weight: 800;
	line-height: 1.1667;
}

@media screen and (max-width: 1024px) {
	.event__title {
		font-size: 20px;
	}
}

.event__title__add {
	display: block;
	margin-top: 0.5em;
	font-size: 14px;
	font-size: 2.333eqi; /*14px*/
	line-height: 1.4285;
}

@media screen and (max-width: 1024px) {
	.event__title__add {
		font-size: 14px;
	}
}

.event__title__logo {
	margin-bottom: 0.5em;
	display: block;
}

.event__title__logo img {
	width: auto;
	height: 20px;
	height: 3.333cqi; /*20px */
}

@media screen and (max-width: 1024px) {
	.event__title__logo img {
		height: 20px;
	}
}

.event__desc {
	flex-grow: 1;
	color: #2e2e2e;
	font-size: 12px;
	font-size: 2cqi; /*12px*/
	font-weight: 500;
}

@media screen and (max-width: 1024px) {
	.event__desc {
		width: 100%;
		font-size: 12px;
	}
}

.event__desc__head {
	display: inline-block;
	margin-bottom: 15px;
	margin-bottom: 2.5cqi; /*15px*/
	padding: 0.05em 1.25em;
	background: linear-gradient(to right, #f86e09 0%, #f04f65 100%);
	color: #fff;
	font-size: 12px;
	font-size: 2cqi; /*12px */
	text-align: center;
	line-height: 1.5;
	font-feature-settings: "palt";
}

@media screen and (max-width: 1024px) {
	.event__desc__head {
		margin-bottom: 10px;
		font-size: 12px;
	}
}

.event__desc__text {
	margin-top: 15px;
	margin-top: 2.5cqi; /*15px*/
	line-height: 1.417;
	font-feature-settings: "palt";
}

@media screen and (max-width: 1024px) {
	.event__desc__text {
		margin-top: 10px;
	}
}

.event__desc__text strong {
	margin-top: 10px;
	color: #ff4f20;
	font-size: 14px;
	font-size: 2.333cqi; /*14px*/
	font-weight: 700;
	line-height: 1;
}

.event__desc__text small {
	font-size: 10px;
	font-size: 1.667cqi; /*10px*/
}

@media screen and (max-width: 1024px) {
	.event__desc__text strong {
		font-size: 16px;
	}

	.event__desc__text small {
		display: block;
		margin-top: 5px;
		font-size: 10px;
	}
}

.event__info {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 20px;
	gap: 1.667cqi 3.333cqi; /*10px 20px*/

	padding: 20px 20px 0;
	padding: 3.333cqi 3.333cqi 0; /*20px*/
}

@media screen and (max-width: 1024px) {
	.event__info {
		gap: 10px 10px;
		padding: 20px 20px 0;
	}
}

.event__desc .event__info {
	padding-left: 0;
	padding-right: 0;
}

.event__info__inner {
	display: flex;
	align-items: center;
}

@media screen and (max-width: 1024px) {
	.event__info__inner {

	}
}

.event__info__title,
.event__info__title--benefit {
	flex-shrink: 0;
	align-self: flex-start; /* 上揃え */

	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-right: 10px;
	margin-right: 1.667cqi; /*10px*/
	padding: 0 0.5em;
	min-width: 5em; /* 4文字(+左右余白）基準 */
	background: #a98d62;
	color: #fff;
	font-size: 10px;
	font-size: 1.667cqi; /*10px*/
	line-height: 2;
}

.event__info__title--benefit {
	background: linear-gradient(to right, #f86e09 0%, #f04f65 100%);
}

@media screen and (max-width: 1024px) {
	.event__info__title,
	.event__info__title--benefit {
		margin-right: 5px;
		font-size: 10px;
	}
}

.event__info__title--benefit + .event__info__text {
	font-size: 10px;
	font-size: 1.667cqi; /*10px*/
}

@media screen and (max-width: 1024px) {
	.event__info__title--benefit + .event__info__text {
		font-size: 10px;
	}
}

.event__info__text {
	font-size: 12px;
	font-size: 2cqi; /*12px*/
	font-feature-settings: "palt";
	line-height: 1.416;
}

.event__info__text strong {
	color: #ff4f20;
	font-size: 12px;
	font-size: 2cqi; /*12px*/
	font-weight: 500;
}

.event__info__text small {
	display: inline-block;
	font-size: 8px;
	font-size: 1.333cqi; /*8px*/
}

@media screen and (max-width: 1024px) {
	.event__info__text {
		font-size: 12px;
	}

	.event__info__text strong {
		font-size: 12px;
	}

	.event__info__text small {
		font-size: 10px;
	}
}

.event__caption {
	padding: 10px 20px 0;
	padding: 1.667cqi 3.333cqi 0; /*10px 20px*/

	font-size: 8px;
	font-size: 1.333cqi; /*8px*/
	line-height: 1.375;
}

.event__caption small {
	display: inline-block;
	font: inherit;
	padding-left: 1em;
	text-indent: -1em;
}

@media screen and (max-width: 1024px) {
	.event__caption {
		padding: 10px 20px 0;
		font-size: 10px;
	}
}

/* 注釈 */
.anniversary-caption {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	font-size: 10px;
	line-height: 1.6;
}

@media screen and (max-width: 768px) {
	.anniversary-caption {
		justify-content: flex-start;
	}

	.anniversary-caption p {
		padding-left: 1em;
		text-indent: -1em;
	}
}

/* pagetop */
.anniversary__pagetop {
	display: block;
	width: 40px;
	height: 40px;

	position: fixed;
	bottom: 16px;
	right: 5px;
	right: calc( 5px + ( 100vw - var(--container-width) ) / 2 ); /* コンテナ余り分の片方を追加 */
	z-index: 100;
	transition: none;
}

@media screen and (max-width: 1024px) {
	.anniversary__pagetop {
		display: none; /* .anniversary-menu */

		bottom: 12px;
		right: 12px;
	}
}

.anniversary__pagetop img {
	width: 100%;
	height: 100%;
}



