@charset "UTF-8";

/*************
FMT
*************/
.info_wrap,
.footer_container {
	font-family: 'Noto Sans JP', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Arial", "Verdana", "sans-serif";
	font-size: 16px;
	color: var(--text-color);
	line-height: 1.5;
	font-weight: 400;
}
img {
	display: block;
	width: 100%;
	height: auto;
}
.content_wrap {
	-webkit-font-smoothing: antialiased;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	line-height: 1.5;
	font-weight: 400;
	color: var(--text-color);
	background-color: var(--bg-color);
	width: 100%;
	position: relative;
	z-index: 0;
}
.content_wrap * {
	margin: 0;
	box-sizing: border-box;
}
.content-inner {
	width: 92%;
	max-width: 820px;
	margin-inline: auto;
}
a:hover img {opacity: 1;}

figure {
	margin: 0 auto;
    width: 100%;
}
figcaption .caption {
	margin-left: auto;
    margin-right: 0;
    width: fit-content;
	font-size: 12px;
}
ul {
	list-style: none;
	padding: 0;
}
:root {
	--text-color: #000000;
	--primary-color: #E585B9;
	--bg-color: #FFF;
	--red-color: #EE0000;
}
/*アキ*/
.mgt48 {margin-top: 48px !important;}
.mgt32 {margin-top: 32px !important;}
.mgt24 {margin-top: 24px !important;}
.mgt16 {margin-top: 16px !important;}
.mgt8 {margin-top: 8px !important;}
.mgt4 {margin-top: 4px !important;}
.mgt0 {margin-top: 0 !important;}

/*テキストサイズ*/
.annotation {font-size: 14px;}
.smallest {font-size: 12px;}
.larger {font-size: 1.5em;}
.smaller {font-size: 0.75em;}

/* テキスト揃え */
.center {text-align: center;}
.auto_center {
	margin-left: auto;
	margin-right: auto;
	width: fit-content;
}
.right {text-align: right;}
.left {text-align: left;}
.ib {display: inline-block;}

/* テキストカラー */
.fcPrimary {color: var(--primary-color);}
.fcRed {color: var(--red-color);}
.fcWhite {color: var(--bg-color)}
.fcYellow {color: #FF0;}

/* テキスト汎用 */
.bold {font-weight: bold;}
.text_link{
	color: var(--primary-color);
	text-decoration: underline;
	font-weight: bold;
	cursor: pointer;
}
.marker {
	background: linear-gradient(transparent 50%, var(--accent-color) 50%);
}
.relative_wrap {position: relative;}

/* 箇条書き */
ul.text_list li,
p.text_list {
	text-indent: -1em;
	padding-left: 1em;
	text-align: left;
}
ul.text_list li + li{
	margin-top: 2px;
}
ul.text_list.annotation li {
	color: #626262;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.58;
	letter-spacing: .025em;
}
@media(min-width:751px){
	.red_box {
		font-size: 22px;
	}
	.pc_center {text-align: center;}

}
/* js-fadeUp */
.js-fadeUp {
	transform: translateY(10px);
	opacity: 0;
	transition: all 1s;
}
.js-fadeUp.is-inview {
	transform: translateY(0);
	opacity: 1;
}
/*************
汎用
*************/
/* アコーディオン */
.acc_body {
	display: none;
}
.acc_btn {
	font-weight: bold;
    width: fit-content;
	margin-inline: auto;
    color: var(--text-color);
    position: relative;
    padding-right: 28px;
	cursor: pointer;
	transition: all 0.3s;
}
.acc_btn span {
	position: absolute;
	height: 20px;
	width: 20px;
	border-radius: 100%;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}
.acc_btn span::before,
.acc_btn span::after {
	content: "";
	background-color: #FF9700;
	position: absolute;
	width: 12px;
	height: 3px;
	transform: translate(-50%,-50%);
	top: 50%;
	left: 50%;
	transition: transform 0.3s;
}
.acc_btn span::before {
	transform: translate(-50%,-50%) rotate(90deg);
}
.acc_btn.open span::before {
	transform: translate(-50%,-50%);
}
/* ご注意事項アコーディオン */
.caution_acc .acc_btn {
    padding: 4px 38px 6px 26px;
    border-radius: 30px;
    background-color: var(--text-color);
	color: var(--bg-color);
}
.caution_acc .acc_btn span {
	right: 10px;
}
.caution_acc .acc_body {
	margin-top: 16px;
}
.caution_head {
	font-weight: bold;
	font-size: 14px;
	margin-bottom: 4px;
}
.text_list + .caution_head {
	margin-top: 8px;
}
@media(min-width:751px) {
	.acc_body {
		max-width: 660px;
		margin-inline: auto;
	}
}

/* modal */
.modal {
	position: fixed;
	inset: 0;
	z-index: 1000;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: .3s;
}
.modal.show {
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
}
.modal__mask {
	position: absolute;
	inset: 0;
	z-index: 0;
	cursor: pointer;
	background: rgb(0 0 0/.5);
}
.modal__content {
	width: 92%;
	max-width: 500px;
	translate: -50% -50%;
	background: #fff;
	border: 2px solid var(--text-color);
	border-radius: 10px;
	padding: 20px;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	opacity: 0;
	pointer-events: none;
	transition: .3s;
}
.modal__content.show {
	opacity: 1;
	pointer-events: auto;
}
.modal__content__img {
	margin-bottom: 15px;
}
.modal__content__inner {
	padding-right: 27.54%;
	position: relative;
}
.modal__content__ttl-wrapper {
	display: flex;
	gap: 8px;
	align-items: center;
	margin-bottom: 10px;
}
.modal__content__num {
	width: 30px;
	height:30px;
	background: #A8EA49;
	border: 2px solid var(--text-color);
	border-radius: 50%;
	font-size: 18px;
	font-family: "Fugaz One","Noto Sans Jp",sans-serif;
	line-height: 1.4;
	text-align: center;
	padding-block: 2px 0;
}
.modal__content__num--b {
	background: #FF9700;
}
.modal__content__ttl {
	flex: 1;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.44;
	letter-spacing: .05em;
}
.modal__content__ttl__small-txt {
	font-size: 16px;
}
.modal__content__txt {
	font-size: 14px;
	line-height: 1.79;
	letter-spacing: .025em;
	margin-bottom: 6px;
}
.modal__content__frame {
	width: fit-content;
	padding: 4px 10px;
	background: #A8EA49;
	border-radius: 10vh;
	font-size: 12px;
	margin-bottom: 15px;
}
.modal__content__frame--b {
	background: #FF9700;
}
.modal__content__btn {
	display: block;
	width: fit-content;
	margin-inline: auto;
	padding: 6px 10px 7px 33px;
	background: none;
	border: 1px solid var(--text-color);
	border-radius: 10vh;
	font-size: 14px;
	font-family: "Noto Sans JP",sans-serif;
	letter-spacing: .025em;
	line-height: 1.43;
	position: relative;
	cursor: pointer;
	transition: .3s;
	&::before,&::after {
		content: "";
		display: block;
		width: 15px;
		height: 1px;
		background: var(--text-color);
		position: absolute;
		top: 50%;
		left: 15px;
		translate: 0 -50%;
		transition: .3s;
	}
	&::before {
		rotate: 45deg;
	}
	&::after {
		rotate: -45deg;
	}
	&:hover {
		background: var(--text-color);
		color: #fff;
		&::before,&::after {
			background: #fff;
		}
	}
}
.modal__content__deco {
	position: absolute;
}
.modal__content__deco--01,
.modal__content__deco--02,
.modal__content__deco--03,
.modal__content__deco--04,
.modal__content__deco--08 {
	width: 26.09%;
	top: -37px;
}
.modal__content__deco--01 {
	right: 1px;
}
.modal__content__deco--02 {
	right: 4px;
}
.modal__content__deco--03 {
	right: 11px;
}
.modal__content__deco--04 {
	right: 9px;
}
.modal__content__deco--05,
.modal__content__deco--06,
.modal__content__deco--07,
.modal__content__deco--09 {
	width: 23.48%;
	top: -56px;
}
.modal__content__deco--05 {
	right: 4px;
}
.modal__content__deco--06 {
	right: 5px;
}
.modal__content__deco--07 {
	right: 7px;
}
.modal__content__deco--08 {
	right: 7px;
}
.modal__content__deco--09 {
	right: 6px;
}

/* comingsoon & finish */
.comingsoon,.finish {
	position: relative;
	pointer-events: none;
	&::after {
		content: "Coming Soon";
		display: grid;
		place-content: center;
		background: rgb(255 255 255/.8);
		font-size: 10vw;
		font-weight: 700;
		font-family: "Fugaz One","Noto Sans JP",sans-serif;
		text-align: center;
		line-height: 1.2;
		position: absolute;
		inset: 0;
	}
}

/* finish */
.finish-txt {
	border: 2px solid #ff0000;
	background: #fff;
	padding-block: 8px;
	color: #ff0000;
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	margin-block: 16px;
}
.finish::after {
	content: "終了しました";
	border: 2px solid #ff0000;
	color: #ff0000;
	font-size: 18px;
	width: 90%;
	height: 90%;
	left: 50%;
	top: 50%;
	translate: -50% -50%;
}
@media(min-width:751px) {
	/* comingsoon */
	.comingsoon::after {
		color: #fff;
		font-size: 24px;
				white-space: pre;
		content: "Coming\ASoon";
	}
	.sec--ar__qr .comingsoon::after {
		background: #F2C2DC;
	}
	.sec--present__qr .comingsoon::after {
		background: #D5D6F4;
	}
	.sec--present__qr__img,
	.sec--ar__qr__img {
		padding: 8px;
		&::after {
			width: calc(100% - 16px);
			height: calc(100% - 16px);
			top: 8px;
			left: 8px;
		}
	}
	.finish::after {
		white-space: pre;
		content: "終了\Aしました";
	}
}

/* common-bg */
.common-bg {
	background: url(../img/bg_common01.png) repeat left top/50px 50px;
}

@media(min-width:751px) {
	.common-bg {
		display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: auto auto 1fr;
        gap: 50px;
        padding-block: 80px 133px;
        background: url(../img/bg_common02.png) no-repeat left calc(50% - 190px) top 48px / 831px 424px,
					url(../img/bg_common01.png) repeat left top / 50px 50px;
		.date {
			grid-area: 1/1/2/2;
			width: 100%;
			max-width: 445px;
			margin: 0 0 0 auto;
			align-self: end;
		}
	}
}

/* アニメーション */
.js-animate[data-animate="fade-up"] {
	opacity: 0;
	translate: 0 40px;
	transition: 1.5s ease;
}
.js-animate--active[data-animate="fade-up"] {
	opacity: 1;
	translate: 0;
}
.js-animate [data-animate="clip"] {
	display: block;
	clip-path: inset(0 100% 0 0);
	transition: 1.25s ease-in-out;
}
.js-animate--active [data-animate="clip"] {
	clip-path: inset(0);
}

/*************
header-wrapper
*************/
#header-yowapeda {
	padding: 0;
	display: grid;
	width: 100%;
	height: 66px;
	align-items: center;
	justify-content: normal;
	background: #fff;
	position: sticky;
	top: 0;
	left: 0;
	z-index: 999;
}
#header-yowapeda .content-inner {
	position:relative;
	display: flex;
	justify-content: center;
	align-items: center;
}
.header-yowapeda__img {
	width: 68.7%;
	max-width: 180px;
	transition: .3s;
}
.header-yowapeda__btn {
	position:absolute;
	right:0;
	display: grid;
	gap: 6px;
	place-content: center;
	width: 44px;
	height: 44px;
	background: var(--primary-color);
	border: 1px solid var(--bg-color);
	border-radius: 50%;
	padding-block: 16px;
	cursor: pointer;
	transition: .3s;
	span {
		display: block;
		width: 18px;
		height: 1px;
		background: var(--bg-color);
		transition: .3s;
		&:last-child {
			width: 12px;
		}
	}
	&:hover {
		background: var(--bg-color);
		border-color: var(--primary-color);
		span {
			background: var(--primary-color);
		}
	}
}
.header-yowapeda__hbg {
	width: 100%;
	height: 100dvh;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	background: var(--primary-color);
	padding-block: 11px;
	overflow: auto;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: .3s;
}
.header-yowapeda__hbg.show {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
.header-yowapeda__hbg__btn {
	display: block;
	width: 44px;
	height: 44px;
	background: transparent;
	border: 1px solid var(--bg-color);
	border-radius: 50%;
	position: relative;
	margin: 0 0 10px auto;
	cursor: pointer;
	transition: .3s;
	&::before,&::after {
		content: "";
		display: block;
		width: 18px;
		height: 1px;
		background: var(--bg-color);
		position: absolute;
		top: 50%;
		left: 50%;
		translate: -50% -50%;
		transition: .3s;
	}
	&::before {
		rotate: 45deg;
	}
	&::after {
		rotate: -45deg;
	}
	&:hover {
		background: var(--bg-color);
		&::before,&::after {
			background: var(--primary-color);
		}
	}
}
.header-yowapeda__nav {
	margin-bottom: 107px;
}
[data-header-yowapeda__list] {
	border-top: 1px solid #F2C2DC;
	&:first-child {
		border: none;
	}
}
.header-yowapeda__list__link {
	display: block;
	padding-block: 29px 24px;
	color: var(--bg-color);
	font-size: 20px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: .025em;
	text-decoration: none;
	position: relative;
	&::after {
		content: "";
		display: block;
		width: 12px;
		height: 12px;
		border-top: 2px solid var(--bg-color);
		border-right: 2px solid var(--bg-color);
		position: absolute;
		top: 50%;
		right: 0;
		translate: 0 -50%;
		rotate: 45deg;
		transition: .3s;
	}
	&:hover::after {
		translate: -8px -50%;
	}
}
.header-yowapeda__list__link__inner {
	width: fit-content;
	margin-inline: auto;
	position: relative;
	text-align: center;
}
.header-yowapeda__list__link__num {
	color: #F2C2DC;
	font-size: 34px;
	font-family: "Fugaz One","Noto Sans JP",sans-serif;
	letter-spacing: 0;
	line-height: 1.47;
	position: absolute;
	top: -19px;
	left: -33px;
	z-index: -1;
}
[ data-header-yowapeda__list="items01"] .header-yowapeda__list__link__num {
	left: calc(50% - 93px);
}
@media(min-width:751px) {
	#header-yowapeda {
		height: 90px;
	}
	.header-yowapeda__img {
        max-width: 248px;
	}
	.header-yowapeda__btn {
        width: 60px;
        height: 60px;
        margin-inline: auto 40px;
		position: fixed;
		right: 0;
		top: 15px;
		span {
			width: 26px;
			height: 2px;
		}
	}
	.header-yowapeda__hbg {
		padding-top: 67px;
	}
	.header-yowapeda__hbg .content-inner {
		max-width: 560px;
	}
	.header-yowapeda__hbg__btn {
		width: 60px;
		height: 60px;
		position: absolute;
		top: 15px;
		right: 40px;
		&::before,&::after {
			width: 26px;
			height: 2px;
		}
	}

}
/*************
mv
*************/
@media(min-width:751px){
	.mv {
		grid-area: 1/2/2/3;
		max-width: 529px;
	}
}
/*************
date
*************/
.date {
	background: var(--text-color);
	padding-block: 5px 6px;
	display: grid;
	max-width: 820px;
	margin-inline: auto;
	grid-template-columns: 53px auto;
	justify-content: center;
	align-items: center;
	gap: 5px;
}
.date__ttl {
	background: var(--bg-color);
	color: var(--text-color);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.46;
	letter-spacing: .05em;
	text-align: center;
	padding-block: 2px;
	clip-path: polygon(10px 0, 100% 0,calc(100% - 10px) 100%,0 100%);
}
.date__dtl {
	color: var(--bg-color);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.45;
	[data-txt-size="large"] {
		font-size: 22px;
	}
	[data-txt-size="small"] {
		font-size: 12px;
	}
}
@media(min-width:751px){
	.date {
		background: var(--text-color);
		grid-template-columns: 68px auto;
	}
	.date__ttl {
		font-size: 16px;
	}
	.date__dtl {
		font-size: 19px;
		[data-txt-size="large"] {
			font-size: 28px;
		}
		[data-txt-size="small"] {
			font-size: 15px;
		}
	}
}
/*************
sec--lead
*************/
.sec--lead {
	padding-block: 62px 92px;
	background: url(../img/bg_lead.png) no-repeat center top 51px/100% auto;
	position: relative;
	&::before {
		content: "";
		display: block;
		width: 40.8vw;
		height: auto;
		aspect-ratio: 306/110;
		background: url(../img/img_lead.png) no-repeat center/cover;
		position: absolute;
		top: -2.67vw;
		right: 0;
		pointer-events: none;
		user-select: none;
	}
}
.sec--lead__txt {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.6875;
	letter-spacing: .075em;
	text-align: center;
}
@media(min-width:751px){
	.sec--lead {
		grid-area: 1/1/2/2;
		align-self: center;
		width: 100%;
		max-width: 445px;
		margin-inline: auto 0;
		padding: 0;
		background: none;
		&::before {
			display: none;
		}
	}
	.sec--lead__txt {
		font-size: 20px;
		line-height: 1.5;
	}
}
/*************
anchor-list
*************/
.anchor-list {
	margin-top: -9.07vw;
	position: relative;
	li {
		position: relative;
		pointer-events: none;
	}
}
[data-anchor-list="items01"] {
	.anchor-list__link::after {
		clip-path: polygon(0 22%, 100% 5%, 100% 82%, 0 100%);
	}
}
[data-anchor-list="items02"] {
	margin-top: -7.1vw;
	.anchor-list__link::after {
		clip-path: polygon(0 22%, 100% 0, 100% 100%, 0 86%);
	}
}
[data-anchor-list="items03"] {
	margin-top: -3.9vw;
	.anchor-list__link::after {
		clip-path: polygon(0 0, 100% 10%, 100% 79%, 0 100%);
	}
}
[data-anchor-list="items04"] {
	margin-top: -7vw;
	.anchor-list__link::after {
		clip-path: polygon(0 21%, 100% 0, 100% 78%, 0 100%);
	}
}
[data-anchor-list="items05"] {
	margin-top: -7.2vw;
	.anchor-list__link::after {
		clip-path: polygon(0 25%, 100% 0, 100% 100%, 0 88%);
	}
}
.anchor-list__link {
	display: block;
	transition: .3s;
	&::after {
		content: "";
		position: absolute;
		inset: 0;
		pointer-events: auto;
		/* background: rgb(255 0 0/.8); */
	}
	&:hover {
		opacity: .6;
	}
}
@media(min-width:751px){
	.anchor-list {
		grid-area: 2/1/3/3;
		display: grid;
		grid-template-columns: repeat(2,1fr);
		justify-content: center;
		gap: 0 20px;
		max-width: 828px;
		margin: 0 auto;
		li {
			margin: 0;
			&:nth-child(-n+2) {
				translate: -18px;
				margin-bottom: -29px;
			}
		}
	}
	[data-anchor-list="items02"] .anchor-list__link::after {
		clip-path: polygon(0 27%, 100% 9%, 100% 79%, 0 97%);
	}
	[data-anchor-list="items03"] {
		translate: -19px 12px;
		.anchor-list__link::after {
			clip-path: polygon(0 20%, 100% 2%, 100% 74%, 0 93%);
		}
	}
	[data-anchor-list="items04"] {
		translate: -18px 8px;
	}
	 .anchor-list__link::after {
		clip-path: polygon(0 28%, 100% 9%, 100% 81%, 0 100%);
	}
	[data-anchor-list="items05"] {
		grid-area: 3/1/4/3;
		.anchor-list__link {
			max-width: 404px;
			margin-inline: auto;
			&::after {
				clip-path: polygon(0 20%, 100% 0%, 100% 80%, 0 100%);
			}
		}
	}
}
/*************
sec--present
*************/
.sec--present {
	background: url(../img/bg_present01.png) no-repeat left -53.33vw top 46.67vw/106.67vw auto,
				url(../img/bg_present01.png) no-repeat right -53.33vw top 278.4vw/106.67vw auto,
				url(../img/bg_present01.png) no-repeat left -53.33vw top 427.73vw/106.67vw auto,
				url(../img/bg_present01.png) no-repeat right -53.33vw top 764.27vw/106.67vw auto,
				url(../img/bg_present01.png) no-repeat left -53.33vw top 1003.47vw/106.67vw auto,
				#D5D6F4;
	margin-top: -6.93vw;
	padding-block: 12.27vw 73px;
}
.sec--present__ttl {
	margin-bottom: 16px;
}
[data-section="present"] {
	background: var(--bg-color);
	margin-bottom: 20px;
}
[data-section="present"] .date__ttl {
	background: #7D81DE;
	color: var(--bg-color);
}
[data-section="present"] .date__dtl {
	color: #7D81DE;
}
.sec--present__txt,
.sec--ar__txt {
	font-weight: 700;
	letter-spacing: .075em;
	line-height: 1.6875;
	text-align: center;
}
.sec--present__txt {
	margin-bottom: 20px;
}
.sec--present-frame {
	padding-top: 10px;
	background: url(../img/bg_present03.png) no-repeat center top/100% auto;
}
.sec--present-frame__img-wrapper {
	margin-bottom: 20px;
}
.sec--present-frame__img {
	width: 82.61%;
	margin-inline: auto;
}
.sec--present-frame__img-note,
.sec--ar__img-note {
	color: #626262;
	font-size: 12px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: .025em;
	text-align: right;
}
.sec--present-frame__list,
.sec--collab-sticker__list {
	display: grid;
	gap: 20px;
	margin-bottom: 38px;
}
.sec--present-frame__list__date,
.sec--present-present__list__date,
.sec--collab-sticker__list__date {
	width: fit-content;
	margin: 0 auto 10px;
	padding: 2px 30px;
	background: #000;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.46;
	letter-spacing: .05em;
	clip-path: polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%);
}
.sec--present-frame__list__member,
.sec--present-present__list__member,
.sec--collab-sticker__list__member {
	font-size: 15px;
	font-weight: 700;
	line-height: 1.6;
	letter-spacing: .025em;
	text-align: center;
	margin-bottom: 12px;
}
.sec--present-frame__list__img {
	width: 55.94%;
	margin-inline: auto;
}
.sec--present__box,
.sec--ar__box,
.sec--collab__box {
	background: var(--bg-color);
	padding: 0 15px 20px;
	border: 2px solid var(--text-color);
	position: relative;
}
.sec--present__box {
	margin-bottom: 29px;
}
.sec--present__box__ttl,
.sec--ar__box__ttl,
.sec--collab__box__ttl {
	width: fit-content;
	background: var(--text-color);
	margin: -18px auto 28px;
	color: var(--bg-color);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
	text-align: center;
	padding: 5px 30px 7px;
	clip-path: polygon(8px 0,calc(100% - 8px) 0,100% 50%,calc(100% - 8px) 100%,8px 100%,0 50%);
}
.sec--present__way,
.sec--ar__way,
.sec--collab__way {
	font-size: 16px;
	font-weight: 700;
	display: flex;
	gap: 15px;
	span {
		color: #7D81DE;
		font-weight: 900;
	}
	&+& {
		padding-top: 22px;
		background: url(../img/bg_present02.png) no-repeat center top 4px /auto 18px;
	}
}
.sec--present__btn,
.sec--ar__btn {
	display: block;
	margin-block: 20px 30px;
	position: relative;
}
.sec--present__note-list,
.sec--ar__note-list {
	color: #626262;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.58;
	letter-spacing: .025em;
	margin-bottom: 15px;
	li {
		text-indent: -1em;
		padding-left: 1em;
		&+& {
			margin-top: 5px;
		}
	}
	.text_link {
		color: #7D81DE;
	}
}
.sec--present__box__acc .acc_btn span::before,
.sec--present__box__acc .acc_btn span::after{
	background: #7D81DE;
}
.sec--present-present {
	padding-top: 81px;
	background: url(../img/bg_present03.png) no-repeat center top/100% auto;
	position: relative;
}
.sec--present-present__ttl{
	margin-bottom: 20px;
}
.sec--present-present__list {
	display: grid;
	gap: 20px;
	margin-bottom: 8px;
}
.sec--present-present__list__items,
.sec--collab-sticker__list__items {
	background: #fff;
	border: 1px solid #000;
	padding-block: 16px 8px;
}
.sec--present-present__list__member {
	margin-bottom: 4px;
}
.sec--present-present__list__items__note,
.sec--present-present__note-list,
.sec--collab-sticker__list__note {
	color: #626262;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.42;
	letter-spacing: .05em;
	text-align: center;
	margin-bottom: 6px;
}
.sec--present-present__note-list {
	display: grid;
	gap: 5px;
	text-align: right;
	margin-bottom: 33px;
}
.sec--present-present__place,
.sec--ar-complete-place,
.sec--photo_place {
	background: var(--bg-color);
	padding: 32px 20px 26px;
	position: relative;
	margin-bottom: 16px;
	&::before {
		content: "";
		display: block;
		width: calc(100% - 10px);
		height: calc(100% - 10px);
		border: 1px solid var(--text-color);
		position: absolute;
		top: 5px;
		left: 5px;
		pointer-events: none;
	}
}
.sec--present-present__place__ttl,
.sec--ar-complete-place__ttl,
.sec--photo_place__ttl {
	width: fit-content;
	padding: 4px 26px 7px;
	margin: -44px auto 10px;
	background: var(--text-color);
	clip-path: polygon(7px 0,calc(100% - 7px) 0,100% 50%,calc(100% - 7px) 100%,7px 100%,0 50%);
	color: var(--bg-color);
	font-size: 17px;
	font-weight: 700;
	line-height: 1.47;
	letter-spacing: .05em;
}
.sec--present-present__place__dtl,
.sec--ar-complete-place__dtl,
.sec--photo_place__dtl {
	margin-bottom: 15px;
}
.sec--present-present__place__dtl__ttl,
.sec--ar-complete-place__dtl__ttl,
.sec--photo_place__dtl__ttl {
	color: #7D81DE;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: .05em;
	margin-bottom: 7px;
}
.sec--present-present__place__dtl__address,
.sec--ar-complete-place__dtl__address,
.sec--photo_place__dtl__address {
	font-size: 14px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: .05em;
	a {
		display: block;
		width: fit-content;
		margin-top: 7px;
		color: #7D81DE;
		background: linear-gradient(to right,#7D81DE 0%,#7D81DE 100%) no-repeat right bottom/100% 1px;
		font-weight: 500;
		text-decoration: none;
		padding-bottom: 1px;
		transition: .3s;
		&:hover{
			background-size: 0 1px;
		}
	}
}
.sec--present-present__place__list,
.sec--ar-complete-place__list,
.sec--photo_place__list {
	margin-bottom: 15px;
}
.sec--present-present__place__list__row,
.sec--ar-complete-place__list__row,
.sec--photo_place__list__row {
	display: grid;
	grid-template-columns: 70px auto;
	gap: 8px;
	&+& {
		margin-top: 10px;
	}
}
.sec--present-present__place__list__ttl,
.sec--ar-complete-place__list__ttl,
.sec--photo_place__list__ttl {
	display: grid;
	place-content: center;
	padding-block: 2px 3px;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: .05em;
	background: #D5D6F4;
}
.sec--present-present__place__list__dtl,
.sec--ar-complete-place__list__dtl,
.sec--photo_place__list__dtl {
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .05em;
	line-height: 1.5;
	padding-block: 2px 3px;
}
.sec--present-present__place__note,
.sec--ar-complete-place__note,
.sec--photo_place__note {
	color: #D24726;
	font-size: 12px;
	.text_link {
		color: #7D81DE;
	}
	li+li {
		margin-top: 4px;
	}
}
.sec--present-present__place__deco {
	width: min(24.53vw,92px);
	position: absolute;
	bottom: 9px;
	right: 0;
}
.sec--present-present__conditions__ttl {
	font-size: 14px;
	font-weight: 700;
	line-height: 1.43;
	letter-spacing: .025em;
	margin-bottom: 8px;
}
.sec--present-present__conditions__note-list {
	display: grid;
	gap: 5px;
}
.sec--present-present__conditions__note-list__items {
	font-size: 12px;
	line-height: 1.58;
	letter-spacing: .025em;
	padding-left: 1em;
	text-indent: -1em;
	.text_link {
		color: #7D81DE;
	}
}
@media(min-width:751px){
	.sec--present {
		background: url(../img/bg_present01.png) no-repeat left calc(50% - 330px) top 344px/400px auto,
					url(../img/bg_present01.png) no-repeat left calc(50% + 330px) top 872px/400px auto,
					url(../img/bg_present01.png) no-repeat left calc(50% - 330px) top 1630px/400px auto,
					url(../img/bg_present01.png) no-repeat left calc(50% + 330px) top 2804px/400px auto,
					url(../img/bg_present01.png) no-repeat left calc(50% - 330px) top 3551px/400px auto,
					#D5D6F4;
		margin: 0;
		padding-block: 0 114px;
		position: relative;
		&::before {
			content: "";
			display: block;
			width: 100%;
			height: 51px;
			background:#D5D6F4;
			clip-path: polygon(0 0, 100% 100%,0 100%);
			position: absolute;
			top: -50px;
		}
	}
	.sec--present__ttl {
		max-width: 750px;
		translate: 0 -49px;
		margin: 0 auto -29px
	}
	[data-section="present"] {
		background: var(--bg-color);
		margin-bottom: 40px;
	}
	.sec--present__txt {
		font-size: 18px;
		margin-bottom: 40px;
	}
	.sec--present-frame {
		padding-top: 12px;
		background-size: 375px auto;
	}
	.sec--present-frame__ttl {
		max-width: 648px;
		margin: 0 auto -62px;
	}
	.sec--present-frame__img-wrapper {
		max-width: 314px;
		margin: 0 auto 40px;
	}
	.sec--present-frame__img {
		width: 100%;
	}
	.sec--present-frame__list,
	.sec--collab-sticker__list {
		max-width: 345px;
		margin: 0 auto 57px;
		gap: 40px;
	}
	.sec--present-frame__list__date,
	.sec--present-present__list__date,
	.sec--collab-sticker__list__date {
		padding-inline: 32px;
		font-size: 16px;
		line-height: 1.5;
		letter-spacing: .04em;
		clip-path: polygon(12px 0,100% 0,calc(100% - 12px) 100%,0 100%);
	}
	.sec--present-frame__list__member,
	.sec--present-present__list__member,
	.sec--collab-sticker__list__member {
		font-size: 16px;
		line-height: 1.5;
		letter-spacing: .05em;
	}
	.sec--present-frame__list__img {
		width: 280px;
	}
	.sec--present__box,
	.sec--ar__box,
	.sec--collab__box {
		max-width: 660px;
		margin-inline: auto;
		padding: 0 60px 40px;
	}
	.sec--present__box {
		margin-bottom: 40px;
	}
	.sec--present__box__ttl,
	.sec--ar__box__ttl,
	.sec--collab__box__ttl {
		margin: -17px auto 22px;
	}
	.sec--present__way,
	.sec--ar__way,
	.sec--collab__way {
		font-size: 18px;
	}
	.sec--present__way {
		width: 320px;
		margin-inline: auto;
	}
	.sec--present__qr,
	.sec--ar__qr {
		display: grid;
		grid-template-columns: 1fr 120px;
		gap: 20px;
		background: #7D81DE;
		padding: 15px 15px 15px 20px;
		border: 2px solid #000;
		border-radius: 10px;
		margin-block: 30px 20px;
	}
	.sec--present__qr__ttl,
	.sec--ar__qr__ttl {
		background: #fff;
		border-radius: 10vh;
		padding-block: 5px;
		margin-block: 10px 8px;
		font-size: 20px;
		font-weight: 700;
		letter-spacing: .075em;
		text-align: center;
	}
	.sec--present__qr__txt,
	.sec--ar__qr__txt {
		color: #fff;
		font-weight: 700;
		line-height: 1.625;
		letter-spacing: .075em;
	}
	.sec--present__qr__img,
	.sec--ar__qr__img {
		background: #fff;
		border-radius: 10px;
		overflow: hidden;
	}
	.sec--present-present {
		padding-top: 28px;
		background-size: 375px auto;
	}
	.sec--present-present__ttl{
		max-width: 586px;
		margin: 0 auto 47px;
	}
	.sec--present-present__list {
		max-width: 425px;
		margin: 0 auto 10px;
		gap: 40px;
	}
	.sec--present-present__list__member {
		margin-bottom: 10px;
	}
	.sec--present-present__note-list {
		max-width: 425px;
		margin: 0 auto 54px;
	}
	.sec--present-present__place,
	.sec--ar-complete-place,
	.sec--photo_place {
		max-width: 400px;
		margin-inline: auto;
	}
	.sec--present-present__place__deco {
		width: min(24.53vw,92px);
		bottom: 15px;
	}
	.sec--present-present__conditions {
		max-width: 400px;
		margin-inline: auto;
	}
}

/*************
sec--ar
*************/
.sec--ar {
	background: url(../img/bg_ar01.png) no-repeat left -53.33vw top 70.4vw/106.67vw auto,
				url(../img/bg_ar01.png) no-repeat right -53.33vw top 185.87vw/106.67vw auto,
				url(../img/bg_ar01.png) no-repeat left -53.33vw top 621.87vw/106.67vw auto,
				url(../img/bg_ar01.png) no-repeat right -53.33vw top 744.27vw/106.67vw auto,
				url(../img/bg_ar01.png) no-repeat left -53.33vw top 1308.27vw/106.67vw auto,
				#F9E1EE;
	padding-block: 0 73px;
	position: relative;
	&::before {
		content: "";
		display: block;
		width: 100%;
		height: 26px;
		background: #F9E1EE;
		clip-path: polygon(0 0, 100% 100%,0 100%);
		position: absolute;
		top: -25px;
	}
}
.sec--ar__ttl {
	translate: 0 -66px;
	margin-bottom: -50px;
}
[data-section="ar"] {
	background: var(--bg-color);
	margin-bottom: 20px;
}
[data-section="ar"] .date__ttl {
	background: #E585B9;
	color: var(--bg-color);
}
[data-section="ar"] .date__dtl {
	color: #E585B9;
}
.sec--ar__txt {
	margin-bottom: 42px;
}
.sec--ar__img-wrapper {
	margin-bottom: 38px;
}
.sec--ar__img {
	width: 80.87%;
	margin-inline: auto;
}
.sec--ar__box {
	margin-bottom: 20px;
}
.sec--ar__way {
	span {
		color: #E585B9;
	}
	&+& {
		background: url(../img/bg_ar02.png) no-repeat center top 4px /auto 18px;
	}
}
.sec--ar__caution_acc .acc_btn span::before,
.sec--ar__caution_acc .acc_btn span::after {
	background: #E585B9;
}
.sec--ar-map {
	padding-top: 30px;
	margin-bottom: 20px;
	background: url(../img/bg_ar03.png) no-repeat left -4.35% top/108.7% auto;
}
.sec--ar-map__ttl {
	margin-inline: -4.35%;
}
.sec--ar-map__course__col-wrapper {
	display: grid;
	gap: 20px;
	margin-bottom: 20px;
}
.sec--ar-map__course__col {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 19px;
	padding-inline: 15px;
}
.sec--ar-map__course__col--02 {
	flex-direction: row-reverse;
}
.sec--ar-map__course__list-wrapper {
	width: fit-content;
}
.sec--ar-map__course__list-ttl {
	width: fit-content;
	padding: 3px 44px;
	background: #A8EA49;
	border: 2px solid #000;
	border-radius: 10vh;
	margin-bottom: 16px;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: .075em;
}
.sec--ar-map__course__list-ttl--b {
	background: #FF9700;
}
.sec--ar-map__course__list {
	font-size: 15px;
	font-weight: 700;
	line-height: 1.53;
	letter-spacing: .075em;
	padding-left: 1em;
	text-indent: -1em;
}
.sec--ar-map__course__img {
	width: 31.81%;
}
.sec--ar-map__img-ttl {
	margin-bottom: 12px;
}
.sec--ar-map__img {
	margin-bottom: 12px;
	position: relative;
}
.sec--ar-map__img__btn {
	width: 11.01%;
	position: absolute;
	background: none;
	border: 0;
	padding: 0;
	cursor: pointer;
	transition: .3s;
	&:hover {
		opacity: .6;
	}
	img {
		opacity: 0;
		transition: .3s linear 1s;
	}
}
.js-animate--active .sec--ar-map__img__btn img {
	opacity: 1;
}
[data-map-btn="btn01"] {
	width: 16.81%;
	bottom:  11.27%;
	right: 36.81%;
}
[data-map-btn="btn02"] {
	bottom: 26.48%;
	right: 32.46%;
}
[data-map-btn="btn03"] {
	top: 43.66%;
	right: 45.22%;
}
[data-map-btn="btn04"] {
	width: 16.81%;
	top: 41.69%;
	right: 26.09%;
}
[data-map-btn="btn05"] {
	width: 14.78%;
	top: 19.15%;
	right: 34.78%;
}
[data-map-btn="btn06"] {
	bottom: 14.65%;
	left: 20.58%;
}
[data-map-btn="btn07"] {
	width: 15.36%;
	bottom: 27.61%;
	left: 5%;
}
[data-map-btn="btn08"] {
	width: 13.33%;
	bottom: 1.41%;
	left: 6%;
}
[data-map-btn="btn09"] {
	bottom: 2.25%;
	left: 35%;
}
.sec--ar-map__img-note {
	font-size: 12px;
	line-height: 1.5;
	letter-spacing: .025em;
	margin-bottom: 20px;
}
.sec--ar-map__acc {
	margin-bottom: 20px;
	.acc_btn span::before,
	.acc_btn span::after {
		background: #E585B9;
	}
}
.sec--ar-complete {
	background: url(../img/bg_ar04.png) no-repeat left -32vw top -24vw /92vw auto,
				url(../img/bg_ar04.png) no-repeat right -46.13vw top 60.8vw /92vw auto,
				url(../img/bg_ar04.png) no-repeat left -46.13vw top 137.6vw /92vw auto,
				var(--primary-color);
	padding: 16px;
	position: relative;
}
.sec--ar-complete__ttl {
	width: 83.19%;
	margin: 0 auto 22px;
}
.sec--ar-complete__txt {
	color: var(--bg-color);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.6875;
	letter-spacing: .05em;
	text-align: center;
	margin-bottom: 8px;
}
.sec--ar-complete__note-list {
	display: grid;
	gap: 4px;
	padding-left: 1em;
	text-indent: -1em;
	margin-bottom: 20px;
	color: var(--bg-color);
	font-size: 12px;
	font-weight: 500;
}
.sec--ar-complete__note-list--02 {
	margin-bottom: 38px;
}
.sec--ar-complete__list {
	display: grid;
	gap: 20px;
	margin-bottom: 20px;
	position: relative;
}
.sec--ar-complete__list__items {
	background: #fff;
	border: 1px solid #000;
	padding: 15px 21px;
}
.sec--ar-complete__list__course {
	width: fit-content;
	background: #A8EA49;
	border: 2px solid #000;
	border-radius: 10vh;
	padding: 3px 46px;
	margin: 0 auto 8px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: .075em;
}
.sec--ar-complete__list__course--b {
	background: #FF9700;
}
.sec--ar-complete__list__member {
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .075em;
	text-align: center;
	margin-bottom: 8px;
}
.sec--ar-complete__list__deco {
	width: 103px;
	position: absolute;
	top: -16px;
	right:-27px;
}
.sec--ar-complete__list__img {
	margin-bottom: 3px;
}
.sec--ar-complete__list__img-note {
	font-size: 12px;
	font-weight: 500;
	letter-spacing: .025em;
	text-align: right;
}
.sec--ar-complete-place__dtl__ttl {
	color: #E585B9;
}
.sec--ar-complete-place__dtl__address a {
	color: #E585B9;
	background: linear-gradient(to right,#E585B9 0%,#E585B9 100%) no-repeat right bottom/100% 1px;
}
.sec--ar-complete-place__list__ttl {
	background: #F2C2DC;
}
@media(min-width:751px){
	.sec--ar {
		background: url(../img/bg_ar01.png) no-repeat left calc(50% - 330px) top 316px/400px auto,
					url(../img/bg_ar01.png) no-repeat left calc(50% + 330px) top 891px/400px auto,
					url(../img/bg_ar01.png) no-repeat left calc(50% - 330px) top 1839px/400px auto,
					url(../img/bg_ar01.png) no-repeat left calc(50% + 330px) top 2565px/400px auto,
					url(../img/bg_ar01.png) no-repeat left calc(50% - 330px) top 3831px/400px auto,
					#F9E1EE;
		padding-block: 0 113px;
		&::before {
			height: 51px;
			top: -50px;
		}
	}
	.sec--ar__ttl {
		max-width: 750px;
		translate: 0 -50px;
		margin: 0 auto -30px;
	}
	[data-section="ar"] {
		margin-bottom: 40px;
	}
	.sec--ar__txt {
		font-size: 18px;
		line-height: 1.67;
		margin-bottom: 40px;
	}
	.sec--ar__img-wrapper {
		max-width: 314px;
		margin: 0 auto 57px;
	}
	.sec--ar__box {
		max-width: 660px;
		margin: 0 auto 40px;
		padding: 0 60px 40px;
		position: relative;
	}
	.sec--ar__way {
		font-size: 18px;
		max-width: 428px;
		margin-inline: auto;
	}
	.sec--ar__qr {
		background: #E585B9;
	}
	.sec--ar-map {
		padding: 0;
		background-size: 375px auto;
		background-position: center top 14px;
	}
	.sec--ar-map__ttl {
		max-width: 620px;
		margin: 0 auto -13px;
	}
	.sec--ar-map__course__col-wrapper {
		display: grid;
		max-width: 742px;
		grid-template-columns: repeat(2,1fr);
		gap: 56px;
		margin-bottom: 40px;
	}
	.sec--ar-map__course__col {
		gap: 28px;
		align-items: start;
		padding: 0;
	}
	.sec--ar-map__course__col--01 {
		flex-direction: row-reverse;
		margin: 0;
	}
	.sec--ar-map__course__col--02 {
		flex-direction: row;
	}
	.sec--ar-map__course__img {
		width: 30.61%;
	}
	.sec--ar-map__img-ttl {
		max-width: 394px;
		margin: 0 auto 16px;
	}
	.sec--ar-map__img {
		max-width: 500px;
		margin: 0 auto 16px;
	}
	.sec--ar-map__img-note {
		max-width: 500px;
		margin: 0 auto 40px;
	}
	.sec--ar-map__acc {
		margin-bottom: 40px;
	}
	.sec--ar-complete {
		background: url(../img/bg_ar04.png) no-repeat left -105px top -9.57% /345px  auto,
					url(../img/bg_ar04.png) no-repeat right -173px top 14.32% /345px  auto,
					url(../img/bg_ar04.png) no-repeat left -174px top 88.2% /345px  auto,
					var(--primary-color);
		padding: 10px 30px 30px;
	}
	.sec--ar-complete__ttl {
		max-width: 355px;
		margin-bottom: 20px;
	}
	.sec--ar-complete__txt {
		font-size: 18px;
		line-height: 1.67;
		margin-bottom: 12px;
	}
	.sec--ar-complete__note-list {
		width: fit-content;
		margin-inline: auto;
	}
	.sec--ar-complete__note-list--02 {
		margin-bottom: 58px;
	}
	.sec--ar-complete__list {
		grid-template-columns: repeat(2,1fr);
		gap: 12px;
		margin-bottom: 13px;
	}
	.sec--ar-complete__list__items {
		padding: 15px 18px;
	}
	.sec--ar-complete__list__deco {
		width: 120px;
		top: -91px;
		right: 3px;
	}
	.sec--ar-complete__list__img {
		margin-bottom: 4px;
	}
}

/*************
sec--collab
*************/
.sec--collab {
	padding-bottom:  73px;
	background: url(../img/bg_collab01.png) no-repeat left -53.33vw top 67.2vw/106.67vw auto,
				url(../img/bg_collab01.png) no-repeat right -53.33vw top 220.8vw/106.67vw auto,
				#D5D6F4;
	position: relative;
	&::before {
		content: "";
		display: block;
		width: 100%;
		height: 26px;
		background: #D5D6F4;
		clip-path: polygon(0 0,100% 100%,0 100%);
		position: absolute;
		top: -25px;
		left: 0;
	}
}
.sec--collab__ttl {
	translate: 0 -46px;
	margin: 0 auto -30px;
}
[data-section="collab"] {
	background: var(--bg-color);
	margin-bottom: 20px;
	.date__ttl {
		background: #7D81DE;
		color: #fff;
	}
	.date__dtl {
		color: #7D81DE;
	}
}
.sec--collab__txt {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.6875;
	letter-spacing: .075em;
	text-align: center;
	margin-bottom: 12px;
}
.sec--collab__note-list {
	display: grid;
	gap: 5px;
	font-size: 12px;
	line-height: 1.58;
	letter-spacing: .025em;
	padding-left: 1em;
	text-indent: -1em;
	margin-bottom: 20px;
}
.sec--collab-sticker {
	margin-bottom: 38px;
}
.sec--collab-sticker__ttl {
	font-size: 22px;
	font-weight: 700;
	letter-spacing: .05em;
	text-align: center;
	margin-bottom: 12px;
}
.sec--collab-sticker__note {
	color: #626262;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: .025em;
	text-align: right;
}
.sec--collab-sticker__list {
	margin-bottom: 4px;
}
.sec--collab__box {
	margin-bottom: 20px;
}
.sec--collab__box__note {
	font-size: 12px;
	font-weight: 500;
	line-height: 1.33;
	letter-spacing: .05em;
	margin-top: 16px;
}
.sec--collab__btn-txt {
	font-weight: 700;
	letter-spacing: .075em;
	text-align: center;
	margin-bottom: 12px;
}
.sec--collab__btn {
	display: block;
	background: #FFE200;
	border: 2px solid #000;
	border-radius: 10vh;
	padding: 12px 28px;
	position: relative;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: .05em;
	transition: .3s;
	&::before,
	&::after {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		translate: 0 -50%;
		transition: .3s;
	}
	&::before {
		width: 32px;
		height: 32px;
		background: #000;
		border-radius: 50%;
		right:  28px;
	}
	&::after {
		width: 14px;
		height: 16px;
		background: #fff;
		clip-path: polygon(0 0,100% 50%,0 100%);
		right: 35px;
	}
	&:hover {
		color: #FFE200;
		background: #000;
		border: 2px solid #FFE200;
		&::before {
			background: #FFE200;
		}
		&::after {
			background: #000;
		}
	}
}
@media(min-width:751px){
	.sec--collab {
		padding-bottom:  114px;
		background: url(../img/bg_collab01.png) no-repeat left calc(50% - 330px) top 343px/400px auto,
					url(../img/bg_collab01.png) no-repeat left calc(50% + 330px) top 940px/400px auto,
					#D5D6F4;
		&::before {
			height: 51px;
			top: -50px;
		}
	}
	.sec--collab__ttl {
		max-width: 820px;
		translate: 0 -54px;
		margin: 0 auto -34px;
	}
	[data-section="collab"] {
		margin-bottom: 40px;
	}
	.sec--collab__txt {
		font-size: 18px;
		line-height: 1.67;
	}
	.sec--collab__note-list {
		width: fit-content;
		margin: 0 auto 40px;
	}
	.sec--collab-sticker {
		margin-bottom: 57px;
	}
	.sec--collab-sticker__ttl {
		font-size: 24px;
	}
	.sec--collab-sticker__list {
		max-width: 425px;
		margin: 0 auto 10px;
	}
	.sec--collab-sticker__note {
		max-width: 425px;
		margin-inline: auto;
	}
	.sec--collab__box {
		margin-bottom: 40px;
	}
	.sec--collab__way,
	.sec--collab__box__note {
		max-width: 505px;
		margin-inline: auto;
	}
	.sec--collab__btn-txt {
		font-size: 20px;
	}
	.sec--collab__btn {
		display: block;
		max-width: 345px;
		margin-inline: auto;
	}
}

/*************
sec--photo
*************/
.sec--photo {
	padding-bottom: 50px;
	background: url(../img/bg_photo.png) no-repeat left -63.73vw top 75.47vw/106.67vw auto,
				url(../img/bg_photo.png) no-repeat right -53.33vw top 221.07vw/106.67vw auto,
				#F9E1EE;
	position: relative;
	&::before {
		content: "";
		display: block;
		width: 100%;
		height: 25px;
		background: #F9E1EE;
		clip-path: polygon(0 0, 100% 100%,0 100%);
		position: absolute;
		top: -25px;
	}
}
.sec--photo__ttl {
	translate: 0 -54px;
	margin-bottom: -38px;
}
[data-section="photo"] {
	background: var(--bg-color);
	margin-bottom: 20px;
}
[data-section="photo"] .date__ttl {
	background: var(--primary-color);
	color: var(--bg-color);
}
[data-section="photo"] .date__dtl {
	color: var(--primary-color);
}
.sec--photo__lead-txt {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.6875;
	letter-spacing: .075em;
	text-align: center;
	margin-bottom: 20px;
}
.sec--photo__img-wrapper {
	margin-bottom: 33px;
}
.sec--photo__img {
	margin-bottom: 11px;
}
.sec--photo__img-note {
	color: #626262;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: .05em;
	text-align: right;
}
.sec--photo_place__dtl__ttl {
	color: var(--primary-color);
}
.sec--photo_place__dtl__address a {
	color: var(--primary-color);
	background: linear-gradient(to right,var(--primary-color) 0%,var(--primary-color) 100%) no-repeat right bottom/100% 1px;
}
.sec--photo_place__list__ttl {
	background: #F9E1EE;
}
.sec--photo_place__note .text_link{
	color: var(--primary-color);
}
.sec--photo_place__deco {
	width: 20.8vw;
	position: absolute;
	bottom: 0;
	right: 10px;
}

@media(min-width:751px) {
	.sec--photo {
		padding-bottom: 80px;
		background: url(../img/bg_photo.png) no-repeat left calc(50% - 330px) top 306px/400px auto,
					url(../img/bg_photo.png) no-repeat left calc(50% + 330px) top 1059px/400px auto,
					#F9E1EE;
		&::before {
			height: 51px;
			top: -50px;
		}
	}
	.sec--photo__ttl {
		max-width: 750px;
		translate: 0 -50px;
		margin: 0 auto -30px;
	}
	[data-section="photo"] {
		margin-bottom: 40px;
	}
	.sec--photo__lead-txt {
		font-size: 18px;
		line-height: 1.67;
		margin-bottom: 40px;
	}
	.sec--photo__img-wrapper {
		max-width: 660px;
		margin: 0 auto 53px;
		position: relative;
	}
	.sec--photo__img {
		margin-bottom: 4px;
	}
	.sec--photo__img--deco {
		width: 144px;
		position: absolute;
		top: -122px;
		right: -144px;
	}
	.sec--photo_place__deco {
		width: 99px;
		position: absolute;
		bottom: 0;
		right: 3px;
	}
}
@media(min-width:751px) and (max-width:960px) {
	.sec--photo__img--deco {
		display: none;
	}
}

/*************
sec--links
*************/
.sec--links {
	padding-block: 35px 50px;
	background: url(../img/bg_links01.png) no-repeat left top/56.27vw auto,
				url(../img/bg_links02.png) no-repeat right bottom/63.47vw auto,
				#FFFABA;
}
.sec--links__list {
	display: grid;
	gap: 25px;
	a {
		display: block;
		margin-bottom: 3px;
		transition: .2s;
		&:hover {
			opacity: .6;
		}
	}
}
.sec--links__list__note {
	color: #626262;
	font-size: 12px;
	line-height: 1.5;
	letter-spacing: .05em;
	text-align: right;
}
.sec--links__list__ttl {
	font-size: 17px;
	font-weight: 700;
	line-height: 1.47;
	letter-spacing: .05em;
	text-align: center;
	margin-bottom: 8px;
	span {
		display: block;
		color: #FF9700;
		font-size: 15px;
		margin-bottom: 5px;
		&::before,&::after {
			content: "";
			display: inline-block;
			width: 17px;
			height: 2px;
			background: #FF9700;
			rotate: 53deg;
			translate: -4px -4px;
		}
		&::after{
			rotate: -53deg;
			translate: 4px -4px;
		}
	}
}

@media(min-width:751px) {
	.sec--links {
		padding-block: 40px 50px;
		background: url(../img/bg_links_pc.png) no-repeat left calc(50% - 305px) top -18px /400px auto,
					url(../img/bg_links_pc.png) no-repeat left calc(50% + 413px) bottom -51px /400px auto,
					#FFFABA;
		.content-inner {
			max-width: 425px;
		}
	}
	.sec--links__list {
		gap: 15px;
	}
	.sec--links__list__ttl {
		font-size: 18px;
		line-height: 1.4;
		span {
			margin: 0;
		}
	}
}


/*************
footer
*************/
.reserve-btn.pc {
	width: 151px;
	height: 151px;
	background: #FF9700;
	border: 2px solid var(--bg-color);
	border-radius: 50%;
	padding-top: 15px;
	box-shadow: 0 3px 10px rgb(0 0 0/.16);
	position: fixed;
	right: 4vw;
	bottom: 4vw;
	z-index: 500;
	text-decoration: none;
	transition: .3s;
	.reserve-btn__ico {
		max-width: 34px;
		margin: 0 auto 3px;
	}
	.reserve-btn__ttl {
		color: var(--bg-color);
		font-size: 22px;
		font-weight: 700;
		line-height: 1.13;
		letter-spacing: .05em;
		text-align: center;
		margin-bottom: 2px;
	}
	.reserve-btn__txt {
		color: var(--text-color);
		font-size: 15px;
		font-weight: 500;
		line-height: 1.13;
		letter-spacing: .05em;
		text-align: center;
	}
	&:hover {
		opacity: .7;
	}
}
.reserve-banner {
	display: flex;
	justify-content: space-between;
	width: 100%;
	background: linear-gradient(45deg,#FF9700 0%,#FFBB57 100%);
	padding: 13px 4%;
	border-radius: 10px 10px 0 0;
	position: fixed;
	left: 0;
	bottom: 0;
}
.reserve-banner__ico {
	display: inline;
	width: 28px;
	margin-right: 6px;
}
.reserve-banner__txt__white {
	color: #fff;
	font-size: 16px;
	font-weight: 900;
	line-height: 1.5;
	letter-spacing: .05em;
	margin-right: 3px;
}
.reserve-banner__txt__black {
	font-size: 13px;
	font-weight: 700;
	line-height: 1.46;
	letter-spacing: .05em;
}
.reserve-banner__img {
	width: 29px;
}
.btn-totop {
	display: block;
	width: 64px;
	height: 64px;
	background: #E585B9;
	border: 2px solid var(--bg-color);
	border-radius: 50%;
	box-shadow: 0 3px 10px rgb(0 0 0 /.16);
	position: fixed;
	right: 15px;
	bottom: 70px;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	text-align: center;
	padding-top: 26px;
	position: fixed;
	opacity: 0;
	pointer-events: none;
	transition: .3s;
	&::before {
		content: "";
		display: block;
		width: 8px;
		height: 8px;
		border-top: 2px solid var(--bg-color);
		border-left: 2px solid var(--bg-color);
		rotate: 45deg;
		position: absolute;
		top: 14px;
		left: 50%;
		translate: -50% 0;
	}
	&.shown {
		opacity: 1;
		pointer-events: auto;
	}
	&.shown:hover {
		opacity: .7;
	}
}
@media(min-width:751px) {
	.btn-totop {
		width: 75px;
		height: 75px;
		font-size: 15px;
		right: 4vw;
		bottom: calc(4vw + 166px);
		padding-top: 32px;
		&::before {
			top: 18px;
		}
	}

}

/*その他の推し旅プラン*/
.info_wrap {
	margin: 0 auto;
	padding: 8px 40px 20px;
	position: relative;
	background-color: var(--bg-color);
}
.footer__sns-link {
	width: 92%;
	max-width: 740px;
	margin: 40px auto 0;
}
.footer__sns-link__list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}
.footer__sns-link__ttl {
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	margin-bottom: 20px;
}
.footer__sns-link__list__btn {
	box-sizing: border-box;
	display: block;
	border: 1px solid var(--text-color);
	background-color: var(--bg-color);
	text-align: center;
	font-size: 18px;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 700;
	border-radius: 10px;
	position: relative;
	padding: 10px 40px;
	transition: all 0.3s;
	svg {
		width: 14px;
		height: auto;
		position: absolute;
		top: 50%;
		left: 16px;
		translate: 0 -50%;
		transition: .3s;
		path {
			fill: #000;
		}
	}
	&:hover {
		background: #000;
		color: #fff;
		svg path {
			fill: #fff;
		}
		&::after {
			border-top: 3px solid var(--bg-color);
			border-right: 3px solid var(--bg-color);
		}
	}
	&::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 16px;
		height: 10px;
		width: 10px;
		border-top: 3px solid var(--text-color);
		border-right: 3px solid var(--text-color);
		transform: translateY(-50%) rotate(45deg);
		transition: all 0.3s;
	}
}
.credit {
	font-size: 12px;
	font-weight: 500;
	text-align: center;
	margin:16px calc(-40px + 4%) 0;
}

.footer_container {
	position: relative;
	z-index: 100;
	background-color: var(--bg-color);
	padding-top: 1px;
}
.tw_btn {
	display: none;
}
.btm_txt:nth-of-type(2) {
	display: none;
}
@media(min-width:751px){
	.info_wrap {
		margin: 0 auto;
		padding: 8px 20px 100px;
	}
	.footer__sns-link__list__btn {
		padding: 15px;
		font-size: 20px;
		svg {
			width: 20px;
			left: 28px;
		}
		&::after {
			right: 30px;
			width: 12px;
			height: 12px;
		}
	}
}





/*************
メディアクエリ
*************/
@media(min-width:751px){
	.sp {
		display: none;
	}
}
@media(max-width:750px){
	.pc {
		display: none;
	}

}

